Quote:
Original post by alvaro
I have a few questions about the nature of the game:
1) Do you have a "board" representation with which you can describe the current situation exactly and decide which moves are available to the player at any given moment?
2) Is there any randomness or hidden information in the game?
3) How many moves does a player typically have available?
4) Are turns always alternating between the players?
4)
Turns are NOT alternating. Individual actors get turns based on their speed score (further modified by 2 buffs, 1 debuff, and if they chose to forgo movement and/or action last turn). Thus, it is possible for a given player (human or AI) to have several actors under their control have their turns sequentially. Time freezes during an actor's turn.
3)
A specific actor has two active skill sets to select from. A skill set is generally between 10 and 15 skills.
2)
Hidden information - not at the moment. I was considering obfuscating the target of charging skills (most skills execute immediately - some skills must be charged for N clock ticks). All other variables are exposed to AI and player. The player may even browse the AI actors' skill lists and equipment. Additionally, an estimate of the order of future turns, based on current game conditions, is available.
Randomness, however, yes. Damage of a specific skill from/to a specific pair of actors is typically constant (change the actors involved, the damage changes, generally deterministically), however success rate is variable due to a number of conditions. There exists the (small) chance of critical hits, as well as other examples of randomness in damage. For example, one skill effects a 5 tile AOE. From those 5 tiles, 6 tiles are chosen randomly, and damage dealt to the unit on that square is proportional to the number of times that square was chosen.
1)
Not sure what you mean by a board representation. In case I was unclear, watch the video, this is a tactical RPG. In general the game space is rectangular, where every square tile within is a valid potential target for movement. An actor can move to a square as long as you are within the actor's move radius (measured taxi-cab style), and no intermediate tile traversal has a height discrepancy greater than the actor's "jump" score (simply a measurement of their aptitude at moving vertically - Archers can reach high spots, whereas a heavily armored Knight may be unable to without being buffed with Float, which removes this check). Many skills, aoe's and normal abilities, have a restriction on the height discrepancies they will work at.
On some occasions, the map may feature a bridge. In this case it is possible to move to the bridge or underneath it. This means that an actor's XY position alone is insufficient to decide where the actor is on the map.
Most actors will be able to have ~25 movement options available to them per turn (the board in the video is 117 tiles large). Furthermore, they may execute one of 20-30 skills, which may target tiles on the board within the respective skill's range. This may be as many as 25 targets.
Clearly, 5^6 = 15,625 per ply is too large of a search space without major pruning.
All in all, the game is complex. This is why I have been having a hard time deciding how to approach it. Thank you for your time.