Tweakeroo

Tweakeroo

2M Downloads

Flexible Block Placement doesn't work on server

flier268 opened this issue ยท 22 comments

commented

tweakeroo-rift-1.13.2-0.9.2.jar
server:mcfallout.net
minecraft version:1.13.2
rift:1.0.4-77

can work on single player,but server

commented

The offset mode of the Flexible Block Placement, as well as the Fast Block Placement tweak work by clicking on air blocks. Some servers, at least Spigot/Paper simply don't allow this, as it's part of their cheat prevention. So for the offset placement there is nothing I can do in the mod to fix that, I'm pretty sure.

But for the Fast Placement tweak there is a new option planned to just click on the targeted block instead of offsetting the click position to the air block, but I don't know when I'll have the time to work on that, as the placement code is rather complex and needs to be rewritten completely to properly support this change.

commented

Yes,it is Spigot server.
I am so sad about this problem.

By the way,
I heard that minecraft's server doesn't care about the direction the player is facing when placing the box, as long as it is around the player.
example:https://github.com/RecursiveG/AutoHarvestMod

commented

Well that mod is a different case as the player rotation makes no difference, it's just the position the player clicks on. But are you sure even that works on Spigot?

In MC 1.12 and lower the placement orientation of certain blocks could be controlled by faking the player's rotation, but the code for that changed a bit in 1.13 and that no longer works. That's why the flexible placement orientation won't work anymore either in 1.13+ for certain blocks, such as pistons even between horizontal rotations, like it still did in 1.12.x :/

commented

https://github.com/TsukiPoi/AutoHarvestMod-Rift
I have already test it,1.13.2 is work on Spigot server!

commented

But the difference is that that mod would be clicking on the farmland and not air blocks. Tweakeroo's Flexible and Fast Block Placement tweaks currently fake right clicking on the actual target position's air block. And Spigot doesn't allow that.

commented

It's a pity

commented

I got a solution,
for example:
modify player.yaw=180 to the facing north in first tick,
then,place block in next tick

I had test it on spigot

commented

So does that fix it in all scenarios?

commented

Posibly yes, but it also means that the player will be facing in a different direction on the server for a few ticks. And due to network delays or server lag the mod might need to delay the block placement packet by several more ticks after sending the rotation packet, which would make the block placement on the server happen with a rather significant delay as well, in addition to the player rotation weirdness that will be noticeable by other players at least. And if Spigot does a ray trace from the player to the target position, then this wouldn't work anyway if you just flip the rotation to the required rotation for the block orientation, as then the player might be looking in the opposite direction from the target position...

commented

Hey, I used to be on a spigot server but changed it to Vanilla. THe problem is the flexible block placement still is not working. Do you know why or a way around. If you could please respond that would be awesome .

commented

@LUKDUCK The rotation features (in most cases) currently would need a specific mod on the server to handle the rotation request. As of right now there are two mods that can handle that: QuickCarpet, or the CarpetExtra extension to FabricCarpet. However this support is also going to be added to my Servux mod at some point in the soon-ish future, as that mod is supposed to handle all the server-side support for my client mods in one mod.

There are a small number of blocks that can also be rotated with the rotation mode of the Flexible Block Placement feature even on vanilla servers - those are blocks that only care about the block side that you click on, and not the player facing. Examples are the Hopper, any wood logs, quartz pillars etc.

I will also try to add fallback support for spoofing the player facing to future versions of Tweakeroo (after I rewrite all the placement related code), which should allow the rotations to work on any servers, at least to some extent/for some blocks. But full/proper rotation support will always require one of the above mentioned server-side mods (preferably Servux, once it actually gets support for this).

commented

Sorry to bother you so much but I am pretty lost. Do I need to download capet and then the quick carpet. Do I have to make my server a Carpet server. What do i need to do to be able to change the direction of a piston or observer. I don't really know a ton about this stuff. Sorry.

commented

Ok, so if I want to change the direction a piston is facing I would have to get on of those two mods. I was testing the the flexible block placement with a piston. Thank you very much.

commented

Yes. If you don't have any preference of your own, I would suggest QuickCarpet, as I believe the accurate block placement protocol support in it is better than in CarpetExtra. In either case you will need to enable that support in Carpet by running the command /carpet setDefault accurateBlockPlacement true.

commented

Thank you SOOOOOOOOO much.

commented

Sorry to bother you again, but i'm downloading quick carpet and on this page https://github.com/DeadlyMC/QuickCarpet114.
It says to to click on the quick carpet jar which i cant find.

commented

Do you mean the bit about getting snapshots from the GitHub Actions? Ignore that, unless you want to specifically use the latest builds instead of the latest release. Just get the latest version from Releases, currently this: https://github.com/DeadlyMC/QuickCarpet114/releases/download/v3.0.0-dev-1.16/quickcarpet-3.0.0-dev+b927d4c.jar

commented

Perfect, Thank you again

commented

i have it in my mods folder but the command says it is unknown. Does it use fabric because I use Fabric

when trying to open the jar file it says "Check Console For Possible Errors

commented

QuickCarpet is a Fabric mod, yes. So if your server runs Fabric, then you just put the QuickCarpet jar file in the mods/ folder, and after that the command should exist. QuickCarpet is a separate version of a "Carpet mod" from FabricCarpet, and both of them can not be used at the same time, as they do lots of the same things.

Do you have other mods currently that are working? You are starting the server via the fabric launcher jar that the installer creates, and not directly via the vanilla jar?

commented

I have tweakeroo, litamica, and fabric otifine. I do not know what my server is starting up with. It is a shockbyte server. I run my minecraft with fabric. I have my server type to vanilla so my guess is it runs the default vanilla. I have my server connected to fileZila. Where could I find what jar my server is starting up. If I have to change the whole server to fabric, and if that would mess up other things. It is ok, and I might just use it how I have It. Thanks for the help.

commented

@LUKDUCK You might want to join the SciCraft Discord server (https://discord.gg/scicraft) for extra help with those things, as each message here also sends an email notification to the other participants by default, and that stuff is not directly related to this issue anymore.