Limit blocks and items to specific client version
#1
I'd like a plugin that would limit the players to only have access to blocks and items available in a specific client version. That is, any client version is allowed to connect, but when they try to put a "too new" item in a chest, or place a "too new" block, the action is refused, while possibly losing the item / block.

Example 1:
Plugin configured to allow only 1.2 blocks / items.
Player connects using a 1.8 client.
Player tries to place granite.
The granite block turns into regular stone.

Example 2:
Plugin configured to allow only 1.2 blocks / items.
Player in creative mode grabs an emerald (1.3 item) into their inventory
Plugin removes the item from the player's inventory (if possible)
If not possible, the following happens:
The player takes the emerald from their inventory and places it into a chest.
Plugin removes the item from the chest.
Alternate:
Player drops the emerald (Q key)
Plugin deletes the pickup.
Reply
Thanks given by:
#2
Such a plugin may need some new hooks, especially on the inventory handling; I can add those upon request.
Reply
Thanks given by:
#3
Wouldnt it be better (but more difficult) to send different blocks to each minecraft version?
But that would require lua protocol api.
Reply
Thanks given by:
#4
That's not a solution to my problem. My problem is that I want to allow 1.9 (snapshot) clients onto the Gallery server, but I don't want them to be able to place or wield 1.9-specific blocks and items - I want 1.8 clients to be able to connect and play on the Gallery server, too.
Reply
Thanks given by:
#5
What about creating a cBlockFilter class to filter the protocol?

And of course exporting it to the API would be good.
Reply
Thanks given by:
#6
I'd like to give it a try. Could you add a OnWindowSlotChanging(a_Window, a_SlotNum, a_ChangedItem) hook?

Also, what would be preferred, a whitelist or a blacklist?
Reply
Thanks given by:




Users browsing this thread: 1 Guest(s)