Pseudocode for data storage to save between gameplay runs so I can load or save data between runs.
Shared Data
Shared data is comprised of variables shared by temporary and permanent data.
Characters = [A,B,C,D,…]
A = [name, species, Atraits, Astats, icon, mesh]
Temporary Data
Temporary data is erased and rewritten each game restart
World:
World = [galA,galB,galC,galD]
galA = [name, locX, locY,[planetA1, planetA2, planetA3]
planetA1 = [name, locX, locY, size, type, density, (CharName if occupied)]
Character Stats:
OutWorld = charList - inWorld[]
InWorld = [A,B,C,D]
Astats = [locName(galaxy or planet), health, level, equipment[],relationship]
Player Stats:
Crew = [A, B]
Stats = [fuel, money, shield]
Ship = [model, fireType, fireLevel]
ResearchLevel = [X]
Events:
Log += Event.new()
Permanent Data
Permanent data may be modified during gameplay but is not initialized or erased at each game restart
Character Traits
Atraits = [class, mode, aggression]
Campaign Events
Log += Event.new()
Logical Data
Logical Data will never be changed and does not need to be written outside of scripts
Classes = [Pilot, Engineer, Scientist, Medic, Soldier]
Pilot = [firepower, armour]
Weapons = [gunA, gunB, gunC]
Armour = [shieldA, shieldB, shieldC]
gunA = [firepowerBonus]
shieldA = [armourBonus]