LevelScaling
Highly configurable mod to adjust difficulty progression before and after Level 20. Includes challenge levels and run modifiers to spice up your games, and stats tracking for individual levels, whole saves, and globally everywhere.
CHANGELOG
1.1.0
- Malfunctions - a new way to challenge your team with unique run modifiers, different to Challenge Levels. The host of your lobbies can enable them from the Level Scaling menu (either on the game's main menu or in the multiplayer lobby menu).
- Malfunctions apply to the entire run. You cannot change them once you've selected it!
- Saves with a Malfunction will show them on the save file selection screen
- Lobby members are notified of the current Malfunction if it's changed in the lobby menu
- Personal best levels are saved! See them from the Level Scaling menu. Reaching high levels gives a little badge next to your personal best.
- Server-side features of Level Scaling CANNOT be configured when using Malfunctions! All default config values are used if a Malfunction is active (unless the Malfunction changes them). Client-sided configs (like level stats ui) are not affected.
- Good luck!
- Added a config option to display details when loading a new level. The loading screen will show exactly what the game is currently doing. (this is mostly for the host, clients will only see "waiting for other players" most of the time)
- Adjusted some min & max & default values for some config options
- Deaths that occur outside of a level (such as the shop or truck lobby) will no longer increment the death counter for run stats
- Significantly reduced the max possible map value and valuable caps. Photon has a limit of 1000 views, having too many valuables would exceed this limit and cause people to get stuck in loading, oops!
- Certain stats on the Stats UI will now flash if their value changes (to pop out more); can be disabled
- Fixed an issue where levels weren't being counted as completed for non-hosts
- Fixed an issue where leaving the game during a Challenge Level would reset the number of cleared challenges on your global stats for that level
- Fixed an issue where extracting a valuable that had not been discovered would not decrease the "total possible found objects" counter (mainly an issue when killing enemies using an extraction point and not being able to discover their orb before it gets extracted)
- Fixed an issue where, in some situations when playing multiplayer, enemies would be counted as killed when taking damage, even if they were alive
- other fixes that i kinda forgot to write down
1.0.2
- adjusted how the number of enemy spawns is modified to improve compatibility
- note: SpawnConfig will have priority over Level Scaling's enemy configuration. if SpawnConfig is installed, Enemy Rush will be blacklisted from challenges.
- raised the cap for valuable volumes to raise the chances that the configured map value can be reached more consistently if set to a high amount
- for Tiny objects, this is 6.0x higher
- for Small objects, this is 4.0x higher
- for Medium objects, this is 3.0x higher
- for Big objects, this is 2.0x higher
- for Wide objects, this is 1.5x higher
- for Tall objects, this is 1.25x higher
- for Very Tall objects, this is 1.1x higher
- for the total object cap, this is 20.0x higher
- you can now adjust how configuration values are rounded when interpolated between level numbers
- fixed an issue with Shared Durability where players who got damaged due to value loss were completely deleted from the universe (in simple terms)
- this caused a lot of issues, mainly one where players were permanently unable to be revived
1.0.1
- hotfix for level stats UI not hiding when disabled
1.0.0 (release!!!!! :D)
good enough to call this fully released now.
- New Level Scaling Menu - see a few extra features from a new in-game menu. Can be accessed from the main menu, the lobby menu, or the pause menu. Can also be disabled in the config.
- Global Stats - you can now track your stats across every run, hosted by you or not. Global stats are client-sided and locally saved. A backup is made every time the game launches, and you can reset your global stats by deleting your global stats save (of course).
- Level Simulation - see the specifics of each level from 1 to 100 in this menu. Displays the approximate number of extraction points, modules, map value, quota difficulty, challenge chances, number of enemies, and enemy health multipliers. Useful for knowing if you've tweaked your settings juust right. (this menu can be disabled in the config)
- Credits - the special list of special people who've helped me along the way.
- you can now modify the number of enemies (for each tier) in the config. this is enabled by default! level scaling has its own default balancing for this.
- you can now modify the enemy health percentage in the config. this is disabled by default (i think its out of the scope for the games balance), but feel free to mess around with it!
- you can now turn off challenge tutorials in the config (this is client-sided)
- you can now adjust the Y offset of the level stats UI
- removed the completion indicator (value text turning green) from the Orb Drops stat temporarily. it wasn't working for non-hosts, i'll find a workaround later.
- custom value ui - if a valuable's value reaches $0, the ui will instantly update to show $0 instead of interpolating
- level scaling's current version will now be shown on the main menu (can be disabled)
- fixed an issue where the "Added Per Player" config option for Total Map Value was not adding the correct amount of map value
- fixed an issue where enemy despawn timers were unintentionally affected by Enemy Rush
- no longer depends on repolib, but now depends on menulib
0.10.0
- Adjustable Challenge Starting Levels: choose when challenges can start to appear from the config.
- Client-side mode: (off by default) - disables challenge levels in exchange for vanilla compatibility, and the ability to use Level Scaling independently of REPOLib.
- Custom Value UI: (on by default) - when holding a valuable, the text colour will fade from green to red depending on current value compared to original value. (just something i thought would be nice for the mod, idk why)
- Alternate Stamina UI: (off by default) - displays stamina starting at 100 instead of 40, each upgrade adding 25 instead of 10. helps stamina feel more consistent with health. stamina will functionally remain the same as vanilla, just have its display multiplied.
- Broken Map: map will now be usable, but the screen will be blank.
- some general fixes and adjustments.
- stats are no longer synced as they don't really need to be, and will be handled by each client on their own.
- the "Found" stat will now take into account if a valuable has broken before it was found by a player. it will function similarly to the "Extracted" stat if a valuable were to be damaged. you can change how this displays in the config.
- by default, the "extracted display option" and "found display option" will now be set to Alternate in the config
- fixed an issue where challenges could appear even if the chance multiplier was set to 0
- fixed an issue where loading a save without level scaling data would sometimes just not work
0.9.4
- Updated for v0.3.0
- Enlarged Level will now always spawn one extra extraction point
- Dense Fog fog distance reduction will now constantly oscillate between -70% and -45% throughout the whole level (originally just -62%)
- Level timer will no longer stop during "destroying slackers", only when the engine starts
- Fixed an issue where surplus valuables (the tax return bag) were being affected by Fragile Valuables - it's not supposed to be
- Fixed an issue where enemy strength breakpoints were not reverted when Enemy Rush occurs
0.9.2 - 0.9.3
- Added a config option to disable the level minimums for each challenge type (allowing any challenge to appear on any level number)
- (0.9.3 hotfix - fixed this being enabled by default, it's not supposed to be)
- Changes to Danger Zone:
- Time before passive damage begins: 5s -> 10s
- Time between damage is now doubled when at 10 HP or below
- Damage is now completely paused while there are no enemies spawned on the map, and will resume 7.5 seconds after one respawns
- The spawn cap for valuable types is now based on the configured total map value (partially fixes an issue where setting a super high map value on early levels wouldn't spawn enough valuables due to the limit - the cap will be raised up to 10 times its original value, but the map value may still be below what's set in the config)
- Fixed an issue where challenges weren't counted to the counter for run stats
- Fixed an issue where run stats would persist between runs
- Fixed an issue where deaths in the Disposal Arena would count towards the death counter
- Updated the README to show exact information about challenge levels (rather than being vague)
0.9.1
- Fixed an issue where completed extractions weren't being counted if a moneybag was extracted
- Swapped the starting levels of Danger Zone (now lv 5) and Shared Durability (now lv 12)
- Danger Zone and Shared Durability's gimmicks are now disabled if the truck is in its leaving state (either "destroying slackers" or "starting engine")
0.9.0
- Run Stats - alongside level stats, LevelScaling will now record stats for the entire run; these stats will be displayed on the save file in the main menu. When loading a save without run stats, they will be automatically created for that save. Run stats will be deleted if a save is deleted, even if LevelScaling is not installed when deleting the save.
- New challenge level: "Shared Durability" - appears starting level 5
- When "guaranteed challenges" is enabled, you may now have the same challenge type appear consecutively
- this fixes an issue where guaranteed challenges would not occur if only one challenge type was enabled in the config
- Dense Fog: player damage is now reduced by 20%
- Enemy Rush: the camera glitch effect that plays when healing will now be omitted for small heals that occur in quick succession (to hopefully prevent your screen from flashing a lot)
- Over-Overcharge: will no longer occur earlier than level 10; overcharge speed will no longer be affected by moon phases
- Fixed an issue where the progress bar would not display when challenge tutorials are shown at the start of a level
0.8.1
Some small balance changes to challenges
- Dense Fog: reverted the visibility change, made level size even smaller than previously (by about 17%)
- Lights Out: lowered the visibility further by about 5%, increased walk speed by about 5%
- Enlarged Level: increased size by about 10%, increased stamina regen speed by 33%
- Danger Zone: revivals no longer put you at 11 hp, extra damage via Increased Damage is no longer accounted for (although at the moment challenges cannot be combined... yet!)
- Fragile Valuables: increased fragility and reduced durability by 10%, increased average value by 10%, made values round to 100 after applying the multiplier
- Overtime: increased total map value by 7%
- Broken Map: level is now 10% smaller
0.8.0
- You are now able to configure most changes that Level Scaling previously made. The list is as follows:
- For module count: base amount, randomness, per-player scaling, and map-specific multipliers.
- For extraction count and total map value: base amount, randomness, and per-player scaling.
- For haul goal (quota): base difficulty, extraction point scaling, and rounding (eg. to hundreds or to thousands)
- For challenges: you can now guarantee challenges on each level should you wish, and re-enable the possibility for challenges to occur on levels where the moon phase switches
- Note that when challenges are guaranteed, the level requirements for each challenge are ignored
- New challenge level: "Danger Zone" - appears starting level 12
- Slightly reduced visibility during Foggy Level and Lights Out challenges
- Increased the rate at which overcharge discharges during Enemy Rush and Over-Overcharge
- Level stats will now be hidden during a challenge tutorial popup
- Hopefully fixed an issue where challenge levels could happen on the disposal arena
- Hopefully fixed an issue where items falling in pits might incorrectly increment the Broken value stat
0.7.0
- You can now configure if Level Scaling modifies the base game scaling, including module counts, extraction counts, quota scaling, and total map value scaling. (all host only)
- If any Challenge Level types modify these values, the modifications will adjust accordingly to the vanilla amount or Level Scaling amount, whichever is selected in the config
- You can now configure the individual weights of each challenge level type (all host only)
- You can now toggle each individual statistic on the level stats UI (client-side)
0.6.4
- Updated for 0.1.2.47_beta
- You can now choose how the Extracted value displays on the stats UI - original total map value, current remaining map value, or alternate between the two (see config)
- Challenge levels will now be impossible on Levels 5, 10, 15, 20, and 25
- Some balancing changes to the Enemy Rush challenge to account for the new moon phases
0.6.3
- Updated for 0.1.2.37_beta
0.6.2
- Added configuration options for hiding the level stats UI under certain conditions
- Added a configuration option to hide the legacy overcharge UI
- Added a configuration option to multiply the chances of or disable Challenge Levels altogether