Scenario Maker / Ship Designer for The Starship Commander's Tactical Battle Simulator (C) Copyright 1993 William D. Hause The Scenario Maker is an in-house tool for making scenarios and designing new ships for the Tactical Battle Simulator (TBS). The scenario maker is NOT a "polished" program. It is very rough and has a few bugs. It doesn't even have a fancy graphical user interface. The scenario maker is a bare-bones program which I use to create and edit scenarios and design new ships for the Tactical Battle Simulator. Purchasers of the Scenario Maker / Ship Designer program will be able to create new types of ships and use them in their own scenarios. They may then give these scenarios to their friends, or upload them to BBSs etc. for other Tactical Battle Simulator users to enjoy. The Scenario maker give you everything you need to create new scenarios for the Tactical Battle Simulator. It also allows you to create and design new types of ships for use in the Tactical Battle Simulator. Note: Scenarios created with the Scenario Maker only work with the non-shareware version of the TBS. They don't work with the shareware version. If you wish to draw new schematic diagrams to go with the new ships then you must have a paint package which can save pictures in PCX format. If you don't have a paint package then you can assign already existing ship diagrams to be associated with new ships which you create. If you do decide to create new schematics then you must be sure they are exactly the same dimensions as the existing PCX ship schematics. You will also need at text editor which can save text in plain ASCII format. This is necessary so that you can create the mission text files which go with each scenario. HOW TO USE THE SCENARIO MAKER / SHIP DESIGNER: The best way to learn how to use the scenario maker is to work through some examples and experiment on your own. Three examples are provided here to tutor you in the use of the Scenario Maker / Ship Designer. In the first example we edit an already existing scenario. In the second example we design a new type of ship and in the third example we use the ship we designed in a new scenario. -------------------------------------------------------------------------- ------------------ Example 1, Modifying a scenario ---------------------- -------------------------------------------------------------------------- In this example we will edit the first scenario in scenario set #1 which comes with the non-shareware version of the game. The scenario editor program "SCENEDIT.EXE" should be placed in the same directory as the Tactical Battle Simulator. - Start the scenario editor by typing "SCENEDIT" at the DOS prompt. - Select the "BLUE" alliance and accept the first mission in scenario SET_1. This scenario is called "Border Patrol". - Set time compression to 0 by pressing the "S" key a few times. - As you can see by pressing the space bar a few time, this scenario has two units. A Federation CL (the Yorktown) and a Barbarizard CL (the GORGON). Lets edit the Federation CL. Select the Yorktown by pressing the space bar until the Yorktown is the currently selected unit. - Press "F5" to pull up the Ship Designer Screen. You now see the object designer screen for the Yorktown. It looks something like this: =============================================================================== 1) Empire (FED:0 ANDR:1 VIKON:2 BARB:3) : 0 2) Alliance (HUMAN:2 ALIEN:1 NEITHER 3 BOTH:0) : 2 3) Type (SHIP:2 BASE:3 DRAGON:4 PLANET:5 DRONE:6): 2 4) Name (21 characters max) : NFS YORKTOWN 5) Class : Light Cruiser 6) Class Abbreviation (8 characters max) : CL 7) Picture File Name : CL_FED 10) Normal Power Output : 160 11) Normal Battery Storage : 2000 12) Total Number of Torpedoes : 2 13) Total Number of Disintegrators : 1 14) Initial Number of Drones or Probes : 1 15) Normal Number of Crew : 42 20) X Start Coord in mPc (-1,400,000 to 1,400,000): 19733 21) Y Start Coord in mPc (-1,050,000 to 1,050,000): -12665 22) X Random Starting Offset in mPc : 50000 23) Y Random Starting Offset in mPc : 50000 Enter line number to change: PAGE DOWN PAGE UP Esc:QUIT Value Crew Mass Object Name F1:NEW UNIT F3:LOAD F5:NEW SCEN F7:UN-USED 2850 42 1180 NFS YORKTOWN F2:DELETE F4:SAVE F6:ANALYZE F8:UN-USED =============================================================================== - Lets change the number of torpedoes this unit has from 2 to 4. Type "12" and press return to select the "Total Number of Torpedoes" line. Now type "4" and press enter. The Yorktown now has 4 torpedoes. - Now lets change its power output. Type "10" and press enter to select power output. Now type "300" and press enter. The Yorktown now has 300 power units in stead of the 160 it had before. - You may have noticed that the number of crew increased when you increased the number of torpedoes and the power output the ship. If the number of crew on a ship is to small to handle the increased size of the ship then the crew size will be automatically increased to the minimum number required for the ship. - Press . The changes to the Yorktown have now been made. The GORGON with its 2 torps is now over matched. Lets even up the sides. Select the GORGON by pressing the space bar and Press "F5" to edit the GORGON. - Press "F1" to create a new unit. You will be prompted to enter a new name for the new unit. Enter "Klaxon" for the new unit name and press . - Press to return to the game map. - Press the space bar a few times to see that there are now two Barbarizard units in the game. - Now select Save Game from the Pull-Down menus and save this game as "new0". All scenarios files must end with a number between 0 and 9 to indicate their scenario number. In this case, new0 is the first (number 0) scenario in the set and the name of the scenario set is "new". - Exit the Scenario editor by pressing "Q". - Change the saved game into a scenario by typing "copy new0.gam new0.scn" at the DOS prompt. - We are not quite done yet. We must still provide some mission text for our new scenario. At the DOS prompt type "copy set_10.dsn new0.dsn" and press enter. Then type "copy set_10.dsh new0.dsh" and press enter. We have just copied the orders for the Border Patrol scenario to our new scenario. - If you have a text editor you could edit "new0.dsn" and "new0.dsh" to create new orders for your new scenario. NOTE: You must save the .DSN and .DSH file as plain ASCII text files. - Now lets try out our new scenario. Run the Tactical Battle simulator by typing "TBS" at the DOS prompt. If the new scenario is not displayed when you get to the scenario selection startup screen then press "n" for next scenario set until the "new" scenario set is displayed. There will only be one entry in this set of course. This entry is the scenario which you just made. Press "A" to select the scenario and play it. -------------------------------------------------------------------------- -------------------- Example 2, Creating a new unit. --------------------- -------------------------------------------------------------------------- In this example we will create a new type of ship. This ship will be a smuggling vessel. Smugglers don't have state of the art military weapons so we will give this ship 2 disintegrators and no torps. - Start the scenario editor by typing "SCENEDIT" at the DOS prompt. - Select the "BLUE" alliance and accept the first mission in scenario SET_1. This scenario is called "Border Patrol". - Set time compression to 0 by pressing the "S" key a few times. - As you can see by pressing the space bar a few time, this scenario has two units. A Federation CL (the Yorktown) and a Barbarizard CL (the GORGON). Lets edit the Federation CL. Select the Yorktown by pressing the space bar until the Yorktown is the currently selected unit. - Press "F5" to pull up the Ship Designer Screen. You now see the Ship designer screen for the Yorktown. - Type "4" and press enter to set the ship name. Type "The Falcon" and press enter. - Type "5" and press enter. Now type in the ship class by typing "SMUGGLER" and pressing enter. - Type "6" and press enter. Type "SM" for the class abbreviation. - Type "7" and press enter to set the picture file name. We will use the picture file for the merchantman ship. Type "MR_FED" and press enter. - Type "12" and press enter. Type "0" and press enter to set the number of torps to 0. - Type "13" and press enter. Type "2" and press enter to set the number of disintegrators to 2. - Type "14" and press enter. Type "0" and press enter to set the number of drones to 0. - Different systems require crew to maintain them. When these systems are added to a ship, if there aren't enough squads assigned to the ship to take care of all the systems, then crew are added. We have taken some systems away from this unit so we probably don't need as many squads as we currently have. Type "15" and press enter. Type "0" and press enter to reduce the crew assigned to this ship to the minimum required. You can always increase the number of crew on a ship but you can't reduce it past its minimum required number of crew. - Now we will save this ship. Press "F4" to save this ship. Type "SM_FED" for the name of this unit and press enter. - The smuggler ship has now been saved to disk and we can leave the scenario maker program. Press to exit the Ship Designer Screen. Type "Q" to exit the Scenario Designer Program. -------------------------------------------------------------------------- ------------------- Example 3, Creating a new Scenario ------------------- -------------------------------------------------------------------------- In this example we make a new scenario from scratch. - Start the scenario editor by typing "SCENEDIT" at the DOS prompt. - Select the "BLUE" alliance and accept the first mission in scenario SET_1. This scenario is called "Border Patrol". - Set time compression to 0 by pressing the "S" key a few times. - Press "F5" to pull up the Ship Designer Screen. - Press "F5" to start a new scenario. - Press "F3" to load a ship from disk. Type "FF_FED" to load a National Federation Frigate. - Type "20" and press enter. Type "30000" and press enter to set the X starting coordinate to 30 Pc. - Type "21" and press enter. Type "0" and press enter to set the Y starting coordinate to 0 Pc. - Type "22" and press enter. Type "5000" and press enter to set the random X starting offset to 5Pc. This ship will start within 2.5Pc of the starting X coordinate. (a 5Pc distance in the X direction) This makes the scenario a little different each time it is run. - Type "23" and press enter. Type "0" and press enter to set the random Y starting offset to 0 Pc. - *** The first unit has now been entered into this scenario. *** - Now press "F1" so we can enter the next unit. Type "TEMP" for the name and press enter. This unit won't be used so it doesn't matter what its name is. - Press "F3" to load the next unit for this scenario. Type "BS_FED" to load a National Federation Base Station. - Type "20" and press enter. Type "0" and press enter to set the X starting coordinate to 0 Pc. - Type "21" and press enter. Type "0" and press enter to set the Y starting coordinate to 0 Pc. - Type "22" and press enter. Type "0" and press enter to set the random X starting offset to 0 Pc. - Type "23" and press enter. Type "0" and press enter to set the random Y starting offset to 0 Pc. - *** The second unit has now been entered into this scenario. *** - Now press "F1" so we can enter the next unit. Type "TEMP" for the name and press enter. This unit won't be used so it doesn't matter what its name is. - Press "F3" to load the next unit for this scenario. Type "CL_BAR" to load a Barbarizard Light Cruiser. - Type "20" and press enter. Type "20000" and press enter to set the X starting coordinate to 20 Pc. - Type "21" and press enter. Type "0" and press enter to set the Y starting coordinate to 0 Pc. - Type "22" and press enter. Type "0" and press enter to set the random X starting offset to 0 Pc. - Type "23" and press enter. Type "0" and press enter to set the random Y starting offset to 0 Pc. - *** The last unit has now been entered into this scenario. *** - The object of this scenario is for the Federation FF to make it to the federation base station. The Barbarizard CL has a mission to destroy the Federation FF. We must now set the victory conditions. - Press to return to the Main Scenario Editor screen. - Press the space bar to see that the three units are in the game. - First we will enter a destination rectangle around the staircase. We will set it up so that if the Fed FF makes it into this rectangle then the Feds win. If the Fed FF is destroyed then the Barbarizards win. If time expires then nobody wins. - Press "F6" to edit the General Victory Conditions. The screen should look something like this: =============================================================================== ------- GENERAL VICTORY CONDITION VARIABLES ------- 1) Scenario Time Limit in Seconds : 3600 2) Victory region LEFT for HUMAN side : -1399900 3) Victory region TOP for HUMAN side : -1049900 4) Victory region BREADTH for HUMAN side : 100 5) Victory region HEIGHT for HUMAN side : 100 10) Victory region LEFT for ALIEN side : -1399900 11) Victory region TOP for ALIEN side : -1049900 12) Victory region BREADTH for ALIEN side : 100 13) Victory region HEIGHT for ALIEN side : 100 20) Victory region LEFT for NO WINNER CONDITION : -1399900 21) Victory region TOP for NO WINNER CONDITION : -1049900 22) Victory region BREADTH for NO WINNER CONDITION : 100 23) Victory region HEIGHT for NO WINNER CONDITION : 100 30) Victory points for HUMAN Victory : 100 31) Victory points for ALIEN Victory : 100 32) Victory points for NO WINNER CONDITION : 100 Press to exit Enter line number to change: =============================================================================== - Type "1" and press enter. Type "1800" and press enter to set the scenario time limit to 1800 seconds (30 min). - It is the human alliance that gets victory points for making it to the rectangle around the base so we will set up the Human Side Victory region to be around the base station. - Type "2" and press enter. Type "-100" and press enter. - Type "3" and press enter. Type "-100" and press enter. - Type "4" and press enter. Type "200" and press enter. - Type "5" and press enter. Type "200" and press enter. - We have now set the Human side victory region to be a 200x200 mPc box around the base. - Now we will set the required victory points for each side. - Type "30" and press enter. Type "100" and press enter to set the Human victory points required to 100. - Type "31" and press enter. Type "100" and press enter to set the Alien victory points required to 100. - Type "32" and press enter. Type "100" and press enter to set the No Winner victory points required to 100. - Press to go back to the main screen. - Now we must set the victory conditions for each unit. - Press the until the base station is selected. Then press "F5" - Press the "PGDN" key two times so that the victory conditions for the HUMAN side are displayed. They will look something like this: ----- Victory Conditions for the HUMAN SIDE ----- 70) Victory Point Value : 0 71) PreTimeLimit Only (OFF=0, ON=1) : 0 72) PostTimeLimit Only (OFF=0, ON=1) : 0 73) Must Be Inside Rectangle (OFF=0, ON=1) : 0 74) Must Be OutsideRectangle (OFF=0, ON=1) : 0 75) Must Destroy Unit (OFF=0, ON=1) : 0 76) Must Possess Unit (OFF=0, ON=1) : 0 77) Points for Partial Damage (OFF=0, ON=1) : 0 - Set all of the settings on this screen to 0 by selecting the line number and then entering the value of 0. - Now press the key again to set the victory conditions for the ALIEN SIDE. The screen will look something like this: ----- Victory Conditions for the ALIEN SIDE ----- 90) Victory Point Value : 0 91) PreTimeLimit Only (OFF=0, ON=1) : 0 92) PostTimeLimit Only (OFF=0, ON=1) : 0 93) Must Be Inside Rectangle (OFF=0, ON=1) : 0 94) Must Be OutsideRectangle (OFF=0, ON=1) : 0 95) Must Destroy Unit (OFF=0, ON=1) : 0 96) Must Possess Unit (OFF=0, ON=1) : 0 97) Points for Partial Damage (OFF=0, ON=1) : 0 - Set the values to 0 as is shown above. - Press to set the no winner conditions. - Set all of the no winner condition to 0. - Press to return to the main screen. - Now press the until the Fed FF is selected. - Press "F5" and then press the key until the victory conditions for the HUMAN side are displayed. Set the Victory conditions to match those shown below. ----- Victory Conditions for the HUMAN SIDE ----- 70) Victory Point Value : 100 71) PreTimeLimit Only (OFF=0, ON=1) : 1 72) PostTimeLimit Only (OFF=0, ON=1) : 0 73) Must Be Inside Rectangle (OFF=0, ON=1) : 1 74) Must Be OutsideRectangle (OFF=0, ON=1) : 0 75) Must Destroy Unit (OFF=0, ON=1) : 0 76) Must Possess Unit (OFF=0, ON=1) : 0 77) Points for Partial Damage (OFF=0, ON=1) : 0 - 100 Victory points are awarded to the human alliance if this unit gets into the Human Rectangle before the time limit expires. - Now press the key again to set the victory conditions for the ALIEN SIDE. Set the ALIEN SIDE victory condition to match those shown below. ----- Victory Conditions for the ALIEN SIDE ----- 90) Victory Point Value : 100 91) PreTimeLimit Only (OFF=0, ON=1) : 1 92) PostTimeLimit Only (OFF=0, ON=1) : 0 93) Must Be Inside Rectangle (OFF=0, ON=1) : 0 94) Must Be OutsideRectangle (OFF=0, ON=1) : 0 95) Must Destroy Unit (OFF=0, ON=1) : 1 96) Must Possess Unit (OFF=0, ON=1) : 0 97) Points for Partial Damage (OFF=0, ON=1) : 1 - 100 Victory points are awarded to the ALIEN Side if this unit is destroyed. Partial points are awarded for damaging this unit. - Press to set the no winner conditions. - Set the no winner conditions to match those shown below. ----- Victory Conditions for the No Winner outcome ----- 110) Victory Point Value : 100 111) PreTimeLimit Only (OFF=0, ON=1) : 0 112) PostTimeLimit Only (OFF=0, ON=1) : 1 113) Must Be Inside Rectangle (OFF=0, ON=1) : 0 114) Must Be OutsideRectangle (OFF=0, ON=1) : 0 115) Must Destroy Unit (OFF=0, ON=1) : 0 116) Must Possess Unit (OFF=0, ON=1) : 0 117) Points for Partial Damage (OFF=0, ON=1) : 0 - Award 100 points to the no winner side if the time limit has expired. - Press to return to the main screen. - Press the space bar until the Barbarizard CL is selected. Then press "F5" - Set the victory conditions for the HUMAN, ALIEN, and NO WINNER sides to have all zeros. - Press to return to the main game screen. - Select Save Game from the pulldown menus and save the game as "new1" - Press "Q" to exit the Scenario Maker. - Change the saved game into a scenario by typing "copy new1.gam new1.scn" at the DOS prompt. - We are not quite done yet. We must still provide some mission text for our new scenario. At the DOS prompt type "copy set_10.dsn new1.dsn" and press enter. Then type "copy set_10.dsh new1.dsh" and press enter. We have just copied the orders for the Border Patrol scenario to our new scenario. - If you have a text editor you can edit "new1.dsn" and "new1.dsh" to create new orders for your new scenario. NOTE: You must save the .DSN and .DSH file as plain ASCII text files. - Now lets try out our new scenario. Run the Tactical Battle simulator by typing "TBS" at the DOS prompt. If the new scenario is not displayed when you get to the scenario selection startup screen then press "n" for next scenario set until the "new" scenario set is displayed. There will only be one entry (two if you did the first example) in this set of course. This scenario is displayed in the second box down in the first column in the scenario selection screen. Press "A" to select the scenario and play it. ---------------- SETTING VICTORY CONDITIONS FOR A UNIT ------------------- -- PRE_TIME_LIMIT_ONLY & POST_TIME_LIMIT_ONLY -- If PRE_TIME_LIMIT_ONLY flag is set then the victory points will only be awarded if it is pre time limit. If POST_TIME_LIMIT_ONLY flag is set then the victory points will only be awarded if it is post time limit. If neither the PRE or POST time limit flags are set the points will be awarded in both pre and post time limit. If both are set then points can never be awarded so DON'T SET THEM BOTH! ------------ -- INSIDE_RECTANGLE & OUTSIDE_RECTANGLE -- If the INSIDE_RECTANGLE flag is set then the victory points will only be awarded if the unit is inside the destination rectangle for its alliance. If the OUTSIDE_RECTANGLE flag is set then the victory points will only be awarded if the unit is outside the destination rectangle for its alliance. If neither the INSIDE or OUTSIDE flags are set then the points will be awarded no matter where the unit is. If both are set then points can never be awarded so DON'T SET THEM BOTH! ------------ -- MUST_DESTROY -- If the MUST_DESTROY flag is set then the victory points will only be awarded if the unit is destroyed. (Except when the PARTIAL_DAMAGE flag is set, see PARTIAL_DAMAGE). ------------ -- PARTIAL_DAMAGE -- If the PARTIAL_DAMAGE flag is set then any victory points awarded will be reduced according to the amount of damage done to the unit. ------------ -- MUST_POSSESS -- If the MUST_POSSESS flag is set then the victory points will be awarded only if the unit is in the possession of the alliance in question. (If it is destroyed or possessed by the enemy then no points are awarded) ------------