1. tModLoader
  2. News

tModLoader News

July 2025 Stable Update

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

But first, here is a collage of new mods released this past month. Have you tried any of these mods yet? 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 loadout support for modded accessory slots new hooks for tile preview rendering. The full listing of changes is detailed below. Users can use a new chat command (/purgeunloaded) to remove unloaded tiles in worlds that are from mods they are no longer using.

Modders: There are several features of note currently in preview for next month that modders can test and provide feedback for. The most impactful change in preview this month relates to a large batch of fixes we've made to various vanilla sounds. These fixes should finish bringing all sounds to parity with vanilla behavior. These changes might influence existing mod logic as well, so be sure to test out sounds in your mods after reading the porting notes. We encourage mod makers to experiment with these 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]
Adrian Lück: Add equipment loadouts support for ModAccessorySlot queue: Tile Placement Preview Draw Hooks Ebonfly: ModNPC.DeathMessage, ModNPC.ModifyDeathMessage(), and NPCID.Sets.IsTownChild

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
JavidPack: Fix another map file saving issue if loading corrupted map file JavidPack: Finish implementing deleting unloaded tiles feature, add VanillaFallbackOnModDeletion examples

[h2]API Fixes and Changes[/h2]
JavidPack: Fix ModProjectile.GlowTexture not drawing for projectiles with multiple frames JavidPack: Fix wall blending (Main.wallBlend) issues for modded walls JavidPack: Fix ModGore permanently transforming into vanilla gore in some situations IbanPlay: Fix incorrect tile update check in Worldgen.TileFrame()

Other

[h2]ExampleMod and API Documentation[/h2]
JavidPack: Fix ExampleStatue to flip like other statues. JavidPack: TileID.Sets.BreakableWhenPlacing/ReplaceTileBreakUp documentation and correct ExampleMod usages TerrorPenguin: Update ExampleBar to break properly when above another hammered bar tile JavidPack: Add note about ItemID.Sets.Deprecated not being fully supported yet JavidPack: Various Documentation Updates: 1, 2, 3

[h2]Localization[/h2]
Fish: 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.

June 2025 Stable Update

Hello everyone! We've hit another impressive milestone this last month. The workshop now has over 10,000 mods available! That's amazing! 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.

Each month hundreds of new mods are released, each a result of countless hours of work put into them by their creators. Here is a collage of the icons of most of the new mods released this last month alone.



It is time for the June 2025 Stable Update.

We are once again grateful for the massive amount of community participation in developing and testing new features each month. Modders can look forward to new hooks and learning examples showcasing new capabilities. Some notable new features include a full custom ModType example in ExampleMod and new hooks for properly implementing custom equipment layers and draw flags. The full listing of changes is detailed below.

Preview: There are several features of note currently in preview for next month that modders can test and provide feedback for. One new feature is equipment loadout support for ModAccessorySlot. We'd like to encourage modders to test this new feature so we know it is ready for release. Other features in preview include support for custom death messages for town NPC and bosses as well as support for clearing a world of tiles from unloaded mods. Please experiment with these 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]
Ebon: UpdateVisibleAccessory and UpdateItemDye hooks for items, CustomVisualEquipType example showcase JavidPack: Added a Custom ModType Example to ExampleMod JavidPack: Added Player.breathEffectiveness to facilitate "extends underwater breathing" effects

[h2]API Changes[/h2]
Ebon: Uncapped sound effect pitch property Ebon: Long and ulong type support for ModConfig Ebon: Added (Mod|Global)Wall/ModPlayer.CanBeTeleportedTo() to support preventing teleporting to specific locations Jacob Adams: Expose MapOverlayDrawContext state for use in custom map layers

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
Solxan: Show a message if a subscribed workshop mod has been delisted JavidPack: Deleting a mod will no longer scroll back to top of the mods menu JavidPack: Fix clipboard feature not properly clearing existing clipboard data JavidPack: Fix text wrapping not working for Main.NewText when zoomed in or out JavidPack: Mods with only hidden NPC will no longer show up in the bestiary filters

[h2]API Fixes and Changes[/h2]
Chicken-Bones: Throw exception when player draw layers attempt to position relative to other movable layers Silencersn: Fix a game crash caused by attempting to save special list types JavidPack: Make some requested wind and tile drawing related fields/methods public

Other

[h2]ExampleMod and API Documentation[/h2]
stormytuna: Add documentation noting which hooks are called where in multiplayer Ebon: ExampleCameraModifier added, showcasing a custom camera modifier

JavidPack: Various Documentation Updates: 1, 2, 3

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

We would also like to mention that we have volunteers translating our monthly release announcements into Chinese, Russian, Brazilian Portuguese, Polish, and Spanish. If you would like to help translate these announcements into another supported language, please reach out on Discord.

May 2025 Stable Update

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

We are once again 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. Features include brand new support for biome conversions and for custom ID sets as well as improved support for custom tile drawing and tile entities. The full listing of changes is detailed below.

