Author Topic: Ghosting Utilities (v1.1.0)  (Read 5389 times)

Download (3 kB)

This is a server-sided add-on which:

  • Adds the command /ghostAllBricks which can be used to ghost all bricks regardless of distance. Admin only by default (controllable by $Prefs, see top of server.cs).
  • Adds the command /restartGhosting which will remove all ghosts for the client and start to ghost them again. Anyone can use this.
  • Scopes bricks to clients when they place a ghost brick. This means that ghost bricks should never inexplicably stay "invisible" when placed while a lot of things are going on.
  • Scopes bricks to clients when they plant their ghost brick. This means effectively the same as the above, but for planting bricks.

Feedback about how much /ghostAllBricks slows down your server would be appreciated. If it doesn't even affect it or slows it down a lot I will change the default speed preferences (to speed it up or slow it down, respectively). You can of course adjust this with preferences yourself anyway.

The code is fairly heavily commented if you want to check it out.

Version history

v1.1.0

  • Added /restartGhosting
« Last Edit: January 07, 2016, 06:23:09 AM by portify »

so the host when saving bricks doesn't save it server sided, if not hosting a dedi?
or is this just so you don't have to deal with ghosting as you move around?

holy stuff this is useful

Awesome. You could also make a client side addition which modifies the saving function to trigger the command first if they are allowed to use it, then schedule the brick saving shortly afterwards when everything is ghosted. It could print a message to the client that it's ghosting everything, and then another message when it has actually completed the saving.

so the host when saving bricks doesn't save it server sided, if not hosting a dedi?
or is this just so you don't have to deal with ghosting as you move around?
Yes if you type /ghostallbricks before saving then you'll save all the bricks on the server.

Thanks, now I don't have to run around the build to ghost everything. I was wondering what %object.scopeToClient(%client) did a couple weeks ago.

v1.1.0

  • Added /restartGhosting

Thanks, it was time consuming to visit every zone of my RPG if I wanted to build. This is perfect :)

Bumping because this add-on is very useful. Thanks so much for releasing this, Port.

Could you possibly add an output event on the client that ghosts all bricks? Then hosts could force clients to ghost all bricks pretty much right after they spawn with the click/touch of a brick.

Or just make a setting to automatically force a client to ghost all bricks as soon as they spawn.

Or just make a setting to automatically force a client to ghost all bricks as soon as they spawn.
that's a fantastic way to rape someone's cpu without their consent.
This shouldn't be used with events, it's perfectly fine as a utility. Jervan and Kyundae have the right ideas.
« Last Edit: March 01, 2016, 05:35:43 PM by the_stitch »

that's a fantastic way to rape someone's cpu without their consent.
Are you sure that would happen? Because it doesn't matter how many bricks you're ghosting. You're going to ghost them at a certain rate of bricks per second, rather than all at once anyway.
Not really any different than spawning them into a gigantic cube of 1x1fs of similar counts.

Jervan and Kyundae have the right ideas.
What ideas? A compliment isn't an idea.

Thank you all mighty Port.

Would it be possible to make a client sided version of this?

Would it be possible to make a client sided version of this?

no