The FTJava Scenario Editor provides a way of graphically creating a FTJava scenario without knowing the XML format used by FTJava. The ScenarioEditor provides access to all the options available to the FTJava Game Engine. The following is an overview and tutorial in using the Scenario Editor.

Getting Started

To begin, fire up the FTJava apprication, under the ‘Editor’ menu, choose ‘New Scenario’. Two windows should open up, an empty StarMap, and the ScenarioEditor main window:

Initially the scenario does not contain any information.

Scenario Concepts

A scenario is essentially a tree structure, as reflected in the XML for a given scenario. At the root is the Scenario object itself; reflected in the scenario being the the root object in the tree representation depicted in the ScenarioEditor. Scenarios contain one or more teams, each team contains zero or more Players, and each Player controls zero or more Ships. To give an idea of the complexity that some scenario’s achieve, here is the ScenarioEditor one of the biggest scenarios currently designed is FTJava. Note that many of the Player’s have been closed to save space!


From the empty ScenarioEditor window, pressing the ‘Edit’ button brings up the various options avalable for the Scenario itself. These options dictate Fog of War, range bands, Full Thrust variations, etc…


The ScenarioEditor Info tab contains entries for the Scenario Name and Briefing. The briefing will be shared with all players. In this case, the name is ‘A Close Encounter’.


Clicking on the Variations tab brings up the options controlling FTJava ‘House Rules’. Generally these are self describing.

Fog of War

The ‘Fog of War’ tab shows the options controlling the Fog of War. Please see the FTJava Documentation for descriptions of the options.

Range Bands

The ‘Range Bands’ tab is a bit busy, but allows the game to be modified to control how different systems operate. For instance, the default Beam range band is 12 mu, as set out in the Full Thrust rules. If the range bands were increased to 20 mu, a Beam Battery 3 would be able to target ships at a range of 60 mu! The image above shows the defaults.

Press the ‘OK’ button to accept the changes and close the dialog.


In FTJava, there may be any number of different teams. Players and ships from a team may target and shoot at any ship on any other team, but may not target ships from the same team. In this case, we’re going to create two teams: Good Guys and Bad Guys.

After setting the Scenario options, the ScenarioEditor window looks like this:

Note that the title of the window has changed to the name of the scenario, and there is now a item in the left hand window giving the name of the scenario. To begin to fill in the scenario, click on the icon next to the name to select the item, and click on the ‘New Team’ button. This brings up a dialog prompting for the name of the new team.

Enter ‘Good Guys’, and click ‘OK’. Repeat to create a team called ‘Bad Guys’. The ScenarioEditor window now looks like this:


A player is a person belonging to a team that is responsible for giving his/her ships orders. Each team may contain any number of different players. A player is added to a team by selecting the team name, and clicking the ‘New Player’ button. Here we select the ‘Good Guys’.

Clicking on ‘New Player’ brings up the new player dialog. Here we enter ‘Robin Hood’ for a name, the proper email and the player’s objectives.

Later we will go back and add more players, but for the moment, we’ll give Robin some ships to control.


In order to get the bad guys, each player needs to have control over one or more ships. Select ‘Robin Hood’ from the ScenarioEditor window and click on the ‘New Ship’ button.

In the file selection dialog find the file containing the ship you would like to add to Robin Hood’s fleet. Several ship designs are distributed with the FTJava download. When the file is selected, the Ship is added to the StarMap at (0,0). Here we have added a NSL Battleship of the Maria Von Burgund class.

Selecting the as yet unnamed Von Burgund, and pressing the ‘Edit’ button brings up the ShipEditor Dialog. Here we have pressed the ‘SSD’ button in addition.

The name, position, heading and speed of the ship may all be changed using this dialog. Pressing ‘OK’ will accept the changes and close the ShipEditor dialog box. ‘Cancel’ will close without making the changes, and ‘Apply’ makes the changes, updates the StarMap leaving the ShipEditor dialog open.

Odds and Ends

Armed with the above tutorial/user’s guide, complex scenarios should be easily created. Many of the buttons in the ScenarioEditor are context sensitive, and are described here.


Any player named ‘Bot’, ‘Robot’ or ‘AI’ is a robot player and will be played by the server. There are 5 ‘flavors’ of bots, ‘Alpha’, ‘Beta’, ‘Delta’, ‘Epsilon’, and ‘Gamma’. This a player named ‘AI Alpha’ will be played by the server according to the ‘Alpha’ strategy.

New Team

The ‘New Team’ button is not context dependant and may be pressed with any part of the of the hierarchy selected. When pressed, you will be prompted for the name of a new team. The team will be added to the scenario without any players.

New Player

The New Player button depends on the currently selected item in the hierarchy. A new player will be added to the first team found tracing back up the hierarchy. For instance, if a ship is selected, the search goes from the ship, to the ship’s player, and stops at the player’s team. The new player as added to the team containing the currently selected ship.

New Ship

The New Ship button works in much the same fashion as the New Player button, seaching until the first player is found. So if a ship is selected, pressing New Ship will add a new ship to the player controlling the currently selected ship. There is no way to change the ship class after a ship has been added. You must add the new ship, and remove the existing ship.


The Edit button edits the currently selected item. For the Scenario (the ‘root’ item in the tree), the ScenarioDialog is opened as described in ScenarioConcepts. If a Team is selected when the Edit button is pressed, the TeamEditor is opened for the selected Team. For a Player, the PlayerDialog is opened. Pressing Edit when a Ship is selected brings up the ShipDialog for that ship.


The Remove button will remove the selected item after prompting.


The Save button does just that: saves the scenario after prompting for a filename. Be sure to do this…

Full Thrust is published by Ground Zero Games http://www.gzg.com/ and is Copyright 1992, Jon Tuffley. Full Thrust rulebooks published so far include: Full Thrust - 2nd Edition (FT), FT Light, Fleet Book 1 (FB1) and Fleet Book 2 (FB2).

FTJava Copyright 2000-2015, Jon Davis and Dan Blezek. All Rights Reserved.

Full Thrust is published by Ground Zero Games http://www.gzg.com/ and is Copyright 1992, Jon Tuffley. Full Thrust rulebooks published so far include: Full Thrust - 2nd Edition (FT), More Thrust (MT), Fleet Book 1 (FB1) and Fleet Book 2 (FB2).

FTJava Copyright 2000-2004, Jon Davis and Dan Blezek. All Rights Reserved.