Mastodon
← Všechny články
autor: Casey Jones Labs · 7 min čtení

Budování hry SkyChart: Jak se z milostného dopisu Aerobizu stala plnohodnotná simulace aerolinek

devlogskychartbehind-the-scenes
Tento článek byl automaticky přeložen z angličtiny. Přečíst originál
Obsah

Existuje hra z roku 1992, která nás zkazila. Aerobiz Supersonic na SNES neměl co být tak návykový, jak byl. Nákup letištních slotů v Lagosu, vyhýbání se ropným krizím, sledování, jak se vaše malé sprity letadel plazí přes pixelovanou zeměkouli, zatímco plánujete ovládnutí světa jeden hub po druhém.

Nikdo neudělal pořádného nástupce. Tak jsme se rozhodli postavit jednoho.

SkyChart: Airline Executive je naše odpověď. Retro-moderní simulace řízení aerolinek postavená v Godot 4, pokrývající 90 let letecké historie od zlaté éry létajících člunů po éru A380. Dnes odtahujeme oponu, abychom ukázali, jak to všechno vzniklo.


Pitch: “Co kdyby Aerobiz měl moderní UI?”

Základní fantazie je jednoduchá: jste CEO mladé aerolinky soutěžící proti AI rivalům napříč čtyřmi historickými érami (1930 až 2020). Vybíráte trasy, kupujete letadla, investujete do měst, řídíte diplomacii se světovými regiony a snažíte se nezbankrotovat, když OPEC rozhodne zruinovat všem čtvrtletí.

Ale tam, kde vám Aerobiz dal menu a text, jsme chtěli živoucí mapu světa. Letové dráhy po velkých kružnicích, meteorologický radar, cykly den/noc, animace boomu měst a sprity letadel, které se naklánějí do zatáček. Druh věci, která vás nutí se opřít v křesle a pomyslet si: “Jo, tohle jsem postavil já.”

Atmosféra, na které jsme se ustálili: high-tech retro. Neonové svítící čáry na tmavé mapě. Hexagonální HUD tlačítka. Zpravodajská lišta, která by mohla pocházet z Bloomberg terminálu 90. let. Moderní UX zabalené v nezaměnitelném kouzlu éry SNES.

Mapa světa v noci s neonovými čarami tras křižujícími zeměkouli a sprity letadel trasujícími dráhy velkých kružnic mezi městy Globální pohled: vaše letecká síť na jeden pohled. Každá svítící čára je trasa. Každá pohybující se tečka je výnos.


150 měst, 33 letadel, 90 let historie

Pojďme mluvit o rozsahu. SkyChart obsahuje:

  • 150 měst napříč 7 světovými regiony (plus post-1991 Rusko), každé s reálnými demografickými daty, ekonomickými profily a sezónními křivkami poptávky. Tokio se zvedá v sezóně květu třešní. Miami zažívá boom v zimě. Kalkata vrcholí během Durga Puja.
  • 33 historicky přesných letadel od Douglas DC-3 (1936) po Boeing 787 Dreamliner. Každé má autentický dolet, rychlost, kapacitu, provozní náklady a rok vyřazení. Proleťte se DC-3 do éry proudových letadel a sledujte, jak vás náklady na údržbu sežerou zaživa.
  • 60+ historických událostí, které přetvářejí hrací plochu. Velká hospodářská krize položí poptávku. Druhá světová válka bombarduje Londýn a Berlín (doslova, budete muset přestavět ta letiště). Ropná krize 1973 vám přes noc zdvojnásobí náklady na palivo. COVID-19 se objeví v Éře 4 a, no… pamatujete si.
  • 4 hratelné éry, každá s eskalujícími cíli. Éra 1 vás žádá o přežití s vrtulovými letadly a 5 miliony dolarů. Éra 4 chce impérium za 2 miliardy dolarů pokrývající všech sedm regionů.

Každá éra vypadá jako jiná hra. Strategická kalkulace sítě létajících člunů 30. let není nic jako nelítostná válka hub-and-spoke 90. let.

Obrazovka výběru éry ukazující čtyři historické éry s jejich cíli a výchozími podmínkami Vyberte si éru: každá je jinou hrou s jinými letadly, událostmi a podmínkami vítězství.

Vyskakovací okno historické události oznamující pandemii COVID-19 Historie se neopakuje, ale zvedá vám náklady na palivo.


