Version 89 (modified by 10 years ago) ( diff ) | ,
---|
THIS IS ONLY FOR THE DEDICATED SERVER BUILD OF 7DTD!
Table of contents
- NOTE AGAIN
- Download
- Build yourself
- Features
-
Release Notes
- rev. 230 (0.113.5586.25212)
- rev. 228 (0.112.5577.41143)
- rev. 227 (0.111.5572.35274)
- rev. 226 (0.111.5572.35274)
- rev. 224 (0.110.5570.39924)
- rev. 222 (0.104.5471.24501)
- rev. 218 (0.104.5466.33703)
- rev. 216 (0.104.5465.40278)
- rev. 213 (0.103.5461.3294)
- rev. 211 (0.103.5459.40864)
- rev. 208 (0.102.5448.37821)
- rev. 206 (0.100.5442.30220)
- rev. 205 (0.100.5439.41910)
- rev. 202 (0.93.5409.27239)
- rev. 199 (0.93.5378.41731)
- rev. 198 (0.93.5378.21429)
- rev. 197 (0.93.5377.34787)
- rev. 196 (0.93.5375.21616)
- rev. 194 (0.93.5374.40502)
- rev. 192 (0.93.5373.21892)
- rev. 190 (0.93.5369.22980)
- rev. 189 (0.93.5368.20218)
- rev. 188 (0.93.5366.36263)
- rev. 185 (0.93.5365.39558)
- rev. 183 (0.93.5365.36355)
- rev. 180 (0.92.5364.31430)
NOTE AGAIN
This mod is only for the dedicated server build
Download
The latest build can be found here: http://illy.bz/fi/7dtd/server_fixes.tar.gz.
Note that this will only work with the correct version of the 7dtd dedicated server. If they release a new build the files have to be updated (should never take longer than 24h from their release).
Once downloaded unpack the archive to your server folder so it replaces the Assembly-CSharp.dll in 7DaysToDie_Data/Managed and also you get a Mods folder in the server root folder.
Build yourself
The Assembly-CSharp.dll is first deobfuscated with the Deobfuscator. Then the 7dtd-server-fixes.dll can be build referencing this assembly. At last the deobfuscated Assembly-CSharp.dll is patched with the Assembly-Patcher so it calls the new methods in the 7dtd-server-fixes.dll.
- Download the Deobfuscator (if you don't need to change anything use a release build, otherwise at least download the release build for an example patchers.xml)
- Put both Assembly-CSharp.dll and UnityEngine.dll in the folder where the Deobfuscator executable is
- Run the deobfuscator with "Assembly-CSharp.dll" as its only parameter. On Windows this can be achieved by dragging the AC#.dll onto the executable.
- Copy the created Assembly-CSharp.deob.dll to the 7dtd-binaries folder within the 7dtd-server-fixes folder and rename it to "Assembly-CSharp.dll"
- Also copy the files given in the README.txt from the game to that folder
- Open the project, change whatever you want, build
- Run the 7dtd-fixer.exe on the Assembly-CSharp.dll in the build folder
- Copy the 7dtd-server-fixes.dll and Assembly-CSharp.patched.dll to your game folder the same way as with the normal precompiled download
Features
New log information
- New entry whenever a player connects combining all the information that previously had to be collected manually. It is printed after RequestToSpawnPlayer and looks like this:
Player connected, clientid=1, entityid=171, name=alloc, steamid=765611*******172, ip=192.168.1.58
- Each time someone connects on Telnet:
Telnet connection from: 127.0.0.1:45014
- When someone disconnects from Telnet:
Telnet connection closed by client: 127.0.0.1:45014
- When someone executes a command through Telnet:
Telnet executed "gt" from: 127.0.0.1:45014
- When a connected client successfully executes a remote command:
Executed command "lp" from player "Alloc"
- When a player has a stack in his inventory which exceeds the official stack size limit for that item:
Player with ID 171 has stack for "stick" greater than allowed (2000 > 250)
Integrated Webserver for administration
See Integrated Webserver for more information.
Map rendering
The map is rendered to image files as people visit the different places. Those images are stored within the save game folder in a folder named map. This folder contains one subfolder per zoom level, 0 being the most zoomed out whereas currently 4 is the normal size. In each of them are folders for the X coordinates of the blocks which contain individual images for the Y coordinates:
SaveGame/ map/ 0/ # 0 being the zoom level -3/ # -3 is the block number in x-direction (west to east) 5.png # 5 is the block number in y-direction (south to north)
The map will be rendered while people wander around but if you want to initially get everything mapped that has been visited prior to adding this mod (or prior to rev.131 which introduced this feature) you might want to run the command "rendermap". NOTE that this will take a long time to execute (in the minutes) depending on how big the visited map is so far. During this time the server can not be used for playing or any commands.
The generated map file structure can be used to show the map with tools like Leaflet. The integrated webserver will also show this map.
New commands (for in-game console, control panel and Telnet)
- getgameprefs / gg: Get all server preferences (no parameters passed) or just those that contain the string that is passed. This can be used to give all users access to read the server settings (e.g. land claim size) (see Admins.xml below). Only non-sensitive information can be accessed, so excluded are all preferences which contain the following strings:
- Telnet
- AdminFileName
- ControlPanel
- Password
- SaveGameFolder
- Options
gg claim LandClaimDeadZone = 30 LandClaimDecayMode = 0 LandClaimExpiryTime = 3 LandClaimOfflineDurabilityModifier = 4 LandClaimOnlineDurabilityModifier = 4 LandClaimSize = 7
- gettime / gt: Get the current in-game time like this one:
Day 18, 14:13
- give: Give an item to a player
- kill: Kill a player denoted by his name or entity id
- listitems / li: List items that can be given with give
- listknownplayers / lkp: List all players that have ever been online (since this version of the mod)
- listlandprotection / llp: Lists all land protection blocks and their owners (name only shown when owner is online) or only those that are owned by a given player (steamid or entity/name if online) or show a summary of players and number of keystones used only (by passing "summary"):
Player " (76561198066968172)" (protected: True, current hardness multiplier: 4): (1249, 60, -21) Total of 1 keystones in the game
- listplayerids / lpi: Lists all online players with their IDs for use with e.g. PM
- removelandprotection / rlp: Removes the given land protection block or all blocks of a given player.
- rendermap / rm: Render the map as far as it was ever visited by any player to both a big file and many small tiles that can be used for a map viewer like Leaflet. WARNING: This command can take a long time to execute (like 5 to 30 minutes) and the server won't be usable at that time for anything else!
- reply / re: Send a message to the player who last sent you a private message (see sayplayer / pm).
- sayplayer / pm: Send a message to a single player denoted by his name or entity id. Will be shown on receiver side as "<sender> (PM)" where <sender> is either "Server" if sent through the control panel or Telnet interface or the name of the sending player if used by the in game console.
- settimereal / str: Set the in-game time by number of days, hours, minutes
- showinventory / si: List the inventory/belt content of a player denoted by his name or entity id. Note that this data is only updated every 30s when the client sends his current state. Sample output:
Belt of player: Slot 1: 001 * bottledWater Slot 2: 001 * canChili Slot 3: 001 * firstAidBandage Bagpack of player: Slot 0: 031 * canBeef Slot 4: 001 * firstAidBandage Slot 5: 032 * painkillers Slot 12: 001 * PumpShotgun Slot 31: 064 * tallGrassDiagonal2
- teleportplayer / tele: Teleport a given player to a position or player
- unban: Remove a ban for a SteamID
- version: Show the currently running version of the server fixes and other mods
Admins.xml
THIS IS ALL INTEGRATED TO THE CORE GAME SINCE A11
- Commands with permission level set to >= 1000 can be executed by all players. This is useful e.g. for the new getgameprefs command.
- Commands not defined in admins.xml at all automatically has permission level 0
- A command set in admins.xml affects both and long version. E.g. having the following in admins.xml will set the permisisonlevel to 1 for both lp and listplayers:
<permission cmd="lp" permission_level="1" />
Replaced Telnet server
- Should be way more stable
- Handles disconnect of clients without sending exit
- Allows multiple connections at once (though output for one client is sent to all)
- If no password is set in TelnetPassword the Telnet server only listens on the loopback interface!
- Greeting message contains new line * Allocs server fixes loaded
- Output of a command run by a single Telnet client is only sent to this one client
Release Notes
rev. 230 (0.113.5586.25212)
- Updated for Alpha 11.3 (server build 593110)
- REMOVE ALL OLD FILES FROM THE MODS-FOLDER PRIOR TO APPLYING THIS ONE
rev. 228 (0.112.5577.41143)
- Updated for Alpha 11.2 (server build 583520)
- Fixed IP output
rev. 227 (0.111.5572.35274)
- Updated AllocsCommands mod: Fixes command teleport (#99)
rev. 226 (0.111.5572.35274)
- Updated for Alpha 11.1 (server build 578130)
- Also removed protect-file that accidentally slipped into last archive.
rev. 224 (0.110.5570.39924)
- Updated for Alpha 11 (server build 576370)
rev. 222 (0.104.5471.24501)
- Updated for Alpha 10.4 b10 hotfix (server build 480993)
rev. 218 (0.104.5466.33703)
- Updated for Alpha 10.4 b9 hotfix (server build 478721 and 478809)
rev. 216 (0.104.5465.40278)
- Updated for Alpha 10.4 (server build 477715)
rev. 213 (0.103.5461.3294)
- Updated for Alpha 10.3 b12 hotfix (server build 471956)
rev. 211 (0.103.5459.40864)
- Updated for Alpha 10.3 (server build 471356)
EDIT: THIS IS ACTUALLY FOR DEDI BUILD 471352, SO DO NOT WONDER WHY I POSTED THE WRONG ONE ABOVE ;)
rev. 208 (0.102.5448.37821)
- Updated for Alpha 10.2 (server build 459429)
rev. 206 (0.100.5442.30220)
- Updated for Alpha 10.1 (server build 454117)
- Command listplayerids / lpi added
rev. 205 (0.100.5439.41910)
- Updated for Alpha 10 (server build 451483)
- Command listplayersextended / lpe removed: Now integrated with the vanilla lp command
rev. 202 (0.93.5409.27239)
- Webserver core updated for better performance / less problems
- Command listlandprotection changed: If run from the game's console it accepts the parameter "nearby" an optionally an distance
rev. 199 (0.93.5378.41731)
- Updated map rendering + webserver so that hopefully all "sharing access violation"s are gone
rev. 198 (0.93.5378.21429)
- Command unban actually registered in game ;)
rev. 197 (0.93.5377.34787)
- Commands give and listitems changed: Now should work for all things in creative menu
- Player inventory is monitored for stacksizes greater than the allowed size for each item (see New log information)
rev. 196 (0.93.5375.21616)
- Added console command unban
rev. 194 (0.93.5374.40502)
- Updated for A9.3 b5 (server build 385244)
rev. 192 (0.93.5373.21892)
- Minor bug fix for map rendering
rev. 190 (0.93.5369.22980)
- Further Telnet stability improvements
rev. 189 (0.93.5368.20218)
- Command teleportplayer / tele changed: Second parameter can be another player now
- Made Telnet interface robust against errors in core commands (like buff)
- Telnet ignores empty lines
rev. 188 (0.93.5366.36263)
- Allow setting different rendering settings (run server with this version once, shut down, edit <save>/map/mapinfo.js)
- WARNING: This can have a serious impact on server performance! Will be optimized later on.
rev. 185 (0.93.5365.39558)
- Web interface no longer depends on CP enabled (only on existence of the "webserver" folder)
- Login attempt limiting on Telnet
rev. 183 (0.93.5365.36355)
- Multithreaded Telnet server (hopefully lowering CPU usage a bit)
rev. 180 (0.92.5364.31430)
- Updated for A9.3 (server build 375426)