I'm announcing the first release of Miasmod, the Miasmata Advanced Configuration & Modding Tool, as well as several sample mods to get you started!
This tool allows you to edit Miasmata'a saves.dat and environment files in arbitrary ways - you can edit the configuration variables that are not exposed through the menu or dig right into the environment file and tweak many aspects of the game itself.
--- Quick Start ---
You can download Miasmod from here:https://github.com/DarkStarSword/miasmata-fixes/releases/tag/miasmod-v1.2.1
--- Sample Mods ---
There are sample mods available here:https://github.com/DarkStarSword/miasmata-fixes/releases/download/miasmod-v1.0/miasmata-mods.zip
These mods have not been heavily play tested yet and could very easily ruin your experience playing the game. If you have not yet finished the game I would urge you to stick to just using the unofficial community patch for now, since that only fixes bugs in the original game and does not aim to alter the experience.
To use these mods, drop them in your Miasmata directory (the same place as Miasmata.exe and communitypatch.miasmod*), then run Miasmod. It will detect the mods and automatically create two new files - alocalmod.miasmod and alocalmod.rs5. If you later install/upgrade/remove any mods (or the community patch) you should re-run Miasmod and choose to "synchronise alocalmod.rs5".
* communitypatch.miasmod is not strictly required, but is highly recommended. Grab it from here:http://steamcommunity.com/app/223510/discussions/0/648812916771880184/
- ailurophobia.miasmod removes the creature. I really really *really* recommend you play with the creature enabled and just learn how to deal with it effectively, but if you absolutely must remove the creature... well there you go, now you can. This has been playtested by my fiance with no creature showing up in her 15 day run (well, it did once with an earlier version of the mod - but after tweaking a few more things it never showed up again).
- cartographobia.miasmod prevents your map from being filled in when picking up notes and removes the effect of using the mental clarity tonic (I didn't remove the tonic itself - it just no longer does anything). You should start a new game for this one since it doesn't clear any map you have already filled in.
- dehydrated.miasmod disables the water jugs and only allows a single drink of water to be carried in the canteen at a time. This may need balance testing.
- insomnia.miasmod disables sleeping in beds and removes the tiredness rate so hopefully you won't die from sleep deprivation. This has not yet been tested for long enough to confirm that you can actually survive.
--- Modding HowTo ---
If you just want to experiment you can work with the "alocalmod.miasmod" file, which is opened by clicking "Open local environment..." or double clicking on it in the list. This will open the editor view of the environment that the game will use (including changes made by any other installed mods).
If you want to get rid of all your local changes, you should delete both alocalmod.miasmod and alocalmod.rs5 then re-run Miasmod (if you only delete one, Miasmod will re-create it from the other).
When you are ready to create an actual mod, click "New Mod..." and give it a name. Miasmod will open the editor view and you can make whatever changes you want. When editing a dedicated mod, the editor will NOT show any changes made by alocalmod.miasmod or other mods - only the changes that the specific mod you are editing will be shown. Whenever you save the mod, Miasmod will ask you if you want to synchronise alocalmod.rs5 - you should choose to synchronise it to make sure your changes are picked up by the game.
--- If You Fix A Bug... ---
Please let me know so I can add it to the unofficial community patch!
--- What are these *.miasmod files? ---
These files track the changes a mod has made compared to whatever it was based on (e.g. communitypatch.rs5/environment). Miasmod creates alocalmod.rs5 by taking a base environment file (the community patch if it is installed, otherwise the vanilla environment) and applying the changes from each installed miasmod file. These effectively contain the same information you see when clicking on "Show mod changes..." in a machine readable JSON encoded format. They can be opened in a text editor (e.g. wordpad) if you need to make manual tweaks.
--- What are these *.rs5mod files? ---
These are just rs5 files with a different extension. Miasmata can crash on launch if it finds extra .rs5 files with certain types of contained files, so these have a different extension to prevent Miasmata crashing if they have been placed in the game directory. Miasmod can be used to merge their contents into main.rs5 to safely use in the game.
--- What is this NOT (yet)? ---
- This is not a generic RS5 archive tool (rs5-extractor.py is - see the next post)
- This is not a map editor (I'd love that too, but it's a hell of a lot of work)
- This does not allow you to add scripted events to the game
- This cannot tweak anything that is hardcoded in the game's executable.
--- Known Issues ---
- Miasmod does not currently detect or warn about conflicts between mods.
- Miasmod does not check if saves.dat has been modified externally (by Miasmata) before saving it, so you should avoid running Miasmata if you have saves.dat open in Miasmod. It does create a timestamped backup of saves.dat though, so you should be able to recover if you accidentally overwrote saves.dat.
- There is currently no way to edit raw binary data fields (the underlying tools can do it if you want to dig into the python scripts - I just haven't exposed any way to edit it through the GUI).
- Expanding "texture_flags" in an environment file is very slow due to the large amount of data under that node, made worse by the Qt Model/View API adding extra overhead (seriously - why can't I just pass it a list of all children at once?) and the fact I'm using a QSortFilterProxyModel to sort and search the tree. Oh, and my code probably sucks too :-p