# Überblick

> OpenWar3-Doku: was es ist, was es kann; Schnellstart, dein erster Bot, KI schreibt Bots, APIs und Protokoll, Gateway und MCP – je nach Situation, wo du am besten einsteigst.

Quelle: https://war3ai.com/de/docs/

**OpenWar3** ist die offene Schnittstellenschicht von War3AI: eine Runtime, die in Warcraft III 1.27 injiziert wird, plus ein Python-SDK.

- Die Runtime schreibt alle **50 ms** den vollständigen Zustand der ganzen Karte in Shared Memory: Ressourcen und Nahrung aller Spieler; für jede Einheit HP/Mana, Order, wen sie gerade angreift, Abklingzeiten, Buffs und Inventar; dazu Gegenstände am Boden, Bäume, Produktionswarteschlangen und Tageszeit. Außerdem gibt es einen **Event-Stream**: Einheiten erscheinen und sterben, jeder einzelne Treffer, fertige Produktion …
- Externe Programme senden **semantische Befehle** mit einer Latenz von **etwa einem Frame**: bewegen, angreifen, abbauen, bauen, ausbilden, zaubern, Fähigkeiten lernen, wiederbeleben, Gegenstände benutzen, einkaufen … Jeder Befehl erhält eine **Quittung**: ob die Engine ihn angenommen hat und, falls nicht, mit welchem Reason-Code.
- Du sagst nur, *was* passieren soll: Einheiten per Rawcode, Fähigkeiten per Order-String, genau wie im Spiel. *Wie* es umgesetzt wird, übernimmt die Runtime.

Ein LLM braucht deshalb weder Low-Level-Wissen noch das Bild auf dem Bildschirm. Nach dem Lesen der Docs kann es einen Bot schreiben, der seine Wirtschaft führt und kämpft – und ihn nach dem Einsatz anhand von Quittungen und Events selbst verbessern.

