5.0.0
This update may not seem that exciting, but it contains some very important changes that had to happen under the hood. It's mostly focused on optimization, error prevention, and overall stability, although with some extra changes.
Major
- Major refactoring, reorganization and rewriting of some important scripts. JaLoader is now separated into JaLoader, JaLoader Classic and JaLoader Common
- Some bugs may be expected
- Possibly minor performance improvements in UI and gameplay
- Modded engine parts can now spawn in junkyards & abandoned cars, if specified
- Modded objects can now spawn in crates & boxes on the road, if specified
- More work on JaLoader Classic, which is JaLoader for Jalopy 1.0
- Installing an already installed extra will no longer modify the weight
- Saving & Loading no longer crashes the game or breaks mods after doing it more than a few times
- !!! Please report ANY CRASHES or ERRORS you get, using the template on GitHub
Gameplay (Tweaks)
- Added a new option that can make crates & boxes spawn with multiple types of items inside, not just 1 type of item. This is enabled, by default
- Added a new option that can remove the smuggling punishments. This is disabled, by default.
API
- Added some extensions, these can be used by mods too
- Added
Mod.Preload()function, which runs as early as possible. It can be used, for example, for loading assets - Removed MonoMod.Backports, due to an incompatibility issue. This may break some mods
- Some of the scripts have been moved into
JaLoader.Common.dll, such as SettingsManager. More scripts will be moved. This may break some mods - Improved stability and error management overall
- Improved overall debugging
- Mods can now add extra space/slots, at a basic level for now. No tutorial is yet available
- Events will no longer be invoked on inactive scripts
- Events will now continue to be fired even if one of them throws an exception
- Many fields are now internal/private and/or have slightly different names and/or are get-only
- Many methods are now internal/private and/or static, avoiding the need for writing
.Instance.
Minor
- Loading time on startup may be slightly increased, at the cost of better debugging
- Installing an already-installed mod in-game via the mods list will now show an error
- A lot more debug messages are now shown in-game, I recommend disabling debug mode to prevent constant annoyances
- Improved
output_log.txtreadability - Game will now not start if any DLL is missing