Jump to content

Ability to pick up self crafted props and items


Recommended Posts

Hi all devs,

 

First thing first, thanks a lot for the game. We are having a blast playing it in coop with my brother for a week now.

 

Although there is one particular option we feel is very much lacking ; why are we not able to move a missplaced crafted object, like a door, a chest, etc ? I understand giving players the ability to just, per exemple, steal a house in the form of blocks is not really an option, especially in multiplayer, but crafting a steel door and placing it mid air after a missclick is very much annoying.. You need to spend so much time removing it, not even getting it back and not even getting your ressources back.

 

So you lose the time getting your ressources (x2), the time your craft your prop (x2), the time you destroy it (x1)...

A bit too much in my opinion ! If for the reason above i understand why you don't give players the ability to get props straight back in the inventory, i think there should still exist better solutions (being able to move crafted items only, in the craftable zone) or at least get your ressources back.

But being able to mive self crafted items seems quite the obvious and best option...

 

Thanks ! Cheers

Link to comment
Share on other sites

The way I have suggested they do this in the past (related to blocks and not props, but would work just as well) is to allow any block (or prop) to be picked back up within 5 seconds of being placed.  That 5 seconds could be adjusted if needed.  This let's you fix a misplaced block right away, but prevents moving it later, which I think is a good option.

Link to comment
Share on other sites

Seems very much a valid option too.

 

But then i don't really get why the cafting block zone exists (not sure about the name in english sorry). But if you claim a zone, this means in the code you have some rights over this zone, not sure to understand why these rights do not allow you to move your own objects (and why you would not be able to share these same rights with your in-game party) ?

 

But indeed, a timer is a good option too, especially if adjustable

Link to comment
Share on other sites

24 minutes ago, aschnt said:

Seems very much a valid option too.

 

But then i don't really get why the cafting block zone exists (not sure about the name in english sorry). But if you claim a zone, this means in the code you have some rights over this zone, not sure to understand why these rights do not allow you to move your own objects (and why you would not be able to share these same rights with your in-game party) ?

 

But indeed, a timer is a good option too, especially if adjustable

I don't know the reason, or even if there is one.  I know the more changes made to a world, the larger the save and potentially worse performance once you get a lot of changes, but I would think that moving a "change" anywhere else wouldn't have any impact on that.

Link to comment
Share on other sites

4 hours ago, aschnt said:

not sure to understand why these rights do not allow you to move your own objects

Because the game doesn't really track what is "yours"; it wouldn't know the difference between you making your base, or you taking apart dishong tower by picking up the doors blocking your path. They have to duplicate every pickable block to have a separate unpickable type for POIs, and there's not that many block IDs to go around (small numbers so the saves can be reasonably sized).

Link to comment
Share on other sites

3 hours ago, theFlu said:

Because the game doesn't really track what is "yours"; it wouldn't know the difference between you making your base, or you taking apart dishong tower by picking up the doors blocking your path. They have to duplicate every pickable block to have a separate unpickable type for POIs, and there's not that many block IDs to go around (small numbers so the saves can be reasonably sized).

Ahhh.  Right.  I should have been thinking about that.  Probably did in the past and that's why I though of the timer option and then just forgot.  Lol.  Since you can place a land claim block anywhere, you shouldn't be able to just pick up everything from a POI.  A timer would avoid that issue.

Link to comment
Share on other sites

Posted (edited)
4 hours ago, theFlu said:

Because the game doesn't really track what is "yours"; it wouldn't know the difference between you making your base, or you taking apart dishong tower by picking up the doors blocking your path. They have to duplicate every pickable block to have a separate unpickable type for POIs, and there's not that many block IDs to go around (small numbers so the saves can be reasonably sized).

Alright, I get that. Then there must be workarounds, like wouldn't it be possible to just add a boolean "isCrafted" to object attributes that turns into true if the object is placed into an already existing crafting zone the player has authority over? And only players with authority over the zone are allowed to move it? Or smtg in the likes?

Edited by aschnt (see edit history)
Link to comment
Share on other sites

58 minutes ago, aschnt said:

Alright, I get that. Then there must be workarounds, like wouldn't it be possible to just add a boolean "isCrafted" to object attributes that turns into true if the object is placed into an already existing crafting zone the player has authority over? And only players with authority over the zone are allowed to move it? Or smtg in the likes?

 

