Releases: Pryaxis/TShock
TShock 4.4.0 Pre-release 11 for Terraria 1.4.0.5
- New permission
tshock.tp.pylon
to enable teleporting via Teleportation Pylons (@QuiCM) - New permission
tshock.journey.research
to enable sharing research via item sacrifice (@QuiCM) - Add Emoji event to GetDataHandler. This packet is received when a player tries to display an emote. (who?)
- Adding EmojiHandler to handle an exploit. Adding
tshock.sendemoji
permission and checks. Added this permission to guest group by default. (who?)
- Adding EmojiHandler to handle an exploit. Adding
- Handled SyncCavernMonsterType packet to prevent an exploit where players could modify the server's cavern monster types and make the server spawn any NPCs - including bosses - onto other players. (who?)
- Added LandGolfBallInCup event which is accessible for developers to work with, as well as LandGolfBallInCup handler to handle exploits where players could send direct packets to trigger and imitate golf ball cup landing anywhere in the game world. Added two public lists in Handlers.LandGolfBallInCupHandler: GolfBallProjectileIDs and GolfClubItemIDs. (@Patrikkk)
- Added SyncTilePicking event. This is called when a player damages a tile. Implementing SyncTilePickingHandler and patching tile damaging related exploits. (Preventing player sending invalid world position data which disconnects other players.)
- Fixed the issue where mobs could not be fished out during bloodmoon because of Bouncer checks. (@Patrikkk)
- Update for OTAPI 2.0.0.37 and Terraria 1.4.0.5. (@hakusaro, @Patrikkk)
- Adding missing PlayerInfo data in GetDataHandler. (@Patrikkk)
Usual disclaimers apply.
TShock 4.4.0 Pre-release 10 for Terraria 1.4.0.4
- Fix all rope coils. (@Olink)
- Fixed a longstanding issue with SendTileSquare that could result in desyncs and visual errors. (@QuiCM)
- Fixed placement issues with Item Frames, Teleportation Pylons, etc. (@QuiCM)
- Doors are good now for real probably (@QuiCM, @hakusaro, @Olink)
- Bump default max damage received cap to 42,000 to accommodate the Empress of Light's instant kill death amount. (@hakusaro, @moisterrific, @Irethia, @Ayrawei)
- Updated /spawnboss command to include Empress of Light, Queen Slime, and other additional bosses that have a health bar. (@moisterrific)
Please remove tshock.ignore.sendtilesquare from people's permission buckets to turn back on send tile square protection and only change it if doors don't work still. Please remember that keeping TShock running on a server that is open to the public is currently not advised due to several known anticheat issues.
TShock 4.4.0 Pre-release 9 for Terraria 1.4.0.4
- Fixed pet licenses. (@Olink)
- Added initial support for Journey mode in SSC worlds. (@Olink)
- Made TShock database MySQL 8 compatible by escaping column names in our IQueryBuilder code. (Name
Groups
is a reserved element in this version, which is used in ourRegion
table.) (@Patrikkk) - Reintroduced
-worldselectpath
per feedback from @fjfnaranjo. This command line argument should be used to specify the place where the interactive server startup will look for worlds to show on the world select screen. The original version of this argument,-worldpath
, was removed because several game service providers have broken configurations that stop the server from running with an unhelpful error. This specific configuration was-world
and-worldpath
. In the new world, you can do the following:-worldselectpath
should be used if you want to customize the server interactive boot world list (so that you can select from a number of worlds in non-standard locations).-world
will behave as an absolute path to the world to load. This is the most common thing you want if you're starting the server and have a specific world in mind.-worldselectpath
and-worldname
should work together enabling you to select from a world from the list that you specify. This is not a world file name, but a world name as described by Terraria.-worldselectpath
is identical to the old-worldpath
. If you specify-worldselectpath
and-world
without specifying an absolute path the server will crash for sure.- Thank you again to @fjfnaranjo for supplying a detailed feature request explaining precisely why this option should be available. Without this, we would have had no context as to why this feature was useful or important. Thank you, @fjfnaranjo!
- This change was implemented by (@QuiCM, @hakusaro).
- Updated Bouncer to include Sparkle Slime debuff that can be applied to town NPCs. (@moisterrific)
- Updated
/spawnboss
command to include Empress of Light and Queen Slime. (@moisterrific) - Added journey mode permissions to owner group by default. (@moisterrific)
- Fixed kick on hardcore death / kick on mediumcore death / ban on either from taking action against journey mode players. (@hakusaro)
- Attempted to fix the problem with the magic mirror spawn problems. You should be able to remove your spawn point in SSC by right clicking on a bed now. (@hakusaro, @AxeelAnder)
- Added HandleFoodPlatterTryPlacing event, which is called whenever a player places a food in a plate. Add antihack to bouncer, to prevent removing food from plates if the region is protected; To prevent placement if they are not in range; To prevent placement if the item is not placed from player hand. (@Patrikkk)
- Fixed an offset error in NetTile that impacted
SendTileSquare
. It was being read as abyte
and not aushort
. (@QuiCM) - Fixed coins not dropping after being picked up by npcs. The ExtraValue packet was not being read correctly. (@Olink)
- Removed packet monitoring from debug logs. To achieve the same results, install @QuiCM's packet monitor plugin (it does better things). (@hakusaro)
- Updated packet monitoring in send tile square handler for Bouncer debugging. (@hakusaro)
- Added
/sync
, activated withtshock.synclocalarea
. This is a default guest permission. When the command is issued, the server will resync area around the player in the event of a desync issue. (@hakusaro)- If your doors disappear, this command will allow a player to resync without having to disconnect from the server.
- The default group that gets this permission is
Guest
for the time being. - To add this command to your guest group, give them
tshock.synclocalarea
, with/group addperm guest tshock.synclocalarea
. - This command may be removed at any time in the future (and will likely be removed when send tile square handling is fixed).
- Fixed smart door automatic door desync and deletion issue. (@hakusaro)
Please remove tshock.ignore.sendtilesquare
from people's permission buckets to turn back on send tile square protection and only change it if doors don't work still. Please remember that keeping TShock running on a server that is open to the public is currently not advised due to several known anticheat issues.
TShock 4.4.0 Pre-release 8 for Terraria 1.4.0.4
- Update for OTAPI 2.0.0.36 and Terraria 1.4.0.4. (@hakusaro, @Patrikkk, @DeathCradle)
- Fixed /wind command. (@AxeelAnder)
- Fixed NPC debuff issue when attempting to fight bosses resulting in kicks. (@AxeelAnder)
- Fixed players are unable to remove an NPC. Change
byte NPCHomeChangeEventArgs.Homeless
toHouseholdStatus NPCHomeChangeEventArgs.HouseholdStatus
. (@AxeelAnder) - Fixed lava, wet, honey, and dry bombs;
and lava, wet, honey, and dry grenades;
and lava, wet, honey, and dry rockets;
and lava, wet, honey, and dry mines. (@Olink) - Fix Bloody Tear displaying the wrong text when used. (@Olink)
- Fix the visibility toggle for the last two accessory slots. (@Olink)
- Adding Journey mode user account permissions. Journey mode must be enabled for these to have any effect. (@Patrikkk)
tshock.journey.time.freeze
tshock.journey.time.set
tshock.journey.time.setspeed
tshock.journey.godmode
tshock.journey.wind.strength
tshock.journey.wind.freeze
tshock.journey.rain.strength
tshock.journey.rain.freeze
tshock.journey.placementrange
tshock.journey.setdifficulty
tshock.journey.biomespreadfreeze
tshock.journey.setspawnrate
- Changed default thresholds for some changes in the config file to accommodate new items & changes to Terraria. (@hakusaro)
If you have problems with smart doors and you trust your users unconditionally, you can give them the permission tshock.ignore.sendtilesquare
. Please note that when you do this, you're basically giving them full control of the world. Don't give this to anyone who you don't want to have full control of the world.
Please vote on what you want us to work on next with a thumbs-up emoji. Remember that you can set DebugLogs
to true
and then give us your logs to quickly fix problems. The 1.4 project is public and you can view it right now.
TShock 4.4.0 Pre-release 7 for Terraria 1.4.0.4 (Entangled)
Backup your data! Copy your server's tshock.sqlite, config, and world files to a separate location before unpacking.
- Fixed bed spawn issues when trying to remove spawn point in SSC. (@Olink)
- Fixed Snake Flute. (@Olink)
- Fixed lava absorbant sponge not capturing lava.
LiquidSetEventArgs
now returns aLiquidType
instead of a byte type. (@hakusaro) - Fixed bottomless lava bucket from not being able to create lava. (@hakusaro)
- Ban a lava bucket to ban lava on the server entirely, until we figure out a better way to handle liquids.
- Fixed scarab bombs not detonating on pick style tiles. (@hakusaro)
- Fixed dirt bombs not creating dirt. (@hakusaro)
- Added a ridiculous amount of debug information. If you're experiencing any problems with 1.4 items being caught by the TShock anticheat system, please turn on DebugLogs in your config file and capture log data. It'll be extremely helpful in narrowing down precisely how to fix your problem. (@hakusaro)
- Released with entangled support for 1.4.0.4 based on @Patrikkk local build and latest snapshot gen-dev. (@hakusaro)
This is a release that is suitable for private servers with trusted players: several anticheat checks have been disabled due to changes in the Terraria
protocol. These checks include projectile spam checks and net modules (liquid exploits in particular). We highly suggest making a backup of your world (and potentially any existing server data you have). This is also an interesting release because it includes changes that have been in development for quite some time. If you're a plugin developer, now is the time to start updating. More breaking changes may happen, but there will always be an updated API version to track.
TShock 4.4.0 Pre-release 6 for Terraria 1.4.0.3
Backup your data! Copy your server's tshock.sqlite, config, and world files to a separate location before unpacking.
This is basically identical to pre5, which added support for Terraria 1.4.0.3 and potentially fixed the player desync issue on SSC systems.
This is a release that is suitable for private servers with trusted players: several anticheat checks have been disabled due to changes in the Terraria protocol. These checks include projectile spam checks and net modules (liquid exploits in particular). We highly suggest making a backup of your world (and potentially any existing server data you have). This is also an interesting release because it includes changes that have been in development for quite some time. If you're a plugin developer, now is the time to start updating. More breaking changes may happen, but there will always be an updated API version to track.
Backup your data! Copy your server's tshock.sqlite, config, and world files to a separate location before unpacking.
TShock 4.4.0 Pre-release 4 for Terraria 1.4.0.2
This is TShock 4.4.0 Pre-release 4 for Terraria 1.4.0.2!
- Debug logging now provides ConsoleDebug and ILog has been updated to support the concept of debug logs. Debug logs are now controlled by
config.json
instead of by preprocessor debug flag. (@hakusaro) - Removed
/confuse
command and Terraria player data resync from @zidonuke. (@hakusaro) - Attempted to fix the player desync issue by changing
LastNetPosition
logic and disabling a check in Bouncer that would normally reject player update packets from players. (@QuiCM, @hakusaro)
This is a release that is suitable for private servers with trusted players: several anticheat checks have been disabled due to changes in the Terraria
protocol. These checks include projectile spam checks and net modules (liquid exploits in particular). We highly suggest making a backup of your world (and potentially any existing server data you have). This is also an interesting release because it includes changes that have been in development for quite some time. If you're a plugin developer, now is the time to start updating. More breaking changes may happen, but there will always be an updated API version to track.
Pre-Release: TShock 4.4.0 Pre 3 for Terraria 1.4.0.2
worldmode
has been updated so it now selects the correct mode. Also enabled using 'journey' or 'creative' to select the same thing (i.e., worldmode creative
does the same thing as worldmode journey
)
The following commands have been removed: tbloodmoon
, invade
, dropmeteor
. fullmoon
, sandstorm
, rain
, eclipse
The following command has been added to replace them: worldevent
. This command requires the tshock.world.events
permission.
worldevent
can be used as so:
worldevent [event type] [sub type] [wave (if invasion event)]
Valid event types are meteor
, fullmoon
, bloodmoon
, eclipse
, invasion
, sandstorm
, rain
Valid sub types are goblins
, snowmen
, pirates
, pumpkinmoon
, frostmoon
for invasions, and slime
for rain.
A new set of permissions has been added under the node tshock.world.events
:
tshock.world.events.bloodmoon
: Enables access to the worldevent bloodmoon
command
tshock.world.events.fullmoon
: Enables access to the worldevent fullmoon
command
tshock.world.events.invasion
: Enables access to the worldevent invasion
command
tshock.world.events.eclipse
: Enables access to the worldevent eclipse
command
tshock.world.events.sandstorm
: Enables access to the worldevent sandstorm
command
tshock.world.events.rain
: Enables access to the worldevent rain
command
tshock.world.events.meteor
: Enables access to the worldevent meteor
command
Please note that the permissions previously tied to the removed commands are also still used to confirm access to the new commands, so if you have existing configurations no one should have any new or lost access.
This is a release that is suitable for private servers with trusted players: several anticheat checks have been disabled due to changes in the Terraria protocol. These checks include projectile spam checks and net modules (liquid exploits in particular). We highly suggest making a backup of your world (and potentially any existing server data you have). This is also an interesting release because it includes changes that have been in development for quite some time. If you're a plugin developer, now is the time to start updating. More breaking changes may happen, but there will always be an updated API version to track.
Enjoy :)
Pre-Release: TShock 4.4.0 Pre 2 for Terraria 1.4.0.2
/expert
has been replaced with /worldmode
.
Whips should work again
This is a release that is suitable for private servers with trusted players: several anticheat checks have been disabled due to changes in the Terraria protocol. These checks include projectile spam checks and net modules (liquid exploits in particular). We highly suggest making a backup of your world (and potentially any existing server data you have). This is also an interesting release because it includes changes that have been in development for quite some time. If you're a plugin developer, now is the time to start updating. More breaking changes may happen, but there will always be an updated API version to track.
Enjoy :)
Pre-Release: TShock 4.4.0 Pre 1 for Terraria 1.4.0.2
THIS MAY CAUSE YOU SIGNIFICANT HARM. BACK UP YOUR WORLDS, DATABASES, ETC.
Welcome to TShock 4.4.0 Pre-release 1 for Terraria 1.4.0.2! Thank you to Patrikkk, Icy, Chris, Death, Axeel, Zaicon, hakusaro, and Yoraiz0r!
This is a release that is suitable for private servers with trusted players: several anticheat checks have been disabled due to changes in the Terraria protocol. These checks include projectile spam checks and net modules (liquid exploits in particular). We highly suggest making a backup of your world (and potentially any existing server data you have). This is also an interesting release because it includes changes that have been in development for quite some time. If you're a plugin developer, now is the time to start updating. More breaking changes may happen, but there will always be an updated API version to track.
For the full list of changes from previous stable versions of TShock, check out the changelog. Please report bugs on GitHub.
Important: You need to move TShockAPI.dll
into the ServerPlugins
folder. If you don't have one, run TerrariaServer.exe
once, and then copy the file into the newly created folder. You know that you're running TShock as expected if you see the list of names in the startup sequence.