Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enemy attack pattern #144

Open
wants to merge 21 commits into
base: main
Choose a base branch
from

Conversation

Turtyo
Copy link
Collaborator

@Turtyo Turtyo commented Dec 26, 2024

Description

Add a way to build the deck / AI of an enemy

Related issue(s)

Closes #127

List of changes

  • Add EnemyActionTree to choose the next action of the enemy
  • Use a dictionary of probability given previous action to know next action
  • Change directory structure to separate player and enemy actions (as well as cards that work for both)

Last change is due to targeting, you can have the exact same card, but one is targeting the enemy team, and one is targeting the player. The original choice was that it was easier to not have to switch sides every time (meaning "enemies" is a global truth, doesn't depend on who is attacking). It's easier to understand, but it means some cards will exist in double.

Tests

Tests have been corrected to account for the new structure

Additional notes

Once enemy cards have been given an enemy action name (see global enums), the order of the variants of the enum shouldn't be changed. Since this is simply a value, if we change the order in the enum, the order in the .tres of the cards will stay the same, meaning it will be wrong

TL;DR : don't change the order of the variants of the EnemyAction enum, you can add more though.

I'll add some demo decks for enemies tomorrow I think.

@Turtyo
Copy link
Collaborator Author

Turtyo commented Dec 26, 2024

Mmh, upstream for Godot still down, test pass in local though, feel free to run them on your end too just to be safe

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Enemy attack pattern
1 participant