VG Tournament

The game about managing a video game tournament

The project

This game was done as a part of the AI subject for the UPC's Bachelor's degree in design and development of videogames, with some movement scripts given by the teachers, as well as the SimpleAssets pack for the art

The game was done in the span of 3 months between October and December, this was the order of execution:

  1. The environment, making sure that the agents could more appropiately
  2. Designed and implemented the Behaviour Trees for the different agents
  3. Gameplay and balancing

The AI

The Behaviour Trees (BTs) were done with NodeCanvas and they are the following

Participants:

FSM:

Participant FSM

They will wander around until called and will reset to this when any behaviour ends.

Behaviour trees:

Leaving BT:

Participant Leave BT

This is a very simple BT, this will just take the participant to the entrance and delete him.

Play Match BT:

Participant Play Match BT

This will take the player to the setup, then make him wait for the other player to be ready. After that he will go tell the TO the result if he won, then go home and go back to wandering.

Wander BT

Participant Wander BT

This will make him wander around and sometimes grab a drink.

Organizers:

FSM:

Organizer FSM

This will just make him wander until he has to call a match.

Behaviour trees:

Wander BT:

Organizer call match BT

This BT will make him altern randomly between wandering and checking if there is a match that can be called on the PC if there is he will stop the BT after checking the PC

Call players to match BT:

Organizer call match BT

This BT will take the TO to the different players he was assigned, calling them 1 by 1 and telling them the setup they are supposed to play in, after that he will go to his homeplace to wander on his area

Set match result BT:

Organizer call match BT

This BT will make him go to the PC and set the result

Technicians

Behaviour Trees:

Contrary to the Organizers and Participants the Technicians are simple enough to be able to work on a couple of BT, here is the main BT that he uses:

Technician Main BT

He'll wander until he has a task assigned or he goes to check the trash

Technician Do Task BT

This will make him go to the task object and do the appropiate task

Technician Trash BT

This will make him go to the trash, pick it up, then go to the container to throw it before going home