4math's picture
Upload folder using huggingface_hub
88f5c08 verified
---
license: mit
tags:
- tabular-regression
- sklearn
- card-game
- flesh-and-blood
- game-balance
- educational
library_name: sklearn
pipeline_tag: tabular-regression
datasets:
- custom
metrics:
- r2
- mse
- mae
---
# FAB Prediction Model - Teklovossen Card Balance
> **Educational Project - NOT affiliated with Legend Story Studios or the official Flesh and Blood game.**
A scikit-learn model that predicts **win rates** for custom Teklovossen (Mechanologist)
card decks in the [Flesh and Blood](https://fabtcg.com/) trading card game.
This project explores how machine learning can be applied to game balance analysis
using simulated gameplay data from a custom game engine.
## Model
| Detail | Value |
|--------|-------|
| Type | `Pipeline(StandardScaler + RandomForestRegressor)` |
| Task | Tabular regression - predict average win rate |
| Framework | scikit-learn 1.8.0 |
| Training data | Simulated gameplay (custom engine) |
## Features (inputs)
| # | Feature | Description |
|---|---------|-------------|
| 0 | AI | AI-themed card count |
| 1 | Nano | Nano-themed card count |
| 2 | Quantum | Quantum-themed card count |
| 3 | Base | Base card count |
| 4-8 | 0_cost to 4_plus_cost | Cost curve distribution |
| 9-11 | equipment, item, action | Card type counts |
| 12 | avg_turns | Average game length |
| 13 | avg_evos | Average Evo equipment used |
| 14 | avg_teklo_energy | Avg Teklo Energy generated |
| 15 | avg_nanite_counters | Avg Nanite counters |
| 16 | avg_quantum_charges | Avg Quantum charges |
| 17 | consistency_score | Deck consistency (0-1) |
| 18 | avg_expert_balance_score | Expert balance score (1-10) |
## Output
`avg_win_rate` - float in [0, 1] representing predicted deck win rate.
## Metrics
| Metric | Value |
|--------|-------|
| Train R2 | 0.917 |
| CV R2 (mean +/- std) | -1.3332 +/- 2.1072 |
| Train MSE | 0.0049 |
| Train MAE | 0.042 |
| Samples | 9 |
| Features | 17 |
## Quick Start
```python
from huggingface_hub import hf_hub_download
import joblib, numpy as np
path = hf_hub_download(repo_id="4math/FAB_Prediction_Model", filename="model.joblib")
model = joblib.load(path)
# Example: a Nano-focused deck
features = np.array([[9,0,0,2, 5,2,1,0, 9,9,12, 0.6, 9.4,13.6,7.3, 0.74, 6.7, 0,0]])
print(model.predict(features)) # predicted win rate
```
## About This Project
This is a fan-made educational project exploring ML for TCG game balance.
The model is trained on simulated gameplay data from a custom Flesh and Blood
game engine featuring Teklovossen, a Mechanologist hero with custom Evo cards
across four tech themes: AI, Nano, Quantum, and Biomancy.
## Limitations
- Trained on **simulated** data, not real tournament results
- Small dataset (9 samples) - treat predictions as rough estimates
- Simplified card mechanics in the simulation engine
- Fan-made cards only - does not cover the official card pool
## License
MIT