[Leather] LeatherLoader version 1.1 - Upgrade Drama Whining Thread

Hey, everyone,

Tonight I’ve put out a slight improvement on Leather- call it version 1.1 This update is intended to help the GSPs. It adds a new configuration file to Leather (goes in the same directory as LeatherLoader) that lets GSPs select some options about how LeatherLoader works. It also gives all loaded mods the ability to receive these options. It also comes with some bad news: only mods built against leather version 1.1 can be loaded by leather 1.1. All other mods will crash! I suspect the reverse is true- you’ll need Leather 1.1 to load any post-1.1 Leather mod. I’m going to be addressing this permanently soon, but in the meantime:

Download Leather 1.1 here: http://www.mediafire.com/download/fjryffwrrd7kay3/LeatherLoader-1.1.zip

Here is a list of all Leather mods which have released a 1.1 compatible version:

  • DropParty 1.1
  • VACuum 1.1
  • Limited Sleepers 1.1
  • Rust++ 1.4.2
  • Rust Essentials 1.2.5

—leather.cfg—

This is the new config file, it NEEDS to be in the same directory as LeatherLoader, and it comes packed in the LeatherLoader 1.1 zip linked above. The three options are:

  • modDirectoryPath: The directory that Leather searches for mods in. Rust_Server.exe needs to have permissions to view this folder. By default, it is a relative path- relative from LeatherLoader’s location. You can make it an absolute path if you’d like, though.

  • modFilePattern: Leather attempts to load as .NET assemblies any file in the mod directory that matches this pattern- it’s a simple wildcard thing, not a regex. By default it is *_mod. You can change it to *.dll or something if you’d like, but remember to rename all the mod files!

  • configDirectoryPath: Leather doesn’t do much with this, but all Leather 1.1 mods are supposed to only read and write files in this directory. As you’d expect, Rust_Server.exe needs read and write permissions to this folder, and subfolders.

**—I’m a Leather Mod, What Do I Do?—
**
At the bear minimum, in order to be 1.1 compatible, you need to download LeatherLoader, rename it to LeatherLoader.dll, and build against this new version instead of the old one. If your mod reads & writes configuration files, and you want to be a good citizen, then add the following method to any or all bootstrap MonoBehaviours:


		public void ReceiveLeatherConfiguration(LeatherConfig config) {
		}

This method will automagically be called on startup, and config.ConfigDirectoryPath will be an absolute path pointing to the config directory where you’re expected to do your work. Capture that value and only write to that folder, and you’ve made everyone really happy!

[editline]12th January 2014[/editline]

Okay, my 3 mods are updated- I’ll be sure to update this thread when Rust++ and others are ready.

Added Rust++ 1.4.2 to the list of compatible mods.

No DropParty or GroupGate on HFBs :confused:

I don’t think groupgate is 1.1-compatible yet. Who the hell knows about dropparty though.

Great job Canvox, a definite leader to why leatherloader is vastly superior.

Leather master race assemble!

Thank you for this Bugfix, Leather and Rust ++ Support goes back on tomorrow on DeinServerHost.

Best Regards,
Christian

I have been informed that Rust Essentials 1.2.5 is Leather 1.1 compatible.

I’ve created a new version of Furnace: 1.1. It has two key improvements:

  • It no longer waits for a keystroke before ending the program when it is done. This was requested by some GSPs, and makes sense for a program that is intended to run automatically.
  • Furnace can now be run against an already-cooked mainData file with no negative repercussions. Not sure if you’ve already cooked a file? Just cook it again, nothing bad will happen.

It also has some internal organizational improvements that will help us moving forward.

Download here: https://www.mediafire.com/?8v5si150obj4poe

Furnace 1.1 is compatible with all versions of leather, ever, everywhere. Just use it in place of the old furnace.

Can you update for new Rust?)