Anleitung

iPhone & iPad

Es gibt keine App-Store-Version: Du baust die App auf deinem Mac mit Xcode und installierst sie auf deinem eigenen iPhone oder iPad. Beim ersten Start kopiert sie die Spieldaten aus deiner eigenen Kopie.

  • iOS und iPadOS 15 oder neuer
  • Ein Mac mit Xcode 26
  • Eine kostenlose Apple ID genügt
  • Etwa 2 GB frei auf dem Gerät

1Was du brauchst

  • Ein Mac mit Xcode 26 oder neuer aus dem Mac App Store. Öffne Xcode einmal, damit es seine Komponenten installiert.
  • Eine Apple ID, angemeldet unter Xcode › Settings › Accounts. Eine kostenlose genügt, aber ihre Apps lassen sich nach sieben Tagen nicht mehr öffnen und müssen neu gebaut werden; eine bezahlte Mitgliedschaft im Developer Program signiert für ein Jahr.
  • Ein iPhone oder iPad mit iOS oder iPadOS 15 oder neuer und sein Kabel, oder per WLAN mit dem Mac gekoppelt.
  • Dein Ordner mit Total Annihilation, der mit totala1.hpi: etwa 1,1 GB mit beiden Erweiterungen und der Musik. Wo du ihn auf einem Mac findest.

2Die Werkzeuge installieren

Öffne das Terminal und installiere die Befehlszeilentools von Xcode, dann CMake und Ninja, zum Beispiel mit Homebrew. Python 3 ist bei den Befehlszeilentools dabei.

Terminal
$ xcode-select --install$ brew install cmake ninja
Illustration

3Zum Quellcode

Der erste Build lädt und baut außerdem einmalig die Bibliotheken, die das Spiel für iOS braucht.

Terminal
$ git clone https://github.com/open-annihilation/open-annihilation.git$ cd open-annihilation$ python3 tools/bootstrap_text_fonts.py --fonts-only
Illustration

4Das Xcode-Projekt erstellen

Finde deine Team-ID: Wähle in Xcode › Settings › Accounts deine Apple ID 1 und lies die ID des Teams ab 2.

Accounts
GeneralAccountsBehaviorsNavigationThemes
Apple IDs
you@example.com
TeamRole
Your Name (Personal Team)User
A1B2C3D4E5
Illustration

Erstelle dann im Ordner open-annihilation das Projekt. Es öffnet sich in Xcode:

Terminal
$ platforms/ios/scripts/xcode.sh --device --team A1B2C3D4E5 --open
Illustration

Für ein Testgerät baut cmake -B build-ios-xcode -DOA_IOS_BUNDLED_GAME_DIR="$HOME/Games/Total Annihilation" deinen Spielordner in die App ein: etwa 1,1 GB größer, dafür sofort nach der Installation spielbar.

5Bauen und installieren

  1. Schließe das iPhone oder iPad an und entsperre es. Tippe beim ersten Mal auf dem Gerät auf Vertrauen.
  2. Wähle in der Symbolleiste von Xcode das Schema oa-game 1 und dein Gerät 2.
  3. Meldet Xcode, dass die Kennung der App nicht verfügbar ist, ändere Bundle Identifier unter Signing & Capabilities in eine eigene 4, etwa net.yourname.open-annihilation.
  4. Wähle Product › Run 3.
▶oa-game›Commander’s iPhoneReady
open-annihilation
oa-game
platforms
src
GeneralSigning & CapabilitiesInfoBuild Settings
Automatically manage signing
Your Name (Personal Team)
net.yourname.open-annihilation
Illustration

6Die App auf dem Gerät zulassen

Beim ersten Mal weigert sich das Gerät, eine App deines eigenen Teams zu öffnen. Schalte unter iOS und iPadOS 16 und neuer den Entwicklermodus ein: Einstellungen › Datenschutz & Sicherheit › Entwicklermodus 1, einschalten 2 und das Gerät neu starten, wenn es danach fragt.

9:41
‹ EinstellungenDatenschutz & Sicherheit
OrtungsdiensteEin›
Tracking›
Lokales Netzwerk›
Sicherheit
EntwicklermodusAus›
9:41
‹ ZurückEntwicklermodus
Entwicklermodus
Durch das Aktivieren des Entwicklermodus wird das Gerät neu gestartet.
Illustration

Vertraue dann deinem Entwicklerprofil: Einstellungen › Allgemein › VPN und Geräteverwaltung, wähle deine Apple ID unter Entwickler-App 1 und tippe auf Vertrauen 2. Öffne jetzt Open Annihilation vom Home-Bildschirm.

9:41
‹ AllgemeinVPN und Geräteverwaltung
VPNNicht verbunden›
Entwickler-App
Apple Development: you@example.com›
9:41
‹ ZurückApple Development
„Apple Development: you@example.com“ vertrauen
Apps von diesem Entwickler: Open Annihilation
Illustration

7Deine Spieldateien hinzufügen

Beim ersten Öffnen bietet der Bildschirm Game files drei Wege, deine Dateien von Total Annihilation auf das Gerät zu bringen. Egal, welchen du wählst: Die Dateien werden geprüft, und die App schließt sich nie, weil sie fehlen.

