I don’t think this will work well at all and will lead to major player frustration.
I’ll lay out some numbers below on why this will be problematic and then I’ll offer some solutions.
So, to start off, I have a game with an average session time of 16-17 minutes which I believe is fairly typical. With your current point info, here is the time it will take to buy stuff.
Ammo - 7.5 minutes (almost half an average session)
Upgrades - 37.5 minutes (this will take over 2 average sessions to accumulate this many points)
To recap, with your current setup you could buy ammo twice a session on average, OR save all your points and purchase one upgrade every third session. I think this will be way to long and most players will get bored and/or frustrated, especially since upgrades don’t save.
Now, on to some solutions. You have a few options.
- Make it so players earn points faster
- Reduce the cost of stuff
- Add other ways to earn points
I see you’ve mentioned getting them from killing enemies which is an excellent option. It gives players a way to earn points faster, but at the risk of dying. You could also always introduce a mechanic where you earn more points the longer you’ve stayed alive. E.g. you earn points every 30 seconds but the number of points given goes up the longer you’ve stayed alive. Players then have the option to try survive for a long time or risk getting killed but get some points from the enemies.
If you’re having a hard time figuring out how many points to award you can easily work backwards.
First, make a list of how much stuff you think players should be able to earn in a single session and how much each of those items should cost. Then simply add up the total cost and adjust your reward rates so that players can earn that much during a session (15-20mins).
For example, say you want them to buy 2 upgrades and 4 ammo. Currently you would need a total of 140 points during a session to do that. If all of those points come from idle then you need to earn 140 points in about 17 minutes. In that case you would need to award 1 point roughly every 7 seconds. You can also round up and award 5 points every 35 seconds which is the exact same rate, just larger point amounts with a bit more time in-between.
If the total points per session that you came up with feels high, then simply adjust the prices of items to be cheaper.
Hope this helps and best of luck with your game 