March 2024 Stable Update

It is time for the March 2024 Stable Update! The tModLoader team and our amazing community of contributors continues to improve tModLoader. This month's release mainly contains bug fixes. This month we've continued our work to harden multiplayer by updating the server host scripts, made several improvements to Mod Config support, and fixed a dozen or so bugs. As always, if you are having issues of any sort, definitely don't hesitate to check out our [url=https://github.com/tModLoader/tModLoader/wiki/Basic-tModLoader-Usage-FAQ]FAQ on GitHub [/url] or reach out to us at [url=https://discord.com/invite/tmodloader]our Discord[/url]. [h1]Important Feature in Preview[/h1] This month we will be testing a major rework of how mods are loaded and synced on the [c]preview-v2024.02[/c] beta branch. When joining a server, a new menu will inform the user about pending mod downloads and config changes. [b]Modders [/b]should read the [i]How does this affect modders? [/i]section of the [url=https://github.com/tModLoader/tModLoader/pull/3822]pull request[/url]. [b]Users [/b]will be happy to know that local mods will no longer override workshop mods, reducing potential errors from loading outdated mods significantly. The new UI will greatly help users avoid lengthy mod reloads in multiplayer. See [url=https://github.com/tModLoader/tModLoader/pull/3822#issuecomment-1958116726]this video[/url] to see the new UI in action. We hope to perfect this user experience in anticipation for next months release. [h1]New Changes' Highlights[/h1] The following is a list of the most noteworthy changes made for this release. As a reminder, modders should consult the [url=https://github.com/tModLoader/tModLoader/wiki/Update-Migration-Guide#v202401]Update Migration Guide[/url] to see how to adapt to the new changes after running tModPorter. [h1]New Features[/h1] [h2]API Changes[/h2] [b]Destructor_Ben[/b]: [url=https://github.com/tModLoader/tModLoader/pull/4036]Description Parameter Interpolation[/url] [b]Destructor_Ben[/b]: [url=https://github.com/tModLoader/tModLoader/pull/3928]Added TileDefinition class[/url] [b]direwolf420[/b]: [url=https://github.com/tModLoader/tModLoader/pull/4043]Added Player.hasGemRobe[/url] [h1]Bug Fixes[/h1] [h2]Quality of Life and Other Fixes[/h2] [b]John Baglio[/b]: [url=https://github.com/tModLoader/tModLoader/pull/4005]Implement Caching for Mod.GetContent() Results[/url] [b]turtletowerz[/b]: [url=https://github.com/tModLoader/tModLoader/pull/3900]Docker and Management Script Bugfixes[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/e8f9b46342e28250440def603387a81a4009b78c]-skipselect now works on server launches[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/885674a6cd8dd4454fbb0837e395feacfec2060e]Additional ControlledFolderAccessDetected logging[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/1b8213742dbd067ddd8d37e45ad0dd212fbdfe62]Fix issue causing the workshop menu to display improperly[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/9d3cbc347269ba8b100e221226a7ed9d1b7ce3c3]Fix WaspNest accessory not resetting properly[/url] [b]Chicken-Bones[/b]: [url=https://github.com/tModLoader/tModLoader/pull/4016]Remove redundant and erroneous PPID reassignment in launch script[/url] [b]Solxan[/b]: [url=https://github.com/tModLoader/tModLoader/commit/4f461137aeae3aa9c305c7ffafd705a1378f1c1c]Fix Author Search in Mod Browser[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/2fee0aade6f24d77bd72584633a15fd65e57bbfd]Add log message to indicate which mod's config is triggering reload in MP join[/url] [b]Chicken-Bones[/b]: [url=https://github.com/tModLoader/tModLoader/commit/16cac83bd15170cb5be8d5eb780564d41e69af98]Fix a missing load time performance optimization when building global hook lists.[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/b20d48808b5fe7bb918dbc49d8789473873c37dd]Clarify serverconfig.txt being automatic default[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/247c77b853aa299c39328d3484ab9e072d4cc1d1]Fix Display Issue for Sonar Buff and pickup counts when fishing with multiple lures[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/bb604a9e700335567896bcea60c8e54e5ab9b0a8]Fix Mods Not Loading for some GOG users[/url] [h2]API Fixes and Changes[/h2] [b]Chicken-Bones[/b]: [url=https://github.com/tModLoader/tModLoader/commit/d053a672f899174f3c043c0f78633ff8ab98d0d0]Update MonoMod[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/03a47b82c764e73243aa809f0d033f4dfbaaa793]Added HitModifiers.DisableKnockback to fix Flat modifier applying to knockBackResist==0 NPC[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/b5b14d5adc1ec356df07bbbb6baca30c47d304ca]Fix issue with ModProjectile.CooldownSlot not working correctly.[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/b1faab1398c5f229b664636b19eae08daa00bdd6]Language workshop tags will persist with some leniency.[/url] [b]Michael Scott[/b]: [url=https://github.com/tModLoader/tModLoader/pull/3970]Fix modded toilets not granting fishing bonus[/url] [b]Destructor_Ben[/b]: [url=https://github.com/tModLoader/tModLoader/pull/4040]Config List UI fixes[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/aececf8a7cffcbbb42090806706ba66c27889d70]Fix sorting in Mod Config List menu[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/b9897390e0f6a07e1ac51ccc2e3bff2c4697415e]Show class name in GetLoadableTypesException when inheriting[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/2f34f11ab3b57a95f00d22671742c91a4716f1d2]Fix some errors being attributed to System.RuntimeType[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/8a204049b7ff282fcb624a727f235cd3b39b4037]Clarify AddMusicBox Errors[/url] [h2]ExampleMod & API Documentation[/h2] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/69738d6527984ce0b1524c98f00d2ffc1f00e815]WorldGen Documentation[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/5fb6418713952e7ca85814d714cc3cc7e3cabd53]Tile and other Documentation[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/39aadde92895e235dd00a9b22848ae6334727ac1]Fix FewFromRulesRule ctor typo (chanceDenominator)[/url] [b]Clay Sweetser[/b]: [url=https://github.com/tModLoader/tModLoader/commit/56c016b1e769e941bdc99be31b9ba19a13dcc729]Minor punctuation changes[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/9d2744a9d0289ab54c4f45738e901a89bf0d3804]Update Projectile.noDropItem documentation for 1.4 changes[/url] [b]JavidPack[/b]: [url=https://github.com/tModLoader/tModLoader/commit/1b105d730df9e99519a0a3f6f86dcc4181c780e1]Update various life regen and related hook documentation[/url] [b]Destructor_Ben[/b]: [url=https://github.com/tModLoader/tModLoader/pull/3958]Add docs to ModTile.MineResist and ModTile.MinPick[/url]