A project that builds out the logic for a turn based engine/ game idea, similar to XCOM and Jagged Alliance.
- Basic map generation, in 2d world, with x and z axis (y axis to come later)
- Basic pathfinding, movement and identification of possible movement tiles
- Basic attacks between multiple characters, with weapons, special abilities, and range taken into account
- Basic high and low cover, with cover destruction
- Grenades/area effects
- Basic field of view
- Reactions/ overwatch
- A very basic AI, that attempts to move, flank and attack a character
- Basic mission objectives, that can be combined, including: eliminate all, extract troops, toggle switch
- Start team turn
- Player with action points and positive hit points selected
- Player calculates field of view
- Player calculates possible movement tiles
- Player calculates opponenents in view
- Player selects first opponent (if in view) as their current target
- Camera centers over player
- Player decides to move, switch target (if in view), or shoot (if in view)
- If moving, moves to selected square. As moving, if player passes a character in view with overwatch, they are attacked
- If attacking, the player first goes into "aim" mode, where they can select which target in view to attack
- Once selected, the player attacks, either missing, or hitting and dealing damage to opponents and/or the environment
- If the player still has action points left, go to 2.
- If player does not have action points, move to next player on team
- If no players remain with action points, move to the next team
- If the team has no players with hit points remaining, the mission is over
- Requires .NET 7 (for tests)
- TBE.Logic dll is .NET Standard 2.0 for Unity compatibility
- Codespaces is configured, or you can continue to use Visual Studio
- See tests & scenarios for examples of how to utilize the TBE.Logic project
- Contributions welcome! Fork/Issue/Pull Request. Whatever you are comfortable suggesting.