-
-
Notifications
You must be signed in to change notification settings - Fork 444
/
Copy pathnanite_designs.dm
477 lines (406 loc) · 18.6 KB
/
nanite_designs.dm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
/datum/design/nanites
name = "None"
desc = "Warn a coder if you see this."
id = "default_nanites"
build_type = NANITE_COMPILER
construction_time = 50
category = list()
research_icon = 'icons/obj/device.dmi'
research_icon_state = "nanite_program"
var/program_type = /datum/nanite_program
////////////////////UTILITY NANITES//////////////////////////////////////
/datum/design/nanites/metabolic_synthesis
name = "Metabolic Synthesis"
desc = "The nanites use the metabolic cycle of the host to speed up their replication rate, using their extra nutrition as fuel."
id = "metabolic_nanites"
program_type = /datum/nanite_program/metabolic_synthesis
category = list("Utility Nanites")
/datum/design/nanites/viral
name = "Viral Replica"
desc = "The nanites constantly send encrypted signals attempting to forcefully copy their own programming into other nanite clusters."
id = "viral_nanites"
program_type = /datum/nanite_program/viral
category = list("Utility Nanites")
/datum/design/nanites/research
name = "Distributed Computing"
desc = "The nanites aid the research servers by performing a portion of its calculations, increasing research point generation."
id = "research_nanites"
program_type = /datum/nanite_program/research
category = list("Utility Nanites")
/datum/design/nanites/researchplus
name = "Neural Network"
desc = "The nanites link the host's brains together forming a neural research network, that becomes more efficient with the amount of total hosts. Can be overloaded to increase research output."
id = "researchplus_nanites"
program_type = /datum/nanite_program/researchplus
category = list("Utility Nanites")
/datum/design/nanites/monitoring
name = "Monitoring"
desc = "The nanites monitor the host's vitals and location, sending them to the suit sensor network."
id = "monitoring_nanites"
program_type = /datum/nanite_program/monitoring
category = list("Utility Nanites")
/datum/design/nanites/self_scan
name = "Host Scan"
desc = "The nanites display a detailed readout of a body scan to the host."
id = "selfscan_nanites"
program_type = /datum/nanite_program/triggered/self_scan
category = list("Utility Nanites")
/datum/design/nanites/dermal_button
name = "Dermal Button"
desc = "Displays a button on the host's skin, which can be used to send a signal to the nanites."
id = "dermal_button_nanites"
program_type = /datum/nanite_program/dermal_button
category = list("Utility Nanites")
/datum/design/nanites/stealth
name = "Stealth"
desc = "The nanites hide their activity and programming from superficial scans."
id = "stealth_nanites"
program_type = /datum/nanite_program/stealth
category = list("Utility Nanites")
/datum/design/nanites/access
name = "Subdermal ID"
desc = "The nanites store the host's ID access rights in a subdermal magnetic strip. Updates when triggered, copying the host's current access."
id = "access_nanites"
program_type = /datum/nanite_program/triggered/access
category = list("Utility Nanites")
/datum/design/nanites/relay
name = "Relay"
desc = "The nanites receive and relay long-range nanite signals."
id = "relay_nanites"
program_type = /datum/nanite_program/relay
category = list("Utility Nanites")
/datum/design/nanites/repeater
name = "Signal Repeater"
desc = "When triggered, sends another signal to the nanites, optionally with a delay."
id = "repeater_nanites"
program_type = /datum/nanite_program/sensor/repeat
category = list("Utility Nanites")
/datum/design/nanites/relay_repeater
name = "Relay Signal Repeater"
desc = "When triggered, sends another signal to a relay channel, optionally with a delay."
id = "relay_repeater_nanites"
program_type = /datum/nanite_program/sensor/relay_repeat
category = list("Utility Nanites")
/datum/design/nanites/emp
name = "Electromagnetic Resonance"
desc = "The nanites cause an electromagnetic pulse around the host when triggered. Will corrupt other nanite programs!"
id = "emp_nanites"
program_type = /datum/nanite_program/triggered/emp
category = list("Utility Nanites")
/datum/design/nanites/spreading
name = "Infective Exo-Locomotion"
desc = "The nanites gain the ability to survive for brief periods outside of the human body, as well as the ability to start new colonies without an integration process; \
resulting in an extremely infective strain of nanites."
id = "spreading_nanites"
program_type = /datum/nanite_program/spreading
category = list("Utility Nanites")
/datum/design/nanites/mitosis
name = "Mitosis"
desc = "The nanites gain the ability to self-replicate, using bluespace to power the process, instead of drawing from a template. This rapidly speeds up the replication rate,\
but it causes occasional software errors due to faulty copies. Not compatible with cloud sync."
id = "mitosis_nanites"
program_type = /datum/nanite_program/mitosis
category = list("Utility Nanites")
////////////////////MEDICAL NANITES//////////////////////////////////////
/datum/design/nanites/regenerative
name = "Accelerated Regeneration"
desc = "The nanites boost the host's natural regeneration, increasing their healing speed."
id = "regenerative_nanites"
program_type = /datum/nanite_program/regenerative
category = list("Medical Nanites")
/datum/design/nanites/regenerative_advanced
name = "Bio-Reconstruction"
desc = "The nanites manually repair and replace organic cells, acting much faster than normal regeneration. \
However, this program cannot detect the difference between harmed and unharmed, causing it to consume nanites even if it has no effect."
id = "regenerative_plus_nanites"
program_type = /datum/nanite_program/regenerative_advanced
category = list("Medical Nanites")
/datum/design/nanites/temperature
name = "Temperature Adjustment"
desc = "The nanites adjust the host's internal temperature to an ideal level."
id = "temperature_nanites"
program_type = /datum/nanite_program/temperature
category = list("Medical Nanites")
/datum/design/nanites/purging
name = "Blood Purification"
desc = "The nanites purge toxins and chemicals from the host's bloodstream."
id = "purging_nanites"
program_type = /datum/nanite_program/purging
category = list("Medical Nanites")
/datum/design/nanites/purging_advanced
name = "Selective Blood Purification"
desc = "The nanites purge toxins and dangerous chemicals from the host's bloodstream, while ignoring beneficial chemicals. \
The added processing power required to analyze the chemicals severely increases the nanite consumption rate."
id = "purging_plus_nanites"
program_type = /datum/nanite_program/purging_advanced
category = list("Medical Nanites")
/datum/design/nanites/brain_heal
name = "Neural Regeneration"
desc = "The nanites fix neural connections in the host's brain, reversing brain damage and minor traumas."
id = "brainheal_nanites"
program_type = /datum/nanite_program/brain_heal
category = list("Medical Nanites")
/datum/design/nanites/brain_heal_advanced
name = "Neural Reimaging"
desc = "The nanites are able to backup and restore the host's neural connections, potentially replacing entire chunks of missing or damaged brain matter."
id = "brainheal_plus_nanites"
program_type = /datum/nanite_program/brain_heal_advanced
category = list("Medical Nanites")
/datum/design/nanites/blood_restoring
name = "Blood Regeneration"
desc = "The nanites stimulate and boost blood cell production in the host."
id = "bloodheal_nanites"
program_type = /datum/nanite_program/blood_restoring
category = list("Medical Nanites")
/datum/design/nanites/repairing
name = "Mechanical Repair"
desc = "The nanites fix damage in the host's mechanical limbs."
id = "repairing_nanites"
program_type = /datum/nanite_program/repairing
category = list("Medical Nanites")
/datum/design/nanites/defib
name = "Defibrillation"
desc = "The nanites, when triggered, send a defibrillating shock to the host's heart."
id = "defib_nanites"
program_type = /datum/nanite_program/triggered/defib
category = list("Medical Nanites")
////////////////////AUGMENTATION NANITES//////////////////////////////////////
/datum/design/nanites/nervous
name = "Nerve Support"
desc = "The nanites act as a secondary nervous system, reducing the amount of time the host is stunned."
id = "nervous_nanites"
program_type = /datum/nanite_program/nervous
category = list("Augmentation Nanites")
/datum/design/nanites/hardening
name = "Dermal Hardening"
desc = "The nanites form a mesh under the host's skin, protecting them from melee and bullet impacts."
id = "hardening_nanites"
program_type = /datum/nanite_program/hardening
category = list("Augmentation Nanites")
/datum/design/nanites/refractive
name = "Dermal Refractive Surface"
desc = "The nanites form a membrane above the host's skin, reducing the effect of laser and energy impacts."
id = "refractive_nanites"
program_type = /datum/nanite_program/refractive
category = list("Augmentation Nanites")
/datum/design/nanites/coagulating
name = "Rapid Coagulation"
desc = "The nanites induce rapid coagulation when the host is wounded, dramatically reducing bleeding rate."
id = "coagulating_nanites"
program_type = /datum/nanite_program/coagulating
category = list("Augmentation Nanites")
/datum/design/nanites/conductive
name = "Electric Conduction"
desc = "The nanites act as a grounding rod for electric shocks, protecting the host. Shocks can still damage the nanites themselves."
id = "conductive_nanites"
program_type = /datum/nanite_program/conductive
category = list("Augmentation Nanites")
/datum/design/nanites/mindshield
name = "Mental Barrier"
desc = "The nanites form a protective membrane around the host's brain, shielding them from abnormal influences while they're active."
id = "mindshield_nanites"
program_type = /datum/nanite_program/mindshield
category = list("Augmentation Nanites")
////////////////////DEFECTIVE NANITES//////////////////////////////////////
/datum/design/nanites/glitch
name = "Glitch"
desc = "A heavy software corruption that causes nanites to gradually break down."
id = "glitch_nanites"
program_type = /datum/nanite_program/glitch
category = list("Defective Nanites")
/datum/design/nanites/necrotic
name = "Necrosis"
desc = "The nanites attack internal tissues indiscriminately, causing widespread damage."
id = "necrotic_nanites"
program_type = /datum/nanite_program/necrotic
category = list("Defective Nanites")
/datum/design/nanites/toxic
name = "Toxin Buildup"
desc = "The nanites cause a slow but constant toxin buildup inside the host."
id = "toxic_nanites"
program_type = /datum/nanite_program/toxic
category = list("Defective Nanites")
/datum/design/nanites/suffocating
name = "Hypoxemia"
desc = "The nanites prevent the host's blood from absorbing oxygen efficiently."
id = "suffocating_nanites"
program_type = /datum/nanite_program/suffocating
category = list("Defective Nanites")
/datum/design/nanites/brain_misfire
name = "Brain Misfire"
desc = "The nanites interfere with neural pathways, causing minor psychological disturbances."
id = "brainmisfire_nanites"
program_type = /datum/nanite_program/brain_misfire
category = list("Defective Nanites")
/datum/design/nanites/skin_decay
name = "Dermalysis"
desc = "The nanites attack skin cells, causing irritation, rashes, and minor damage."
id = "skindecay_nanites"
program_type = /datum/nanite_program/skin_decay
category = list("Defective Nanites")
/datum/design/nanites/nerve_decay
name = "Nerve Decay"
desc = "The nanites attack the host's nerves, causing lack of coordination and short bursts of paralysis."
id = "nervedecay_nanites"
program_type = /datum/nanite_program/nerve_decay
category = list("Defective Nanites")
/datum/design/nanites/brain_decay
name = "Brain-Eating Nanites"
desc = "Damages brain cells, gradually decreasing the host's cognitive functions."
id = "braindecay_nanites"
program_type = /datum/nanite_program/brain_decay
category = list("Defective Nanites")
////////////////////WEAPONIZED NANITES/////////////////////////////////////
/datum/design/nanites/flesh_eating
name = "Cellular Breakdown"
desc = "The nanites destroy cellular structures in the host's body, causing brute damage."
id = "flesheating_nanites"
program_type = /datum/nanite_program/flesh_eating
category = list("Weaponized Nanites")
/datum/design/nanites/poison
name = "Poisoning"
desc = "The nanites deliver poisonous chemicals to the host's internal organs, causing toxin damage and vomiting."
id = "poison_nanites"
program_type = /datum/nanite_program/poison
category = list("Weaponized Nanites")
/datum/design/nanites/memory_leak
name = "Memory Leak"
desc = "This program invades the memory space used by other programs, causing frequent corruptions and errors."
id = "memleak_nanites"
program_type = /datum/nanite_program/memory_leak
category = list("Weaponized Nanites")
/datum/design/nanites/aggressive_replication
name = "Aggressive Replication"
desc = "Nanites will consume organic matter to improve their replication rate, damaging the host."
id = "aggressive_nanites"
program_type = /datum/nanite_program/aggressive_replication
category = list("Weaponized Nanites")
/datum/design/nanites/meltdown
name = "Meltdown"
desc = "Causes an internal meltdown inside the nanites, causing internal burns inside the host as well as rapidly destroying the nanite population.\
Sets the nanites' safety threshold to 0 when activated."
id = "meltdown_nanites"
program_type = /datum/nanite_program/meltdown
category = list("Weaponized Nanites")
/datum/design/nanites/cryo
name = "Cryogenic Treatment"
desc = "The nanites rapidly sink heat through the host's skin, lowering their temperature."
id = "cryo_nanites"
program_type = /datum/nanite_program/cryo
category = list("Weaponized Nanites")
/datum/design/nanites/pyro
name = "Sub-Dermal Combustion"
desc = "The nanites cause buildup of flammable fluids under the host's skin, then ignites them."
id = "pyro_nanites"
program_type = /datum/nanite_program/pyro
category = list("Weaponized Nanites")
/datum/design/nanites/heart_stop
name = "Heart-Stopper"
desc = "Stops the host's heart when triggered; restarts it if triggered again."
id = "heartstop_nanites"
program_type = /datum/nanite_program/triggered/heart_stop
category = list("Weaponized Nanites")
/datum/design/nanites/explosive
name = "Chain Detonation"
desc = "Blows up all the nanites inside the host in a chain reaction when triggered."
id = "explosive_nanites"
program_type = /datum/nanite_program/triggered/explosive
category = list("Weaponized Nanites")
////////////////////SUPPRESSION NANITES//////////////////////////////////////
/datum/design/nanites/shock
name = "Electric Shock"
desc = "The nanites shock the host when triggered. Destroys a large amount of nanites!"
id = "shock_nanites"
program_type = /datum/nanite_program/triggered/shocking
category = list("Suppression Nanites")
/datum/design/nanites/stun
name = "Neural Shock"
desc = "The nanites pulse the host's nerves when triggered, incapacitating them for a short period."
id = "stun_nanites"
program_type = /datum/nanite_program/triggered/stun
category = list("Suppression Nanites")
/datum/design/nanites/sleepy
name = "Sleep Induction"
desc = "The nanites cause rapid narcolepsy when triggered."
id = "sleep_nanites"
program_type = /datum/nanite_program/triggered/sleepy
category = list("Suppression Nanites")
/datum/design/nanites/pacifying
name = "Pacification"
desc = "The nanites suppress the aggression center of the brain, preventing the host from causing direct harm to others."
id = "pacifying_nanites"
program_type = /datum/nanite_program/pacifying
category = list("Suppression Nanites")
/datum/design/nanites/blinding
name = "Blindness"
desc = "The nanites suppress the host's ocular nerves, blinding them while they're active."
id = "blinding_nanites"
program_type = /datum/nanite_program/blinding
category = list("Suppression Nanites")
/datum/design/nanites/mute
name = "Mute"
desc = "The nanites suppress the host's speech, making them mute while they're active."
id = "mute_nanites"
program_type = /datum/nanite_program/mute
category = list("Suppression Nanites")
/datum/design/nanites/voice
name = "Skull Echo"
desc = "The nanites echo a synthesized message inside the host's skull."
id = "voice_nanites"
program_type = /datum/nanite_program/triggered/comm/voice
category = list("Suppression Nanites")
/datum/design/nanites/speech
name = "Forced Speech"
desc = "The nanites force the host to say a pre-programmed sentence when triggered."
id = "speech_nanites"
program_type = /datum/nanite_program/triggered/comm/speech
category = list("Suppression Nanites")
/datum/design/nanites/hallucination
name = "Hallucination"
desc = "The nanites make the host see and hear things that aren't real."
id = "hallucination_nanites"
program_type = /datum/nanite_program/triggered/comm/hallucination
category = list("Suppression Nanites")
////////////////////SENSOR NANITES//////////////////////////////////////
/datum/design/nanites/sensor_health
name = "Health Sensor"
desc = "The nanites receive a signal when the host's health is above/below a certain percentage."
id = "sensor_health_nanites"
program_type = /datum/nanite_program/sensor/health
category = list("Sensor Nanites")
/datum/design/nanites/sensor_damage
name = "Damage Sensor"
desc = "The nanites receive a signal when a host's specific damage type is above/below a target value."
id = "sensor_damage_nanites"
program_type = /datum/nanite_program/sensor/damage
category = list("Sensor Nanites")
/datum/design/nanites/sensor_crit
name = "Critical Health Sensor"
desc = "The nanites receive a signal when the host first reaches critical health."
id = "sensor_crit_nanites"
program_type = /datum/nanite_program/sensor/crit
category = list("Sensor Nanites")
/datum/design/nanites/sensor_death
name = "Death Sensor"
desc = "The nanites receive a signal when they detect the host is dead."
id = "sensor_death_nanites"
program_type = /datum/nanite_program/sensor/death
category = list("Sensor Nanites")
/datum/design/nanites/sensor_voice
name = "Voice Sensor"
desc = "Sends a signal when the nanites hear a determined word or sentence."
id = "sensor_voice_nanites"
program_type = /datum/nanite_program/sensor/voice
category = list("Sensor Nanites")
/datum/design/nanites/sensor__nanite_volume
name = "Nanite Volume Sensor"
desc = "The nanites receive a signal when the nanite supply is above/below a certain percentage."
id = "sensor_nanite_volume"
program_type = /datum/nanite_program/sensor/nanite_volume
category = list("Sensor Nanites")
/datum/design/nanites/sensor_race
name = "Race Sensor"
desc = "When triggered, the nanites scan the host to determine their race and output a signal depending on the conditions set in the settings."
id = "sensor_race_nanites"
program_type = /datum/nanite_program/sensor/race
category = list("Sensor Nanites")