tModLoader for Terraria v1.4.4, when?
Before we begin, we hope everyone has been having fun playing the new Terraria v1.4.4 update (Labor of Love). We know everyone is looking forward to mods having access to all of the new features. We'd like to remind tModLoader users that updating tModLoader to the v1.4.4 codebase will take some time, so please be patient.
We are committed to getting tModLoader updated to v1.4.4 sometime soon, but we can not guarantee when that will be. Much of the Terraria code has changed and we will need time to adapt tModLoader to those changes and then give mod makers time to adapt their mods to those changes. If you are a mod maker and are interested in the migration to 1.4.4, please participate in our Discord development channels and on GitHub.
New Changes' Highlights
The following is a list of the most noteworthy pull requests and commits that have been pushed to 1.4-preview in September, and are now available on the default/stable branch.
Improve dedicated server management utils. (#2817) by pollen__
• Adds Docker support and a server management script to help with setting up dedicated Linux servers
• The DedicatedServerUtils folder in your tModLoader install will contain files you can copy to a server, and the scripts will download tML and let you manage versions and mod updates
• Read DedicatedServerUtils readme
Custom Game Tips by MutantWafflez
• Custom game tips are now autoloaded from translation files when the key starts with "Mods.YourModName.GameTips".
• Vanilla and modded game tips can be hidden by calling GameTipData.Hide() in the new ModSystem.ModifyGameTipVisibility(IReadOnlyList<GameTipData>) hook
• See ExampleGameTipSystem and the en-US.hjson file in ExampleMod for more details
Porting Notes: #preview-update-log in Discord
Raise minimum graphics profile to HiDef by Chicken-Bones
• HiDef vs Reach are the two graphics profiles offered by FNA. HiDef allows for better graphics features (bigger textures, better visuals) and is supported by basically every graphics card since 2010.
• HiDef was the default in tML 1.3, but this was lost in the port.
• There is no fall-back implemented. If your graphics card is really really old. Sorry. If you have a newer graphics card and are experiencing crashes due to this change, please let us know and we will investigate.
Example Jousting Lance by Rijam
• Adds ExampleJoustingLance and ExampleJoustingLanceProjectile
• Adds ProjectileID.Sets.NoMeleeSpeedVelocityScaling to disable melee speed projectile shoot velocity scaling (used by jousting lances and the monk staff T2 and T3 projectiles)
• Adds Item.InterruptChannelOnHurt and Item.StopAnimationOnHurt
Porting Notes: #preview-update-log in Discord
GlobalNPC.Send/ReceiveExtraAI() by Antirhinnum
• A direct clone of the same hooks for GlobalProjectile
• Allows you to sync extra data with NPCs from globals without hijacking the SyncNPC packet.
• Please be careful and judicious with network overhead, every byte counts, make sure to use GlobalNPC.AppliesToEntity to filter out NPCs that don't need your extra data
Porting Notes: #preview-update-log in Discord
Eight missing patron sets from 1.3 by Mirsario
• Eight missing patron sets from 1.3 were restored to 1.4 tModLoader
Bug Fixes
Restore attack speed scaling on spears (#2866) by ThomasThePencil
• Fixes a bug where vanilla spears were getting DamageType = MeleeNoSpeed and thus not scaling with attack speed
• Adds ItemID.Sets.Spears
Porting Notes: #preview-update-log in Discord
Fix #2020, Terraria no longer minimises on focus loss when in full-screen on Windows. by Chicken-Bones
• Fullscreen is now borderless. Does not minimize when you alt-tab to another window.
• Changing focus will still mute music and ambient sounds, but will not stop other sound effects (like getting hurt). Same as in vanilla Terraria
• Exclusive full-screen does not exist in tML, there's no need for it.
Fixed poor implementation of Load() in ModTileEntity. (#2954) by Mirsario
• Removes the need to call base.Load(mod) when implementing ModTileEntity.Load, consistent with other ModType classes
Porting Notes: #preview-update-log in Discord
ScalarVector: Made ModTileEntity.Name property virtual (#2951)
Kokopai: Pause the game in Mod Config menu (#2871)
zzp198: Display error and don't overwrite vanilla data when modded player save fails
FoxXD_: Fix ReindeerAntlers Item Drop Chance (#2857)
Jacob Adams: Fix TEFood Platter NetCode (#2879)
direwolf420: Fix Journey Mode Duplications menu "Misc" tab not showing modded items (#2922)
Ved_s: Add SteamInitFailed localization (#2908)
Exterminator: Allow usage of non public constructors (#2937)
Exterminator: Fix typo in tModFile reopen exception (#2899)
Exterminator: [1.4] Web request logging (#2912)
Exterminator: [1.4] Fully unload Jofairden armor assets (#2944)
Exterminator: Fixes modded generation passes not being removed (#2939)
Solxanich: Fix #2701 - Client Crashing when entering Mod Packs Menu
Solxanich: Add Additional Logging to WorkshopHelper.UpdateItem to track progress
JavidPack and Solxanich: Include dotnet installer for some users to solve some launch issues
JavidPack: Fix #2184 - The Moon isn't a smiley face in select scenarios
JavidPack: Fix #2911 Mod List right click to clear search works again
JavidPack: Unload ModNet held Mod references
JavidPack: Fix #2695 - Search bar doesn't work for some localizations due to text size
JavidPack: Fix #2915 , Add tooltip to Open Mods folder button
JavidPack: Include changed v1.4.3 assets to fix some texture issues caused by v1.4.4 release (Skeletron Prime, etc)
JavidPack: Fix #2955 , Mod Libraries is now ModAssemblies and both ignored for mod sources
JavidPack: Fix #2873 - 'Tile Does Not Contain a definition for type' in ExampleOre
JavidPack: Escape key now works on all menus for easier navigation.
Chicken-Bones: Update to FNA 22.09.01
Chicken-Bones: Dump environment variables into logs folder
Chicken-Bones: Fix #2925, crash due to ERROR_PIPE_NOT_CONNECTED on windows
Chicken-Bones: Fix steel-series sdk log spam
Chicken-Bones: Fix #2926 - FNA Crashed with bad SDL_VideoDriver evironment variable
Chicken-Bones: Fix world loading bug with ExampleMod TravelingMerchantSystem
Chicken-Bones: Fix some world data not being cleared on unload leading to crashes when mods are disabled
Chicken-Bones: Remove useless WaitForClosePortClose code. Fix ded-serv sleep disable function on windows.
Chicken-Bones: Move server save on exit to main thread to reduce data-race probability. - Few other maintainability improvements
Chicken-Bones: Add SIGINT and SIGTERM handling, with save on exit.
Chicken-Bones: Update steam init failed message with common fix
Chicken-Bones: Fix Typo in documentation for ModBiome BackgroundColor (#2867)
Bug Fixes Pushed to Stable in September
Mirsario: Fixed divisions by zero on mod uploads?Mirsario: Fixed #2924 - tModLoader falsely indicating updates available for mods
Solxanich: Hot Fix draft changes for GoG Download Issue #2887 (#2890)
Removed Hooks/Features
Note: Obsolete hooks have been left in for compatibility where possible, but they will be removed in following months, so please move away from these.
As always, tModPorter is available to help providing hints and refactors.
Chicken-Bones: Mark ModItem.OnCraft as Obsolete
Localization Updates
• Spanish: Thanks to Wolf-Igmc
• Russian: Thanks to Ved_s
• Chinese: Thanks to zzp198
Known Issues
My game doesn't launch, and I'm on Windows!
- If you're on Windows 7 or 8.X, or an older Windows OS, installing .NET pre-requisites listed in Microsoft's website might very much help. Especially the KB3063858 update.
- If the above doesn't apply or didn't help, try deleting the dotnet folder in the install directory, and try running TML again. There seems to be a bug with extracting needed libraries on some Windows devices, where it may take two attempts. We are actively investigating improvements to remedy this.
Frequently Asked Questions
How do I switch to the 1.4-preview or 1.3-legacy branches of TML?
To switch to anoter branch in steam, just do the following:1. Right click on tModLoader in Steam and select 'Properties...', then 'BETAS';
2. Select the branch you want in the drop-down menu on top;
3. Close the window. You don't need to enter any passwords.
Please note: 1.4-preview versions of TML are intended to only be used by mod developers and testers who know what they're doing. Some popular mods' authors do not intend for their mods to always work with it.
When 1.4.4 tModLoader???
See the first section of this announcement.When will tModLoader be 64-bit???
It's already 64-bit!TML runs in AnyCPU mode with x86_64 natives on .NET 6.0+, using the FNA framework under a singular universal cross-platform release.
I have a 32-bit OS, will it be supported?
Work is finishing up on improving our handling of native libraries, so we can add 32-bit Windows support. If everything goes well in testing, this will be pushed to the stable branch as soon as it is ready, with an announcement in our Discord.Our Lovely Supporters
Special thanks to the following people who have supported us on Patreon in the last month:Andrew Spinks, Marco, John Gabriel Wilson, Andrew Nelson, Orian34, Daniel Skoglund Hansen, Peter Doucette, Neuron, SheepishShepherd, Chris Cheeseman, Chris Book, absoluteZero, Steptimus Heap, Hao Wu, Soft Scratch, Toni Stache, Patcheresu, Hunter Amelink, Jeremy Weeks
See you in November!
Changed files in this update