|
@@ -0,0 +1,151 @@
|
|
1
|
+Systems: routine that needs to be regularly called
|
|
2
|
+Collections: lists of components that go together to make an entity
|
|
3
|
+Components: data pieces
|
|
4
|
+Entities: objects (label for a specific group of components)
|
|
5
|
+
|
|
6
|
+Systems
|
|
7
|
+- orbit: update positions? no because we aren't storing positions
|
|
8
|
+ these only need to be checked for individual calculations or display
|
|
9
|
+- render: what are we focused on right now, data can be cached here
|
|
10
|
+- 'structure view': looks at factory, mine, etc; multiple components
|
|
11
|
+
|
|
12
|
+Components
|
|
13
|
+- orbit: parent_id, radius, offset
|
|
14
|
+ - L4/L5 will just be their own entities with orbit data matching
|
|
15
|
+- position: system, x, y (ships not in orbit)
|
|
16
|
+- body: mass, radius
|
|
17
|
+- factory: capacity, pollution?
|
|
18
|
+- mine: capacity, pollution?
|
|
19
|
+-
|
|
20
|
+
|
|
21
|
+body = {
|
|
22
|
+ hydrosphere: {} -- pollutants, volume % (relative to planet surface)
|
|
23
|
+ atmosphere: {} -- volume, pressure, contents
|
|
24
|
+ -- manufactoring, refining, etc -> introduces pollutants into hydrosphere and atmosphere
|
|
25
|
+ populations: {
|
|
26
|
+ {
|
|
27
|
+ resources: {
|
|
28
|
+ fuel: #
|
|
29
|
+ reactives: # -- jump drives, engines, research, life support
|
|
30
|
+ radioactives: # -- fuel, heavy armor, kinetic weapons, sensors
|
|
31
|
+ alloys: # -- structure
|
|
32
|
+ crystals: # -- shields, stealth, ecm/eccm, energy weapons
|
|
33
|
+ silicates: # -- electronics, capacitors, energy weapons
|
|
34
|
+ -- halogens: #
|
|
35
|
+ }
|
|
36
|
+ structures: {
|
|
37
|
+ 'fuel refinery': #
|
|
38
|
+ -- 'type-strength OR type-value': #
|
|
39
|
+ -- {type: 'name', value: #, cost: #, etc} ? -- actual list
|
|
40
|
+ }
|
|
41
|
+ }
|
|
42
|
+ }
|
|
43
|
+ minerals: ?
|
|
44
|
+}
|
|
45
|
+
|
|
46
|
+modules = {
|
|
47
|
+ factory: {
|
|
48
|
+ surface: true
|
|
49
|
+ capacity: 10 -- research ++
|
|
50
|
+ pollution: {} -- research --
|
|
51
|
+ cost: { -- research --
|
|
52
|
+ alloys: 20
|
|
53
|
+ silicates: 2
|
|
54
|
+ }
|
|
55
|
+ }
|
|
56
|
+ mine: {
|
|
57
|
+ surface: true
|
|
58
|
+ capacity: 10 -- research ++
|
|
59
|
+ pollution: {} -- research --
|
|
60
|
+ cost: { -- research ==
|
|
61
|
+ alloys: 40
|
|
62
|
+ silicates: 6
|
|
63
|
+ reactives: 2
|
|
64
|
+ }
|
|
65
|
+ }
|
|
66
|
+ 'fuel refinery': {
|
|
67
|
+ surface: true
|
|
68
|
+ -- orbit: true -- research
|
|
69
|
+ capacity: 100 -- research ++
|
|
70
|
+ pollution: {} -- research --
|
|
71
|
+ cost: { -- research --
|
|
72
|
+ alloys: 120
|
|
73
|
+ reactives: 20
|
|
74
|
+ crystals: 10
|
|
75
|
+ }
|
|
76
|
+ }
|
|
77
|
+ 'mass driver': {
|
|
78
|
+ surface: true
|
|
79
|
+ capacity: 2000 -- research ++
|
|
80
|
+ pollution: {} -- research --
|
|
81
|
+ cost: { -- research --
|
|
82
|
+ alloys: 250
|
|
83
|
+ reactives: 120
|
|
84
|
+ radioactives: 20
|
|
85
|
+ silicates: 10
|
|
86
|
+ }
|
|
87
|
+ }
|
|
88
|
+ shipyard: {
|
|
89
|
+ orbit: true
|
|
90
|
+ capacity: 1000
|
|
91
|
+ cost: { -- research --
|
|
92
|
+ alloys: 2200
|
|
93
|
+ reactives: 180
|
|
94
|
+ radioactives: 80
|
|
95
|
+ silicates: 200
|
|
96
|
+ }
|
|
97
|
+ }
|
|
98
|
+
|
|
99
|
+ -- research tech: shuttle range
|
|
100
|
+ -- - salvage facility
|
|
101
|
+ -- - orbital hab
|
|
102
|
+ -- - hanger
|
|
103
|
+ -- - maintenance facility
|
|
104
|
+ -- - gas harvester
|
|
105
|
+ -- - geo
|
|
106
|
+ -- - terraforming
|
|
107
|
+ -- - geo survey sensors
|
|
108
|
+ -- - infrastructure
|
|
109
|
+ -- - sensors
|
|
110
|
+ -- - grav survey sensors
|
|
111
|
+ -- - em sensors
|
|
112
|
+ -- - thermal sensors
|
|
113
|
+ -- - active sensors vs passive sensors
|
|
114
|
+ -- - all sensors can provide tracking and targeting
|
|
115
|
+ -- - bridge
|
|
116
|
+ -- - research
|
|
117
|
+ -- - chemical/physics/genetic/biology/xenology lab
|
|
118
|
+ -- - university
|
|
119
|
+ -- - ship
|
|
120
|
+ -- - design considerations
|
|
121
|
+ -- - deployment time adjusts how much mass is needed per crew
|
|
122
|
+ -- - components designate required crew
|
|
123
|
+ -- - armor area / structural hull requirements
|
|
124
|
+ -- - speed, power use/requirement
|
|
125
|
+ -- - build time, load time, mineral requirement
|
|
126
|
+ -- - signature (th by engines, em by shielding/equipment)
|
|
127
|
+ -- - maintenance life, estimated failure rate
|
|
128
|
+ -- - damage allocation
|
|
129
|
+ -- - em damage, shock damage
|
|
130
|
+ -- - idea: based on volume, min distance before ships collide?
|
|
131
|
+ -- - crew quarters
|
|
132
|
+ -- - engineering section
|
|
133
|
+ -- - main engineering
|
|
134
|
+ -- - engines
|
|
135
|
+ -- - jump drive
|
|
136
|
+ -- - combat drop pods
|
|
137
|
+ -- - tractor
|
|
138
|
+ -- - cargo
|
|
139
|
+ -- - fuel storage
|
|
140
|
+ -- - supplies bay
|
|
141
|
+ -- - shuttle bay (actually just hangers)
|
|
142
|
+ -- - cargo hold
|
|
143
|
+ -- - cryogenic transport
|
|
144
|
+ -- - power plants
|
|
145
|
+ -- - kinetic weapons
|
|
146
|
+ -- - launcher
|
|
147
|
+ -- - magazine
|
|
148
|
+ -- - defense
|
|
149
|
+ -- - armor
|
|
150
|
+ -- - damage control
|
|
151
|
+}
|