Bot releases are hidden (Show)
Published by hakusaro over 3 years ago
This version of TShock stops loading two dangerous plugins. If your server has a dangerous plugin, it will warn you about that when you start it. Information about AutoRegister (versions 1.2.0.0 and prior) is available at GHSA-w3h6-j2gm-qf7q. We also have an updated policy for security reports.
GetDataHandlers
which caused TShock to read the wrong field in the packet for usingBiomeTorches
. (@hakusaro, @Arthri)usingBiomeTorches
setting. (@Quinci135)OnSendNetData
hook to TSAPI, which enables developers to intercept traffic being sent from the server to clients using the new NetPacket protocol. (@Stealownz)OnNPCAddBuff
detection when throwing rotten eggs at town NPCs while wearing Frost armor set. (@moisterrific)IllegalPerSe
, which is designed to help isolate parts of TShock and make it so that "protocol violations" are treated separately from heuristic based anti-cheat checks. (@hakusaro)TSPlayer.FindByNameOrID
so that it will continue searching for players and return a list of many players whem ambiguous matches exist in all cases. Specifically, this avoids a scenario where a griefer names themselves 1
and is difficult to enact justice on, because their name will not be found by the matching system used to kick players. To help with ambiguity, this method now processes requests with prefixes tsi:
and tsn:
. tsi:[number]
will process the search as looking for an exact player by ID. tsn:
will process the search as looking for an exact name, case sensitive. In both cases, the system will return an exact result in the "old-style" result, i.e., a List<TSPlayer>
with exactly one result. For example, /kick tsid:1
will match the player with the ID 1
. /kick tsn:1
will match the username 1
. In addition, players who attempt to join the server with the name prefixes tsn:
and tsi:
will be rejected for having invalid names. (@hakusaro, @Onusai)OnDoorUse
(DoorUse
) and associated DoorUseEventArgs
fired when a door is used. Also added GetDataHandlers.DoorAction
enum for determining the action of a door. (@hakusaro)To update TShock, simply replace all of the files in your server folder with those from the release folder.
Published by hakusaro over 3 years ago
This version adds support for Terraria 1.4.2.3, and fixes GHSA-q776-cv3j-4q6m, an issue reported to us and fixed by @bartico6.
Please make a backup of your configuration files before updating. Remember, you can normally just overwrite all files from the release in your server. However, a late breaking bug reported less than 30 minutes before the update may cause your SSC config file to be overwritten.
tshock.tp.tppotion
, tshock.tp.magicconch
, and tshock.tp.demonconch
respectively.ignoredamagecap
permission. (@moisterrific)logs
folder inside the tshock
folder by default, as opposed to just the tshock
folder. (@QuiCM)%specifier%
to send the command specifier. (@moisterrific)-1
as a time option to set buffs that last 415 days (the maximum buff time the game supports). (@moisterrific)WarnPlayersAboutBypassPermission
to false
in the sscconfig.json
file. (@hakusaro)NetTile.Slope
is now the native value (byte), and accessor methods Slope1
, Slope2
, and Slope3
can be used to get the old style of values out. HalfBrick
and Actuator
were removed from NetTile
because these were initialized to zero and never changed or used. (@bartico6)A total lunar eclipse is scheduled to take place on May 26th, 2021, and as a result, this version was named Blood Moon edition, accordingly. Have fun staring at the sky! Thanks to @moisterrific for the awesome news!
Note: this release was created twice, due to a bug with GitHub Releases at the exact moment of release. Hooray!
Published by hakusaro over 3 years ago
This release supports Terraria protocol 1.4.2.2.
/ungodme
and godmode warning (no longer necessary). Also, godmode now supports silent commands. (@hakusaro)Published by hakusaro over 3 years ago
This version supports Terraria protocol version 1.4.2.1.
/v2/players/list
& other parameterised REST endpoints. (@QuiCM, reported by @ATFGK)Please give these people the love and support they deserve! Guess what? I'm sponsoring all of these lovely people! 😻
Published by hakusaro over 3 years ago
This version supports Terraria protocol version 1.4.2.1.
If you appreciated the these changes, @DeathCradle and @Stealownz are now accepting donations. If you feel it in your heart, please consider donating to the recent contributors that have made TShock possible.
bitcoin
to 3PRfyMh1brjCqzkw9az2aT7yNjbfkwFZqo
.Full disclosure: I donated to both DeathCradle and Stealownz. 💖
Published by hakusaro over 3 years ago
Thank you so much to @Stealownz and @DeathCradle for this release!
An executive decision has been made on versioning going forward. Instead of publishing pre-releases on 4.4.0 forever, this is now 4.5.0. Patch releases on the 4.5 series will be released as time goes on. You should consider the 4.5.x series unstable. All odd numbered versions (4.5, 4.7, 4.9) will be unstable. When a stable version is released, it will be even (e.g., 4.6.0, 4.8.0, 6.0.0).
The reason for this change is simple. The TShock automatic update system does not display updates for pre-releases. Unfortunately, it is quite useless to have an automatic updater when you don't use it. Polishing 4.4.0 has been time consuming, and therefore, we haven't been able to push a stable version for a while. Because of this, the lack of an automatic update function means that people are left in the dark about important updates. This is a problem.
We are planning on publishing updates more frequently to resolve stability issues and improve the system. Unfortunately, it's just taking a bit longer than usual.
To upgrade, simply overwrite all applicable files in your existing server folder. TShock releases are designed so that you can upgrade by copying all files over and clicking "yes" to overwrite any duplicates. All existing world and character and database data will be saved. Please make a backup copy of your world file and your TShock configuration before installing.
Published by QuiCM almost 4 years ago
IF YOU ARE USING PRE-14 PLEASE UPDATE TO THIS VERSION ASAP
Some debugging was left enabled in pre-14 that will cause unintended tile edits in your worlds.
Please update to this release ASAP
Published by QuiCM almost 4 years ago
To upgrade, simply overwrite all applicable files in your existing server folder. TShock releases are designed so that you can upgrade by copying all files over and clicking "yes" to overwrite any duplicates. All existing world and character and database data will be saved.
Published by QuiCM about 4 years ago
To upgrade, simply overwrite all applicable files in your existing server folder. TShock releases are designed so that you can upgrade by copying all files over and clicking "yes" to overwrite any duplicates. All existing world and character and database data will be saved.
Published by hakusaro over 4 years ago
To upgrade, simply overwrite all applicable files in your existing server folder. TShock releases are designed so that you can upgrade by copying all files over and clicking "yes" to overwrite any duplicates. All existing world and character and database data will be saved.
config.json
file. (@kubedzero)trustedadmin
and owner
groups. Do note that this has a high network usage and can be easily be abused so it is not recommended to give out this permission to lower level groups. (@moisterrific)/itemban
- /projban
- /tileban
- Added a default:
case to the commands so an invalid subcommand promts the player to enter the help subcommand to get more information on valid subcommands. (@Patrikkk)/world
- Renamed to /worldinfo to be more accurate to it's function. Command now displays the world's Seed
. Reformatted the world information so each line isn't repeatedly starting with "World". (@Patrikkk)/who
- Changed the display format of the online players when the -i
flag is used. From PlayerName (ID: 0, ID: 0)
to PlayerName (Index: 0, Account ID: 0)
for clarification. (@Patrikkk)Published by hakusaro over 4 years ago
tshock.tp.pylon
to enable teleporting via Teleportation Pylons (@QuiCM)tshock.journey.research
to enable sharing research via item sacrifice (@QuiCM)tshock.sendemoji
permission and checks. Added this permission to guest group by default. (who?)Usual disclaimers apply.
Published by QuiCM over 4 years ago
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.
Published by hakusaro over 4 years ago
Groups
is a reserved element in this version, which is used in our Region
table.) (@Patrikkk)-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./spawnboss
command to include Empress of Light and Queen Slime. (@moisterrific)SendTileSquare
. It was being read as a byte
and not a ushort
. (@QuiCM)/sync
, activated with tshock.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)
Guest
for the time being.tshock.synclocalarea
, with /group addperm guest tshock.synclocalarea
.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.
Published by hakusaro over 4 years ago
byte NPCHomeChangeEventArgs.Homeless
to HouseholdStatus NPCHomeChangeEventArgs.HouseholdStatus
. (@AxeelAnder)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
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.
Published by hakusaro over 4 years ago
Backup your data! Copy your server's tshock.sqlite, config, and world files to a separate location before unpacking.
LiquidSetEventArgs
now returns a LiquidType
instead of a byte type. (@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.
Published by hakusaro over 4 years ago
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.
Published by hakusaro over 4 years ago
This is TShock 4.4.0 Pre-release 4 for Terraria 1.4.0.2!
config.json
instead of by preprocessor debug flag. (@hakusaro)/confuse
command and Terraria player data resync from @Zidonuke. (@hakusaro)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.
Published by QuiCM over 4 years ago
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 :)
Published by QuiCM over 4 years ago
/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 :)
Published by hakusaro over 4 years ago
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.