### stage 0 : core mechanics — plane flight and other core components ## > Plan locked 2026-06-01. Central ports = system-owned airport rows (owned by a hard-coded > `SystemUserID`, flagged `is_central`); the backend treats any airport whose `user_id == SystemUserID` > as a system airport and hides it from all player UI. One central port per continent (8, incl. void). > Reward stays the plane's flat `completed_flight_cash_reward` for stage 0 — destination only drives > routing, the route log, and the UI. Cargo / country-selection and airport-to-airport sending are > deferred to stage 1. ## planes ## - [x] fleet screen (where owned planes are displayed with their status) - [ ] flight screen (planes dispatched from here: select where to send and how many planes of the selected model go there) - [ ] where to send planes is continent (main divider) -> country (where you select resources if it is a cargo plane — stage 1) -> airport (either the central airport, which accepts every aircraft, or other airports if they have a supporting building) - stage 0 path = continent -> central port (passenger). country/cargo step is stage 1. - [ ] (stage 1) if another airport sends the user's airport a plane (checked whether it can be sent beforehand), accept that aircraft and service it (right now just refuel; if fuel is not enough, divide the reward by the fuelled percentage). The aircraft gives double the amount it normally can, then is sent back. Either way — whether the airport received the aircraft or not — the aircraft acts normally (like a normal flight to the central ports). - [~] proper skyrama-like plane management (planes idle in hangar; when dispatched, wait for an available service bay, get refuelled and boarded with passengers, then move to the runway, then fly; after a set amount of time the plane lands on the runway, goes to a service bay, unloads passengers and cargo, then waits for another dispatch) - done: idle -> boarding -> taxiing(fuelling) -> flying. todo: land -> service bay -> unload -> idle. - [ ] planes screen divided into vertical columns (waiting, refuelling, passenger in/out, at runway, and in-flight) each with their own groups - [ ] add filters for size, type, operation ## buildings ## - separated into storage (ie. hangars, fuel tanks, warehouses for products), operation (runways and service bays), passive (buildings that add fuel or passenger income-rate increases), crafting (stage 1 or 2 — workshops or plane-upgrade buildings) - passive buildings can have storage for their kind, like a passive fuel building stores fuel etc. - buildings, like planes, are stored in groups (storage etc.) and, when selected, further grouped into aircraft, fuel etc. - [ ] group the buildings screen by type, then sub-group (storage -> plane/fuel/product, operation -> runway/service) ## definitions - Central port : one airport per continent (in the case of "void" it is a spaceport). Gives no bonus to the sender airport, is not owned or controllable by any player, and accepts every aircraft. - Normal airport : user-owned airports. Can send aircraft to other airports if serviced by the receiving airport; the sender collects double the amount (if not a cargo aircraft) and the receiver gets half the nominal reward upon service. - Void : the entirety of space — low earth orbit, lunar orbit, solar orbit etc. ### stage 1 : Cargo ## resources ## - required materials for crafting, shops and upgrades (if the required path is chosen) - crafting : 100 silver to 20 rings in 20 hours - shops : sells 1 ring per plane - upgrades : 4 turbofans for a speed upgrade for large plane 1 - as of stage 0 integration there is no defined plan for resource usage, but base resource collection will be through cargo aircraft - in the original skyrama there are misc items; if you collect enough you trade them for certain things, be it a special plane, upgrade, or decoration. Normal cargo is collected from cargo planes. In the hamburger shop there are a couple of recipes: the first one requires flour, the second one steak and flour etc. After passenger planes finish servicing, while collecting cash, the hamburger end-product is consumed in exchange for cash. There can be other types but I don't remember. ### stage 2 : contracts and upgrades ## contracts ## - divided into trigger, repeating, major event, minor event, level, and custom contracts - act as missions - trigger missions have certain triggers (TBD) - repeating : long-lasting missions - major event : like Christmas - minor event : 2x fuel rate or 2x cash income from planes; can be triggered by admins server-wide - level : push players toward progression - custom : custom - can be set as an unlock condition, like unlocking the large class or going to the void ## upgrades ## - certain paths to make each building and plane more efficient (more entities can be added). Each has 3 paths (ie. faster flight, cheaper flight, and more rewarding flight) with costs scaling either exponentially or linearly, then requiring materials or milestones (fly 100 times etc.)