Und nicht nur Matches: Mit dem [Canvas](https://war3ai.com/de/docs/canvas/) zeichnest du eigene Panels und Markierungen ins Spielbild, mit [Oberfläche & Eingabe](https://war3ai.com/de/docs/ui-input/) werden die gezeichneten Buttons klickbar und Hotkeys reagieren, über den [JASS-Kanal](https://war3ai.com/de/docs/jass/) rufst du von außen die 1291 Funktionen des Spiels auf, und auf RPG-Karten holst du dir einen [KI-Begleiter](https://war3ai.com/de/docs/companion/) an die Seite. Fertige KIs lassen sich als [KI-Schemata](https://war3ai.com/de/docs/schemes/) verpacken – per Klick gewechselt, exportiert und geteilt; ein ganzes neues Spielprinzip schreibst du als [Gameplay-Mod](https://war3ai.com/de/docs/mods/).

Es geht auch ohne Python: Über das [Gateway](https://war3ai.com/de/docs/gateway/) rufen jede Sprache und jede Browserseite dieselben APIs per WebSocket / JSON auf, und der [MCP-Server](https://war3ai.com/de/docs/mcp/) lässt Agents wie Claude Code direkt Tools aufrufen, um die Lage zu sehen und Befehle zu erteilen.

  - [Schnellstart](https://war3ai.com/de/docs/quickstart/): Umgebung einrichten, mit einem Befehl ein Spiel starten und zusehen, wie der Beispiel-Bot übernimmt.
  - [Einen Bot mit einem LLM schreiben](https://war3ai.com/de/docs/ai-bot/): Auch ohne Programmierkenntnisse: Prompt kopieren, Spielweise beschreiben, an einen Agent übergeben.
  - [Mentales Modell](https://war3ai.com/de/docs/concepts/): Snapshots, Befehle, Quittungen, Events, Ticks. Nimm dir vor dem ersten Bot fünf Minuten dafür.
  - [API-Katalog](https://war3ai.com/de/api/): Alle APIs, jeweils mit Teststatus, Latenzstufe und zugrunde liegendem Mechanismus.

## Wähle deinen Einstieg

| Du … | Lies zuerst | Danach |
|---|---|---|
| spielst Warcraft, programmierst aber nicht | [Schnellstart](https://war3ai.com/de/docs/quickstart/) → [Einen Bot mit einem LLM schreiben](https://war3ai.com/de/docs/ai-bot/) | Bei Problemen: [FAQ](https://war3ai.com/de/docs/faq/) |
| kannst Python | [Dein erster Bot](https://war3ai.com/de/docs/first-bot/) → [Mentales Modell](https://war3ai.com/de/docs/concepts/) → [Die 15 Regeln](https://war3ai.com/de/docs/rules/) | [Profi-Kochbuch](https://war3ai.com/de/docs/cookbook/), [Beispiel-Bots](https://war3ai.com/de/docs/examples/) |
| baust Coding Agents / Automatisierung | [Agent-Selbstiteration](https://war3ai.com/de/docs/agent-loop/) | [Quittungen & Reason-Codes](https://war3ai.com/de/docs/reason-codes/), [`llms-full.txt`](https://war3ai.com/de/llms-full.txt) |
| willst ein LLM im Spiel entscheiden lassen | [LLM als Strategie-Coach](https://war3ai.com/de/docs/llm-coach/) | [Sprechblasen & lokale Modelle](https://war3ai.com/de/docs/speech/) |
| willst einen Agent direkt selbst steuern lassen (Claude Code usw.) | [LLM ruft Tools direkt auf (MCP)](https://war3ai.com/de/docs/mcp/) | [Oberfläche & Eingabe](https://war3ai.com/de/docs/ui-input/) |
| nutzt eine andere Sprache (JS, C#, Go, Rust …) | [Gateway](https://war3ai.com/de/docs/gateway/) | Tiefer: [W3P-Protokoll](https://war3ai.com/de/docs/protocol/) |
| willst KIs verschiedener Leute gegeneinander antreten lassen | [Fair-Modus](https://war3ai.com/de/docs/fair-mode/) | [Arena](https://war3ai.com/de/arena/) |
| willst auf RPG- / Custom Maps eigene Spielideen bauen | [Gameplay-Mods](https://war3ai.com/de/docs/mods/) | [Oberfläche & Eingabe](https://war3ai.com/de/docs/ui-input/), [Canvas](https://war3ai.com/de/docs/canvas/), [JASS-Kanal](https://war3ai.com/de/docs/jass/), [RPG-Begleiter](https://war3ai.com/de/docs/companion/) |
| willst deine KI mit anderen teilen | [KI-Schemata](https://war3ai.com/de/docs/schemes/) | [Farsight-Konsole](https://war3ai.com/de/docs/console/) |

## Was steckt im Repo?

```text
start.bat       der einzige Einstiegspunkt: Installation von null + Farsight öffnen; stop.bat stoppt alles vollständig
sdk/python/     API-Schicht. openwar3/ ist die öffentliche Fassade (Game + Bot) – hier anfangen
brains/         Entscheidungsschicht
  examples/       hello_bot (Wirtschaft) → rush_bot (Armee) → macro_bot (Makro) → micro_bot (Mikro + Creepen); buddy (RPG-Begleiter);
                  mod_hero_roguelike / mod_endless_defense (Gameplay-Mods)
  xwar3/          Referenz-Brain: Strategie-Schicht (Sekunden) + Reflex-Schicht (4 Prozesse) + Siegmodell
console/        Farsight-Webkonsole (FastAPI + React)
gateway/        Gateway (WebSocket / JSON) + JS-Client + Demoseite für den Browser
director/       automatische Kameraführung, HP-Balken über Einheiten
speech/         Chat-Sprechblasen über Einheiten + lokales LLM
runtime/        Multi-Instanz-Orchestrierung (jedes Spiel startet nach Einstellungen neu)
data/           order-ids.txt; Tools, um Daten aus deinem eigenen Spiel zu extrahieren
schemes/        deine KI-Schemata (mine/) und von anderen geteilte (installed/), nicht im Repo
tools/          play.py (Spiel mit einem Befehl starten), run_scheme.py (Schema-Runner), war3_mcp.py (MCP-Server), run_tests.py, Live-Prüfskripte
docs/           API-Katalog api.json (aus dem Code generiert), Protokoll, Handbuch
```

Zwischen der Runtime und deinem Code liegt nur ein versioniertes [W3P-Protokoll](https://war3ai.com/de/docs/protocol/): Mit dem Python-SDK geht es am einfachsten, aber jede andere Sprache kann sich anhand des Protokolls ebenfalls anbinden.

## Was bedeutet der „Teststatus“ einer API?

Jede API im Katalog trägt einen von drei Status:

- **Im Live-Spiel verifiziert**: Der zugrunde liegende Pfad (Aktions-ID, Parameterform, zurückgelesene Wirkung) wurde in echten Spielen verifiziert und ist durch ein Prüfskript abgesichert.
- **Experimentell**: Eine neu hinzugefügte API, die auf der Testinstanz bereits läuft und noch Punkt für Punkt live verifiziert wird. Sie ist nutzbar, Details der Schnittstelle können sich aber noch ändern.
- **Abgeleitet / nicht vollständig getestet**: Der Mechanismus folgt dem Vorgehen der Engine selbst (etwa der entsprechenden JASS-Funktion), wurde aber noch nicht Punkt für Punkt im Spiel geprüft. Prüf vor der Verwendung die Quittung.

> **Info**
>
> Derzeit wird nur **Warcraft III 1.27** (The Frozen Throne) unterstützt. 1.24–1.28 teilen dieselbe Engine-Struktur; die Unterstützung mehrerer Versionen ist Phase P4 der [Roadmap](https://war3ai.com/de/roadmap/). Ab 1.29 und bei Reforged handelt es sich um eine andere Engine – dafür gibt es keine Zusage.
