To reproduce issue you will need:
2 players in game or a command block running on a clock.in spawn chunks in overworld.
In creative mode go to nether with one player, clear out all bedrock at layers 0-5 beneth you so you are just floating above void then run this command
if you use command it still executes correctly
execute @a ~ ~ ~ detect ~ 0 ~ bedrock 0 say hi
What should happen is any person that is standing over this area in the nether that doesn't have bedrock at layer 0 beneath them should never have this command successful run on them.
In the 2 person scenario if person 1 is in nether above where there is no bedrock and person 2 executes the command from the overworld the command runs successful on player 1 even though it should be false.
You can have the command loop on a clock to get the same effect if its put in the spawn chunks if your not lucky enough to have a friend help you test it out.
Suggested ways to fix it.
1. Have execute detect command never work on players in other dimensions
2. Have execute detect commands work correctly across dimensions.
Note: It would be nice to know why this bug happens.
Comments 7
Confirmed as of 1.8, when in the nether the following command is not effecting anyone when the they are run from the overworld within the spawn chunks on a clock.
/execute @a ~ ~ ~ detect ~ ~-1 ~ netherrack 0 setblock ~ ~-1 ~ stone 0
same with a simple say
/execute @a ~ ~ ~ detect ~ ~-1 ~ netherrack 0 say hi
Not sure why this is but it seems to be the same issue the original post was referring to.
Execute works on a person in the nether if the command is executed from within the nether as far as i can tell. The problem is more that I feel like if your in the nether NO command should execute positive from the overworld, or they should all execute correctly from the overworld.
Currently the problem I am having with it is if your in the nether, the detect bedrock and layer 0 does execute positive, if done from the overworld regardless if there is bedrock at layer 0 ( while in the nether ).
I hope it makes sense its a little bizarre and hard to explain.
@Brad Larson, thing is, if you're executing as a player in the nether, I should expect the detection should be done from the dimension the player is in, regardless where the command block that ran the execute is located.
Yes Ideally using an execute detect should work regardless of dimension. Cross dimension commands could be improved upon across the board.
Glad to see that other people share the same frustration with this issue. Much like the command of the execute/detect runs relative to the player, so should the detect.
-Say for example you want fire particles to appear on a player when they stand on glowstone. If the player is in the nether (and no one is in the overworld), you could put the execute/detect on a clock in spawn chunks and have another setup to throw items through a portal to keep the spawn chunks loaded (not ideal, but its what we've got). This is the only way to make sure the execute/detect command is running at all times. Assuming the detect is fixed to run in the same dimension as the player, this should work across all dimensions.
-Another solution, as mentioned above, would be to only allow commands (possibly except scoreboard commands) to affect players in the dimension from which they were run. This would also bring about the need for chunks that are always loaded in every dimension to make the above setup work (essentially have spawn-like chunks in each dimension).
-My ideal solution would involve command blocks from one dimension working across all dimensions, fixed so that thinks like execute/detect run within the same dimension without dimensional cross-talk (the issue at hand). To make things dimension-specific, target selector arguments could be added to specify dimension(s) to run the command in, also ridding the need of spawn-like chunks in each dimension from the second solution above. (Still requires some sort of kludgy item-through-nether portal apparatus to keep overworld spawn chunks loaded).
-An outlandish, but awesome solution would be to add a dimension only accessible in creative where chunks are always loaded. This would allow for devices like this to be built by map makers to implement custom features. With the addition of dimensional arguments in target selectors, this would allow for lots of possibilities.
Confirmed in 1.8, looks like it might be testing for the block at your position in the overworld or something.