We have run into a snag with getting our combat system to work in our MMO game. Combat in our game is between a player and the computer. The player and the computer both have attack timers that control when they can attack. For example every 5 seconds the enemy attacks the player. All of this needs to happen on the server and send the results back to the player.
We discovered the scheduler and tried to use that to schedule the enemy attacks so the enemy would attack, then schedule another attack. The issue with this is there is a 10 call limit on the scheduler and everything stops. So if the player does not kill the enemy within 10 cycles of the schedule it breaks.
Is there a way to handle timed attacks in this manner both for the player and the computer controlled enemy? We would like to keep all this in Gamesparks to limit the amount of cheating that might take place if we put stuff like this on the client.
Also, each different enemy has a different attack timer and a player's depending on the gear they have equipped changes their attack timer. I'm hoping something like this is not beyond the capabilities of Gamesparks because we like everything else so far (except the documentation, it is really bad).
Eventually we need to have the same attack timer functionally but for a group of players and a computer controlled enemy.
I assume that is a no?
Perhaps when timer expires - and you do whatever work you intend to do, you can use Spark.sendRequestAs (see https://docs.gamesparks.com/api-documentation/cloud-code-api/spark.html) to fire off an event that would then schedule a new inSeconds scheduler. I believe this wouldn't be considered 'cascading' scheduling - covered by the 10-deep rule