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 atPvPMode
to enable PVP with no team. (@CelestialAnarchy, #2617, @ATFGK) - Corrected and updated deserialization of the following packets (@ATFGK):
ProjectileNew
: Read the thirdAI
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 theNumberOfDeathsPVE
andNumberOfDeathsPVP
values.- Before this change, the
PlayerSpawnContext
was always read incorrectly, due to the values above being placed in the middle of the existing structure.
- Before this change, the
NpcTeleportPortal
: Read the NPC index as aushort
instead of abyte
.PlaceObject
: Read theRandom
value.- Before this change, the
Direction
was always read incorrectly, due to the value above being placed in the middle of the existing structure.
- Before this change, the
Zones
: Read thezone5
value.PaintTile
andPaintWall
: Read thecoatTile
andcoatWall
values.PlayerHurtV2
: Read thecooldownCounter
value.
- Updated
SpawnMsg
to include theNumberOfDeathsPVE
andNumberOfDeathsPVP
, and allow them to be optionally used inTSPlayer.Spawn
. (@ATFGK) - Added
WorldTileProvider
to the tshock config with valuesdefault
,constileation
orheaptile
. 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 thenContains
. (@sgkoishi) - Added
ShadowCandle
andBrainOfConfusionBuff
(BoC dodge buff) to thePlayerAddBuffWhitelist
(@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.
- This will make it so Bouncer rejections regarding
- 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 theSyncTilePicking
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.