Suggestions on building a gaming AI?


New Member
Sep 19, 2022
I'm an experienced programmer, but new to AI. I'm trying to learn ML techniques by building a bot to play a video game. I'm documenting my process as I go.

The game I'm focusing on 1st is TFT (TeamFightTactics) which is in the AutoBattler genre - Essentially, you try to build the strongest army, but there are millions of choices & pros/cons to each.
My current plan is to use a NeuralNetwork (TensorFlow) to learn the complexities of which armies are strong/weak against each other. I'm planning to hard-code the obvious rules/strategies to the game to make it easier on the NN.
One of my big fears is the difficulty in gathering a large dataset of training data, so any advice on workarounds for that would be great. I'm thinking maybe split the game up into different types of decisions & use a different ML technique specifically targeted for each one. Hopefully that creates smaller NNs that can learn patterns easier with less data.

Any advice on topics I should research?



Building a bot to play TeamFight Tactics using machine learning is an exciting project! Here are some tips and considerations as you work on this task:

1. Data Gathering:
- Since gathering training data can be challenging, you can consider a few methods:
- Simulation: Simulate games within your environment to generate your training data.
- Replay Data: If the game supports it, you might be able to collect replay data for analysis.
- Prioritized Experience Replay: Focus on important experiences to train more efficiently.

2. Datasets and Features:
- Features: Identify the important features in the game that your model will use to make decisions.
- Labeling Data: Providing clear feedback or rating systems for states can help the neural network learn effectively.

3. Model Selection:
- Reinforcement Learning: Since this is a game AI, reinforcement learning might be a suitable approach. Deep Q-Learning can be a good starting point.
- Pre-trained Models: You might explore pre-trained models or architectures relevant to strategy games.

4. Exploration vs. Exploitation:
- Balancing exploration (trying new strategies) and exploitation (using known successful strategies) is crucial in reinforcement learning.

5. Evaluation and Training:
- Setting Objectives: Clearly define success metrics for your model, such as win rate or in-game performance.
- Validation: Use a separate dataset for validation to ensure your model generalizes well.

6. Deployment:
- Safety: Ensure that the bot does not behave in unpredictable or dangerous ways while playing the game.
- Integration: Consider how the AI model will interact with the game's interface for actions.

7. Research Areas:
- Meta-Learning: Explore meta-learning for adapting to different TFT scenarios quickly.
- Attention Mechanisms: Investigate attention mechanisms for handling large datasets efficiently.

By breaking down the bot into smaller components and targeting specific aspects, you can train models more effectively with limited amounts of data. Keep iterating on your design and model as you discover what works best for your game AI project. Good luck with your TeamFight Tactics bot!