Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411505 Posts in 69374 Topics- by 58429 Members - Latest Member: Alternalo

April 25, 2024, 08:26:26 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperTechnical (Moderator: ThemsAllTook)Feedback on Scoring System
Pages: [1]
Print
Author Topic: Feedback on Scoring System  (Read 663 times)
BarnSafari
Level 0
*


View Profile
« on: August 11, 2018, 07:56:39 AM »

I would like to get feedback on ideas for the scoring system for the game I'm working on. This game is sort of a restaurant simulator (think Diner Dash) with a few tweaks here and there. One of the main differences is that customers can order between one to three items. There’s a 50% chance that a customer will order another item or will leave each time they finish eating.

Customers can leave tips, and this is affected by their happiness level. Happiness ranges from 0 – 100 and goes down depending on how quickly you tend to them. Customers also have five hearts above them to represent the underlying happiness level. One heart is filled if happiness is between 1 and 20, two hearts if happiness is between 21 – 40, etc. Each filled heart is worth 5 points.

Every item a customer orders is worth 50 points. The final score for a given customer is calculated by the number of items they ordered plus the tip. For example: a customer who ordered two items and has full happiness will have a score of 100 (2 items) + 25 (tip) = 125.

Now the tricky part is calculating the passing score for the level dynamically. I want this to auto-adjust based on the number of customers per level, so I don’t have to set it every time I make a new level. The current approach I’m taking is minScore = (fullHappinessTip + OrderItemValue) * CustomersPerLevel * percent. Full happiness tip is 25 since each heart is worth 5 points, OrderItemValue is 50, CustomersPerLevel varies, and percent is .75. Percent means that we want at least 75% of the customers served to leave with full happiness (25-point tip).

A sample minScore would be (25 + 50) * 10 * .75  = 562(rounded). This approach works well if each customer orders exactly one item. However, customers can order between 1 and 3 items so the achievable score can vary from 562 to 1312(assuming everyone ordered 3 items).

I’ve considered using the average of the possible values for number of items ordered which would be 50(1 item) + 100(2 items) + 150(3 items) / 3 = 100. This cranks the difficulty way high since the min score is 937.

I’m kind of stuck trying to figure out the best way to calculate the min score when the number of items ordered can varies. Any suggestions or ideas? Am I going about this all wrong?
Logged
Foxwarrior
Level 1
*



View Profile WWW
« Reply #1 on: August 11, 2018, 10:08:10 PM »

Why not decide how many items will be ordered before calculating minimum score? By like, generating all the customers and their orders in advance, or whatever.
Logged
BarnSafari
Level 0
*


View Profile
« Reply #2 on: August 12, 2018, 12:58:05 PM »

That's an excellent idea, thanks so much!  Smiley
Logged
Ordnas
Level 10
*****



View Profile WWW
« Reply #3 on: August 14, 2018, 08:43:09 AM »

If you know beforehand how many orders you will have, why still not define the minimum score everytime you make a new level? A suggestion: when I play Overcooked, I like that the game tells me that level 1-3 needs at least 60 pts to score the minimum points and it is always 60 pts for that level. I would be very annoyed if the game changes the minimum points even if the number of clients changes, it feels too much random and not tuned or cheated.

Foxwarrior is right, I think you will need to calculate and store at level initialization the probability for each client to request a new dish, so you can put the value on the formula you posted. It is easier that way, but if you want something like "a client order a second dish dependant on if the client liked the dish \ the delivery time was fast \ other parameters", that it would be more complicated to calculate dinamically. The only proper solution would be play the new level created, and tune the minimum points.
Logged

Games:

BarnSafari
Level 0
*


View Profile
« Reply #4 on: August 14, 2018, 05:15:17 PM »

Yeah that makes sense. Having the same level with a different score every time would be weird and likely unfair. Thanks for the feedback!
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic