Skip to content

TShock 5.2 for Terraria 1.4.4.9

Latest
Compare
Choose a tag to compare
@hakusaro hakusaro released this 10 May 06:30
· 39 commits to general-devel since this release
c67d5cf

Welcome to TShock for Terraria 5.2 with support for Terraria 1.4.4.9. This is, of course, also on nuget, but it may take up to an hour to appear.

Before installing, make a complete backup of your existing server and all files and folders, including tshock.sqlite and the tshock folder. We are not responsible for failed installations. Please make sure you backup your data. Severe data loss or gain may occur.

This release was requested by @drunderscore! Thank you so, so much for reaching out to get an update.

Notable changes in this release

  • An additional option pvpwithnoteam is added at PvPMode to enable PVP with no team. (@CelestialAnarchy, #2617, @ATFGK)
  • Corrected and updated deserialization of the following packets (@ATFGK):
    • ProjectileNew: Read the third AI value.
      • Before this change, it was previously possible for the projectile damage limit to falsely trigger, such as when using the Terra Balde and Fire Gauntlet together.
    • PlayerSpawn: Read the NumberOfDeathsPVE and NumberOfDeathsPVP values.
      • Before this change, the PlayerSpawnContext was always read incorrectly, due to the values above being placed in the middle of the existing structure.
    • NpcTeleportPortal: Read the NPC index as a ushort instead of a byte.
    • PlaceObject: Read the Random value.
      • Before this change, the Direction was always read incorrectly, due to the value above being placed in the middle of the existing structure.
    • Zones: Read the zone5 value.
    • PaintTile and PaintWall: Read the coatTile and coatWall values.
    • PlayerHurtV2: Read the cooldownCounter value.
  • Updated SpawnMsg to include the NumberOfDeathsPVE and NumberOfDeathsPVP, and allow them to be optionally used in TSPlayer.Spawn. (@ATFGK)
  • Added WorldTileProvider to the tshock config with values default, constileation or heaptile. This allows tile providers to be changed in environments where CLI args cannot be altered. See the documentation website for more info about these providers. (@SignatureBeef)
  • Updated the Utils.FindByIdOrName to follow same logic. Now fuzzy match fallback to StartsWith and then Contains. (@sgkoishi)
  • Added ShadowCandle and BrainOfConfusionBuff (BoC dodge buff) to the PlayerAddBuffWhitelist (@drunderscore)
  • Improved rejection message and code duplication in OnPlayerBuff. (@drunderscore)
    • This will make it so Bouncer rejections regarding PlayerAddBuff will now always include the sender index, buff type, receiver index, and time in ticks, allowing much faster triage of buff whitelist issues.
  • Allowed Digging Molecart and bomb fish to break tiles and place tracks. (@sgkoishi)
  • Added built-in package management capabilities for plugins. (@pontaoski)
  • Fixed Super Sponge unable to absorb shimmer. (@sgkoishi, #2833)
  • Increased whitelisted duration of the Mighty Wind (WindPushed) buff (from sandstorms). (@drunderscore)
  • Allowed the Hellfire (OnFire3) buff. (@drunderscore)
  • Allowed Digging Molecart and bomb fish to break tiles and place tracks (@sgkoishi)
  • Initialized achievements and the AchievementManager on the server. This ensures that players cannot cause exceptions to be thrown, chat messages are always logged, and allows achievement names to be localized in the console. Also added a test case for this. (@drunderscore)
  • Allowed multiple test cases to be in TShock's test suite. (@drunderscore)
  • Fixed unable to use Purification/Evil Powder in jungle. (@sgkoishi)
  • Set the GetDataHandledEventArgs.Player property for the SyncTilePicking data handler. (@drunderscore)
  • Relaxed custom death message restrictions to allow Inferno potions in PvP. (@drunderscore)
  • Allowed Flower Boots to place Ash Flowers on Ash Grass blocks. (@punchready)
  • Removed unnecessary range check that artifically shortened quick stack reach. (@boddyn, #2885, @bcat)
  • Improved the exploit protection in tile rect handling. (@punchready)
  • Additional translation updates via Crowdin contributors from the past several months.

Upgrading

Before installing, make a complete backup of your existing server and all files and folders, including tshock.sqlite and the tshock folder. We are not responsible for failed installations. Please make sure you backup your data. Severe data loss or gain may occur.

To upgrade TShock, replace all of the files in the location of your server installation with all of the files from the release zip we provide. Overwrite all files. No data will be lost.

Special note: the arm (x86) version is not provided. Due to serious issues with these versions that make TShock work sub-optimally, we don't suggest them anymore.