forked from SteamWar/SteamWar
Hull kept a set of affected players that was only filled by a join listener active in the Schem states, so spectators joining earlier were never hidden from the hull. The set was also a plain HashSet read on netty threads, where a racing lookup meant "not hidden". Invert it into a concurrent set of viewers (referees, own team, boarded players); everyone else is hidden by default. - Hull: viewer UUID set with addViewer/removeViewer/forgetViewer, a null player counts as hidden - Hull: entities are hidden/shown when they enter/leave the hull for all non-viewer online players; uncovered blocks go to non-viewers - HullHider: join/quit handled in a listener active in every state; quit clears the viewer entry - HullHider: TeamDeathEvent re-hides the enemy hull and resends its chunks - FightPlayer: stop the enter countdown before firing TeamDeathEvent so listeners see canEntern() == false
FightSystem
Server setup
- Install a WorldEdit plugin and the FightSystem plugin on the server
- Start the server once (will instantly shutdown due to missing FightSystem configuration)
- Configure FightSystem by modifying
plugins/FightSystem/config.yml - Create a
backupfolder inside your world folder and copy yourregionfolder andlevel.datinto it - Create a
config.ymlin the world folder and configure the file as described at the end ofplugins/FightSystem/config.yml - Start and join the server (as op), create a basic kit, save it with
/ak [kitname] - Configure the kit as default kit
- Restart the server and have fun!
If you don't want FightSystem taking control over spawning and the whole world, set Arena.Leaveable = true.
To start a server in the testarena mode start the server with the flag -DfightID=-1 prior to -jar.
Compiling
Building SteamWar.de software requires certain libraries,
which cannot be provided over traditional ways (like maven)
due to copyright issues with compiled Spigot packages.
The following libraries are required to be in the lib
directory exactly named like in the list:
Spigot-1.8.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.8.9)Spigot-1.9.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.9.4)Spigot-1.10.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.10.2)Spigot-1.12.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.12.2)Spigot-1.14.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.14.4)Spigot-1.15.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.15.2)Spigot-1.18.jarhttps://hub.spigotmc.org/jenkins/job/BuildTools/ (1.18.2, Use the jar from Spigot/Spigot-Server/target)SpigotCore.jarhttps://steamwar.de/devlabs/SteamWar/SpigotCoreWorldEdit-1.12.jarhttps://dev.bukkit.org/projects/worldedit/files (6.1.9)WorldEdit-1.15.jarhttps://dev.bukkit.org/projects/worldedit/files (newest)