ThunderGemios10 / Survival-Games

Survival Games plugin for Spigot - UPDATED for 1.13+
https://www.spigotmc.org/resources/survival-games.17740/
GNU General Public License v3.0
25 stars 22 forks source link

Break and placing blocks #93

Open oskar92001 opened 4 years ago

oskar92001 commented 4 years ago

Hey Im currently using the experimental 0.7.5-snapshot of the plugin on spigot 1.15.2. As of now the plugin i working great, the only issue i have with it now is that me or other players are not able to place or break blocks or items.

config.yml: ################################################

Survival Games

Developed by

Original Author

Double0negative

Current Author

ThunderGemios10

http://mc-sg.org

voidmc.com

################################################

Do NOT touch this!

config-version: 3

Enable debug messages

debug: false

Enables the udpdate checker. This will enabled

anyone with the perm sg.system.updatenotify to

be notified when a new update is avalible

check-for-updates: true

Set how many players are needed for the game

to auto-start. Once the player limit is reached

it will wait for x amount of seconds for

additional players. Auto start vote means that

x percent of players need to vote with /sg vote

for the game to begin

auto-start-players: 6 auto-start-time: 20 auto-start-vote: 75

If the player queue is enabled then if a player

tries to join a game that is not joinable

(ie ingame) the player will be added to a

queue line to join the next time the game

is open

enable-player-queue: true

If set to true, commands not associated with

the Survival Games will not be allowed to be run

by players in-game.

disallow-commands: true

If disallow-commands is set to true, you can use

the cmdwhitelist section below to whitelist certain

commands.

cmdwhitelist:

Sets randomjoin mode

0=pure random

1=logic based finds the best games, and chooses one from this list at random

default=1

randomjoin-mode: 1

Set how long the grace period for be after the start of

the game in seconds.

grace-period: 30

Controls if chests should be restocked on the first

night. If set to true this will also have the side

effect of setting the world time to day at the start

of the game. This is only temporary until per-arena time

has been implemented.

restock-chest: true

Restock EVERY night?

restock-chest-repeat: true

Remove all items from chests when adding random content?

clear-chest: true

Here you can control block placing and breaking.

block: place: whitelist:

How many blocks to rollback per-tick

The higher this settings the fast each

arena will be reset but will cause more

lag

rollback: per-tick: 100

Settings for when the game nears end. This runs

when there are only x amount of players

remaining. If place chest is enabled then

when the player limit is reached, a chest

will be placed inside the radius of every

remain player containing random items for

that player. If fire-lighting is enabled

then a lighting strike will be fired at the

location of each player every x seconds to

notify the other players of their location

endgame: players: 3 fire-lighting: enabled: true interval: 30

If enabled, after x amount of time, each player

remaing will be teleported to the center of the

arena for a death match. If they have not been

killed after killtime, the game will end.

deathmatch: enabled: true time: 30 killtime: 5

If enabled, winner gets the specified reward

Items are defined as

itemnumber, amount, durabilty, enchantments, name

Example: diamond sword with 1 item, full durabilty, shaprness 4, knockback 2 and the name killer

276, 1, 0, sharpness: 4 knockback: 2, killer

reward: enabled: false contents:

Settings for connecting to and

SQL server. These settings will

be used for the online webstats

Prefix is what all tables used for

SurvivalGames will be

prefixed with. This should stay the same

for most cases.

sql: host: 'localhost' port: 3306 user: 'root' pass: '' database: 'survivalgames' prefix: 'sg_'

########################################################### ####################### Stats ############################ ###########################################################

Settings for the webstats. If enabled, stats

such as k/d record, wins, win streaks, kill

streaks, etc. will be saved.

stats: enabled: false webserver: enabled: false port: 880 points: kill: 10 win: 100 position: 7 killstreak: base: 10 multiplier: 2 killstreak: level1: '&e{player}&7 got a Double Kill!' level2: '&e{player}&9 got a Multi Kill!' level3: '&e{player}&5 got an Ultra Kill!' level4: '&e{player}&4 got an Unbelievable Kill!' level5: '&e{player}&a&kii&4&l Unbelievable+!&a&kii'

