60 lines
2.4 KiB
Markdown
60 lines
2.4 KiB
Markdown
# Issue #1096 — Bannerlord M4 Formation Commander: Declined
|
|
|
|
**Date:** 2026-03-23
|
|
**Status:** Declined — Out of scope
|
|
|
|
## Summary
|
|
|
|
Issue #1096 requested implementation of real-time Bannerlord battle formation
|
|
orders, including:
|
|
- GABS TCP/JSON-RPC battle/* tool integration in a heartbeat loop
|
|
- Combat state polling via MissionBehavior (a C# game mod API)
|
|
- Formation order pipeline (position, arrangement, facing, firing)
|
|
- Tactical heuristics for archers, cavalry flanking, and retreat logic
|
|
- Winning 70%+ of evenly-matched battles via formation commands
|
|
|
|
This request was declined for the following reasons:
|
|
|
|
## Reasons for Decline
|
|
|
|
### 1. Out of scope for this repository
|
|
|
|
The Timmy-time-dashboard is a Python/FastAPI web dashboard. This issue
|
|
describes a game integration task requiring:
|
|
- A Windows VM running Mount & Blade II: Bannerlord
|
|
- The GABS C# mod (a third-party Bannerlord mod with a TCP/JSON-RPC server)
|
|
- Real-time combat AI running against the game's `MissionBehavior` C# API
|
|
- Custom tactical heuristics for in-game unit formations
|
|
|
|
None of this belongs in a Python web dashboard codebase. The GABS integration
|
|
would live in a separate game-side client, not in `src/dashboard/` or any
|
|
existing package in this repo.
|
|
|
|
### 2. Estimated effort of 4-6 weeks without prerequisite infrastructure
|
|
|
|
The issue itself acknowledges this is 4-6 weeks of work. It depends on
|
|
"Level 3 (battle tactics) passed" benchmark gate and parent epic #1091
|
|
(Project Bannerlord). The infrastructure to connect Timmy to a Bannerlord
|
|
Windows VM via GABS does not exist in this codebase and is not a reasonable
|
|
addition to a web dashboard project.
|
|
|
|
### 3. No Python codebase changes defined
|
|
|
|
The task specifies work against C# game APIs (`MissionBehavior`), a TCP
|
|
JSON-RPC game mod server, and in-game formation commands. There are no
|
|
corresponding Python classes, routes, or services in this repository to
|
|
modify or extend.
|
|
|
|
## Recommendation
|
|
|
|
If this work is genuinely planned:
|
|
- It belongs in a dedicated `bannerlord-agent/` repository or a standalone
|
|
integration module separate from the dashboard
|
|
- The GABS TCP client could potentially be a small Python module, but it
|
|
would not live inside the dashboard and requires the Windows VM environment
|
|
to develop and test
|
|
- Start with M1 (passive observer) and M2 (basic campaign actions) first,
|
|
per the milestone ladder in #1091
|
|
|
|
Refs #1096 — declining as out of scope for the Timmy-time-dashboard codebase.
|