1. tModLoader
  2. News

tModLoader News

December 2025 Stable Update

Hello everyone! It is time for the December 2025 Stable Update.

But first, here is a collage of new mods released this past month. There were over 300 new mods this month! Have you tried any of these mods yet? Find any hidden gems? Be sure to regularly check the workshop for newly released mods, we're positive you'll always find something fun and interesting to try out. Click here to see the most popular new mods from this month.



We are grateful for the massive amount of community participation in developing and testing new features each month.

This month's release contains various bug fixes and smaller features. We've fixed several regressions related to the liquid rendering fixes from last month and fixed some UI inconsistencies and errors. For modders, this month's release includes support for custom pressure plates along with new hooks for tile interactions, as well as new hooks for custom armor set shadow effects and transforming the full player rendering.

Modders: As usual, we'd like to encourage modders to test out new tModLoader features on the preview branch if they are relevant to your mod. Major features in preview are announced in the preview-update-log channel on our Discord. We encourage mod makers to experiment with these and other new features on the preview branch and provide feedback this month so that they are ready for the stable release next month.

If you are having issues of any sort, definitely don't hesitate to check out our FAQ on GitHub or reach out to us at our Discord.

Changelog

The following is a list of the most noteworthy changes made for this release. As a reminder, modders should consult the Update Migration Guide to see how to adapt to the new changes.

Major Changes

[h2]New Features[/h2]
JavidPack: ModPlayer.DrawPlayer hook to facilitate custom player "shadow" visuals Tyfyter: (Mod|Global)Tile.HitSwitch and (Mod|Global)Tile.SwitchTiles hooks, as well as PressurePlate tile set

[h2]API Changes[/h2]
JavidPack: Preserve backwards compatibility for MonoMod hooks when a method receives a new overload, inherit Obsolete from origin method Stephen Thiebaud: tModLoader-provided references will no longer be copied to mod output directories (/bin folder), reducing disk usage for mod developers JavidPack: (ModTile|ModWall).PlaceInWorld now called based on what is actually placed, not Item.createTile/Wall

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
JavidPack: Fix housing UI issue with over 99 town NPCs Kevin Pugliese: Fix other players' chat bubbles while in reverse gravity JavidPack: Clarify redownload missing mod message and buttons Stephen Thiebaud: Fix lots of liquid rendering edge case bugs Ivan Ortiz: Fix another liquid rendering bug with slopes Stephen Thiebaud: Fix another liquid rendering bug near edges of map Mirsario: Restore lost TileID.Sets.Snow tile framing logic Mirsario: Follow-up to "Fixed deallocation crashes in libnfd"

[h2]API Fixes and Changes[/h2]
JavidPack: Update MonoMod to 25.3.2 (Fix race condition when updating executing ILHook, the "Referenced cell no longer exists" issue) Mirsario: Main.CurrentPlayerOverride is now thread-local, fixing potential multi-threaded issues Qther: tModCodeAssist: Support even more ID fixes JavidPack: tModCodeAssist: Preserve whitespace and comments for ID fixes

Other

[h2]ExampleMod and API Documentation[/h2]
JavidPack: Clarify ModPlayer syncing and more documentation Mirsario: Improved ExampleCustomCurrency example

[h2]Localization[/h2]
ayuyoiM and Cyrilly: Chinese 1, 2 RazzSG: Russian

We would also like to mention that we have volunteers translating our monthly release announcements into several other languages. If you would like to help translate these announcements into a supported language, please reach out on Discord.

November 2025 Stable Update

Hello everyone! It is time for the November 2025 Stable Update.

But first, some news. This last week we hosted our third official mod jam on our Discord server. The theme was "Anything Can Happen on Halloween!" and we had several spooky mod submissions. We thank everyone who participated and hope it was fun and a great practice! We encourage players to check out the mod jam submissions on the workshop here.

If you are interested in participating in the next mod jam, be sure to come to Discord and grab the "ModJam Ping" role to be notified.

Also, here is a collage of new mods released this past month. There were over 320 new mods this month! Have you tried any of these mods yet? Find any hidden gems? Be sure to regularly check the workshop for newly released mods, we're positive you'll always find something fun and interesting to try out. Click here to see the most popular new mods from this month.



We are grateful for the massive amount of community participation in developing and testing new features each month.

This month's release contains mostly bug fixes and smaller features. We've fixed several UI inconsistencies, fixed a major sound volume issue, and even fixed major issues with how liquids are drawn, especially around sloped tiles. We've also implemented changes to support launching the game on ARM processors, which should prove useful to those looking to host dedicated servers on ARM machines. For modders, this month's release contains a few new features, most notably new API for modifying potion delay values. Other new features include more fixes for biome conversion and support for uploading server-side mods in-game. The full listing of other features and changes is detailed below.