Modders: There are several features of note currently in preview for next month that modders can test and provide feedback for. One new feature is the new UpdateVisibleAccessory and UpdateItemDye hooks. These new hooks along with the CustomVisualEquipType showcase show off how to properly implement custom player drawing for custom equip types. This will allow modders to draw these things in the correct and working manner. Another new feature is the custom ModType example in ExampleMod. This has been a frequently requested feature and we're happy to finally have an easy to follow example for this. We encourage mod makers to experiment with these 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]
JavidPack: Custom and Named ID Sets ("content tags"). Mods can now create their own "Sets" and collaborate easily using them. IbanPlay: Biome conversion support. Added Convert() hook for ModBlockTypes, Tile/WallLoader.RegisterConversion(), and other related features JavidPack: Basic tile entity example and many more new helper methods to make working with tiles and tile entities easier JavidPack: ExampleChandelier and several new related ModTile hooks. Swaying tiles are now customizable.

[h2]API Changes[/h2]
Jacob Adams: ModMapLayer positioning can now be customized JavidPack: Added NPCID.Sets.DoesntDespawnToInactivityAndCountsNPCSlots

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
Solxan: Add warning message if subscribed workshop mod has been removed from workshop (Hotfix) Harper Stoeckle: Fix incorrect text rendering in several places Solxan: Only show community announcements in-game Solxan: Use DisplayNameClean if available for Missing and New Mods messages Ben-tal: Fix Missing Sound Mappings, fixing some sounds that were not playing correctly

[h2]API Fixes and Changes[/h2]
JavidPack: Fix vanilla frost and pumpkin moon music priority JavidPack: Fix issue with using MonoModHooks.DumpIL on methods with generic parameters JavidPack: Fix issue with game update methods being called on server before any player connects CornHusker89: Add check for broken tModLoader methods when verifying mod assemblies, fixing misleading error messages JavidPack: Fix instanced item drops becoming stuck while using NPCLoader.blockLoot JavidPack: Expose ContentSamples.AddItemResearchOverride, Fix ContentSamples.CreativeResearchItemPersistentIdOverride not clearing JavidPack: Fix mods located outside ModSources folder showing up twice in menu Chicken-Bones: TagSerializableSerializer is now able to find subtype serializers in dll references Tyfyter: Let damage classes inherit generic prefixes IbanPlay: Made critter cage lids account for multi-column spritesheets Lion8cake: TileLoader.DrawEffects now called after drawData.colorTint/finalColor assignment Mirsario: Fixed NPC BuffLoader.Update not accounting for buffIndex changes JavidPack: Fix crash from bad build.txt values (Hotfix)

Other

[h2]ExampleMod and API Documentation[/h2]
hezuo1hao: Localize hard-coded text within ExampleMod Thanatos: Fix ExampleSoul item not rendering at the expected full brightness JavidPack: Various Documentation Updates: 1, 2

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

We would also like to mention that we have volunteers translating our monthly release announcements into Chinese, Russian, Brazilian Portuguese, Polish, and Spanish. If you would like to help translate these announcements into another supported language, please reach out on Discord.

April 2025 Stable Update

Hello everyone! This last month tModLoader hit an exciting new player count record. We had 56,000 players playing at the same time! We look forward to even more users enjoying playing tModLoader as new mods continue to come out and existing mods continue to update.

It is time for the April 2025 Stable Update.

A notable change for this month's release is the AddSpecialDraw changes for tile rendering. We hope mod makers read the pull request description and apply the fixes to their own tiles if relevant. The full listing of changes is detailed below.

There are several features of note currently in preview for next month. One such feature is support for various biome conversion methods and classes. Another feature is greatly streamlined ModTileEntity code as well as a fully documented BasicTileEntity example. We've added support for customizing swaying tiles as well, allowing mods to make fully functional Chandeliers and other tiles. And finally, this preview also includes support for "custom ID sets", or content tags. This feature has been highly requested for a long, long time and we are excited to see mods use it. We encourage mod makers to experiment with these 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]
JavidPack: TileCounterType.CustomSolid/NonSolid support for AddSpecialDraw, fix blurry example relic tile visuals JavidPack: Added TileID.Sets.NegatesFallDamage for tiles like cloud that prevent fall damage JavidPack: Localize custom player death messages (PlayerDeathReason.ByCustomReason)

Bug Fixes

[h2]Quality of Life and Other Fixes[/h2]
JavidPack: The warning for family share limitations can now be dismissed permanently. Solxan: Maintaining the monthly release automations

[h2]API Fixes and Changes[/h2]
Ebon: description_workshop.txt now generates by default when creating mods Chicken-Bones: Fix an issue preventing accurate log messages JavidPack: Mod.GetPacket error message clarification, additional related docs

Other

[h2]ExampleMod and API Documentation[/h2]
JavidPack: ExampleMod now uses the newer and simpler collection initializer syntax JavidPack: Various Documentation Updates: 1, 2, 3, 4, 5

[h2]Localization[/h2]
RazzSG: Russian

We would also like to mention that we have volunteers translating our monthly release announcements into Chinese, Russian, Brazilian Portuguese, Polish, and Spanish. If you would like to help translate these announcements into another supported language, please reach out on Discord.

tModLoader peaks at 56k players


tModLoader has peaked at 56,583 concurrent players on 22 March 2025 which is 5 years after release.
View charts and more statistics on our website.