Remember that blocks take up space in the savegame or world files. Lets say they use 16bit for each block then an "isCrafted" boolean in that value would half the available block types. The other choice would be to increase the value to 32bit but then all blocks take up double the space, increasing world and savegame size on the disk and generating more disk traffic when loading each chunk. Did you know that they already have to limit the speed of vehicles so driving around doesn't lead to stuttering?

 

As theFlu said, the efficient method currently used is to reserve block types for player crafted workstations and electric traps. If they wanted it for more blocks they probably would have to generate a duplicate for all player-craftable blocks that are also found "in the wild" which may be practically all blocks

 

Edited by meganoth (see edit history)
Link to comment
Share on other sites

6 hours ago, aschnt said:

Alright, I get that. Then there must be workarounds, like wouldn't it be possible to just add a boolean "isCrafted" to object attributes that turns into true if the object is placed into an already existing crafting zone the player has authority over? And only players with authority over the zone are allowed to move it? Or smtg in the likes?

Which is the reason I suggested a timer.  A misplaced block is known to be misplaced almost immediately in most cases, so you could pick it up and move it right away.  No, it wouldn't allow you to move stuff after that short timer, but how much are you moving anyhow?  You shouldn't be able to pick up an entire base and go somewhere else and put it down again just to avoid having to make more blocks.  I don't think anything you place should need to be moved after a short "oops" period, with the exception of the workstations because those are generally more expensive to make.

Link to comment
Share on other sites

15 minutes ago, Riamus said:

Which is the reason I suggested a timer.  A misplaced block is known to be misplaced almost immediately in most cases, so you could pick it up and move it right away.  No, it wouldn't allow you to move stuff after that short timer, but how much are you moving anyhow?  You shouldn't be able to pick up an entire base and go somewhere else and put it down again just to avoid having to make more blocks.  I don't think anything you place should need to be moved after a short "oops" period, with the exception of the workstations because those are generally more expensive to make.

 

The idea would surely be a godsend for builders, though it has drawbacks: The game would have to remember what is placed in a separate structure and consult that whenever you look at blocks. Which could cost performance or at least adds another layer that has to be programmed. Also it might be able to use the feature in combat/horde night. I.e. put down block, zombie is blocked and turns around to go a longer path, remove block, shoot him, place block again.

 

 

Edited by meganoth (see edit history)
Link to comment
Share on other sites

I know this talks about "picking up crafted blocks" but its also more of "fixing misplaced blocks". There have been overhaul mods (gnamod, afterlife) that (only for blocks though) make you put down a "template block" you can only see when holding an upgrade tool like the hammer, and then you choose when to build it (using resources from player inventory) after its put down.

 

this would also possibly solve the problem, without using a timer?  Not sure how "easy" this would apply to workstations/non standard blocks.

Link to comment
Share on other sites

7 minutes ago, meganoth said:

Also it might be able to use the feature in combat/horde night. I.e. put down block, zombie is blocked and turns around to go a longer path, remove block, shoot him, place block again.

That isn't a huge deal, as it wouldn't really provide anything a hatch doesn't already, or even just the standard wooden building blocks.

 

A single-block "press ESC to undo" for 5 secs shouldn't be that hard to implement, pretty simple data structure with the coordinates and a block type (to prevent issues with upgrade interactions); maybe a damage check on the block so you can't pickup a damaged block (for weird cases and avoiding ranged damage). How easy it would be to implement depends on the underlying system, might be trivial, might be real hacky.

Link to comment
Share on other sites

59 minutes ago, meganoth said:

 

The idea would surely be a godsend for builders, though it has drawbacks: The game would have to remember what is placed in a separate structure and consult that whenever you look at blocks. Which could cost performance or at least adds another layer that has to be programmed. Also it might be able to use the feature in combat/horde night. I.e. put down block, zombie is blocked and turns around to go a longer path, remove block, shoot him, place block again.

 

 

Hm.  Good point for horde night.  I suppose it would need to have a restriction from working during that, though I'm not a fan of things that act differently at different times as it can appear to be a bug when it doesn't do the same thing.

54 minutes ago, doughphunghus said:

I know this talks about "picking up crafted blocks" but its also more of "fixing misplaced blocks". There have been overhaul mods (gnamod, afterlife) that (only for blocks though) make you put down a "template block" you can only see when holding an upgrade tool like the hammer, and then you choose when to build it (using resources from player inventory) after its put down.

 

