To all SSC Station occupants
Thank you for the donations over the past year (2024), it is much appreciated. I am still trying to figure out how to migrate the forums to another community software (probably phpbb) but in the meantime I have updated the forum software to the latest version. SSC has been around a while so their is some very long time members here still using the site, thanks for making SSC home and sorry I haven't been as vocal as I should be in the forums I will try to improve my posting frequency.
Thank you again to all of the members that do take the time to donate a little, it helps keep this station functioning on the outer reaches of space.
-D1-
Wellcome everyone.
As some of you may know I have developed game called Generation X. More about game you can find theire: http://spacesimcentral.com/ssc/topic/5206-generation-x/ . I have made that game open for modding and you can build even another game on it's engine. So this is place where you may shere your works and learn how to build your own mods for this engine.
You can download game using this link: DOWNLOAD or use (mirror)
GAME ENGINE INSTRUCTIONS - HOW TO MAKE MODS:
Used colors:
Subtitles
Code
[Varible]
Comment
Important
! - working with last version only
Making new mission:
To make your mission listed in menu you need to add menu script.
-Go to [GameFolder]Scripts catalog
-If you attempting to create campaign, go to Campaigns. If not go to Quick.
-Create script file - file should have no extension. Else it's extension will be displayed in menu.
Menu script file:
- "[Description]"
- "[Mission path]" (for mission in [GameFolder] Missions[missioncatalog][mission].mis type "[missio ncatalog][mission]")" - For campaign type path for first mission.
-Now go to [GameFolder]Missions. Create directory typed before in menu script file.
Evry mission must have three basic files:
a.) Mission briefing file [mission].bri - main mission briefing script
b.) Actual manifest file [mission].man - List for ship's manifest
c.) Basic mission file [mission].mis - main mission module script
a.) Mission briefing file:
- [Number of steps],"[PlayerShipPath]"
- "[Step1]"
- "[Step2]"
- "[Step3]"
- ...
If you want a image for briefing put file called [mission].[Step].jpg into [GameFolder]Missions[missioncatalog]
b.) Actual manifest file:
- [Number of ships]
- "[ShipPath1]"
- "[ShipPath2]"
- "[ShipPath3]"
- ...
Make sure evry listed ship have manifest data.
c.) Basic mission file:
Mission file is list of instructions. So evry mission is list of scripts (may be only one, may be more). Main mission file have specific first line:
[SkyBoxName],[Envariment],[Sun scale],[PlayerShipPath],[PlayerShipPosX],[PlayerShipPosY],[PlayerShipPosZ],[PlayerShipRotX],[PlayerShipRotY],[PlayerShipRotZ],[FinishNavPoint]
- [SkyBoxName] - Name of skybox used for this mission (All SkyBoxes should be in [GameFolder]SkyBox[SkyBoxName])
- [Envariment] - Name of model rendered in space (Should be in [GameFolder]Models[EnvarimentModel] saved as Model.x) or/and ground surface: heightmap - [GameFolder]Models[EnvarimentModel] saved as Teren.jpg, texture - [GameFolder]Models[EnvarimentModel] saved as Teren1.jpg
- [Sun scale] - Scale of sun (The more number, the brighter sun will be rendered)
- [PlayerShipPath] - Player's ship path (All ships should be in [GameFolder]Models[PlayerShipPath]. Make sure ship is usable for player)
- [PlayerShipPosX],[PlayerShipPosY],[PlayerShipPosZ] - Player's ship initial posicion
- [PlayerShipRotX],[PlayerShipRotY],[PlayerShipRotZ] - Player's ship initial rotation
- [FinishNavPoint] - Index of nav point which will allaw player to finish mission once he will be 700m from it.
This line iniciates game engine. After this line you can write your mission script using fllowing instructions:
Commands:
- playsound,[SoundFile],[Channel],,,,,,, - Play sound on specyfic channel 1-4 (1-background music, 2-special effects, 3-voice, 4-others) Sounds should be in [GameFolder]SFX in .wav
- uivisible,[1/0],,,,,,,, - Set UI visible
- info,[Information],[Person],[Image],,,,,, - Gives information. Image should be in [GameFolder]Characters in .jpg.
- nextmis,[Script],,,,,,,, - Sets new mission script name [missioncatalog][mission]
- walkmode,[2/1/0],,,,,,,, - Walk mode: 2 - keep camera in 0,0,0 point, 1 - keep camera height on the ground, 0 - normal camera mode
- stealch,[1/0],,,,,,,, - Stealch INDICATOR - Show message that ship is in stealch and disable weapons. DO NOT AFFECTS AI
- alert3,[1/0],,,,,,,, - Show indicator that ship is locking on.
- allowdes,[0/1],,,,,,,, - Allaws to continue mission after player's ship is destroyed
- grounddes,[0/1],,,,,,,,- Activate ground collision system (should be enabled on planets and disabled in space)
- scalefactor,[number],,,,,,,, - DISPLAYED distance scale. Basicly 1 for space and 10 for planets.
- setfog,[1/0],[distance],[dencity],[color-red],[color-green],[color-blue],,,- Sets fog.
- fire,[Attacker ID],[Particle system],[HP],[Time to hit(s)],,,,,- Fire AI to player. Particle system should be in [GameFolder]ModelsParticles[Particle system] in .TVP
- firetoai,[Attacker ID],[Target ID],[Particle system],[HP],[Time to hit(s)],,,,- Fire AI to AI. Particle system should be in [GameFolder]ModelsParticles[Particle system] in .TVP
- devcmd,[1/0],,,,,,,, - Set developer console's visible
Objects:
- addtgt,[ID],[Type],[pos.x],[pos.y],[pos.z],[Name],, - Add nav point. Type should be "Nav", "Protect", "Scan", "React", "Disable", "Destroy" or "none"/empty for no icon
- remtgt,[ID],,,,,,,, - Earse nav point
- regship,[ID],[Icon],[ShipPath],[pos.x],[pos.y],[pos.z],[rot.x],[rot.y],[rot.z] - Register new ship. Icon should be "FFreighter", "FTaskForce", "ETaskForce", "EOutpost" or "none"/empty for no icon, Type is ship path (All ships should be in [GameFolder]Models[ShipPath]).
- setacc,[ID],[Acceleration],,,,,,,- Set ship's acceleration
- setrot,[ID],[x],[y],[z],,,,,- Set ship's rotation
- particle,[Particle system],[px],[py],[pz],[rx],[ry],[rz],[scale],- Add patricle system. Particle system should be in [GameFolder]ModelsParticles[Particle system].TVP
-
cloack,[ID],[1/0],,,,,,, - Activate cloacking device (unable to lock on until shot or recive hit + become invisible) !
Actions:
- distto,[ID],[Distance],,,,,,,- Halt until player's ship is in specyfic dystance from target.
- scantask,[ID],[Phisical analises],[Chemical analises],[Radiation analises],[Life forms analises],[Radiation scan],[In hide],[In emission scan Go to],- Halt until player scan object and give answer for spacyfic scan. If "In hide" is 1 execute "Go to" command for specyfic script [missioncatalog][mission].mis (extension needed)
- time,[time(s)],,,,,,,,- Wait
- dec,[info],[decide1],[decide2],[decide3],[decide4],[GoTo1],[GoTo2],[GoTo3],[GoTo4]- Make player choose one from for decisions to make and execute "Go to" command for specyfic script [missioncatalog][mission].mis (extension needed) For less decisions leave last fields blank
- destroytask,[ID],[GoTo],,,,,,,- If specyfic ship will be destroyed execute "Go to" command for specyfic script [missioncatalog][mission].mis (extension needed)
- gotonext,,,,,,,,,- End mission and let player save game. Make sure there is specyfied nev mission using "nextmis" command
- endcamp,[Info],,,,,,,,- Displays message and ends campaign (without saving)
MAKE SURE YOU TYPE ALL "," CHARS. THOSE ARE INDICATORS FOR SCRIPT INTERPRETATOR. WITHOUT ONE OF THEM MISSION EXECUTING WILL HALT.
Making new ship:
All ships should be in [GameFolder]Models[ShipPath]
In ship catalog there should be some basic files:
a.) Data.shp Ship's script file
b.) Info.txt Informations about ship to display in manifest. Should start and end by " chars
c.) Image.jpg Manifest image. Should be 700x500
a.) Data.shp:
- [Rotation for part1],[Rotation for part2],[Rotation for part3],[Rotation for part4]
- [Not used varible, should be 0], [ShipHP]
- [Has weapon1 (1/0)],[Particle system],[Reload (s)],[1/projectile speed],[Damage HP],[Minimal fire angle],[Maximal fire angle]
- [Has weapon2 (1/0)],[Particle system],[Reload (s)],[1/projectile speed],[Damage HP],[Minimal fire angle],[Maximal fire angle]
- [Has weapon3 (1/0)],[Particle system],[Reload (s)],[1/projectile speed],[Damage HP],[Minimal fire angle],[Maximal fire angle]
- [Has weapon4 (1/0)],[Particle system],[Reload (s)],[1/projectile speed],[Damage HP],[Minimal fire angle],[Maximal fire angle]
- [Has weapon5 (1/0)],[Particle system],[Reload (s)],[1/projectile speed],[Damage HP],[Minimal fire angle],[Maximal fire angle]
- [Has weapon6 (1/0)],[Particle system],[Reload (s)],[1/projectile speed],[Damage HP],[Minimal fire angle],[Maximal fire angle]
- [Acceleration],[Rotation speed]
AI-Only ship may have only two first lines in this script. Rest is needed for Player-controlable ships.
Ship models:
- Ship can have four parts with diffrent rotation direction and speed. Models for this parts should be in [GameFolder]Models[ShipPath]called PRT1.x, PRT2.x, PRT3.x and PRT4.x.
- Each of this parts may have emmiserive models. This models should be in [GameFolder]Models[ShipPath]Ilumination called PRT1.x, PRT2.x, PRT3.x and PRT4.x.
- Ships controlable by player should have bridge model. This model should be in [GameFolder]Models[ShipPath]Bridge callled Model.x Bridge Ilumaination model should be in [GameFolder]Models[ShipPath]BridgeIlumination callled Model.x. Evry bridge may have screen in which person tocking to player will be displayed. Model for this screen should be in [GameFolder]Models[ShipPath]Bridge callled Screen.x.
- To make damage system for your ship you need to add particle damage systems. In [GameFolder]Models[ShipPath] files called DMG[HP].TVP are particle system displayed when ship's hp is lower than [HP]. [HP] must be dividable by 1000.
- You may create engine fire for your ship by adding particle system to [GameFolder]Models[ShipPath] called Engine.TVP. Bilboards will be scalled automaticaly depending by ship's speed.
Ship models - global informations:
- All models should be in *.x (DirectX model) extension with NO COLORS (Textures only, if you want plain color you may use 1x1 texture). All game models have been created in Google SkethUp (link: http://www.sketchup.com/ ) and exported using 3DRad Exporter Plugin (link: https://drive.google.com/open?id=0B-T_ORKV7gOuWFJtOUUwN0JkYWM ). To install plugin just move it into [SkethUp installation]/Plugins folder.
- All particle systems should be in *.TVP (TrueVision3D Particle System). To create your own particle system you need TV3D Particle Editor (download link: http://www.truevision3d.com/downloads/download.php?file=30 ).
Making new UI translation:
To make your own translation you need to create [GameFolder]LanguateFiles[Languate][Window].txt files, where [Languate] is codename for your languate (Eng, Pol etc.) and [Window] is name of window (I advice to copy existing lanuate files and then edit them).
To add this languate to list you need to edit [GameFolder]LanguateFilesLangList.txt
In first line this file contines number of languates (no more then 10) and then list of all languates avalible coded as [LanguateFullName],[Languate]
To make your mod readable for game launcher you should pack it into self extracting archive and call it [mod name].sfx.exe. Otherwise your mod will not be listed by mod installer.
I am looking forward to see your works.