Now this guideline will not work if you do not read it carefully and follow it.
Now if you have an problem with this guide you can PM me about it and i will try to clear it up.
Anyway before you begun your creation of a mod you need to register your Modder ID here. The link will also be at the top of this thread for quick reference.
Modder Name : | text |
Modder ID : | text |
Modder ICQ : | text |
Modder E-Mail : | text |
Modder Website : | text |
Mod Name : | text |
Mod Date : | Date |
Mod ID : | text |
Mod Version : | decimal number |
Mod State : | Alpha/Beta/Release |
Mod Type Scripted : | 1. Scripted only 2. Scripted 2a. System 2b. Weapon 2c. Ship 2d. Combined 2e. Other – If Combined or Other, please include further detail |
Mod Type Non-Scripted : | 3. Non-Scripted 3a. System 3b. Weapon 3c. Ship 3d. Combined 3e. Other – If Combined or Other, please include further detail |
Dependencies : | Text, here is where you list what submods you require for your mod to work, Ex. MuliMod, and/or UniGUI |
Description : | text |
Language : | text |
Key binds : | text (if applicable, meaning if your mod uses any kind of key binds, list them here.) This key bind opens the “UniGUI” gui window if pressed. [zzUniGUI.UniGUIToggle] |
Developer Notes | |
Feedback : | text |
Version History : | text |
Known Issues : | text |
File List : | include all new or altered files and specify location. Altered versions of original file should be starred.
Example format. (Using Antimatter’s Marauder Fighter Mod) “” “simsshipsplayer” |
Mod Type Scripted : | 1. Scripted only 2. Scripted 2a. System 2b. Weapon 2c. Ship 2d. Combined 2e. Other – If Combined or Other, please include further detail
|
Mod Type Non-Scripted : | 3. Non-Scripted 3a. System 3b. Weapon 3c. Ship 3d. Combined 3e. Other – If Combined or Other, please include further detail |
New files should be listed in modinfo.txt, this file to be included in the root directory of the mod.
The location of the files should also be included in modinfo.txt.
Two prefixes should be used in all new files and the mod folder.
Use of a prefix will make sorting easier if attempts were made to combine mods.
The first prefix should be a modder ID between 3 and 5 lowercase characters.
The second prefix should be a mod ID to differentiate between mods made by the same modder, consisting of between 1 and 5 characters (lowercase or numbers). Each new mod and each new version will need a new mod ID.
The mod folder should have a name of the form ModderID_ModID, eg. anti_1.
For files, the prefixes will be followed by the descriptive part of the filename.
These parts of the filename will be separated by underscores.
The full format will be ModderID_ModID_Description.Extension
Example – if I were to create a file for a missile in my destroyer mod and this is my first mod the file would be anti_1_destr_missile.ini.
If system or weapon mods are used alone they will need to replace a current system or weapon file, meaning that changing the name of the file is impossible. This applies only to the ini file contained in the subsims/systems/player or subsims/systems/nonplayer folders. For all other alteration such as those to avatars and ini files for projectiles (rather than the launcher) a new file should be created.
To avoid confusion, the file for the appropriate type of system or weapon should be replaced.
Replacing the most basic version of the appropriate system or weapon will also allow easier access to it from early saves.
When altering nonplayer systems or weapons, identify and list the nonplayer ships which will be affected by the change in modinfo.txt.
The systems or weapons altered should be listed in modinfo.txt.
Any new player system or weapon (weapon here referring to a gun or launcher ini file, not the projectile or avatar files) files should be located in subsims/systems/player, the programs and subsystems subfolders to be used where necessary.
Any new non-player system or weapon (weapon here referring to a gun or launcher ini file, not the projectile or avatar files) files should be located in subsims/systems/nonplayer, the external subfolder to be used where necessary.
All weapon (projectile) files should be located in sims/weapons.
Any known problems relating to saved games, such as the crash caused by switching off the mod after new systems have been added to the saved game should be detailed in modinfo.txt.
If new systems are created, new entries can be added to the end of text/player_systems.csv to set the names to be used when the system is displayed in the hangar or trade screen and the HUD. If existing systems have been modded then you should change the display name (text key) in the system.ini and add that text key and name to player_system.csv.
SHIP MODS
Mods altering player ships should be separate from those altering nonplayer ships.
One ship should be altered per mod to allow for combination of mods with minimal editing.
Where mods for many ships are designed to be used in conjunction, ensure that the mods all begin with an appropriate identifier so that they are listed next to each other when the list is alphabetically sorted. This will allow easy selection of all appropriate mods.
Systems or weapons should be added as new files (no need to replace the standard files) and prefitted to the modded ship (see section on system/weapon mods above).
PLAYER SHIP MODS
For single player the command section should be replaced.
For instant action the storm petrel should be replaced.
Where player ships are renamed using text/player_ships.csv please note this in modinfo.txt.
AI SHIP MODS
New ships should replace those which would play a similar role to allow for balanced combination of mods.
COMBINED MODS
Combined mods should be used only where this combination does not affect compatibility with other mods.
Combining a ship mod with a weapons mod will work, since all the weapons would be given new filenames and no conflict would arise.
When creating a combined mod, details of the combination should be included in modinfo.txt.
This covers the details for scripted mods, if your mod is a combination between script and say a weapon/system then also check up above under the non scripting mod detail section for details on say weapons/system.
SOURCE CODE
If the Script does not replace any script already present in the game then the Mod Creator do not have to include the source code if he/she desires not to.
However if the Script replaces an already present script in the game the Mod Creator has to include and reveal the source code of that one spefic script so that other Mod Creator or Player can edit the file if it is causing conflicts with another scripted mod that also replaces the same file.
VARIABLES, GLOBAL, ARRAYS
To prevent conflicts between Scripted mods, where Mods created, choose the same variable name for one of their variables. The naming of the variables should follow this guideline.
Two prefixes should be used in all new variables, global, arrays, etc.
Use of a prefix will make sorting easier if attempts were made to combine mods.
The first prefix should be a modder ID between 3 and 5 lowercase characters.
The second prefix should be a mod ID to differentiate between mods made by the same modder, consisting of between 1 and 5 characters (lowercase or numbers). Each new mod will require a new Mod ID. (Removed the every new version require a new mod ID because that would be clumbsome and annonying to update your scripts for every new relased version).
The full format will be ModderID_ModID_Description
Example: If I had a varriable that keept track of how many marine aboard a ship i would name it Anti_1_marinecount.
KEYBINDS
If the Scripted Mod Require any type of Key Binds, the mod creator should List the recommended Key Binds in the ModInfo.TXT file, and also include description of what that key bind will do. For a sample of what it should look like check under “MODINFO.TXT” header and you will see the format of the file and couple example.
GUI, DOCKING TO BASE – Using Furture Trader by Zazicle as a example.
If your mod is say for example “Furture Trader” that only pops up when docked to base, this might confict with another mod that also pops up when you dock to a base like “iFleet” for example.
To get around this problem you should use Zazicle’s UniGUI.
You can also get the document for converting your mod to work along with UniGUI here.
The document covers the details about how to setup your mod to use UniGUI, and also covers how to set it up so it only pops up if you dock to a spefic base, or if you dock to any base, or like “Location Finder” pop up when the user need it.
This covers the details for scripted mods, if your mod is a combination between script and say a weapon/system then also check up above under the non scripting mod detail section for details on say weapons/system.
SOURCE CODE
Every SP mod should include the following note, (preferably in the html that is displayed when the mod is selected):
However if the Script replaces an already present script in the game the Mod Creator has to include and reveal the source code of that one spefic script so that other Mod Creator or Player can edit the file if it is causing conflicts with another scripted mod that also replaces the same file.
“Any mod in the mods folder may disrupt the multiplayer game to your disadvantage. It is recommended that you de-select this mod and restart your game before joining a multiplayer session”