Quark Clientside Vanilla Compatibility
comp500 opened this issue ยท 2 comments
I noticed a few problems when trying to use Quark as a clientside mod with a vanilla server. This is useful because Quark has many clientside features (even ones not in the Client module) that are very useful in Vanilla servers. I have therefore tested almost every feature in Quark to see what they do on Vanilla servers, to find any problems with such a setup.
Versions:
- Minecraft 1.12.2
- Forge 14.23.0.2517
- Quark r1.3-114
- AutoRegLib 1.3-14
- JEI 4.8.0.110 (only for spawning items in)
Notes
- Modded items / blocks still show in JEI / Creative menu, but will not be placeable, craftable, droppable or spawnable. Probably unavoidable, not really a problem.
- This should probably be split into multiple issues, however it'd create a lot of clutter to create an issue for each problem / change that could be made to improve compatibility.
Important config changes for use as a clientside mod
These components are game breaking, and need to be fixed or turned off for usage as a clientside mod.
- Disable Double Door Opening
- Disable Axe Leaf Harvesting
- Disable Ladder Drop Down
- Disable Shave Snow Layers
- Disable Boat Sails
- Disable Note Block Interface
Automation
All parts of this category are serverside or require serverside modification, such as extra blocks, and therefore do not affect vanilla.
Building
Most of this category is serverside, and does not affect vanilla.
- Trowel cannot place blocks, they dissappear instantly as if they were mod blocks.
Decoration
All parts of this category are serverside or require serverside modification, such as extra blocks, and therefore do not affect vanilla.
Management
- Auto Tool Restock doesn't work, probably due to it being considered hacking on some servers. Is there a way to make this work, or would it require opening a GUI to move the item? (related: #567)
- Better Crafting Shift-Clicking works, but moves back when you click the item after shift clicking it to crafting. Also resets when you close and reopen the GUI, due to receiving the contents again from the server. It looks like the movements aren't sent to the server properly. Is there a way to work around this?
- Chest Buttons - Sorting appears to work, but no other buttons work. Also has the same glitch after sorting as Better Crafting Shift-Clicking. The sort button occasionally works for the player inventory, and sometimes for the chest inventory, so it might be fixable. AFAIK sorting works with Inventory Tweaks, so this is probably fixable.
- Delete Items doesn't work.
- Dropoff Button doesn't work.
- F to Switch doesn't work.
- Favorite Items doesn't work.
- Hotbar Changer shows, but does nothing.
- Item Linking doesn't work.
- Sorting Button works in survival, but not in creative. (partially related: #512)
Tweaks
The following items don't work due to it being done server side, and therefore do not affect vanilla, and cannot be made to work: Better Stone Tool Crafting, Blastproof Shulker Boxes, Burning Baby Zombies, Chicken Shearing, Chicken Shedding, Clay Conversion, Dye any Wool, Enderman Anti-Cheese, Glass Shards, Hoe Harvesting, Improved Sleeping, Minecart Block Placement, Proper Stair Math, Sheep Armor, Slabs to Blocks, Stairs to Blocks, Villagers follow Emerald Blocks.
- Armed Armor Stands doesn't work.
- Automatic Recipe Unlock doesn't work.
- Axe Leaf Harvesting appears to work, but just destroys them clientside, not sent to server properly. This is important to disable when using as a client side mod, as it may cause problems.
- Burning Torches allows you to put torches in the fuel slot, but fall out when you exit the GUI.
- Compasses Everywhere works!
- Double Door Opening sometimes appears to work, but only applies clientside, not sent to server. This makes double doors hard to use, espescially when you try to go through a door that is actually closed. This is important to disable when using as a client side mod, as it may cause problems.
- Effective Dragon's Breath seems to work.
- Jump Boost Step Assist works!
- Knock on Doors doesn't work.
- Ladder Drop Down doesn't work, but appears to work as it applies clientside but is not sent to server. This is important to disable when using as a client side mod, as it may cause problems.
- Ladder Sliding works!
- Quick Armor Swapping doesn't work.
- Safe Mounts N/A (only testing on 1.12)
- Shave Snow Layers works like placing a modded block. The shovel appears to take damage but this isn't updated serverside. This is important to disable when using as a client side mod, as it may cause problems.
- Sign Editing works!
- Stackable Minecarts somehow works, even in dispensers, but breaks JEI slightly as it can't
/give
a stack of 16.
Vanity
- Boat Sails - Existence of boats / placing of boats on vanilla server causes a crash! See https://pastebin.com/hnUu93tz. Works fine when disabled in config. This is important to disable when using as a client side mod, as it may cause problems. (possibly related: #337)
- Dyable Elytra doesn't work, as it is a recipe change, which is serverside.
- Dyed Item Names shows the recipe, but isn't craftable and isn't sent to server.
- Emotes don't work due to missing command - is it possible to send these as a seperate plugin channel or something so that other Quark users see it on a vanilla server? or a chat message?
- Firework Duplication doesn't work, as it is a recipe change, which is serverside.
- Stair Chairs works well clientside, but doesn't appear to be sent to the server or other clients. (related: #284)
- Witch Hats can be worn clientside, but aren't sent to server and can't be obtained unless in creative.
World
All parts of this category are serverside or require serverside modification, and therefore do not affect vanilla.
Client
Everything here works very well with a vanilla server, as the name implies.
Misc
Most of this category is serverside, and does not affect vanilla.
- Note Block Interface shows up but doesn't do anything, and the vanilla behaviour occurs. This is important to disable when using as a client side mod, as it may cause problems.
For a TL;DR see 'Important config changes for use as a clientside mod' at the top.
PS: Some of these features (e.g. double door opening, note block interface) would be great to have on vanilla-compatible servers with a server plugin (Bukkit / Spigot / Sponge), so others who do not have Quark can also play.