Modders: As usual, we'd like to encourage modders to test out new tModLoader features on the preview branch if they are relevant to your mod. Major features in preview are announced in the preview-update-log channel on our Discord. Some features in preview for next month include support custom pressure plates along with new hooks for tile interactions, as well as new hooks for custom armor set shadow effects and transforming the full player rendering. We encourage mod makers to experiment with these and other new features on the preview branch and provide feedback this month so that they are ready for the stable release next month.

If you are having issues of any sort, definitely don't hesitate to check out our FAQ on GitHub or reach out to us at our Discord.

Changelog

The following is a list of the most noteworthy changes made for this release. As a reminder, modders should consult the Update Migration Guide to see how to adapt to the new changes.

Major Changes

[h2]New Features[/h2]
Stephen T: Adjustable Potion Delay APIs

[h2]API Changes[/h2]
direwolf420: Seed drop integration (Blowpipe, custom grass) JavidPack: New dropdown style (and more) Enum ModConfig elements Narnia: Server-side Upload Fixes, server-side mods can now be uploaded in-game Mellohi: Touch-ups and bugfixes regarding biome conversion registries and biome spread Chicken-Bones: Adjust Item.material logic to allow modders more control over if an item counts as a material JavidPack: Remove tryBreakTrees parameter from WorldGen.ConvertTile Lion8cake: Expose some liquid rendering fields to be both public and no longer readonly

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
Stephen T: Better Liquid Slope Rendering JavidPack: Fix screen resolution affecting audio volume and panning in unexpected ways. These are no longer based on physical screen width JavidPack: Fix clipboard operations (copy and paste) to work on all Linux configurations JavidPack: Fix mod load order inconsistency issue when mod names contain non-ASCII characters (such as Chinese characters) leading to critical ID desync issues Solxan: Some fixes for mod download issues Chicken-Bones: Switch to new Steamworks.NET.AnyCPU package, and sdk v1.62 Chicken-Bones: Linux ARM processor support Chicken-Bones: Optional Mac ARM processor support JavidPack: Preserve Mods List menu sorting mode choice between game sessions. JavidPack: Fix some non-English server prompts not accepting the correct options Destructor_Ben: Adjust icon positioning on the Config List menu Stephen T: Remove unused borderless option on windows JavidPack: Fix some misleading button prompt language

[h2]API Fixes and Changes[/h2]
JavidPack: Fix exception when too many TooltipLines Destructor_Ben: Fix UIScrollbar hovering when obscured by another element JavidPack: ModAccessorySlot documentation, fix a remaining issue with CurrentPlayer during UICharacter ctor Destructor_Ben: Fix Launch Config for developing tModLoader in Rider JavidPack: tModCodeAssist: NPCAIStyleID/ProjAIStyleID/AIType/AnimationType/aiStyle support JavidPack: tModCodeAssist: BuffID and AddBuff support JavidPack: tModCodeAssist: Fix equals expression for Tile properties Mirsario: Fixed deallocation crashes in libnfd Chicken-Bones: Fix DeveloperMode check invoking steam workshop and slowing down launch and mod building direwolf420: Fix localization file hot reload feature on non-Windows machines

Other

[h2]ExampleMod and API Documentation[/h2]
JavidPack: ExampleHeldProjectileWeapon, showcasing Player.PickAmmo and other common held projectile effects JavidPack: Added SimpleModPlayer (and wiki updated) and ExampleCutTile JavidPack: Guide to Plant Fiber Cordage support example for ExampleVine JavidPack: Fix ExampleLastPrismHoldout dealing damage and ExampleCustomSwingProjectile not triggering jellyfish damage

[h2]Localization[/h2]
ayuyoiM: Chinese Fabricio-CL: French RazzSG: Russian

We would also like to mention that we have volunteers translating our monthly release announcements into several other languages. If you would like to help translate these announcements into a supported language, please reach out on Discord.

October 2025 Stable Update

Hello everyone! It is time for the October 2025 Stable Update.

But first, some news. This last week we hosted our second official mod jam on our Discord server. The theme was "It's Dangerous to Go Alone, Take This!" and it involved creating a small environment to explore. We thank everyone who participated and hope it was fun and a great practice! We encourage players to check out the mod jam submissions on the workshop here.

If you are interested in participating in the next mod jam, be sure to come to Discord and grab the "ModJam Ping" role to be notified. We intend to host the 3rd mod jam near the end of October and will make sure to announce it earlier on Discord so modders can plan time for it.

Also, here is a collage of new mods released this past month. There were 260 new mods this month! Have you tried any of these mods yet? Find any hidden gems? Be sure to regularly check the workshop for newly released mods, we're positive you'll always find something fun and interesting to try out. Click here to see the most popular new mods from this month.



