Hello, everyone. I made a thing! Actually, two things: The first is a general-purpose modloader called Leather, and the second is a mod that lets server owners change the drop tables on their server called DropParty. Getting tired of how quickly players collect things, or want to turn your server into a zany cod knockoff? Go for it! You can rewrite the drop tables more or less from scratch, I guess.
So how do you get started?
- Shut down your server.
- Download leather 1.1.1: http://www.mediafire.com/download/fjryffwrrd7kay3/LeatherLoader-1.1.zip
- Download furnace: https://www.mediafire.com/?8v5si150obj4poe
- Go into your server via FTP or file manager or whatever you’ve got. You should have an accessible Rust_Server_data folder, so navigate into it.
- Upload the contents of LeatherLoader.zip to this folder.
- Download the file entitled mainData (YOU SHOULD PROBABLY BACK THIS UP OR SOMETHIN) and drop it into a folder by itself with the contents of Furnace.zip.
- Run Furnace.exe to “cook” mainData into something leathery that runs mods!
- Upload your cooked mainData over the old one.
That was tough, but now it’s easy to install mods! By the way, quick note: as long as Leather is installed, your server will mark itself as “Modded”.
- Download DropParty 1.1: http://www.mediafire.com/download/015m61udq8azii8/DropParty-v1.1.1.zip
- Take a moment to pop DropParty open. By default, it comes with config files set up for all the current loot tables to remain the same. You should read “Configuring DropParty” to do something about those.
- Upload the mods folder and its contents into the Rust_Server_data folder.
You should restart your server! Now all your shit is crazy and awesome!
So in the DropParty zip (mods/config/DropParty) there’s a bunch of config files- each one of these represent a loot table (the filename correspond precisely to the loot table name), and its contents are set up with the vanilla Facepunch values. NONE OF THESE FILES ARE ACTUALLY NECESSARY AS IS- if a loot table doesn’t have a corresponding file in config/DropParty/, then it just won’t get overwritten. The files are just there to make editing easier for you- you should probably delete the file for any loot table you don’t plan on changing.
So when setting up the loot tables, it’s important that you know that there are 6 important loot tables:
- SupplyDropSpawnListMaster is the table used for airdrop boxes
- ZombieLootList is the table used for zombie drops
- JunkSpawnList is the table used for the brown crates
- WeaponSpawnList is the table used for the white boxes
- AmmoSpawnList is the table used for green(?) boxes
- MedicalSpawnList is the table used for the red(?) boxes (I might have these reversed!)
The other tables are only important because they’re referred to (directly or indirectly) by the above 6. Remove all the references to the other tables, and they stop being important. Oh, and you can add new files to add new tables! TableName.cfg, if set up properly, will add new table named TableName.
The format of these files is pretty darn self-explanatory, I believe. The files are tab-delimited (there MUST be at least one tab between each field). Blank lines and lines that start with # are ignored. Each file has one header line and one or more table entries. The first field in each entry is a weighting, not a percentage. Bigger number means more likely to drop versus the other items. Each entry is of type T for table (the third field must be the name of another loot table) or I for item (the third field must be an item name- the name of all items in the game is in the items.txt file included with DropParty).
When Facepunch drops a game update, you’ll want to rebake your mainData file, but you should be good to go otherwise. I’ll also be redumping & providing new Items.txt & default table cfg files so people who want to make only small changes can stay synced with the vanilla game (although again, deleting table files you’re not modding will make this far easier).
Have fun, let me know if more mods is something that interests you, and let me know what you do with this tech- hopefully something interesting!