AI, která skutečně hraje zpět

Jedna věc, s kterou jsme odmítli dodat, byla AI s mrtvým mozkem. Rivalské aerolinky ve hře SkyChart nerozšiřují jen náhodně. Mají domácí regiony, vážený výběr tras na základě populace a ekonomických dat, čtvrtletní cenové úpravy, upgrady flotil při vyřazení letadel a strategie investic do hubů.

Podbízejí vaše ceny na sporných trasách. Skupují letištní sloty ve městech, na která jste měli oko. Dokonce si letadla pronajímají, když jsou krátce na hotovosti, stejně jako by to udělal skutečný nízkonákladový dopravce.

A v Éře 4, pokud jste vybudovali impérium, kterému nemohou konkurovat? Mohou se stát cílem akvizice. Jedno nepřátelské převzetí na éru. Jejich trasy, sloty a huby, všechno vaše. Za cenu.

Panel Competitive Intelligence ukazující expanzi rivalské aerolinky napříč regiony Poznej svého nepřítele: Intel panel sleduje každý tah každého rivala napříč všemi sedmi regiony.


Kokpit: UI, které proti vám nebojuje

Pokud jste někdy hráli manažerskou simulaci, kde bylo UI skutečným bossem, znáte tu bolest. Strávili jsme nepřiměřené množství času, abychom zajistili, že rozhraní SkyChart je něco, co chcete používat.

Každý panel je přetažitelné okno s měnitelnou velikostí. Route Manager, Fleet Overview, Strategic Advisor, City Intelligence, Competitive Intel, Music Player. Přetáhněte je, kam chcete. Změňte jim velikost. Hra si pamatuje vaše rozvržení mezi sezeními.

Strategic Advisor je váš AI co-pilot. Skenuje každý možný pár měst na světě (to je 11 175 kombinací), řadí je podle projektovaného zisku a servíruje ty nejlepší příležitosti na stříbrném podnose. Běží na backgroundovém threadpoolu, až 8 pracovních vláken, takže hru nikdy nezmrazí, i při křupání tisíců tras.

Plná podpora ovladače byla pozdní dodatek, který se stal vášnivým projektem. Ovladače Xbox, PlayStation a Switch všechny fungují nativně. Virtuální kurzor vám umožňuje vybírat města na mapě pravou pákou. Radiální menu (držte LB) vám dává okamžitý přístup ke každému panelu. Každé okno reaguje na B-to-close. Postavili jsme dokonce grafického průvodce ovládáním s widgety klávesových čepiček a glyfů tlačítek.

Och, a je tu vestavěný hudební přehrávač. Tři zdroje: herní soundtrack odpovídající éře (44 skladeb pokrývajících jazzovou éru po moderní elektroniku), vaše lokální hudební knihovna nebo integrace Spotify přes OAuth. Protože co je provozování aerolinky bez dobrého playlistu?

Více přetažitelných oken otevřených s Route Manager, City Panel a Strategic Advisor rozmístěných na mapě Váš kokpit, vaše rozvržení. Každý panel je přetažitelný, s měnitelnou velikostí a pamatuje si, kde jste ho nechali.

Panel Strategic Advisor ukazující doporučené trasy seřazené podle projektovaného zisku Strategic Advisor křupe 11 175 párů měst, takže vy nemusíte.

Průvodce ovládáním ukazující všechna mapování tlačítek gamepadu Plná podpora ovladače: každé tlačítko namapováno pro pohodlnou správu aerolinek z gauče.


Pod kapotou: milostný příběh GDScriptu

SkyChart je postaven výhradně v Godot 4 s GDScript 2.0. Žádné C#, žádné moduly C++. Všechno od enginu ekonomiky tras po renderer tile mapy je čistý GDScript.

Několik zajímavostí z inženýrské strany:

Vlákna všude. Měsíční ekonomické výpočty, doporučení tras a expanze AI běží na pracovních vláknech. Hra zůstává hladká, i když zpracovává 2 000+ tras napříč čtyřmi rivalskými aerolinkami.

Skutečný window manager. WindowManager je autoload singleton, který řeší vrstvení focus-to-front (klikněte na okno, dostane se nahoru), perzistenci pozice/velikosti na disk a velikosti přizpůsobené obrazovce. Tři úrovně: Normal (herní panely), Modal (nastavení, save/load) a HUD (vždy nahoře).