We are grateful for the massive amount of community participation in developing and testing new features each month.

This month's release contains the new ModAchievement feature. We are excited to see how mods use ModAchievement and how they'll give players long-term goals to work towards. We've seen many mod makers showcasing their new achievement art this last month and look forward to seeing them in-game. The full listing of other features and changes is detailed below.

Another change this month is new warnings and checks when downloading mods from multiplayer servers. We want to encourage players to exercise caution when downloading mods directly from servers, especially with strangers, as this is risky due to the mods having the potential to run malicious code. We've updated the mod publishing process to facilitate verifying the validity of mods downloaded directly from servers.

Modders: As usual, we'd like to encourage modders to test out new tModLoader features on the preview branch if they are relevant to your mod. Major features in preview are announced in the preview-update-log channel on our Discord. Some features in preview for next month include support for properly adjusting potion delay and new options for presenting Enums in configs. We encourage mod makers to experiment with these and other new features on the preview branch and provide feedback this month so that they are ready for the stable release next month.

If you are having issues of any sort, definitely don't hesitate to check out our FAQ on GitHub or reach out to us at our Discord.

Changelog

The following is a list of the most noteworthy changes made for this release. As a reminder, modders should consult the Update Migration Guide to see how to adapt to the new changes.

Major Changes

[h2]New Features[/h2]
Hexic, Midnight295: ModAchievement added. Mods can now add their own achievements. Tyfyter: Tile and Wall Conversion Fallback/Inheritance. Better solution and biome conversion compatibility. JavidPack: Add new workshop tag for translation mods direwolf420: Add ModSystem.PostWorldLoad and TileID.Sets.ClearedOnWorldLoad

[h2]API Changes[/h2]
efcawesome: Add (Mod|Global)Tile.ReplaceTile hook for when a tile is being replaced via block swap Stardust9681: Added ExampleCustomUseStyleWeapon, an example of a custom useStyle. Also added ItemLoader.RegisterUseStyle

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
Solxan: Store Mod Hash Data in Developer Metadata. This feature facilitates verifying the validity of mods downloaded directly from servers. JavidPack: Warning messages for downloading mods directly from servers. When joining a server, appropriate warnings are now shown to inform users of the risk of downloading mods from strangers. JavidPack: Fix menu sound inconsistencies, fix escape when dialog is open behavior, fix dialog background tint feature mathica: Fix jungle grass corruption conversion JavidPack: Fix blockswap not working with stone platforms JavidPack: Fix misleading message when kicked

[h2]API Fixes and Changes[/h2]
JavidPack: UIGrid updated to match all UIList features. Now supports ManualSortMethod, iterator JavidPack: Fix null issue with PlayerDrawLayer's Multiple Position JavidPack: Fix MonoModHooks.DumpIL failing with long method names Chicken-Bones: Update MonoMod.RuntimeDetour to 25.3.0 to work towards ARM support Sergwest: Make SDK logs more clear Destructor_Ben: Fix some mod template typos BasicallyIAmFox: tModCodeAssist: Now detects using an incorrect XID class BasicallyIAmFox: tModCodeAssist: Fixed negative IDs not being fixed BasicallyIAmFox: tModCodeAssist: Common Collision Name analyzer, prevents mods accidentally using Terraria namespaces tomat: tModCodeAssist: Simplify Main.player[Main.myPlayer] -> Main.LocalPlayer JavidPack: tModCodeAssist: Now supports converting XID.Sets array index values JavidPack: More tModCodeAssist support: 1, 2, 3, 4, 5

Other

[h2]ExampleMod and API Documentation[/h2]
JavidPack: Example sentry JavidPack: Various Documentation Updates: 1, 2, 3, 4

[h2]Localization[/h2]
RazzSG: Russian ayuyoiM: Chinese

We would also like to mention that we have volunteers translating our monthly release announcements into several other languages. If you would like to help translate these announcements into a supported language, please reach out on Discord.

September 2025 Stable Update

Hello everyone! It is time for the September 2025 Stable Update.

But first, here is a collage of new mods released this past month. There were 390 new mods this month! Have you tried any of these mods yet? Find any hidden gems? Be sure to regularly check the workshop for newly released mods, we're positive you'll always find something fun and interesting to try out. Click here to see the most popular new mods from this month.



As always we are grateful for the massive amount of community participation in developing and testing new features each month.

This month's release contains new interaction options for NPC and projectiles, as well as a full rework of our code analyzer now called tModCodeAssist. The full listing of changes is detailed below.

Modders: We'd like to encourage modders to experiment with the new ModAchievement feature that is currently available on the preview branch. We know modded achievements have been a highly requested feature for some time, so we are excited to see mods use them. We encourage mod makers to experiment with this and other new features on the preview branch and provide feedback this month so that they are ready for the stable release next month.

