Fixed
Added
- RAT was installing experimental build, even if you had stable selected
- Event Server Restart had "shutdown" at the bottom of the script, causing the countdown to be skipped and the server immediately shutting down. If upgrading, please remove this yourself in the event. New installs won't have this issue. (Reported by: Blackmadman)
- Fixes to the /who Discord script as well as internal changes (Reported by: Blackmadman)
- Discord channel list was displaying message threads, as channels.
- Numeric columns on the player list, were sorting alpha instead of numerically (Reported by: Goshawkdm)
- RAT freezing at times. This is due to the banned items check being done. This was enable by default, it is now disabled by default. I've improved this, but its not 100% yet. If you are upgrading, in order to disable this (if you're having problems or just don't want it done)
- Open the Group Editor in RAT
- Select the DEFAULT group
- Click the Custom Variables tab
- Select 'Banned Item Check Interval'
- Set the Value to 0
- Click 'Save Attribute'
- Close and reopen RAT.
- Game time should now display with a leading 0 for hours and minutes when necessary (Reported by: Blackmadman)
- Dye colors to the item list, this means they will appear in the item spawner as well as Grab bag items
- Quest Reward bundles to the item list, this means they will appear in the item spawner as well as Grab bag items (Requested by: Edzia)
This fixes some issues where player chat was not firing the events, some grabbag issues as well as I added a Check for Updates menu item from the Help menu, so you can manually check for updates, not just on RAT startup.
Fixed
Added
- Updated Hunt event to use player_id instead of player_crossid as the se command appears to not accept crossid. (Reported by: BIA_RIGGS)
- Updated Is Cooling Down default event to display Hours
- RESTART Server Event was not fired when a scheduled server restart happened. (Reported by: Blackmadman)
- Server Ready event is not firing in some cases
- Clicking the WebAPI status button, isn't opening the reset token window. (Reported by: TheBlindOldMan)
- Local server light stays green after shutting down server. There may still be some cases where this can happen, but I'm killing them as we find them. (Reported by: Shamma)
- Checking/Unchecking the JSON and CSV options for player tracking were not saving/displaying correctly (Reported by: BIA_RIGGS)
- RAT will now use a constant token username instead of a random GUID. This helps prevent unused tokens from stacking up when things get out of sync. This means the first time you run RAT now and connect, RAT will need to generate a new token (happens automatically). So your first connection to your server might take 60-90 seconds for RAT to get in sync, etc. After that, it'll be quick as usual.
- Set default text for Game World Size to 10240 from 16384 based on current supported limits by TFP.
- Event Backup Started was failing due to a syntax error (Reported by: Blackmadman)
- Conversion to ULONG errors appearing in the RAT Log
- Player data now pulled from Allocs mod first, and if that doesn't exist, then TFP mod. If you need/want the players ip/level/ping, you'll need to have Allocs installed currently. Once the TFP mod has been updated, then it will no longer be necessary.
- Added support for serverconfig.xml "Region". (Reported by: Narny)
- Added the following variables to the variable list in RAT Events (they already existed, just weren't displayed for your use)
- cooldown_time_at
- cooldown_time_days
- cooldown_time_hours
- cooldown_time_minutes
- cooldown_time_seconds
- You can now sort by the Last Seen column in the player list (Requested by: Vasko)
- CPM Event: Player Killed Player
- CPM Event: Player Leveled
- One click install/Update for Alloc's Server Fixes mod
- New group variable: cpm_installed, defaults to false. Only enable this, if you are using the CPM mod (obviously)
- Added support for CPM style item spawning to the Grabbags and Item Spawner
- Going forward, RAT will check to see if there are updates available on startup. If so, an item will appear on the menu bar (its obvious), clicking it will take you to the download page. You still need to download and update RAT as usual, this is just a visual indicator that a new version is available.
Fixed
Added
- Ingame mod items were duplicated in the item list for grabbags
- Moved all editable files to point to %appdata%/nomadsoft/rat4 due to windows security issues.
- Right clicking a player in the player list and selected teleport did not work (Reported by: Éric)
- In the Group Editor, grabbags were missing entries for Command, Item and Footer
- Grab bag items were duplicating when editing them (Reported by: BadPlayer)
- When importing a serverconfig.xml file, the Remote Password for telnet, didn't update to match the imported password. (Reported by: Capt. Lykke)
- Importing custom named configuration file not save in config filename field. (Reported by: Capt. Lykke)
- Default event for store item Duct Tape was failing due to missing space in event. This is fixed for clean installs, but you'll need to edit the event yourself to fix it, if upgrading. (Reported by: BIA RIGGS)
- The event Player Disconnected has stopped working. (Reported by: Capt Lykke)
- When importing data, popups are now displayed to show the action was completed.
- Updated all of the main toolbar icons to look better, especially with dark modes enabled.
- New Event: Zombie Screamer Spawned (Requested by: BadPlayer)
Event variables:
{z_id} - ID of the screamer
{z_location} - Location coordinates of the screamer- Added Support for some CPM mod events. These generally provide more information that the vanilla server gives you.
- Don’t forget, if you decide to use CPM, enable the RAT events for CPM and disable the corrisponding RAT event (if any). Example are CPM
- Player Died event, and RAT’s Player Died event.
- Please remember that CPM is a mod created by someone else and not supported by RAT. If you have any questions or issues with CPM, we might have the answers so feel free to ask in our #rat_support channel, but our support should be considered “best effort”.
- Added Event: CPM Player Killed Zombie
Event Variables: cpm_zombie_tag, cpm_zombie_name, cpm_zombie_weapon- Added Event: CPM Player Killed Animal
Event Variables: cpm_animal_tag, cpm_animal_name, cpm_animal_weapon- Added Event: CPM Player Killed by Zombie
Event Variables: cpm_player_location_full, cpm_player_location, cpm_player_location_x, cpm_player_location_y, cpm_player_location_z- Added Event: CPM Player Died
Event Variables: cpm_player_location_full, cpm_player_location, cpm_player_location_x, cpm_player_location_y, cpm_player_location_z- New RAT Conditionals ISVAR and ISVARC(Case Sensitive)
- These should allow you to compare any piece of data you want, including {vars}, etc.
- Syntax/Examples:
- myvar = 6
yourvar = 3
anothervar = tom
Numeric Comparisons
-------------------
ISVAR:{myvar}:<:2
Result = false
ISVAR:{myvar}:>:{yourvar}
Result = true
ISVAR:{myvar}:!=:2
Result = true
ISVAR:{myvar}:=:2
Result = false
Example Data:
myvar = tom
yourvar = bob
anothervar = John
String Comparisons
------------------
ISVAR:{myvar}:=:{anothervar}
Result = false
ISVAR:{myvar}:!=:{yourvar}
Result = true
ISVARC:HeyBoB:=:{yourvar}
Result = false
ISVARC:John:=:{anothervar}
Result = true- Added status display to lower right corner of RAT to display the status of WebAPI Calls. This status represents the last call made to any of the WebAPI functions. Please note, that this will remain red, unless you are first connected via telnet. You can click the status display to get a prompt asking if you'd like to reset the webtoken (Same functionality as the button in settings).
- Moved Telnet, Local Server and Discord status displays to lower right corner of RAT.
Fixed
Added
- You should no longer get errors messages in the RAT window about the AutoBan checks
- Issue when connecting to a remote game server, the webtoken would be sent over and over. (Reported by: Capt. Lykke and Agavis) Special thanks to Agavis for letting me test on his server to figure out and resolve the issue.
- Adding a new group attribute, overwrites the previously selected attribute instead. (Reported by: InstaGibb)
- Option to reset country flags for players, Tools -> Reset Player Flags
- Increased possible block damage maximum values from 600 to 1200 (Requested by: hameleon0128)
- RAT will now only attempt a Webtoken reset every 60 seconds, until either it is successful, or you shut down RAT. This should prevent the webtoken reset spam when you connect RAT and your server is still starting up, as well as minimize the same spam at other times when the webdashboard connection fails.
- Added variables {playtime_hours} and {playtime_minutes} to the Player Disconnected event. (Requested by: Capt. Lykke)
- Added event: Player EOS Kicked (Requested by: ZamiZee Gaming and Ciro)
Two new event variables for this event, {reason} and {details}- Added 'Donate!' button to main RAT toolbar (Requested by: Trekkan)
- Multiple Backup output locations, separate backup output folders with a comma to add multiple backup locations (Requested by: BIA_RIGGS)
Thank you to everyone that has reported bugs, tested features and suggested new ones! Without all of your support and enthusiasm, RAT wouldn't be anywhere near what it is today!
Fixed
- Conditionals don't work for .RAT functions that don't have content
- Exception in AutoBanCheck, I couldn’t replicate this, but I think I’ve figured out the issue. At the very least, this should no longer crash RAT, but just report the error in the RAT Log window. (Reported by: Goshawkdm)
- Error importing localizations, Unable to replicate, better error handling around this to see what the actual error is. (Reported by: Tryndathor)
- Error getting the time, etc. This has been fixed/changed so that RAT also no longer resets the webtoken on Telnet connection, but requests the token reset on the web API connection failure instead. I also updated the RAT setting of “Reset Webtoken on Connection” to “Reset Webtoken on Failure”.
You can still manually reset the token from Settings → Server Configuration tab as desired.
This fixes many issues, but the most noticeable right off is that the in game time is now working and you don’t get the spam error messages.
Please note that if you connect to your game server before it is FULLY started with RAT, you will see a lot of token errors. These errors will stop once the game server is fully started and RAT does what it needs to. This is NOT cause for alarm and things should work as expected from there on.
(Reported by: Everyone)
- The RAT variables for {gametime_XXXX} were not being set (Reported by: frasskungin)
- Improved the text scroll log on the console window
- Player Kicked event was throwing an index out of bounds error. This has been fixed, but note that the variable for who did the kicking is no longer available as this information isn't in the kick message anymore. Nothing I can do about it.
- Updated the default Player Kicked event to reflect the above changes
- RAT will no longer add players to the database that don't have a valid CrossID
Added
- Console Window, RAT Log, and Game chat windows all now have a text scroll lock feature, as well as a Clear text button. To lock the scroll, click where you want to lock the scroll at in the window, then click the scroll lock button.
- Updated the RAT donation link within RAT to point to new donations page. Thank you to all of you who have supported RAT, I really appreciate it!
- The RAT Log window now has a toggle button, that when On, the RAT Log window will show what event variables are available for each incoming event. Basically, enable it, perform the event you want (such as kicking a player), then look at RAT Log, and you'll get a list of all variables that can be used in the "Player Kicked" event, repeat the process for any other events you want. It should help make creating events much easier/useful.
This is a pretty decent sized update, I hope you enjoy it! =)
Fixed
Added
- Moved Reset Webtoken to the Server Connection tab, as it is useable by both local and remote installs.
- Removed the "Check for Updates" for the game server button. It stopped working due to steamCMD being a pile. The update/install/validate still works fine however, so you just can't check for an update without updating now. You have to update.
- Web tokens aren't being generated on connect
- RAT Settings tab is now visible again in settings
- Remove unused Create Server tab in settings (Reported by: BadPlayer)
- Bloodmoon Started and Ended events not working (Reported by: Capt. Lykke)
- Custom Group Attributes were not saving when changed (Reported by: BadPlayer)
- Localization should be working for Item Spawner, Inventory, Entity Spawning and Buffs (Many aren’t localized/useful yet though).
- Clear text button for console window
- Scroll lock to Console window, this isn't as good as I want it, but its a start (Requested by: Ciro)
- Automatic resetting of webtokens when a failure is detected.
- Moved many of the items on the player list toolbar, to mouse right-click where they should be. Also freeing up room on the playerlist toolbar. More work to do here, but good enough for the moment. (Requested by: BadPlayer)
- Create .BACKUP command (Requested by: Shamma)
- You can now use the RAT .<COMMAND> from event script in Scheduled events commands. Keep in mind, commands that require context from a player, etc... won't work right from the scheduled event. Things like BACKUP, etc.. will.
- RAT will no longer restart your server if there is currently a Bloodmoon active. Scheduled restarts will now be SKIPPED if a bloodmoon is active when the restart is scheduled. There is no timer to try again, etc. I may add that feature later, but it would require too much effort at the moment. I’ve added that to the deferred feature request list.
Note, you can setup a player chat command that includes .SERVERRESTART so that players/admin can manually restart the server after the bloodmoon is complete. (Requested by: Capt. Lykke)- Banned Items list (Requested by: BadPlayer)
Change behavior in Groups DEFAULT, Banned Items
banned_items_list, is a comma separated list of banned item names
banned_items_interval, the number in seconds to check online players for banned items, must be either 0 to disable this check, or >=60
Added Event: Banned Item Found
Event Variables:
{banned_item_name}
{banned_item_count}
{banned_item_location}
- Host/IP Bans (Requested by: BadPlayer)
Added Event: Player Failed Host Check
This event fires each time the event Player Spawn Joined fires, and checks all currently online players against your banlist.
Group Variables:
host_check_enabled, set to true/false to enable the checker.
host_check_list, is a comma separated list of hosts to check each player against. This list can be a partial IP or hostname. It can also be a REGEX.
NOTE, wildcards are NOT supported, unless in a REGEX.
Event Variables:
host_check_failed_host, displays the ban that triggered this event to fire.
- Updated the default columns/sizing shown on the player list
- Update all events to use the following Group Attributes by default
- By using these group attributes in your event conditional, script and descriptions, they will be replaced with the value below. This makes it easy to make a change in a single place and have all of your events updated. Such as, maybe you don’t like using / to prefix your chat commands, edit it in the Group Attributes to whatever you’d like, say ! or . or -… whatever you want. If you use a mod that changes how the give command works, such as CPM, change the give command to the CPM give command.
{give_command} = give
{pm_command} = pm
{say_command} = say
{prefix} = /
*** NOTE *** The only way to get these updated events, is to install from a clean install, that means deleting your DB. This isn't necessary for RAT to function, but you'll be missing out on the goodness this provides.
Another update, I know... =)
Fixed
Changes
- Player names could appears as unknown. This was less of a fix, than defensive code to help keep bad data out of the DB. (Reported by: Capt. Lykke)
- Decreased the timeout when doing hostname lookups
- Crash bug when opening the Server Voting, when an API key was not already set. (Reported by: Goshawkdm)
- Players with special characters in their name would not parse correctly when chatting. [I think I've fixed this once and for all, we'll see] (Reported by: Goshawkdm)
- When closing RAT, but choosing "No" on the "Are you sure?" dialog, the telnet connection to the server was closed. (Reported by: Goshawkdm)
- When backing up your game server, the RAT DB was not properly backing up as well. (Reported by: frasskungin)
- Moved Reset Token to the Update Server section in settings
- Created a new tab in Settings called "Server Configuration" that has the majority of the server settings that go in serverconfig.xml. I think this makes it cleaner, and also allows for some possible updates I have in mind for the future.
If after the update you are still experiencing issues with "unknown" for player names or if you are getting a lot of errors in the Chat window, please follow these instructions:
- Download and install the latest version of Allocs mod.
- Stop your server
- Go into the %appdata%\Roaming\7DaysToDie\Saves\<GAMEWORLDNAME>\<SAVEGAMENAME> and delete the file AllocsPersistentData.bin
- Restart your server
- Once your server is up, start RAT and connect to the server
- In RAT, click Tools -> Delete RAT Player Data. This will remove the information within RAT, not the players themselves. This clears out any stored bad data for the players in RAT.
- Enjoy your game!
Sorry for the back to back updates, but some of the bugs fixed were breaking bugs.
*** NOTE *** If you are having a problem where you are clicking on the Groups button and RAT crashes, you WILL need to delete your RAT db file. You can find that in %appdata%/NomadSoft/RAT4/7d2d_rat4.db
Close RAT, delete the file, install this update. You should be good. Sorry about that, but bad data was entered in the DB, causing this issue.
Fixed
Groups, again. Same problem as before, but elsewhere, should all be fixed now (Reported by: Capt. Lykke)Teleports aren't working correctly (Reported by: AzmodethDefault group attribute values that used the RAT variable {player_steamid} have been updated to use {player_crossid}
Added
When creating a new server, the Game World Name and Save Game Name are now auto populated with the new game world info. Thanks to Kaido for an idea on how to make this happen. (Requested by: Kaido)This means, things like backups will be set to the correct game world info by default, instead of you having to figure it out.
Fixed
Player names with spaces weren't appearing correctly in some events - (Reported By: Capt. Lykke)Group Editor crashing when editing some values - (Reported by KaidoLocal Server light, was not updating correctly on server restarts - (Reported By: Capt. Lykke)When Dark mode was enabled, some fields foreground color was not visible - (Reported By: Capt. Lykke)Disabled test event that was enabled by default on accident - (Reported By: Capt. Lykke)
Changed
RAT will now look for the localization.xml file in the RAT install folder/support_filesCopy the file from your gameinstallfolder/data/configThis will localize things like item names, etc where RAT displays them
Added
New setting in RAT Settings, Reset Webtoken on ConnectThis is on by default and should be, unless you are running multiple copies of RAT to admin more than one server.If you are running multiple servers, connect RAT via telnet as normal and then click the Reset Webtoken button on each server. You only need to do this once, or whenever you want to update the token.New Theme: RAT 4 Ultra Dark (for those that like things... even darker)New Theme: RAT Classic, this is basically the RAT 3 theme
Many other random improvements and fixes.