Author Topic: Remove brick planting white colour?  (Read 2541 times)

Whenever a brick is planted in the game, the brick fades to its set colour from white. Is there a way I can prevent this white fade with code to make the brick spawn instantly with its set colour?

No, it happens on the client side.

You can force the brick color to be just white before planting the brick.

You can force the brick color to be just white before planting the brick.

The point is to make it not white, though.



why?
for generating builds without drawing too much attention to the bricks being placed in the world
being able to disable the white animation + sound would be pretty useful

for generating builds without drawing too much attention to the bricks being placed in the world
being able to disable the white animation + sound would be pretty useful
you can do it without sound but not without white animation

Correct me if I'm wrong, but as some of us have made Add-Ons that plants bricks: wouldn't it really be possible to rewrite most of the planting mechanism to work in a similar matter? The biggest issue would of course be backward compatibility and problem with other Add-Ons, but other than that, there shouldn't be that big of a hurdle to pull off?

I might be wrong in how fxDTSBrick::plant works as I have rarely used it.

Thing is, isn't plant() part of the encrypted scripts? How are we supposed to know the code in plant()?

Correct me if I'm wrong, but as some of us have made Add-Ons that plants bricks: wouldn't it really be possible to rewrite most of the planting mechanism to work in a similar matter? The biggest issue would of course be backward compatibility and problem with other Add-Ons, but other than that, there shouldn't be that big of a hurdle to pull off?

I might be wrong in how fxDTSBrick::plant works as I have rarely used it.

Plant is an engine method, so no.
It just plants the brick on the server side and triggers a ghost update to all clients that this brick has been planted.
The clients then receive this update and flash the brick white for 1 second. So even if there was an easy way to change it (there is not) it would be client sided.


Thing is, isn't plant() part of the encrypted scripts? How are we supposed to know the code in plant()?

You can use bldasm to explore code in the .dso files, and ida with the hex-rays decompiler for blockland.exe

Plant is an engine method, so no.
It just plants the brick on the server side and triggers a ghost update to all clients that this brick has been planted.
The clients then receive this update and flash the brick white for 1 second. So even if there was an easy way to change it (there is not) it would be client sided.


You can use bldasm to explore code in the .dso files, and ida with the hex-rays decompiler for blockland.exe
You really can do anything with the right hacky workaround

You really can do anything with the right hacky workaround
not well though
clients would need a dll to remove it
so if you wanted it as a server sided effect you're out of luck

Plant is an engine method, so no.
It just plants the brick on the server side and triggers a ghost update to all clients that this brick has been planted.
The clients then receive this update and flash the brick white for 1 second. So even if there was an easy way to change it (there is not) it would be client sided.

Plant is indeed an engine method. I just thought it could be some way around it. I did a package on plant and tried to set the color each update, but it didn't affect it. There might be a way to do it on the client, but I guess it would be too much of a hassle to pull that off.

No Zeblote is saying that most engine methods cannot be packaged, they are protected

A dll is possible but it might be waaay too much work