TShock v4.1.0.0926
Pre-releaseWelcome to TShock for Terraria 4.1.0.0926. This is the the first official pre-release of TShock 4.1 for Terraria (protocol version) 1.1.2. Because of the timing of the incoming Terraria 1.2 protocol update, only bug fixes will be released prior to Terraria 1.2's launch.
It is strongly recommended that you start with a clean database with TShock 4.1. All permissions have changed, and several database tables have been changed with no conversion paths for upgrading.
It is strongly advised to avoid using this build on a production environment without accepting the possibility of data loss, world corruption, and/or database corruption.
Please submit bug reports with error logs directly to Github Issues. Do not post on the forums. Need help? Ask in IRC (#tshock on irc.rizon.net).
- Fixes
- Fixed warp deprecation
- Fixed permissions for tphere, spawn, home
- Fixed some bugs in silentkicks, region concurrency, and hook visibility
- Fixed REST API bug.
- Fixed permission initialization.
- Fixed the bug where default groups in the database had their color field being set wrong.
- Fixed an issue where canrun returned false for commands with more than one command.
- Fixed an SSI Exploit with trash cans (thanks CoderCow!)
- Fixed a possible NullReferenceException that may have been caused by TSPlayer.StrikeNPC (thanks CoderCow!)
- Fixed a possible exploit regarding liquid setting.
- New Features
- Added config option to allow groups who are allowed on a banned item to spawn a banned item.
- Added /tempgroup to allow you to override a players group for their current session. Kick player to remove permissions :) (thanks for the command rename scav!)
- Added a config option to allow items in chests to exceed the stack size, and not be reset to max stack size.
- Added hook for reloading configs, plugins can take advantage of this to reload when the default /reload is run. Hook is called when TShock is reloaded.
- Added plugin automatic updater system to TShock. This will eventually be used to allow plugins to update automatically when authors update their own code.
- Added event for when players use commands (thanks Scavenger!)
- Added silent joins (thanks Scavenger!)
- Commands can now have multiple permissions(player only needs one of such permissions) (thanks Scavenger!)
- Added an override for log path to prevent crazy log filenames (thanks CoderCow!)
- Added actual stuff for /overridessi to do (thanks for making our code do stuff CoderCow!)
- Added a check to prevent players from playing invalid tile styles (thanks Scavenger!)
- Added new REST endpoints:
- /v3/server/rules (thanks CoderCow!)
- /v3/server/motd (thanks CoderCow!)
- /v3/token/destroy/all (thanks CoderCow!)
- /v3/server/reload (thanks CoderCow!)
- /v3/server/restart (thanks CoderCow!)
- Added per rest endpoint permissions (thanks CoderCow!)
- Added /group parent to determine a group's parent (and set a new one) (thanks CoderCow!)
- Added REST application tokens, which can be set and will be retained between server shutdowns. They cannot be deleted by the "/v3/token/delete/all" endpoint.
- Added configuration options for setting the checks on stat hacks in preparation for 1.2.
- Added ban durations.
- Added last login to the user database.
- Added last 100 IPs to the user database.
- Changes
- TShock now uses API version 1.13
- Split player login hook into a pre and post login hook.
- OnTileEdit takes a style byte now (thanks Scavenger!)
- Improved Pagination tools used by several different paged commands (thanks CoderCow!)
- Massive region system overhaul (thanks CoderCow!)
- Changed server lighting mode to 2 to fix glitches caused by decreased world sizes
- PreventDeadModification defaults to enabled.
- Item ban commands have been revamped.
- In game log messages are no longer echoed back to the user who ran them (thanks CoderCow!)
- Broadcast color is configurable (thanks CoderCow!)
- Added /aliases to list aliases for other commands (thanks CoderCow!)
- REST resolves the group of the user running the rest command during each request now (thanks CoderCow!)
- Improved group loading from the database
- TShock now reports invalid group data to console (thanks CoderCow!)
- TShock now resolves infinite loops and invalid group parents by itself (thanks CoderCow!)
- TShock now resolves conflicts if the same group is defined twice (thanks CoderCow!)
- REST now requires permissions per user. As a result, some servers may not be ready to switch to this system. A configuration option, RestUseNewPermissionModel, has been added, which will allow you to turn off the new system temporarily. This option will be removed in 4.2.
- The stat tracker has been removed, pending a rewrite.
- IP address users have been entirely removed. They have been deprecated for over a year now.
- /user add no longer uses colons when creating a user. It just adds passworded users now.
- TShock permissions are now more granular and are now node based.