this would also possibly solve the problem, without using a timer?  Not sure how "easy" this would apply to workstations/non standard blocks.

Yeah, misplaced blocks are the biggest issue to me.  I'm not sure I'd like the template idea, though (but I haven't seen it in use, so I don't know for sure what I'd think of it).  I tend to build very quickly and having to add an extra step for every block on a big base sounds bad to me.

48 minutes ago, theFlu said:

That isn't a huge deal, as it wouldn't really provide anything a hatch doesn't already, or even just the standard wooden building blocks.

 

A single-block "press ESC to undo" for 5 secs shouldn't be that hard to implement, pretty simple data structure with the coordinates and a block type (to prevent issues with upgrade interactions); maybe a damage check on the block so you can't pickup a damaged block (for weird cases and avoiding ranged damage). How easy it would be to implement depends on the underlying system, might be trivial, might be real hacky.

Well, if you drop a steel block then pick it up then drop it over and over, you could gain a significant "cheesy" advantage to holding off the horde.  A hatch doesn't have as much health and you can't replace it until it breaks and then you'll probably have the horde in the way for placing another (you can repair it, of course... but that requires resources unlike just picking it up again).  Even if you use hatches by opening and closing them to control the horde, I think it's not quite the same thing.  But it might not be a big deal in the long run.  I don't know.

Link to comment
Share on other sites

1 hour ago, Riamus said:

Even if you use hatches by opening and closing them to control the horde, I think it's not quite the same thing.

I think this is where we disagree. Sure, the ability to drop a new block might require a mildly different design than a hatch, but both (would) require "block perfect" designs to stop or re-path zeds; I don't see any real advantage in design for the pick-a-block.

 

If using a hatch to toggle the path between "a solid path" and "an unpathable drop", the cases are identical; durability makes no difference, even wood hatches suffice as no zeds are attacking them - the hatch has a minor advantage in being able to toggle regardless of corpses in the area.

 

IF using a hatch to cause a repath due to increased "block breaking cost" .. I haven't actually seen anyone try, this is purely hypothetical; but such a design would have the hatch(es) protected by other blocks - the stuff you're trying to protect by changing the path cost. Might be a fun experiment, but the only advantage over "path / no path" -toggling is having actual walls blocking the "best" paths at all times; which is essentially just muppet-proofing. And you could just path-toggle behind those same walls anyway.

 

If using a hatch as a part of a fighting position, you'll want higher durability, but usually such designs don't even really utilize the toggle of the hatch after it's deployed. In the basic tunnel design you'll just let hatches break and fall behind the next as the first breaks. Same could be achieved with regular placeable steel/concrete blocks, but that comes with the risk of zeds/corpses blocking the placement.

 

If you have an actual design in mind where the block swap would become the optimal choice, please describe. :)

Link to comment
Share on other sites

2 hours ago, Riamus said:

Which is the reason I suggested a timer.  A misplaced block is known to be misplaced almost immediately in most cases, so you could pick it up and move it right away.  No, it wouldn't allow you to move stuff after that short timer, but how much are you moving anyhow?  You shouldn't be able to pick up an entire base and go somewhere else and put it down again just to avoid having to make more blocks.  I don't think anything you place should need to be moved after a short "oops" period, with the exception of the workstations because those are generally more expensive to make.

 

Yeah 90% time I know as soon as I place a block I made a mistake. Or sometimes I get that awful finger twitch and accidentally place something. The timer would be nice for a few seconds. I know if you could pick some of those things up at anytime I would be so annoyed with randomly picking up stuff like doors and what ever was possible to do that with.

Link to comment
Share on other sites

42 minutes ago, theFlu said:

If you have an actual design in mind where the block swap would become the optimal choice, please describe. :)

Considering the idea of dropping a block and picking it up is new to me since it's not currently possible, I haven't taken any time to consider options.  I'm sure if it was possible, people would find ways to abuse it quickly enough.  :)

Link to comment
Share on other sites

8 minutes ago, Riamus said:

I haven't taken any time to consider options. 

Well, I did 😛 ... nothing wrong with caution, but with the amount of cheese currently in game, I can't see Any way to make it much worse; this caution is already lost :D

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...