Does Player has advancement prodecure error

Published by vaggelsavv on
Status
Works as designed
Issue description

for some reason it doesent realy work well on global events(or  almost any events for that)

Issue comments

Try to check if the world is not remote (server side) using World data -> Is provided word remote and negate this condition so you have:

IF -> NOT -> Is provided world remote:

THEN: your command related to advancements

This way you will make sure the check is executed on the server side only.

i basicaly want to make certan mobs to spawn when the player has the specific advancement

Are you sure the issue is in checking the advancements and not in other part of the procedure that takes care of this?

Read my message above again. I don't even see Is world remote procedure block on this screenshot.

Try to check if the world is not remote (server side) using World data -> Is provided word remote and negate this condition so you have:

IF -> NOT -> Is provided world remote:

THEN: your command related to advancements

This way you will make sure the check is executed on the server side only.

So you want to check if the player does not have the achievement?

And how do you trigger this event?

So you want to teleport player -290 blocks down when it spawns if it does not have the achievement?

I don't know why would you want to do that, but you could teleport the entity to y=0 rather than to y-290 and you would have the same effect but in a simpler way

when the player doesent have the advancement, that mob will dispear ass soon it spawns

basicaly when the player gets the advancement, new harder mobs will spawn

Use the despawn procedure for this purpose. Teleport block might not want to teleport entities on the location you give.

Try printing in the console when the procedure happens so you can see if the part inside the if gets executed as it should.

Could you attach your workspace to the ticket and tell me which procedure to check (its name).

I see what the issue is. You are triggering this by on initial entity spawn. The entity you have in the dependencies in the entity that spawned, not the player. So you are checking if this entity has the achievement.

You can't check if the player has achievement from another entity. Imagine server scenario. Which player to even check?

that's what i was fearing

 

 

do you have a suggestion how to fix dat?

There is no real way to do this due to this issue:

You can't check if the player has achievement from another entity. Imagine server scenario. Which player to even check?

You can't check if the player has achievement from another entity. Imagine server scenario. Which player to even check?

 

 

well the first that gets the advancement

We might add an option to go through all the players in the game in the future, but this does not make much sense either as this would be quite strange if one left or joined the server and dynamics suddenly changed. Unless this is the idea.

We do plan to add a check for entities in radius though, this might be a better option.