So here I go again.
Hardware: My game runs on a W65C02S at 8 Mhz, with about 39K of main memory, and generous RAM banks. Because.
Software: I'm writing in C using the cc65 cross assembler.
Starships.
I've been iterating over the ship data structure lately. I've moved from structured data, to very painfully bit-packed data.
Now I'm reconsidering a plain array of "ship components".
Header.
There's always invariant header data. Things that don't get "damaged" per se. The ship's name, its allegiance / owner, its type code, its volume, and its TL. Cost. Perhaps armor layers. Hull configuration (perhaps).
Components.
This is the array of "things" the ship has, typically with a single value representing a rating.
Battery components are different than the rest, each requiring an emplacement code and a weapon code. That's OK.
Note that I'm not going the High Guard route with weapons.
Hardware: My game runs on a W65C02S at 8 Mhz, with about 39K of main memory, and generous RAM banks. Because.
Software: I'm writing in C using the cc65 cross assembler.
Starships.
I've been iterating over the ship data structure lately. I've moved from structured data, to very painfully bit-packed data.
Now I'm reconsidering a plain array of "ship components".
- Locating a ship component is easy: an index is a trivial lookup mechanism.
- Tracking usage is easy: a parallel array to hold current state.
- Tracking damage is easy: a parallel array to hold damage.
Header.
There's always invariant header data. Things that don't get "damaged" per se. The ship's name, its allegiance / owner, its type code, its volume, and its TL. Cost. Perhaps armor layers. Hull configuration (perhaps).
Components.
This is the array of "things" the ship has, typically with a single value representing a rating.
Battery components are different than the rest, each requiring an emplacement code and a weapon code. That's OK.
Note that I'm not going the High Guard route with weapons.
- Maneuver
- Jump
- Bridge
- Computer
- Cargo hold %
- Fuel tankage %
- Passenger staterooms
- Low berths
- Space sensors
- World sensors
- Scoops
- Collector
- Stealth
- Nuke damper
- Meson screen
- Globe
- Battery 1
- Battery 2
- Battery 3
- Battery 4
- Battery 5
- Battery 6
- Battery 7
- Battery 8
Last edited: