Facebook Youtube RSS Digg
To use all functions of this page, you should register.

Modding Glossary

This site uses cookies. By continuing to browse this site, you are agreeing to our use of cookies. More details

  • -
  • -
  • Camera Lib : Collection of helper functions concerning in-game cameras.
  • Coordinates : Within a star system, DSO always uses the same coordinate system:
  • The tradestation is at position (0,0,0) and the hypergate is at position (0,0,10000). Most of the action will happen along this path.
  • Alignment is following:
  • Assume you are the tradestation and looking at the hypergate.
  • - X is right
  • - Y is upwards
  • - Z is towards the hypergate

  • DSO : A short for Darkstar One. Another popular one is "DS1".

  • -
  • File Extensions

    • .lua file : LUA is the scripting language we use in DSO. All missions are scripted using LUA. See Lua.org for lua basic tutorials and here for a reference of available commands.
    • .bin file : Binary file. This file has been processed so that it is not human-readable anymore. DSO reads them during startup. If it cannot find a .bin file then the associated .ini files are opened and coverted into .bin format. Lua files also get converted into .bin format. The resulting file is the missions.bin.
    • .ini file : Initialization files. They are human-readable. Use a text editor to edit them. They are usually kept within .cpr files
    • .cpr file : A compressed (archive) file. Can be opened using various decompression utilities.
    • .dds file : Direct Draw Surface format. An image format used in DSO for textures and in screens. To make use of them, use either the DirectX Texture tool coming with the DirectX SDK or a plugin for the graphics program of your taste.
    • .dss file : Our savegame format. Each modification will contain an own set of savegames to avoid confusion. Savegames can be hacked but not modded. We do not provide support for hacked savegames .

  • Have a look at those sites:
    • MSDN: DXTech - Microsofts DirectX Texture Tool (included in the DirectX SDK)
    • MSDN: DDS FileFormat (technical article)
    • MSDN: Using Compressed Textures (technical article)
    • devil - OpenSource image library, supporting .dds
    • NVidia Texture Tools
    • NVidia .dds - Photoshop PlugIn for .dds
    • 3DSMax Plugins
    • ATI Compressonator

  • global.res : A resource file. Contains the strings used by DSO.

  • -

  • INI-Files:
  • Upgrades.ini : Contains information about upgrades for the ship.
  • StarSystem.ini : Contains information about every star system in the game.
  • [System000 ;
    Artefakt = 0 ; > 0, if there is an artifact inside the system
    Bedroht = 0 ; > 0, if occupied by pirates
    Bürger = 3.600000 ; population, counted in billions
    Cluster = 0 ; index of the cluster this system belongs to
    EnergyLevel = 0 ; determines the type of energy particles floating around
    Faction = 1 ; pirate system
    Function_X1 = 0 ; X1 value
    Function_X2 = 3 ; X2 value
    Function_X3 = 5 ; X3 value
    Function_Y = 0 ; minimal level
    NachbarRegel = 10 - 10 ; system becomes visible as soon as one of these systems is entered
    Piratengang = 65535 ; index of pirate gang
    Planeten = 2 ; number of planets in system
    PosX = 4.500000 ; x position on map
    PosY = 17.799999 ; y position on map
    Produktion1 = 0 ; coal hydrates
    Produktion2 = 1 ; proteins
    Produktion3 = 3 ; plants
    Produktion4 = 12 ; pharma
    Produktion5 = 23 ; drugs
    Produktionsfaktor = 0.920000 ; production factor
    Regierung = 3 ; government
    Sichtbarkeitstyp = 2 ; visibility type (2=made visible by neighbor)
    StarLightId = 3 ; star light index (3=anarchy)
    UniqueItem = 0 ; > 0, if an unique item is present

  • planets.ini : Contains info about all fixed space objects (called "planets" here) in ALL star system.

  • [Globals ;
    Planetenanzahl = 5969 ; Number of planets in the whole ini file. May be greater but NOT smaller than the actual count!
    Sternenanzahl = 403 ; Number of star systems that this ini file has stored planets for. Again, must be at least the actual count!
    [Planet000_000 ; First index: star system index, second index: planet index within star system
    Model = 3 ; Id of the 3D model to show for this orbiter
    Orbitart = Sonne ; orbiter type ("Sonne" = "Sun")
    Position = 464831.531250 / 1936431.875000 / 499874.875000 ; X, Y and Z Position in meters.
    Radius = 20000.000000 ; Radius in meters
    RotationSteps = 0 ; Timesteps needed for a complete rotation about its axis
    SystemId = 0 ; Index of star system this belongs to
    UmlaufSteps = 0 ; Timesteps for one complete circulation around the central orbiter
    (This planet is the central orbiter, so the timesteps are 0 each)

  • darkstarmod.ini : Contains info about the particular DSO mod. One file is needed inside every mod's subdirectory inside the "Customization" directory. Contains two parameters:

  • [darkstarmod
    mod_name = Modding Tutorial ; name of the modification
    mod_desc = Simple modding example ; a brief(!) descriptionJ
  • -
  • -
  • -
  • Model : 3D objects created by a 3D program.
  • Mission : Missions are scripted, not programmed. Thus they can be altered or created without having to recompile the game executable. This makes modding possible. Missions appear at different places in the game. There are terminal missions, missions started by the storyline, missions starting in free space and missions that are always active. More details will follow.
  • Mission Lib : Collection of helper functions not contained in any of the other scripting namespaces.
  • -
  • -
  • -
  • -
  • -
  • Script : Missions are scripted using the scripting language LUA. The original retail scripts are converted into the file missions.bin. Sources to them are not public.
  • script event : Also know as trigger. Scripts can react to certain events like destroyed ships, the player entering a system or a timer running down.
  • script function : Scripts can call various functions to interact with the world. Examples are creating wings of ships, giving wings new orders or starting voice messages or cameras.
  • scripting namespaces : Hard-wired code collections available for scripting use. Each does contain a number of useful scripting functions. The namespaces are: math, lua, NStarSystem, NPlayer, NWing, NShip, NGroupAi, NCamera, NComm, NMission, NScript, NWaypoint, NObject, NContainer, NTerminal, NNPC, NGUI, NSound, NVector, NDebug. "math" and "lua" are original lua code collections. More details to follow.
  • stringId : A name for a string that is used by the program instead of the text itself. StringId's are placeholders.
  • Texture : Textures are images applied to a polygon or complete 3D Model. in DSO they are in .dds format.

  • user_strings.xml : Contains additional strings used by a DSO modification. This is human-readable and can be edited by worksheet programs like MS Excel. Needs to be converted into .res format before it can be used. Use the Ascaron delivered tool XML2ResConverter.exe to do so.
  • user_strings.res : A resource file. Contains additional strings used by a DSO modification. Is already converted and ready for use.
  • -
  • Wing : A logical group of ships. Contains a wingleader and wingmen. You can only assign orders to the whole group. In DSO all ships are also in a wing, even if there is just one ship inside.
  • Wingleader : Part of a wing. Each wing will have exactly one wingleader. If the wingleader is destroyed, you can rely on the wing having been eliminated.
  • Waypoints : Wings may be ordered to fly to certain positions in space. These are called waypoints. Waypoints are space objects that will trigger a script event if the player or a certain ship comes close enough. They have a position and a given radius. See also coordinates.
  • XML2ResConverter.exe: A tool to convert a user_string.xml to a user_strings.res. It needs to check the global.res to avoid overriding stringId's from the original game content.
  • -
  • -

Comments 0

No Entries.