ID:157817
 
I'm making a quest for a Dragon Warrior game. The player has to find a lost little boy in a cave. What I need to know is how I can make the boy appear to be in the cave for players who have not rescued him to complete the quest, but for him to apprear to be back in town to players who have completed the quest.

Also, if a player who already rescued him is in the cave, they should not be able to see him. Is there a way to set invisible to an obj for only one player?
You'd have to give the NPC no native appearance (no icon), and visually represent it by using an /image object, which allows for selective viewing by players.
Since that only takes care of the visual aspect of the feature, you'll also need to manually prevent any possible interactions between a player and something that "doesn't exist for him", and if that something is dense, this includes extra interactions such as bumping into it (modify turf/Enter() to prevent this), thrown projectiles bumping into it, etc.
Of course, bear in mind this could create 'weird results', such as a player watching another player walk right through an NPC, which may be normally impossible in your game. You may want to try to prevent this somehow.
In response to Kaioken
Thank you very much, it worked perfectly.
In response to Hork
i was thinking maybe you could set it where if the person entering the cave had accepted the quest only then would the "boy" appear.