Devlogs
MPak v8.0 Release
Posted January 13, 2024 by Master_64
#major #update
Hey all, I've finally got around to reworking the entire pickup system so that we can finally regain control over a very important aspect of Shrek 2, that being the pickups system. If you've mapped for long enough, you already understand that customizing pickups are pretty out-of-the-question...or at least that was the case until this update was released. Hope you all enjoy the newest features! I might end up working on the pickups again if others suggest me to do that, but it will likely not be my priority. Enjoy!
Changelogs
Additions:
- Re-wrote entire pickups system and ported all existing pickups to the new system, allowing for crazy pickup customization while also providing hundreds of bug fixes
- Added 3 new actors ("MBriarPatch", "MPathNode", "MBearTrap")
- Added 2 new cosmetic patches to MPatcher ("Fix Health Persistence", "Add Pickup Shading")
- Added 1 new function ("SetCheatsEnabled()")
- Added official support for setting the health of enemies in code
- Added icons for MAntiCheat, MPatcher and MMusicManager
Changes:
- Reworked/simplified IfHasInventoryCount to be much more modular and intuitive
- Simplified IfLogicalGate and SaveLoadGame in terms of code
- Fixed a bug where setting the health of a pawn would cause them to take knockback even if they died, typically causing issues
- Fixed a bug where setting the health of a SHEnemy would cause it to completely break it
- Fixed the default volume for PlayASound3D() being much higher than it should be
- Fixed a bug in FancyDestroy() where destroying a BearTrap would not destroy the leaves spawned by the BearTrap
- Fixed a bug where certain functions related to getting an inventory count would fail to work
- Adjusted the tick-rate of MTriggers from 100 TPS --> 20 TPS. Doing this resolves issues with hitting the same trigger multiple times per touch, especially on lower frame rates
- Simplified some code (-3 KB)
Imcompatibility Notes:
- MPickup's no longer create AI nodes automatically, so make sure your map no longer relies on this. Regardless of this major change, this will help your map in the long-run
- All IfHasInventoryCount actions will need to be re-done in your scripts, since the InventoryType variable has been re-done. You'll need to re-specify which inventory type to look at