0

Minecraft v. 1.12.2

I currently have a scoreboard:

/scoreboard objectives add Riding dummy that adds the Riding dummy.

My second command sets Riding to 1 if a player is in a boat:

/scoreboard players set @a[type=Player] Riding 1 RootVehicle:{Entity:{id:Boat}} (Command is set to repeat)

If the above command is not active, then this one fires instead:

/scoreboard players set @a[type=Player] Riding 0 (Also on repeat)

Here's what it looks like:

enter image description here

The command on the far right, that detects is the player is in a boat, never fires off. Is there an update that I missed in 1.12.2 that changes the tags? The command block output remains blank, ad the other purple command block outputs that it found my player and set the Riding value to 0. Why is it not detecting me in a boat?

(Yes, I am using the right kind of boat, the default oak boat)

EDIT: I'm testing to see if the player is in a boat with:

/execute @a[score_Riding=0] ~ ~ ~ detect ~ ~ ~ water 0 /effect @p 7 1 2

This is a multiplayer server.

  • 2
    99% of your problems are a direct result of your use of redstone here. Never, ever use redstone with your command blocks except to enable blocks with "needs redstone". It is pure evil, especially with post 1.9 command blocks. – MBraedley Jul 9 '18 at 17:59
  • I tried it without redstone and the issue still occurs. I think it's partly the way the commands are used. – Akados Jul 9 '18 at 18:16
  • 1
    You really want a chain of commands to start with, and you want to clear everyone's score before you set it for those in boats. Also, you should probably be using tags and not scores, but that's besides the point. – MBraedley Jul 9 '18 at 18:23
  • Haven't used tags or scores much, just did what I found on google. – Akados Jul 9 '18 at 18:24
  • 1
    Try "boat" instead of "Boat". Does that fix it? – Fabian Röling Jul 10 '18 at 5:35
3

Two fixes. Your initial command has a few formatting issues, it should be:
scoreboard players set @a Riding 1 {RootVehicle:{Entity:{id:"minecraft:boat"}}}

Then, you're executing when Riding=0 instead of Riding_min=1. Use this instead: execute @a[score_Riding_min=1] ~ ~ ~ detect ~ ~ ~ water 0 /effect @p 7 1 2?

Ensure that you set the Riding score of all players to 0 BEFORE you run the check to see if a player is in a boat, otherwise the score of all players will always be 0.

Also, @a[type=Player] is redundant, because @a already selects all player entities.

Finally, I would recommend using chain command blocks in sequence as opposed to redstone, because the update order can be confusing. Use this to help: enter image description here

  • He does not want to test for water, but for sitting in a boat. – Fabian Röling Jul 10 '18 at 5:34
  • I'm aware, but as it turns out my suggestion wasn't what was wrong. I shoved it into a command block and figured out what was wrong. My answer has since been edited. – getfugu Jul 10 '18 at 6:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.