#best way to code tutorial

1 messages · Page 1 of 1 (latest)

agile sonnet
#

I've got a bunch of systems coded for a food game that I'm making but for some reason i cant figure out a decent way to make a tutorial level for it
i have arrow beams that point to the reservation desk and you are prompted to complete a tutorial for some coins and a free item.

The issue I'm having is:
Whats the best way to signal to the server that you completed the specific task?
For example 'make a pizza'.
Do i just set (after picking up the pizza when its cooked) a bool value to equal true but somehow ONLY if you are at that specific position in the tutorial regardless of whether or not you have 'made a pizza' in the past or not or if you have jumped the gun in the tutorial and finished a later task earlier than the tutorial is up to?

most things have been easy enough to implement but the tutorial has been a little bit complicated to wrap my head around. i also use profilestore to save data such as tutorial = {"enabled" = true/false, "position" = 1, and "completed" = true/false}.

I also have not used any OOP in my systems other than accidentally. basically ive never used metatables before maybe they can help but i still dont completely understand them maybe they could help in this request?

#

Basically im pretty sure im overthinking this but id like to know from other developers who have made tutorials in the past as it might be incredibly easy and i just haven't put 2 and 2 together yet.

half wedge
#

remote events

agile sonnet
#

i will definitely be using remote events ofcoarse

i feel stupid sometimes i rant on here just to kinda figure it out anyways. im still open to any suggestions tho i just realised i can check the datastore first with if/else statements such as if position == 3 and enabled == true then set bool.Value = true

agile sonnet
# half wedge remote events

i actually get what you mean now btw...

--task finished
if player.data.tutorial.position == 3 and player.data.tutorial.enabled == true then
  player.data.tutorial.position = 4
  fireTutorial:FireClient() 
end

something like this

#

my dumbass has been using bool.Value's for nearly everything