Objectives system: requiring requirements (read desc)

Objectives system: requiring requirements

I have been working on an objectives system. You complete a task and get a reward. The thing is, I am relatively new to scripting and I am having a hard time figuring out how to check if a player has met the requirements to receive a reward for a certain task.

The system is very early on in development, I started just yesterday. Here is the current code for it:

Modules (ServerScriptService)
local backend = require(script.backend)
local val = backend.o1[3]
game.Players.PlayerAdded:Connect(function(plr)
	local open = plr.PlayerGui:WaitForChild("ObjectiveUi").background.background.background.background.background
	local one = open["1"]
	local two = open["2"]
	local three = open["3"]
	local four = open["4"]
	
	
end)

wait(3)
print(backend.o1)
backend (Modules.Backend)

local requirements = {
	
	o1 = {
		"Obtain 10 rocks",
		"50 coins", 
	-- here should be the requirement. im tryna figure that out rn
	}
	
}

return requirements

The first script is a regular script, and the second one is a module script. The first script does not do anything and just defines a few variables (it does nothing YET because I am stuck). The second script does not do anything either, but hopefully it can be where I insert all of my objectives, their rewards, their descriptions, and their requirements and where to look to check if the requirements are met.

Sorry if this is a bit confusing, and if you can’t solve this, please ask around or mention someone that might be able to help!

I should clarify, the first script will eventually be used to change the objectives for each player. Right now, all I was doing was using it to test if any of my attempts to check the requirements worked.