Blocks & Decoration A way to implement indestructible blocks and placed items

Laluzi

Skeletron
So this is a suggestion that has been made before, but not in recent history, and I couldn't find one that suggested specifically what I want to put forward.

I like building stuff. I like showing off the stuff I build. I don't, however, like when somebody griefs me and starts throwing bombs around when I'm showing stuff off, which has made me leery of actually doing these things. I've played enough open multiplayer games to know you can never avoid the guy that wants to knock over other people's sandcastles, and it's better to build a box house on those servers than to get fancy. And there are more applications to this than paranoia. If you want to build an adventure map or an elaborate dungeon - these things rely on the idea that the recipient will not use a pickaxe to push their way through the challenges you craft for them. And that's a bit dicey. Good behavior goes out the window when the spiky ball traps get involved.

Indestructible blocks. It'd be nice being able to people-proof the stuff you make. But truly indestructible blocks don't work as a concept- you can't actually get rid of them. So obviously, that's a no-go. Nor is creating an indestructible variant of every existing world object a clean solution. The bloat would be tolerable enough with blocks, but when you extend it to every placeable item... yeah, that's a problem.

So what I propose is an item similar to an actuator, which would be sold by either the Mechanic or the Steampunker - I don't think it'd matter much either way. This item can be placed invisibly on blocks, placed furniture, pressure pads, coin stacks, and so on. Anywhere where you can stick an actuator, you can stick one of these. Spaces that have this item overlaid on them cannot be altered by anyone except the person who owns the world - the person who's hosting it. (In single player, this has no effect.) This means that furniture can't be removed, blocks can't be mined, but liquids can't be removed, but also that blocks can't be placed and liquids can't be dumped in empty space that has this pseudo-actuator attached. Essentially, it applies Creative Shock to the affected area.

I do see a potential problem raised by liquids; ideally you'd proof the whole area so that a player can't dump a liquid in the first place, but there's always the case where somebody's not going to do that, or somebody's going to fly to the top of space to dump a bucket of honey just because they want to see what will happen. As liquids travel, their collisions can create blocks, and liquids cannot rest on top of each other, that does have the potential to break functionality. But I think there's already a workaround to this. If you've dug enough hellevators, you'll notice that if a minetrack goes through lava and you drain water onto it, water that attempts to form obsidian on the space where the minetrack occupies will fail and evaporate, and that entire lakes will disappear this way, stymied by a single block. The same principle could apply to affected liquid blocks here; have them just obliterate whatever new liquid manages to touch them.

It would add further overhead to loading, in that it's another bit attached to every block of the world, but the only concern I can think of with this suggestion. I mean, we've got piggy banks already for the principle of 'I don't want other people to take my stuff.' Having the same thing for blocks and furniture doesn't seem like too much of a stretch.
 
It seems simpler to just make a placeable item that inflicts creative shock within a certain range. Love the idea though!

Edit: Maybe the item I mentioned could be switched on/off with wire so that blocks can still be broken if needed.
 
Last edited:
It seems simpler to just make a placeable item that inflicts creative shock within a certain range. Love the idea though!
That's also a good possibility (which avoids the extra bit), though it would also have to have the same 'don't affect host' property (else nobody can remove the item), and it potentially runs into problems regarding range. Oftentimes I have issues with music boxes with their lack of customizable limits, and the same can apply here - let's say you've got your general spawn-location base in a multiplayer server, and you want to people-proof your house. Placing an item that inflicts creative shock prevents other people from building or modifying their houses in the same base area. You might also have a case with an adventure map where you're totally okay with the player building and placing platforms, but you don't want them to mine any blocks or statues. It's a tradeoff thing.
 
Maybe instead of only the owner of the world being able to ise these, only the player who placed he blocks could interact with them. Also, what would the item be called?
 
Maybe instead of only the owner of the world being able to ise these, only the player who placed he blocks could interact with them. Also, what would the item be called?
While that would be a neat feature, it seems like it would be easy to deliberately grief players that way (show up in somebody else's world, place permanent blocks that can't ever be removed by them in the middle of their house, and then leave forever.) It also assumes the game remembers who placed a block, and that is certainly not presently the case. It'd be adding several more bits to blocks (assigning a persistent player ID, which seems nightmarish), which continues to increase the overhead.

As for names, I didn't really think of one that struck my fancy. It'd depend on how it was implemented, too. I don't think it really matters? If somebody has a name idea, neat, and I'll happily take it. But I just wanted to convey an idea.
 
My idea is to implement an actuator-like item, but to make it indestructible when wired, but the ideas above are great...
 
Back
Top Bottom