Mapové dlaždice stylu OSM. Přiblížíte do jakéhokoli regionu a dynamicky se načtou detailní mapové dlaždice. Sprite pooling, LRU texture cache, diskové ukládání do mezipaměti a online stahování. Tři styly: Retro Dark (výchozí), Satellite a Clean Vector.

Velké kružnice s vyhýbáním se počasí. Letové dráhy následují sférickou interpolaci pro geografickou přesnost a dynamicky objíždějí bouřkové systémy na mapě. Sprity letadel se naklánějí do zatáček a vrhají stíny. Je to hodně matematiky pro kosmetiku, ale dělá to svět pocitově reálným.

Trasování po velkých kružnicích v akci: letadla následují realistické zakřivené dráhy přes zeměkouli Trasování po velkých kružnicích v akci: letadla následují realistické zakřivené dráhy a uhýbají počasí.

Mapa přiblížená do regionu ukazující styl dlaždic Retro Dark s detaily v neonovém stylu Přibližte a dlaždice stylu OSM se načtou za běhu. Tři mapové styly na výběr.


Hra s čísly: ekonomika tras

Srdcem hry SkyChart je ekonomický model, na který jsme upřímně hrdí. Každá trasa počítá měsíční zisk přes potrubí, které zvažuje:

  • Základní poptávka (populace města x ekonomický multiplikátor)
  • Sezónní variace (12 měsíčních multiplikátorů na město)
  • Investiční bonusy (hotely, golfová hřiště, koncertní sály, zábavní parky)
  • Regionální diplomacie (lepší vztahy = větší poptávka)
  • Modifikátory událostí (války, ropné krize, pandemie)
  • Reputace (bezpečnostní záznam a zákaznický servis ovlivňují poptávku globálně)
  • Konkurence (poptávka se dělí podle atraktivity, cen, loajality, přítomnosti hubu)
  • Stáří letadla (letadla po roce vyřazení stojí o 40 % více na provoz a ztrácí 15 % poptávky)
  • Ceny paliva (události OPEC mohou přes noc zdvojnásobit vaše variabilní náklady)

Výsledkem je systém, kde žádné dvě trasy nehrají stejně, a optimální síť v roce 1935 vypadá úplně jinak než optimální síť v roce 2005.

Čtvrtletní finanční zpráva ukazující výnosy, výdaje a rolující graf zisku Každé čtvrtletí čísla vyprávějí příběh. Ten propad v Q3? Stal se OPEC.

Dashboard Route Performance ukazující trasy seřazené podle zisku s trendovými daty Route Performance: každá trasa seřazená podle zisku s trendovými jiskrografy. Zelená je dobrá. Červená znamená, že je čas dělat těžká rozhodnutí.


Co přijde

V současnosti jsme na v0.2.17, což v číslování SkyChart znamená, že jsme hluboko v leštění Fáze 16+. Jádro hry je kompletní a velmi hratelné. Tady je to, co je na ranveji:

  • UI zvukové efekty a okolní zvuková kulisa: kliknutí tlačítek, svištění panelů, letištní ambience
  • Tutoriál pro první spuštění: 12kapitolová řízená procházka, aby se noví hráči nemuseli učit tím, že ztroskotají (finančně, ne doslova… i když i doslova)
  • Přípravy vydání na Steamu: stránka obchodu, integrace achievementů, cloud saves

Budujeme SkyChart s filozofií, že manažerské simulace si zaslouží stejnou lásku k UI, kterou dostávají akční hry. Každý tooltip, každá animace, každý feature pro kvalitu života existuje proto, že jsme se zeptali: “Co by nám udělalo tak, abychom nechtěli alt-tabovat?”


Sledujte cestu

SkyChart vyvíjí Casey Jones Labs, malé studio s velkou láskou ke hrám, které nás formovaly. Pokud jste vyrůstali diskutováním, zda otevřít trasu do Anchorage nebo investovat do zábavního parku v Honolulu, tato hra je pro vás.

Zůstaňte naladěni na další dev blogy a nechte si skládací stolky ve vzpřímené poloze.

Tým Casey Jones Labs

Hlavní menu SkyChart s animovanými letadly přelétávajícími přes pozadí mapy SkyChart: Airline Executive, připravuje se na Steam pro Windows, macOS a Linux. Postaveno s Godot 4.