Console log: 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Disabling SurvivalGames v0.7.5 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Arena 1 reset. Rolled back 0 blocks in 1 iterations (100 blocks per iteration Total time spent rolling back was 0ms) 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] SurvivalGames version 0.7.5 has now been disabled and reset 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Enabling SurvivalGames v0.7.5 09.04 02:40:54 [Server] Server thread/WARN Enabled plugin with unregistered PluginClassLoader SurvivalGames v0.7.5 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Running 1.13+ 09.04 02:40:54 [Server] Server thread/INFO [SG] Plugin reloaded 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Loading Arena: 1 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] 383 255 383 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] -256 34 -256 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Location{world=CraftWorld{name=Games},x=383.0,y=255.0,z=383.0,pitch=0.0,yaw=0.0} 09.04 02:40:54 [Server] Server thread/INFO [SurvivalGames] Location{world=CraftWorld{name=Games},x=-256.0,y=34.0,z=-256.0,pitch=0.0,yaw=0.0} 09.04 02:40:54 [Server] Server thread/WARN [SurvivalGames] [Warning] [ItemReader] Could not parse material: "399" 09.04 02:40:54 [Server] Server thread/WARN java.lang.IllegalArgumentException: Material cannot be null 09.04 02:40:54 [Server] Server thread/WARN at org.apache.commons.lang.Validate.notNull(Validate.java:192) 09.04 02:40:54 [Server] Server thread/WARN at org.bukkit.inventory.ItemStack.(ItemStack.java:82) 09.04 02:40:54 [Server] Server thread/WARN at org.bukkit.inventory.ItemStack.(ItemStack.java:70) 09.04 02:40:54 [Server] Server thread/WARN at org.bukkit.inventory.ItemStack.(ItemStack.java:58) 09.04 02:40:54 [Server] Server thread/WARN at org.bukkit.inventory.ItemStack.(ItemStack.java:44) 09.04 02:40:54 [Server] Server thread/WARN at com.thundergemios10.survivalgames.util.ItemReader.read(ItemReader.java:100) 09.04 02:40:54 [Server] Server thread/WARN at com.thundergemios10.survivalgames.util.Kit.load(Kit.java:33) 09.04 02:40:54 [Server] Server thread/WARN at com.thundergemios10.survivalgames.util.Kit.(Kit.java:25) 09.04 02:40:54 [Server] Server thread/WARN at com.thundergemios10.survivalgames.GameManager.LoadKits(GameManager.java:71) 09.04 02:40:54 [Server] Server thread/WARN at com.thundergemios10.survivalgames.GameManager.setup(GameManager.java:53) 09.04 02:40:54 [Server] Server thread/WARN at com.thundergemios10.survivalgames.SurvivalGames$Startup.run(SurvivalGames.java:101) 09.04 02:40:54 [Server] Server thread/WARN at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftTask.run(CraftTask.java:81) 09.04 02:40:54 [Server] Server thread/WARN at org.bukkit.craftbukkit.v1_15_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:394) 09.04 02:40:54 [Server] Server thread/WARN at net.minecraft.server.v1_15_R1.MinecraftServer.b(MinecraftServer.java:1036) 09.04 02:40:54 [Server] Server thread/WARN at net.minecraft.server.v1_15_R1.DedicatedServer.b(DedicatedServer.java:399) 09.04 02:40:54 [Server] Server thread/WARN at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:984)

bloxidge commented 4 years ago

Also getting this issue but I am setting the block names in all-caps.

With debug: true set, the block list does display the correct names, not null:

[20:33:25 INFO]: [SurvivalGames] [Debug] PlaceEvent: read : [OAK_LEAVES, SPRUCE_LEAVES, BIRCH_LEAVES, JUNGLE_LEAVES, ACACIA_LEAVES, DARK_OAK_LEAVES, OAK_SAPLING, SPRUCE_SAPLING, BIRCH_SAPLING, JUNGLE_SAPLING, ACACIA_SAPLING, DARK_OAK_SAPLING, GRASS, FERN, DEAD_BUSH, DANDELION, POPPY, BLUE_ORCHID, ALLIUM, AZURE_BLUET, RED_TULIP, ORANGE_TULIP, WHITE_TULIP, PINK_TULIP, OXEYE_DAISY, SUNFLOWER, LILAC, TALL_GRASS, LARGE_FERN, ROSE_BUSH, PEONY, BROWN_MUSHROOM, RED_MUSHROOM, TORCH, CAKE]
[20:33:25 INFO]: [SurvivalGames] [Debug] BreakEvent: read : [OAK_LEAVES, SPRUCE_LEAVES, BIRCH_LEAVES, JUNGLE_LEAVES, ACACIA_LEAVES, DARK_OAK_LEAVES, OAK_SAPLING, SPRUCE_SAPLING, BIRCH_SAPLING, JUNGLE_SAPLING, ACACIA_SAPLING, DARK_OAK_SAPLING, GRASS, FERN, DEAD_BUSH, DANDELION, POPPY, BLUE_ORCHID, ALLIUM, AZURE_BLUET, RED_TULIP, ORANGE_TULIP, WHITE_TULIP, PINK_TULIP, OXEYE_DAISY, SUNFLOWER, LILAC, TALL_GRASS, LARGE_FERN, ROSE_BUSH, PEONY, BROWN_MUSHROOM, RED_MUSHROOM, TORCH, CAKE]

but none of the blocks can be broken in-game.

Remyk1 commented 4 years ago

I think this should fix it Survival-Games.zip

Originally posted by @Remyk1 in https://github.com/ThunderGemios10/Survival-Games/issues/89#issuecomment-602033810


Could you try this jar? And see if it fixes it

bloxidge commented 4 years ago

I’ve done some digging and it turns out the issue I’ve been having is due to running a 1.15.2 server (so PRE_13 = false) but have imported much older maps with legacy blocks. So the plugin uses the non-legacy matchMaterial method.

The workaround for this I found was to include the legacy block names but forcibly prefix them with LEGACY_ to counteract the fact that the matchMaterial method doesn’t set the legacy flag and prefix the block names automatically.

bloxidge commented 4 years ago

Might be worth documenting this discrepancy somewhere in the config files for new users.

oskar92001 commented 4 years ago

@Remyk1 Thanks, it worked.