The Game files screen on an iPad
ScreenshotDer Bildschirm Game files auf einem iPad.
  1. Lege deinen Ordner mit Total Annihilation dort ab, wo das Gerät ihn erreicht: in iCloud Drive, auf einem USB-Laufwerk, in einem freigegebenen Ordner eines Computers (verbinde dich zuerst in der App „Dateien“ damit) oder auf dem Gerät selbst.
  2. Tippe auf CHOOSE FOLDER, dann auf Durchsuchen, suche den Ordner, öffne ihn und tippe auf Öffnen. Die App liest nur Namen und Größen, es wird also noch nichts heruntergeladen.
  3. Ready to copy zeigt, was sie gefunden hat, mit Schaltern für die optionalen Teile, was sie auslässt und wie viel Platz die Kopie braucht. Tippe auf COPY.
Ready to copy
ScreenshotBereit zum Kopieren.
  1. Die Kopie zeigt ihren Fortschritt, die verbleibende Zeit und die Datei, an der sie gerade ist. Lass die App geöffnet, bis sie fertig ist; verlässt du sie, pausiert sie und macht weiter, wenn du zurückkommst. Dateien, die nur in iCloud liegen, werden beim Kopieren heruntergeladen.
Copying
ScreenshotKopieren läuft.
  1. Die Kopie wird mit der eigenen Prüfung des Spiels geprüft, dann sagt Ready to play, was das Spiel spielen wird. Tippe auf PLAY.
Ready to play
ScreenshotBereit zum Spielen.

8Spielen

Öffne Open Annihilation und dreh das Gerät quer: Das Spiel läuft nur im Querformat. Die Touch-Steuerung umfasst Tippen zum Bewegen, das ausklappbare Baumenü, das Befehlsrad per langem Druck und Zoomen mit zwei Fingern; Tastatur, Maus oder Trackpad funktionieren wie an einem Computer.

✓Du bist drin, Commander

Sobald das Hauptmenü erscheint, hat das Spiel deine Dateien gefunden. Wähle einen Feldzug, ein Gefecht oder ein Netzwerkspiel.

Open Annihilation main menu
Screenshot

Die Spieldateien verwalten

Öffne im Hauptmenü die OA-Einstellungen und wähle Game files: was installiert ist, seine Größe und der freie Platz, ob die Dateien in Gerätebackups landen (standardmäßig aus, da sie etwa 1,1 GB auf iCloud anrechnen würden), und MANAGE…, womit du eine Erweiterung, Karten oder eine Mod hinzufügst, die Dateien erneut prüfst oder sie entfernst oder ersetzt. Spielstände und Einstellungen bleiben immer erhalten.

Managing the game files on an iPhone
ScreenshotDie Spieldateien auf einem iPhone verwalten.

Netzwerkspiele

Wenn das Spiel zum ersten Mal das Netzwerk nutzt, fragt iOS, ob es Geräte in deinem lokalen Netzwerk finden und sich mit ihnen verbinden darf: Tippe auf Erlauben oder schalte es später unter Einstellungen › Datenschutz & Sicherheit › Lokales Netzwerk ein. Ein mit einer kostenlosen Apple ID signierter Build kann nicht per Broadcast nach Spielen suchen: Tritt bei, indem du auf dem TCP/IP-Bildschirm die Adresse des Hosts eingibst (die Adresse eines Geräts findest du unter Einstellungen › WLAN hinter der Infotaste). Ein bezahltes Team kann bei Apple die Berechtigung für Multicast-Netzwerke beantragen und mit --multicast-entitlement bauen.

Fehlerbehebung

„Nicht vertrauenswürdiger Entwickler“
Vertraue deinem Entwicklerprofil, Schritt 6.
Die App öffnet sich nach einer Woche nicht mehr
Eine kostenlose Apple ID signiert für sieben Tage: Baue und installiere erneut, Schritt 5.
„This folder does not hold a Total Annihilation installation“
Wähle den Ordner, der totala1.hpi enthält.
„Not enough space“
Gib unter Einstellungen › Allgemein › iPhone-Speicher Platz frei oder schalte einen optionalen Teil ab, dann CHECK AGAIN oder CONTINUE; was bereits kopiert wurde, bleibt erhalten.
„The copy stopped“
Ein Laufwerk, ein freigegebener Ordner oder das Netzwerk ist weggefallen: Verbinde dich erneut und tippe auf CONTINUE.
Bei der Suche erscheinen keine Spiele
Gib auf dem TCP/IP-Bildschirm die Adresse des Hosts ein oder baue mit der Berechtigung für Multicast-Netzwerke.

Aktualisieren und entfernen

Zum Aktualisieren führst du im Ordner open-annihilation git pull aus und baust und installierst erneut (Schritt 5); deine Spieldateien, Spielstände und Einstellungen bleiben auf dem Gerät. Um das Spiel zu entfernen, halte sein Symbol gedrückt und wähle App entfernen; dadurch werden auch die hineinkopierten Spieldateien entfernt.

Andere Plattformen

Läuft etwas anders als beschrieben? Discord · GitHub-Issues