Making a mod package: Difference between revisions
Line 145: | Line 145: | ||
: Type of the executable. Important if the executable has to be run by a specific interpreter like .Net. Can be either one of: | : Type of the executable. Important if the executable has to be run by a specific interpreter like .Net. Can be either one of: | ||
:: ''OSBinary'' - Normal binary which can be executed by itself (assumed by default) | :: ''OSBinary'' - Normal binary which can be executed by itself (assumed by default) | ||
:: ''WinExe'' - Normal Windows executable (.exe) - only supported for Windows only packages | :: ''WinExe'' - Normal Windows executable (.exe) - only supported for Windows only packages (assumed if ''ExeName'' ends in ".exe" and ''ExeType'' is not given as '''DotNet''') | ||
:: ''DotNet'' - .Net binary, executed by MS.NET on Windows, Mono on Mac OS X and Linux | :: ''DotNet'' - .Net binary, executed by MS.NET on Windows, Mono on Mac OS X and Linux | ||
:: ''Jar'' - Java .jar archive (assumed if ''ExeName'' ends in ".jar") | :: ''Jar'' - Java .jar archive (assumed if ''ExeName'' ends in ".jar") |
Revision as of 11:31, 21 March 2013
The Anniversary Edition comes with a set of mods in the "package" format. This new framework also allows modders to make third-party mods that will install easily into the Edition. You can start your package by copying an existing AE package and modifying it to save time.
Package format 2.0
The AEI 2 prefers the new 2.0 package format, but will also read 1.1 packages.
To create a new mod package from scratch, follow these seven easy steps:
1. Open up your AE/install/packages/ folder.
2. Create a new folder with a name corresponding to your mod. No spaces, please. The five digit number in front corresponds to where in the load order you want your mod to be. Please, leave some space between your mod and other AE mods. See HERE to know how to number your mod.
3. Create (or copy) a config file named "Mod_Info.cfg" inside your new folder (see section "Mod_Info.cfg" below).
4. If you have .oni files, make a folder named "oni" inside your package folder. If you have .bsl files, make a folder named "bsl" inside the package folder. If you have XML patches (.oni-patch files), make a folder named "patches" inside the package folder.
5. Make a folder called "common" inside the oni/, bsl/, or patches/ folders if your mod will work on both Windows and Mac OS X. Make a folder called "win_only" or "mac_only" if you have files intended for only one platform or if certain files need to be in one format for Windows and one for OS X.
6. If your mod modifies the global data in level0_Final, make a "level0_Final" folder inside "oni" or "patches". For every level that your mod uses, make a "levelX_Final" folder inside "oni" (level1_Final, level2_Final, etc...). However, a BSL mod uses the names of the IGMD subfolders the script(s) will go into, e.g. a script that is meant for Chapter 1 goes in "bsl/EnvWarehouse/".
7. Put the appropriate types of files inside their respective levelX_Final/ directories. Check the section "Folder structure" below to make sure you did it right!
Special note: Be very careful when replacing (not adding) M3GM, TRAC and OBAN. With TRAC, you must include all of the children of the TRAC you are adding. With M3GM, you must also include the file that references the M3GM. With OBANs, you need to include the AKEV that links to them.
Mods
Mod_Info.cfg
AEInstallVersion -> 2.0 NameOfMod -> Improved Weapons Creator -> Geyser, Loser, Iritscen, Gumby ModVersion -> 1.1 IncompatibleWith -> 11100,23050 DependsOn -> 45000 UnlockLevel -> 25 Readme -> Improves the appearance and mechanics of existing Oni weapons. \n \n Currently contains...
- Explanation of fields
Entries marked with an asterisk (*) are only used if the mod is not yet listed on the Oni Mod Depot. Otherwise, the AEI will display the versions of those fields that are found on the Depot's node for that mod.
- AEInstallVersion
- What version of the Installer is needed to read this package.
- NameOfMod
- The "public" name of the mod. It can be anything you like, but should be written in an easily understandable manner *.
- ModVersion
- The version of the mod *.
- Creator
- The name(s) that you want to get credit for the mod *.
- Readme
- The read-me text. You can make linebreaks by using " \n " *.
- IncompatibleWith
- Package numbers of mods this mod will not work with at the same time. Multiple entries separated by ",".
- DependsOn
- Package numbers of mods this mod depends on to function. Multiple entries separated by ",".
- HasBSL
- If set to "Yes", the Installer considers your mod a scenario and takes steps to exclude other BSL scenario mods from being installed for the same level. If set to "Addon", the Installer allows your mod to be installed to any level without restriction. Of course not all third-party BSL add-ons are guaranteed to be compatible with each other, but this is an inherent risk in third-party modding. Mods with conflicting BSL files for a level should be listed in the IncompatibleWith field. If this tag is left out, "Yes" is assumed by default if the mod contains a "bsl/" folder.
- UnlockLevel
- If this mod adds a new level this flag allows to unlock that level in persist.dat. Multiple level numbers can be given separated by ",".
Folder structure
Compared to the folder structure of AEI 1.1 packages, AEI 2.0 packages have one additional level of folders within the oni/ and bsl/ folders to allow one mod package to support both platforms. So if a mod contains sounds for Windows and Mac OS X, you put the OS-specific files within the appropriate folder, win_only/ or mac_only/. Furthermore, we now have the ability to add XML patches. Those have to go to the appropriate folder within patches/.
12345ExampleMod(.zip) Mod_Info.cfg oni/ common/ level#_Final/ *.oni win_only/ level#_Final/ *.oni mac_only/ level#_Final/ *.oni patches/ common/ level#_Final/ *.oni-patch win_only/ level#_Final/ *.oni-patch mac_only/ level#_Final/ *.oni-patch bsl/ common/ tctf_ii/ *.bsl win_only/ tctf_ii/ *.bsl mac_only/ tctf_ii/ *.bsl
Folders without content can be left out, so a basic mod with only level 0 .oni files for Mac OS X only will look like this:
12345ExampleMod Mod_Info.cfg oni/ mac_only/ level0_Final/ myFile.oni
Tools
Mod_Info.cfg
AEInstallVersion -> 2.0 NameOfMod -> OniSplit Creator -> Neo ModVersion -> 0.9.82.0 Readme -> Management of Oni's .dat files ExeName -> Tools/OniSplit.exe ExeType -> DotNet WorkingDir -> Base IconName -> Tools/MyIcon.png
- Explanation of fields
Entries marked with an asterisk (*) are only used if the mod is not yet listed on the Oni Mod Depot, otherwise the AEI will display the version of those fields that is found on the mod's Depot node.
- AEInstallVersion
- What version of the Installer is needed to read this package.
- NameOfMod
- The "public" name of the mod. It can be anything you like, but should be written in an easily understandable manner *.
- ModVersion
- The version of the mod *.
- Creator
- The name(s) that you want to get credit for the mod *.
- Readme
- The read-me text. You can make linebreaks by using " \n " *.
- ExeName
- Path to the executable file if it should be added to the Tools menu of the AEI. Probably mostly useful for GUI-based tools. Do not forget to add the path to the file in relation to the AE/ folder. (Optional tag)
- ExeType
- Type of the executable. Important if the executable has to be run by a specific interpreter like .Net. Can be either one of:
- OSBinary - Normal binary which can be executed by itself (assumed by default)
- WinExe - Normal Windows executable (.exe) - only supported for Windows only packages (assumed if ExeName ends in ".exe" and ExeType is not given as DotNet)
- DotNet - .Net binary, executed by MS.NET on Windows, Mono on Mac OS X and Linux
- Jar - Java .jar archive (assumed if ExeName ends in ".jar")
- WorkingDir
- Specify the working directory for the executable specified by ExeName. Can be either one of:
- Base - Working directory is the AE/ folder (assumed by default)
- Exe - Working directory is the folder where the executable is located
- GDF - Working directory is GameDataFolder/
- IconName
- Path to an icon for the AEI Tools menu. Must be in PNG format and between 16x16 and 32x32 in size. If not specified, no icon will be used.
Folder structure
00000OniSplit(.zip) Mod_Info.cfg plain/ common/ Tools/ OniSplit.exe win_only/ mac_only/
The folder plain/ is for files not related to mods. Files/folders within "plain/[platform]/" are relative to the base folder of the AE, so the example would put the file in "$VanillaOni/AE/Tools/OniSplit.exe" on both platforms.
Package format 1.1
Mod_Info.cfg
AEInstallVersion -> 1.1 NameOfMod -> Improved Weapons ModVersion -> 1.1 Category -> AE: Weapons Creator -> Geyser/Loser/Iritscen/Gumby HasOnis -> Yes Readme -> Improves the appearence and mechanics of existing Oni weapons. \n \n Currently contains...
- AEInstallVersion
- What version of the Installer is needed to read this package (choices are 1.0 and 1.1). 1.0 is deprecated, but for the sake of thorough documentation, here are the functional package-handling differences between the versions:
- 1.0 (Edition 2009-07): Initial release.
- 1.1 (Edition 2010-05):
- Now supports BSL mods. This means that the HasBSL flag now works. See step 7.
- No more division of level0_Final into level0_Character, level0_Textures, etc., and no more need for a double-path like level1_Final/level1_Final. See step 5.
- ModString is now deprecated in place of ModVersion.
- Supports floating-point version numbers, like "ModVersion -> 1.1".
- Supports platform-specific mods by use of Platform flag.
- NameOfMod
- The "public" name of the mod. It can be anything you like, but should be written in an easily understandable manner, since it is displayed for the user in the Installer.
- ModVersion
- The version of the mod; tells the Installer if you are using the most current version when updating.
- Creator
- The name(s) that you want to get credit for the mod, displayed to the user in the Installer.
- HasOnis
- Set this to "Yes" to tell the Installer that .oni files are present.
- HasBsl
- If set to "Yes", the Installer considers your mod a scenario and takes steps to exclude other BSL scenario mods from being installed for the same level. If set to "Addon", the Installer allows your mod to be installed to any level without restriction. Of course not all third-party BSL add-ons are guaranteed to be compatible with each other, but this is an inherent risk in third-party modding.
- Platform
- If set to "Windows", mod is not listed in the Installer window on the Macintosh. If set to "Macintosh", mod is ignored on Windows.
- Readme
- The read-me text displayed for the user in the Installer. You can make linebreaks by using " \n ".
Flags not documented here are currently ignored by the Installer.
You are done! Sample mod directory:
81000TCTF3
- bsl
- tctf_ii
- tctf_ii_cutscene.bsl
- tctf_ii
- Mod_Info.cfg
- oni
- level0_Final
- SUBTmessages.oni
- level18_Final
- BINACJBOCharacter.oni
- level0_Final
Package numbering
Please read on HERE.
used numbers
AE packages are marked with an asterisk (*).
Placeholders are marked with two asterisk (**).
Last update: Aug. 20, 2012
11000 Better Weapons (*) 11100 Three Dee Shells (3D bullet casing) 12000 New Weapons (*) 12010 Assualt Rifle 12100 ONIrules Weapons Collection 2 12300 Devastator 13000 Multi Use Explosive 21000 Upgraded ONCCs (*) 21200 Sentry Droid 21300 Guard Dogs 21400 Wraith Mod Squad / Wraith Squad 21500 Brutal AI 22000 New Characters 22005 Sam Mega Pack - Characters 22006 Sam Mega Pack - Conversion 22007 Sam Mega Pack - Levels(**) 22008 Custom Character Mega Pack BGI (Level modifications + Characters)(**) 22009 Custom Character Mega Pack BGI (Characters only)(**) 22010 Custom Character Mega Pack BGI (Level modifications only)(**) 22015 BGI Executives, Guards, Receptionist* 22016 BGI Sarai (**) 22017 BGI Agents 22018 BGI Troopers (**) 22019 BGI Jubei and Akane original version 22020 BGI Assassins (updated Jubei & Akane)(**) 22022 BGI Hydra (**) 22023 BGI Hammer 22024 BGI Typhoon(**) 22025 BGI Ninja Bot 22026 BGI Heavy Bot 22027 BGI Bat * 22028... 22029... 22030... 22110 White Chief 22111 Black Chief 22200 Konoko's Special Wardrobe 22300 Bozzman's TCTF 22500 Muro's Wardrobe 22390 RedBlackSwitch 22400 Blackops Syndicate by TOCS 22410 Konoko and Female Blackops 22450 Casual Tanker 22500 Daodanized Mukade 23000 Shinatama Too (*) 23100 Shinatama Bot 23150 Berserker Gally (Alita) 23200 Golden TCTF 23201 GoldenTCTF Fight 23205 Ultimate Griffin (**) 23210 ............. (?) 23300 James and Jamie Hasegawa 23400 Kyrie\Akirie (**) 23500 Casey 23580 Red Fury Variant 4 23590 GreyFury2.0 23595 Regenerating Tanker 23600 Kojiro 2.0 23605 Apollo (**) 23610 Hayate 2.0 23615 Hanako 23620 Thor* 23630 Mutant Jester 23640 RAYMAN (**) 23650 CHUCK NORRIS (**) 23660... 23670... 23680... 23690 Semi Mutant Muro (**) 23700 Mutant Konokos (**) 23900 Character Additives 23905 Skull Team Fight 24000 Severed Textures (*) 24100 HQ Training Textures 24104 HQ Airport Textures 24110 Vicious Reillys Konoko 24210 Yin Yang Fury 24220 StoneTank 24230 Metal Ninja 24240 Elite Tanker 24150 Konoko-Three-in-one 25000 Motoko 26000 Konoko HD 27000 Alita Last Order 28000 Griffin HD 29000 Character Retexture 29001 TCTF Package 24500 Better Consoles and Doors 24501 Better Warehouse and Training 31000 Glass Breaking Moves (*) 32000 Dangerous Glass (*) 32100 Complete Glass Mod 33000 Improved Weather (*) 34000 Exploding Barrel 34090 Blood 34100 Perceptible Blood 39000 Black Chenille (demo about black plus alpha issue) 42000 Dashing AI (*) 44000 Konoko Retextured 44001 Comguy Retextured Reflective 45000 Ninja Shadow Dash (*) 45500 Dash Blur (*) 46000 Prone Mode Revisited 50000 Jewel Fix 51000 Unlock All Moves (*) 52000 Andrashi TRAMs (*) 52100 Fixed TRAM 52200 Particle Trails 52230 Stunned Throws Fix 53000 Knockdown Revamp (*) 55000 New Animations 55000 Barabus Jetpack 55010 Barabus Draining Regeneration 56000 Mod Brick 1 Speed 60000 All Starlab 70000 HD Screens 70100 Mukade Clones 77700 Survival 77720 Crazy Casey 77721 Crazy Casey Final Battle 77730 Shins New Shoes 77770 Oni Zen Garden Roof 77771 Oni Zen Garden Arena 80100 Real Skies 80200 Arena of Hurt 80210 Junkyard 80220 Hexagon 80230 Muro's Lair - Mission 1 80240 Parkour Challenge 80260 De Dust Deluxe 80270 Boss Battle 80280 Old China 80300 Level Maze 83000 nyan cat 88000 TCTF Regional HQ MOD 90100 Titan Mode 90110 Aiport Assault 2 (v1) 99900 Door Lock Bombing (demo) 99901 Head Shot Mod (beta / POC) 99902 Muro Plasma 99903 Muro Kamehameha idea (**)