Skip to content

Releases: MSUTeam/MSU

1.7.2

02 Apr 01:54

Choose a tag to compare

  • Hotfix build. Check the release notes of 1.7.0.
  • fix: missing onMovementFinished event for skills with vanilla 1.5.0 (4032ad9)

1.7.1

01 Apr 23:01

Choose a tag to compare

  • Hotfix build. Check the release notes of 1.7.0.
  • fix: crashing with vanilla 1.5.0 (1e450a8)

1.7.0

01 Apr 17:30

Choose a tag to compare

Now compatible with vanilla 1.5.1.6.

NEW FEATURES

  • add: unique id to entity that is serialized (#430) (documentation)
  • add: ability to get entity by UID globally (#454) (documentation)
  • add: redirect vanilla SkillCostAdjustments system to use MSU Base Values system for skills (#449) (documentation)
  • add: onAnyBroHired event for skills (#434) (documentation)
  • add: functions to check if game is being saved or loaded (#438) (documentation)
  • add: function to get all actors adjacent to a given tile (41a1175) (documentation)
  • add: update checker improvements (#429)
    • remember if the user has already seen an update
      • if the user has not yet seen an update, mark it with a little star and sort it up top
    • prettify patch notes by parsing headers and links
    • add click handler to collapse entry and hide patchnotes
    • if enabled, clicking on the github icon will now directly download the .zip of the release via their browser (documentation)
      • for modders: to disable this behavior, pass {DirectDownload = false} while setting up the github mod source
    • differentiate between base URL (what the user passes), update URL (where we check for updates) and target URL (where we point the player to) for ModSource
    • make the msu mods update screen appear above the modern hooks issue one if necessary (c0b3ef8)
  • add: ability to get keybind from keybinds mod addon (#441) (documentation)
  • add: ability to get first letter capitalized key combinations from keybind (#441) (documentation)

CHANGES

  • change: deprecate MSU-added onMovementFinished skills event and adjust for vanilla 1.5.1.4 (#448)
  • change: improve error message for defparams in ::MSU.Skills.addEvent (#424)
  • change: add info about desired type to ::MSU.Exception.InvalidType (47d1f5f)
  • change: improve how invalid data type errors are shown for msu emulated serialization containers (#410)
  • change: convert floats to ints if they are the same value and should be ints in serialization emulator write functions (#444)
    • This fixes certain exceptions thrown when using MSU emulators to serialize/deserialize certain vanilla bb classes which pass floats to write integer type functions.
  • change: optimize the MSU-added ::Tactical.Entities.getXYZActors functions for the case of 1-tile distance (#442)

FIXES

  • fix: allow null in writeString of serialization emulator (#443)
    • This fixes exceptions thrown when using MSU emulators to serialize an ::MSU.Class.SerializationData when outside a game save process.
  • fix(vanilla): tooltips having a jagged line in their background-image if their height increases too much (#445)
  • fix: add handling in ::MSU.Log. functions for tables with defined len key (#409)

v1.6.0

17 Sep 15:29

Choose a tag to compare

New features

GitHubTags as an alternative mod source #416

1.5.1

25 Aug 16:13

Choose a tag to compare

FIXES

  • fix: Quickhands not working for AI

1.5.0

05 Aug 23:03

Choose a tag to compare

NEW FEATURES

  • add: functions in ::MSU.Text to colorize values, percentages and multipliers (#401) (documentation)
  • add: ::MSU.Utils.benchmark function to benchmark and compare performance of different functions (#398) (documentation)
  • add: ::MSU.Array.removeValues function (#399) (documentation)
  • add: onCombatStarted function in starting_scenario (#392) (documentation)
  • add: ::MSU.Text.colorDamage function (#403) (documentation)
  • add: getMaxMoraleState() function in actor (vanilla only has setMaxMoraleState but no getter) (#407) (documentation)

FIXES

  • fix: a bug introduced in MSU 1.4.0 causing shields' FatigueOnSkillUse not being properly included in the base cost of their skills (#408)
  • fix: an edge case where the FatigueOnSkillUse for skills added by weapons/shields would not immediately update for the last added skill (#408)
  • fix: add a general solution to our handling of the vanilla case of paying for item action during certain AI behaviors. This fixes the issue of the ai being able to pick up a weapon for free (#406)
  • fix: ::MSU.Injury.ExcludedInjuries.get extending the original injuries array (#404)
  • fix: ::MSU.Injury.ExcludedInjuries.get not including extra injuries of included ones (#404)
  • fix: some msu exceptions in screens bb classes not throwing properly (#400)
  • fix: being unable to start scenario battles from the main menu without first having loaded a saved game (ea731fe)
  • fix: events added via ::MSU.Skills.addEvent not working when a custom function was declared (8ceed69)
  • fix: potential naming collision of msu world brush with other brushes of the same name (942385d)

1.4.2

16 Jul 20:32

Choose a tag to compare

FIXES

  • fix: serialization metadata used for serialization emulators becoming invalid after making a save game (#396)
  • fix: vanilla bb code toggle not applying to text bolded using JS (#395)

1.4.1

14 Jul 18:49

Choose a tag to compare

Hotfix build. See release notes of 1.4.0.

  • fix: update checker showing with 0 updates (312bcdb)

1.4.0

14 Jul 18:28

Choose a tag to compare

NEW FEATURES

  • add: new mb/mi tags to allow modders to use bbcode to bold or italicize text (#379)
  • add: small popup notification and expose functions for other mods to add messages (#381)
  • add: print campaign length and time to log when loading campaign (#385)
  • add: roundToMult function in MSU math utils to round to nearest multiple of given number (#358)
  • add: roundToSig function in MSU math utils to round to given significant figures (#386)
  • add: roundToDec function in MSU math utils to round to given decimal places (#388)
  • add: truncf function in MSU math utils to truncate a given float to given decimal places (#388)

CHANGES

  • change: temporarily print full stack trace during deserialization errors (to check for deserialization log spam introduced in 1.3.0) (#387)
  • change: the damage type ratios for vanilla skills with mixed injuries is now dynamically calculated (#383)
  • change: the damage type container in skills is now an instance of a new MSU class DamageType which inherits from WeightedContainer (#389)
  • fix(vanilla): sallet and barbute using wrong variant in setPlainVariant (#380)

FIXES

  • fix: prevent adding reserved keywords to OrderedMap (#384)
  • fix: being forced to have a non-vanilla ui due to font fixes (#379)
  • fix: weapon skills potentially getting wrong base FatigueCost in certain cases (#394)
  • fix: manipulating a skill's DamageType via hooks potentially causing issues (esp. for vanilla skills) (#389)
  • fix: data class type mismatch during loadDataFromFlagContainer leading to error spam in log (#393)

1.3.0

24 Jun 08:22
cd2efd9

Choose a tag to compare

MAJOR

New Features

Changes

  • change: migrate to Modern Hooks! (#316)
  • change: port mod settings to use persistent data (#375) (existing settings will be converted)

Vanilla Fixes

  • fix: not calling onLeave on settlement when using port travel (3bb8ca6)
  • fix: onCombatStarted not being called for AI characters (#275). We also remove perk.inspiring_presence from standard_bearer to maintain vanilla behavior which may cause issues with some mods.
  • fix: add missing vanilla fonts and fix font-face declarations (ac5cc6b). This changes some vanilla tooltips because the styles they were trying to apply were not working.

MINOR

New Features

  • add: ::MSU.deepClone function (#360)
  • add: ::MSU.deepEquals function (#367) (#371)
  • add: input blocker setting which blocks input when a JS input or textarea field is focused (#337)
  • add: addMany function to weighted containers (#319)
  • add: uniques function to array utilities (#322)
  • add: ::MSU.Tile.getNeighbors (#265) (1cbcc84, f35f674, c6d3759)
  • add: isDisarmed function to actor (449a4ae)
  • add: ::MSU.Text.Color with reference Red and Green (87cbd1a)
  • add: colorPositive and colorNegative functions to ::MSU.Text (cc62c89)
  • add: Type mutator and accessor functions to skill (dc93557)
  • add: missing tooltips for the keybind add/change menu (3cc1cb0)
  • add: ::MSU.Serialization.serialize and ::MSU.Serialization.deserialize to replace ::MSU.Utils.serialize and ::MSU.Utils.deserialize. The older functions have been deprecated and the new ones handle all data types instead of only array/table. (1176530)

Changes

  • change: deprecate ::MSU.BBClass.Empty as it is not necessary with Modern hooks (b1cade9)
  • change: remove ButtonSetting title and move text inside of button (0a70ab0)
  • change: don't show damage type if damagetype is only None (600078f)
  • change: ::MSU.Log.printStackTrace will no longer print lines with no variables (9635747)

Fixes

  • fix: SettingsPage tostring not returning the string it creates (#363)
  • fix: BooleanSetting still allowing UI interaction when disabled (#334)
  • fix: handling for adding/removing weapontype during hooks (#369) (#376)

Vanilla fixes

  • fix: some road and shore brushes missing (b8dc639)