docs: projektplan hinzugefügt
This commit is contained in:
421
PLAN.md
Normal file
421
PLAN.md
Normal file
@@ -0,0 +1,421 @@
|
|||||||
|
# Airline Tycoon Browser-MMO — Projektplan
|
||||||
|
|
||||||
|
**Projekt:** game1.shadow-land.de
|
||||||
|
**Status:** Planungsphase
|
||||||
|
**Stand:** 24. April 2026
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Spielkonzept
|
||||||
|
|
||||||
|
Ein vollwertiges Airline-Tycoon-Browsergame als MMO:
|
||||||
|
- **Multiplayer:** 16–18 Spieler pro Session
|
||||||
|
- **Echtzeit:** 1 Spieltag = 16 Stunden (Beschleunigung, nicht in Echtzeit)
|
||||||
|
- **Plattform:** Browser-basiert (HTML5/JS Frontend, PHP/DB Backend)
|
||||||
|
- **Grafik:** Comic-Stil (à la Airline Tycoon Original)
|
||||||
|
- **Start:** Jeder Spieler beginnt mit gleichem Startkapital + 2 Grundflugzeugen
|
||||||
|
|
||||||
|
**Freies Spielziel:** Jeder Spieler verfolgt eigene Strategien
|
||||||
|
- Reichste Airline
|
||||||
|
- Meiste Flugzeuge
|
||||||
|
- Meiste Passagiere
|
||||||
|
- Größtes Streckennetz
|
||||||
|
- Bestes Sabotage-Imperium
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Spielwelt — Reale Flughäfen
|
||||||
|
|
||||||
|
### Datenquelle
|
||||||
|
- OurAirports Open Data (85.000+ Flughäfen, 1.162 große internationale)
|
||||||
|
- IATA-Codes, Namen, Städte, Länder, Koordinaten
|
||||||
|
|
||||||
|
### Spielwelt-Auswahl (Phase 1)
|
||||||
|
**60 Flughäfen weltweit** — ausgewogen auf alle Kontinente:
|
||||||
|
|
||||||
|
| Region | Flughäfen |
|
||||||
|
|--------|-----------|
|
||||||
|
| Europa | FRA, LHR, CDG, AMS, MUC, ZRH, FCO, MAD, BAR, LBU |
|
||||||
|
| Nordamerika | JFK, LAX, ORD, DFW, ATL, SFO, MIA, SEA, YYZ, YVR |
|
||||||
|
| Asien | DXB, HND, PEK, PVG, NRT, SIN, HKG, ICN, DEL, BKK |
|
||||||
|
| Naher/Mittlerer Osten | DOH, AUH, JED, RUH, IST, AMM, BEY |
|
||||||
|
| Südamerika | GRU, GIG, EZE, BOG, LIM, SCL, CCS, BHI |
|
||||||
|
| Afrika | JNB, CAI, CMN, LOS, ADD, NBO, SEZ |
|
||||||
|
| Ozeanien | SYD, MEL, AKL, WLG |
|
||||||
|
|
||||||
|
### Flughafen-Attribute (pro Flughafen, pro Runde)
|
||||||
|
- **Passagier-Nachfrage:** variiert nach Wirtschaftslage
|
||||||
|
- **Treibstoffpreis:** schwankt täglich
|
||||||
|
- **Flughafengebühren:** fix pro Start/Landung
|
||||||
|
- **Slots:** begrenzte Start-/Landezeitfenster
|
||||||
|
- **Regionaler Bonus:** manche Routen haben höhere Nachfrage
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Flugzeuge
|
||||||
|
|
||||||
|
### Flugzeugtypen (realistische Vorbilder)
|
||||||
|
|
||||||
|
| Name | Hersteller | Range (km) | Kapazität (Pax) | Kaufpreis | Crew-Kosten/Tick |
|
||||||
|
|------|-----------|------------|-----------------|-----------|-----------------|
|
||||||
|
| **Prop 1** | Dash 8-100 | 1.500 | 37 | 500.000 | 200 |
|
||||||
|
| **Prop 2** | ATR 72-500 | 1.650 | 70 | 1.500.000 | 300 |
|
||||||
|
| **Narrowbody 1** | A320-200 | 5.700 | 150 | 8.000.000 | 600 |
|
||||||
|
| **Narrowbody 2** | B737-800 | 5.700 | 162 | 9.500.000 | 650 |
|
||||||
|
| **Widebody 1** | B777-200 | 12.000 | 300 | 35.000.000 | 1.200 |
|
||||||
|
| **Widebody 2** | A350-900 | 15.000 | 325 | 42.000.000 | 1.400 |
|
||||||
|
| **Langstrecke** | A380-800 | 15.200 | 525 | 85.000.000 | 2.000 |
|
||||||
|
|
||||||
|
### Flugzeug-Zustand
|
||||||
|
- **Zustandswert:** 100% → 0% (bei Absturz/Sabotage)
|
||||||
|
- **Wartung:** Alle 50 Ticks fällig, senkt Zustand um 5%
|
||||||
|
- **Reparatur:** Kosten = (Kaufpreis × fehlende %)
|
||||||
|
- **Absturz:** Bei Sabotage oder Zustand 0%
|
||||||
|
|
||||||
|
### Flugzeug-Design (Customization)
|
||||||
|
- **Lackierung:** 12 Farben + Airline-Logo-Text
|
||||||
|
- **Sitzklassen:** First/Business/Economy Mix konfigurierbar
|
||||||
|
- **Ausstattung:** WLAN, Unterhaltung, Mahlzeiten (beeinflusst Zufriedenheit)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. Routen & Flugplanung
|
||||||
|
|
||||||
|
### Routen-System
|
||||||
|
- **Route mieten:** Kosten pro Tag (10.000–500.000/Tag je nach Beliebtheit)
|
||||||
|
- **Route kaufen:** Einmalkauf (Kaufpreis = 100× Tagesmiete)
|
||||||
|
- **Flugroute:** Direktflug von A nach B
|
||||||
|
- **Distance:** Berechnet aus Koordinaten (Haversine-Formel)
|
||||||
|
|
||||||
|
### Tägliche Berechnungen pro Route
|
||||||
|
```
|
||||||
|
Einnahmen/Tick = gebuchte_Pax × Ticketpreis × Nachfrage_Faktor
|
||||||
|
Kosten/Tick = Treibstoff × (Distanz/Verbrauch) + Crew_Kosten + Gebühren
|
||||||
|
```
|
||||||
|
|
||||||
|
### Ticketpreis-Setzung
|
||||||
|
- **Min/Max:** abhängig von Distanz (0,05–2,00 €/km)
|
||||||
|
- **Nachfrage-Kurve:** zu hohe Preise → weniger Passagiere
|
||||||
|
- **Komfort-Faktor:** Ausstattung beeinflusst Nachfrage
|
||||||
|
|
||||||
|
### Flugplan (pro Flugzeug)
|
||||||
|
- Startflughafen, Zielflughafen, Abflugzeit (Tick)
|
||||||
|
- Automatische Rundflüge bis Flughafen voll ist oder Flugzeug umgeleitet wird
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5. Finanzen
|
||||||
|
|
||||||
|
### Kontostand
|
||||||
|
- **Startkapital:** 10.000.000 Credits
|
||||||
|
- **Kredite:** max. 50.000.000, Zins 2% pro Spieltag
|
||||||
|
- **Bankrott:** Kontostand < -10.000.000 → Game Over, Session wird verlassen
|
||||||
|
|
||||||
|
### Einnahmen
|
||||||
|
- Passagier-Tickets (Hauptquelle)
|
||||||
|
- Fracht (wenn Cargo-Flugzeug auf Route)
|
||||||
|
- Werbeverträge (tägliche Prämie für frequentierte Routes)
|
||||||
|
|
||||||
|
### Ausgaben
|
||||||
|
- Crew-Gehalter (täglich)
|
||||||
|
- Treibstoff (täglich, preisvariabel)
|
||||||
|
- Flughafengebühren (Start/Landung)
|
||||||
|
- Routen-Mieten (täglich)
|
||||||
|
- Wartung (periodisch)
|
||||||
|
- Werbung (optional)
|
||||||
|
- Kreditzinsen (täglich)
|
||||||
|
- Sabotage-Kosten
|
||||||
|
|
||||||
|
### Finanzübersicht (pro Spieler)
|
||||||
|
- Tagesbilanz
|
||||||
|
- Historie (letzte 30 Spieltage)
|
||||||
|
- Rankings: Kontostand, Umsatz, Gewinn
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 6. Sabotage-System
|
||||||
|
|
||||||
|
### Verfügbare Sabotage-Aktionen
|
||||||
|
|
||||||
|
| Aktion | Kosten | Wirkung | Gegenmaßnahme |
|
||||||
|
|--------|--------|---------|---------------|
|
||||||
|
| ** Essen versalzen** | 50.000 | Crew-Zufriedenheit -30% auf einer Route für 5 Ticks → Einnahmen -40% | Ersatz-Crew ordern (20.000) |
|
||||||
|
| ** Treibstoff manipulieren** | 80.000 | Flugzeug verliert 20% Zustand | Wartung früher einplanen |
|
||||||
|
| ** Slot-Störung** | 30.000 | Ziel-Flughafen-Slot für 2 Ticks blockiert | Slot-Warteschlange abwarten |
|
||||||
|
| ** Werbekampagne sabotieren** | 40.000 | Konkurrent verliert Passagiere auf einer Route für 3 Ticks | Eigene Werbung |
|
||||||
|
| ** Mechaniker bestechen** | 60.000 | Wartung eines Flugzeugs verzögert sich um 10 Ticks | Interner Mechaniker (extra teuer) |
|
||||||
|
| ** Passagier-Skandal** | 100.000 | Negativ-Presseecho auf gesamte Airline für 7 Ticks → alle Routen -25% | PR-Kampagne schalten (50.000) |
|
||||||
|
| ** Slots aufkaufen** | 150.000 | Die eigenen Slots am Zielflughafen verdoppeln | Konkurrenz kann Gegen-Slots kaufen |
|
||||||
|
| ** Sicherheitsbeamter abwerben** | 45.000 | Sabotage-Abwehr eines Konkurrenten für 10 Ticks deaktiviert | Gegenseitige Sabotage |
|
||||||
|
|
||||||
|
### Sabotage-Regeln
|
||||||
|
- Max. 3 aktive Sabotage-Aktionen pro Spieler gleichzeitig
|
||||||
|
- Aktionen werden als "Gerüchte" in der Presse angezeigt
|
||||||
|
- Sabotage-Erfolgschance: 70% (kann durch Sicherheitspersonal erhöht werden)
|
||||||
|
- Sicherheitsstufe der Airline: 0–5 Sterne (kostenloser Basisschutz)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 7. KI-Rivalen (NPC-Spieler)
|
||||||
|
|
||||||
|
### NPC-Typen
|
||||||
|
- **Passiv:** Kauft selten Flugzeuge, wenig aktiv
|
||||||
|
- **Normal:** Ausgewogene Strategie, konkurriert moderat
|
||||||
|
- **Aggressiv:** Sabotiert häufig, drängt auf Expansionskurs
|
||||||
|
- **Bedenklicher Investor:** plant langfristig, wartet auf beste Deals
|
||||||
|
|
||||||
|
### NPC-Verhalten pro Tick
|
||||||
|
1. Prüfe Finanzen
|
||||||
|
2. Prüfe Routen-Einnahmen
|
||||||
|
3. Entscheide: Neues Flugzeug kaufen / Route mieten / Sabotage / Wartung
|
||||||
|
4. Aktualisiere Ticketpreise basierend auf Nachfrage
|
||||||
|
5. Zufalls-Events (Ereignisse im Spiel)
|
||||||
|
|
||||||
|
### NPC-Start-Konfiguration
|
||||||
|
- Gleiches Startkapital (10.000.000 Credits)
|
||||||
|
- Gleiche 2 Grundflugzeuge
|
||||||
|
- Zufälliger NPC-Typ + zufälliger Airline-Name
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8. Spieler-Konto & Authentifizierung
|
||||||
|
|
||||||
|
### Registrierung
|
||||||
|
- Benutzername (einzigartig, 3–20 Zeichen)
|
||||||
|
- E-Mail
|
||||||
|
- Passwort (hashed)
|
||||||
|
- Airline-Name (einzigartig, 3–30 Zeichen)
|
||||||
|
|
||||||
|
### Login
|
||||||
|
- Session-basiert (PHP Sessions + Cookie)
|
||||||
|
- "Angemeldet bleiben" für 30 Tage
|
||||||
|
|
||||||
|
### Spieler-Profil
|
||||||
|
- Airline-Name und Logo (Text-basiert, Comic-Schriftart)
|
||||||
|
- Airline-Farbe (1 aus 12 Farben)
|
||||||
|
- Statistiken: Spieltage, Flüge, Passagiere, Sabotage-Erfolge
|
||||||
|
- Rangliste-Position
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 9. Matchmaking & Session-System
|
||||||
|
|
||||||
|
### Session-Aufbau
|
||||||
|
- **Min. Spieler:** 16 (1 Mensch reicht, Rest KI)
|
||||||
|
- **Max. Spieler:** 18
|
||||||
|
- **Matchmaking:** Wer sich einloggt ohne offene Session → neue Session erstellen
|
||||||
|
|
||||||
|
### Session-Verwaltung
|
||||||
|
```
|
||||||
|
Session[ID]
|
||||||
|
- status: 'open' | 'running' | 'closing' | 'finished'
|
||||||
|
- players: [SpielerID, ...] (max 18)
|
||||||
|
- npcs: [NPC-ID, ...] (bis 16 humans + 2 minimum NPCs)
|
||||||
|
- day: aktueller Spieltag
|
||||||
|
- opened_at: timestamp
|
||||||
|
- closes_at: timestamp (opened_at + 90 days) — danach keine neuen Spieler
|
||||||
|
- ends_at: timestamp (opened_at + ~365 Tage) — Saisonende
|
||||||
|
```
|
||||||
|
|
||||||
|
### Spielerbeitritt
|
||||||
|
- Session hat < 16 Menschen → KI füllt auf 16 auf
|
||||||
|
- 17. Mensch kommt → Session bleibt bei 16 Menschen (KI wird entfernt wenn ≥16 Menschen)
|
||||||
|
- 18. Mensch kommt → Neue Session wird erstellt
|
||||||
|
- Bei Verbindung: automatisch nächste offene Session oder neue
|
||||||
|
|
||||||
|
### Session-Lebenszyklus
|
||||||
|
- **Öffnungsphase:** Session ist offen für Neueinsteiger
|
||||||
|
- **Max. Laufzeit:** 3 Kalendermonate (90 Tage) — dann automatische Neue Session
|
||||||
|
- **Schlussphase:** Nach 3 Monaten: keine neuen Spieler mehr, Rest spielt weiter bis Ende
|
||||||
|
- **Saisonende:** Nach ~6 Spielmonaten (realistisch 1 Jahr) wird Session abgeschlossen, Leaderboard-Ehren vergeben
|
||||||
|
- **Grund:** Gleiche Startbedingungen für alle, kein ewiges Aufholen müssen
|
||||||
|
|
||||||
|
### Session-Leave
|
||||||
|
- Spieler verlässt Session → Lücke wird NICHT aufgefüllt (bis Session beendet)
|
||||||
|
- Bei Disconnect: Spieler hat 7 Spieltage Zeit wieder beizutreten, sonst rausgeworfen
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 10. Spiel-Tick & Zeit-System
|
||||||
|
|
||||||
|
### Tick-System
|
||||||
|
- **1 Spieltag = 16 Stunden = 1 Echtzeit-Tag**
|
||||||
|
- **1 Tick = 1 Stunde (16 Ticks pro Spieltag)**
|
||||||
|
- Cron-Job alle 2,5 Echtzeit-Stunden (später: kontinuierlich via PHP CLI daemon)
|
||||||
|
|
||||||
|
### Pro Tick berechnet:
|
||||||
|
1. Alle Flugzeuge bewegen sich (Distanz → Tick-Dauer)
|
||||||
|
2. Einnahmen/Ausgaben kalkulieren
|
||||||
|
3. Sabotage-Effekte prüfen
|
||||||
|
4. NPC-Entscheidungen ausführen
|
||||||
|
5. Nachrichten/Events generieren
|
||||||
|
6. Leaderboards aktualisieren
|
||||||
|
|
||||||
|
### Spieltag-Ende:
|
||||||
|
1. Tagesbilanz zusammenfassen
|
||||||
|
2. Zinsberechnung für Kredite
|
||||||
|
3. Wartungsintervalle prüfen
|
||||||
|
4. Sabotage-Timer aktualisieren
|
||||||
|
5. Presse/News-Report generieren
|
||||||
|
6. Leaderboard-Updates
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 11. Leaderboards
|
||||||
|
|
||||||
|
### Rankings (pro Session)
|
||||||
|
|
||||||
|
| Rangliste | Sortierung |
|
||||||
|
|-----------|-----------|
|
||||||
|
| 🏆 Kontostand | Guthaben (Assets - Schulden) |
|
||||||
|
| ✈️ Flugzeug-Flotte | Anzahl Flugzeuge (nach Kaufpreis) |
|
||||||
|
| 👥 Passagiere | Gesamte transportierte Pax |
|
||||||
|
| 💰 Umsatz | Summe aller Einnahmen |
|
||||||
|
| 📉 Gewinn | Umsatz - Ausgaben (letzte 30 Tage) |
|
||||||
|
| 🌍 Routen-Netz | Anzahl aktive Routen |
|
||||||
|
| ⭐ Sabotage-Erfolge | Erfolgreiche Aktionen |
|
||||||
|
|
||||||
|
### Globale Rankings (alle Sessions kumuliert)
|
||||||
|
- All-Time richest airline
|
||||||
|
- Most flights completed
|
||||||
|
- Best Saboteur Award
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 12. Benutzeroberfläche (UI)
|
||||||
|
|
||||||
|
### Seiten/Views
|
||||||
|
|
||||||
|
1. **Dashboard** — Übersicht: Kontostand, Flotte, nächste Flüge, aktive Routen, Leaderboard-Vorschau
|
||||||
|
2. **Flughäfen** — Weltkarte mit allen Flughäfen, eigene Routen markiert, Nachfrage anzeigen
|
||||||
|
3. **Flugzeuge** — Eigene Flotte, Zustand, nächste Wartung, Flugzeug kaufen
|
||||||
|
4. **Routen** — Eigene Routen, Ticketpreise, Passagier-Zahlen, Routen mieten/kündigen
|
||||||
|
5. **Sabotage** — Aktive Aktionen, Sabotage-Report, Sicherheitsstufe
|
||||||
|
6. **Finanzen** — Bilanz, Kontobewegungen, Kredite, Tagesbericht
|
||||||
|
7. **Markt** — Flugzeug-Markt (Gebrauchtflugzeuge), Treibstoff-Preise
|
||||||
|
8. **Presse** — Nachrichten, Gerüchte, Industrie-News
|
||||||
|
9. **Ranglisten** — Alle Leaderboards
|
||||||
|
10. **Profil** — Airline-Name, Logo, Statistiken, Einstellungen
|
||||||
|
|
||||||
|
### Design / Grafik
|
||||||
|
- **Comic-Stil:** Cartoon-Flugzeuge (SVG/CSS gezeichnet), bunte Farben
|
||||||
|
- **Flugzeug-Grafiken:** Einfache SVG-Icons pro Flugzeugtyp
|
||||||
|
- **Weltkarte:** Interaktive SVG-Weltkarte mit Flughafen-Markern
|
||||||
|
- **Schriftart:** Humorvolle Comic-Schrift (z.B. Bangers, Russo One via Google Fonts)
|
||||||
|
- **Farben:** Knallige Airline-Farben, Pastell-Töne, dunkle Panels
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 13. Technische Architektur
|
||||||
|
|
||||||
|
### Stack
|
||||||
|
- **Backend:** PHP 8.4 + SQLite (für Portabilität) oder MariaDB (bestehend)
|
||||||
|
- **Frontend:** Vanilla JS + CSS Grid/Flexbox (kein Framework nötig)
|
||||||
|
- **Server:** Bestehender Server (Caddy, PHP-FPM)
|
||||||
|
- **Session:** Browser-Cookies + Server-seitige DB-Sessions
|
||||||
|
|
||||||
|
### Datenbank-Schema (Kerntabellen)
|
||||||
|
|
||||||
|
```
|
||||||
|
users — Account-Daten
|
||||||
|
airlines — Airline-Profile pro User
|
||||||
|
sessions — Spiel-Sessions
|
||||||
|
session_players — Spieler in Sessions (Link User <-> Session)
|
||||||
|
airports — Flughafen-Referenzdaten
|
||||||
|
routes — Gemietete/gekaufte Routen pro Airline
|
||||||
|
aircraft — Flugzeuge pro Airline
|
||||||
|
flights — Aktive/ geplante Flüge
|
||||||
|
sabotage_actions — Aktive Sabotage-Aktionen
|
||||||
|
news_events — Presseberichte / Events
|
||||||
|
game_state — Aktueller Tick-Stand pro Session
|
||||||
|
```
|
||||||
|
|
||||||
|
### Spiel-Berechnung (Batch)
|
||||||
|
- PHP CLI Skript, läuft alle 2,5 Std per Cron
|
||||||
|
- Oder: `while(true)` Loop mit 5-Min-Pausen
|
||||||
|
- Berechnet alle aktiven Sessions parallel
|
||||||
|
|
||||||
|
### Sicherheit
|
||||||
|
- Passwort-Hashing (bcrypt)
|
||||||
|
- CSRF-Token für alle POSTs
|
||||||
|
- Input-Validierung
|
||||||
|
- SQL-Injection-Schutz (Prepared Statements)
|
||||||
|
- Session-Timeouts
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 14. Spiel-Balance
|
||||||
|
|
||||||
|
### Startbedingungen
|
||||||
|
- Startkapital: 10.000.000 Credits
|
||||||
|
- Startflugzeuge: 2× Prop 1 (Dash 8-100)
|
||||||
|
- Freie Route: 1× regionale Route (z.B. Frankfurt → München)
|
||||||
|
|
||||||
|
### Wirtschaftsparameter
|
||||||
|
- Treibstoff: 0,80–2,50 €/Liter (variiert täglich)
|
||||||
|
- Passage-Nachfrage: 100 Pax/Tag pro Route (Basis, modifiziert durch Economy-Faktor)
|
||||||
|
- Gebühren: 5.000–50.000 € pro Start/Landung je nach Flughafen
|
||||||
|
- Crew-Kosten: 200–2.000 €/Tick je nach Flugzeugtyp
|
||||||
|
- ROI: Typischer Payback ~30–60 Spieltage pro Route
|
||||||
|
|
||||||
|
### Zeitrahmen (geschätzt)
|
||||||
|
- Frühe Phase (Tage 1–10): Flugzeug kennenlernen, erste Routen
|
||||||
|
- Expansionsphase (Tage 10–50): 2–5 Flugzeuge, 3–10 Routen
|
||||||
|
- Wettbewerbsphase (Tage 50–200): Große Flotten, Sabotage, KI wird aggressiver
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 15. Implementierungs-Phasen
|
||||||
|
|
||||||
|
### Phase 1: Grundgerüst ★
|
||||||
|
- Datenbank-Schema erstellen
|
||||||
|
- User-Registrierung / Login
|
||||||
|
- Flughafen-Daten importieren (60 Flughäfen)
|
||||||
|
- Grundlegende UI (Dashboard, Flughafen-Karte)
|
||||||
|
- **Ergebnis:** Anmeldung möglich, Weltkarte mit Flughäfen sichtbar
|
||||||
|
|
||||||
|
### Phase 2: Flugzeuge & Finanzen ★★
|
||||||
|
- Flugzeug-Modell (Kauf, Zustand, Wartung)
|
||||||
|
- Finanzen-Modell (Einnahmen, Ausgaben, Kredite)
|
||||||
|
- Flugzeug-Übersicht
|
||||||
|
- **Ergebnis:** Echte Flugzeuge kaufen und fliegen sehen
|
||||||
|
|
||||||
|
### Phase 3: Routen & Flugpläne ★★☆
|
||||||
|
- Routen-System (mieten/kaufen)
|
||||||
|
- Flugplanung (pro Flugzeug)
|
||||||
|
- Tägliche Berechnung (Tick)
|
||||||
|
- **Ergebnis:** Eigene Routen betreiben, Einnahmen sehen
|
||||||
|
|
||||||
|
### Phase 4: NPCs & Matchmaking ★★☆
|
||||||
|
- NPC-AI
|
||||||
|
- Matchmaking-Logik
|
||||||
|
- Session-System
|
||||||
|
- **Ergebnis:** 16 Spieler (KI) in einer Session
|
||||||
|
|
||||||
|
### Phase 5: Sabotage ★★★
|
||||||
|
- Sabotage-Aktionen
|
||||||
|
- Sicherheitsstufen
|
||||||
|
- Presse/Events
|
||||||
|
- **Ergebnis:** Sabotage möglich + News-System
|
||||||
|
|
||||||
|
### Phase 6: Leaderboards & Polish ★★☆
|
||||||
|
- Alle Leaderboards
|
||||||
|
- Presse-Seite
|
||||||
|
- Spielende-Bedingungen
|
||||||
|
- Comic-Grafiken (Flugzeuge, Flughäfen)
|
||||||
|
- **Ergebnis:** Vollständiges Spiel
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 16. Nächste Schritte (sofort)
|
||||||
|
|
||||||
|
1. ✅ Projekt-Repo auf Gitea anlegen
|
||||||
|
2. Datenbank-Schema designen
|
||||||
|
3. User-System programmieren
|
||||||
|
4. Flughafen-Daten importieren
|
||||||
|
5. Comic-Sprite-Grafiken erstellen (oder素材 finden)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Erstellt: 24. April 2026*
|
||||||
|
*Geschätzer Aufwand: ~200–300 Stunden Entwicklungszeit*
|
||||||
Reference in New Issue
Block a user