I have put a Stringvalue in the player, called : QuestProgress The String's base value is: None I want so that when a player touches a part the string value changes, but struggled to do it on my own, probably because i'm acting like it is a IntValue. The script in the part is:
script.Parent.Touched:connect(function(player)
print (player.Parent.Name) --This would print the name of the person who touched the brick
local Player_name = player.Parent.Name
local Quest=script.Parent
Quest:remove() -- Haven't tested the remove part, because the script wasn't working without it, anyway.
game.Players[Player_name].CurrentQuest.Value=game.Players[Player_name].CurrentQuest.Value.Finding Apples -- I think this is the problem
end)
I have tried this for the last line too:
game.Players[Player_name].CurrentQuest.Value=game.Players[Player_name].CurrentQuest.Value."Finding Apples"
To no prevail. Thanks.

5 comments
That part would still work in his original code. But your code is still correct, just more efficient.
Hmm, that is true. I'm not used to the player being called in that manner.
Got it, thanks, my only problem is that the part deletes itself as soon as I play solo, if I remove the 3rd and 4th lines, it works, any suggestions?
Would that not be because of "Quest:remove()"? Or are you saying that it just deletes itself as soon as you join the game without touching the button? (in solo)
Yeah, as soon as I join without touching.