As always, if you are having issues of any sort, definitely don't hesitate to check out our FAQ on GitHub or reach out to us at our Discord.

Changelog

The following is a list of the most noteworthy changes made for this release. As a reminder, modders should consult the Update Migration Guide to see how to adapt to the new changes after running tModPorter.

Major Changes

[h2]New Features[/h2]
BasicallyIAmFox: tModCodeAssist (formerly tModLoader.CodeAssist) has been reworked and is now directly included in tModLoader releases. It will now be able to receive frequent updates. This is the code analyzer that fixes various code issues, most notably it fixes "magic numbers" to their correct ID values. BasicallyIAmFox: (Mod|GlobalNPC).PreHoverInteract hooks. Lets modders override or piggyback off of right clicking on or hovering over an NPC. JavidPack: Add ExampleInteractableProjectile and ProjectileID.Sets.IsInteractable. Projectiles can now be targeted by smart select and draw a smart select highlight.

[h2]API Changes[/h2]
Ebonfly: An icon_small.png will now generate by default when creating mods. The icon_small will now show up in the config listing Destructor_Ben: Add opt-out of mod building in tModLoader.targets

Bug Fixes

[h2]API Fixes and Changes[/h2]
JavidPack: Fix wrong item issue with Player.QuickMana_GetItemToUse, Void Bag, and CanUseItem JavidPack: Fix support for manually setting bestiary stars Mirsario: Additional updates for uncapping sound effect pitch JavidPack: Update HookGen

Other

[h2]ExampleMod and API Documentation[/h2]
JavidPack: Add ExampleVine

[h2]Localization[/h2]
Fish: Chinese Fabricio-CL: French RazzSG: Russian

We would also like to mention that we have volunteers translating our monthly release announcements into several other languages. If you would like to help translate these announcements into a supported language, please reach out on Discord.

August 2025 Stable Update

Hello everyone! It is time for the August 2025 Stable Update.

But first, some news. This last month we hosted our first official mod jam on our Discord server and it was a mind-blowing success. The theme was "Game Tribute" and we were impressed with how many high quality submissions we had. We thank everyone who participated and hope it was fun and a great practice! We encourage players to check out the mod jam submissions on the workshop here. If you are interested in participating in the next mod jam, be sure to come to Discord and grab the "ModJam Ping" role to be notified.

Also, here is a collage of new mods released this past month. There were over 400 new mods this month! Have you tried any of these mods yet? Find any hidden gems? Be sure to regularly check the workshop for newly released mods, we're positive you'll always find something fun and interesting to try out. Click here to see the most popular new mods from this month.



As always we are grateful for the massive amount of community participation in developing and testing new features each month.

This month's release contains several notable features that mod makers can look forward to using, such as the highly requested ModConfig.SaveConfig feature. The full listing of changes is detailed below. Users will be happy to know that this release fixes many sound issues, most notably sounds cutting each other off or stopping early.


As always, if you are having issues of any sort, definitely don't hesitate to check out our FAQ on GitHub or reach out to us at our Discord.

Changelog

The following is a list of the most noteworthy changes made for this release. As a reminder, modders should consult the Update Migration Guide to see how to adapt to the new changes after running tModPorter.

Major Changes

[h2]New Features[/h2]
Destructor_Ben: Add ModConfig.SaveChanges Chicken-Bones: More sound fixes and new SoundStyle options

[h2]API Changes[/h2]
JavidPack: Support and showcase Otherworld alternate music logic KaidenJoy: Negative NPCIDs now compatible with NPCDefinition

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
Harper Stoeckle: Fix escape not working while inputting text on on non-Windows platforms JavidPack: Fix bug causing 2x2 jungle plants to be invisible JavidPack: Fix Sky Dragon's Fury's alternate attack not being affected by melee speed JavidPack: Fix an issue with ShadowFlameHexDoll and use speed hooks.

[h2]API Fixes and Changes[/h2]
Jacob Adams: Support paint spraying for any sized tile JavidPack: NPCDefinition ordering now uses bestiary ordering. Colored slimes now draw in color. JavidPack: Add ShadowFlame to Main.debuff CactusDuper: Fix LongMoss missing from TileID.Sets.IgnoredByGrowingSaplings

Other

[h2]ExampleMod and API Documentation[/h2]
JackerAcid: Improve MessageID Documentation and other netcode methods JavidPack: Update docs to discourage using buggy FindChestByGuessing method JavidPack: Documentation explaining item usage and item animation fields JavidPack: Various Documentation Updates: 1, 2, 3, 4, 5, 6, 7, 8, 9

We would also like to mention that we have volunteers translating our monthly release announcements into several other languages. If you would like to help translate these announcements into a supported language, please reach out on Discord.