mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-26 06:29:23 +01:00
## About The Pull Request **The majority of the work was done by Ozzo in #1471.** GAS are snake bugs hailing from Baystation 12. - They hate the heat, but are durable against low-pressure environments and the cold. - They cannot wear suits and most clothes, but have built in armor (it's in their name). - It is harder to grab GAS. - They are taller than the average spaceman. https://github.com/user-attachments/assets/f9ac1078-0d41-4a26-850f-26a2cd7bbf01 They currently have no lore or species description, but plans are in the works for both to be made. ## Why It's Good For The Game It's a new species that was well-recieved when it was tested the first time around, before being lost due to a lack of work on it. I am here to continue work on it and add new features to it if they are requested by the person that wanted them. ## Proof Of Testing It compiled and ran, hence me being able to take the video. There were no runtimes. I attached an image of a stylish GAS as further proof of testing. <details> <summary>Screenshots/Videos</summary> <img width="137" height="111" alt="image" src="https://github.com/user-attachments/assets/4b2ddd78-9312-4f0e-bbac-37bd51290490" /> </details> ## Changelog 🆑 add: Added a new species: Giant Armored Serpentids (GAS)! /🆑
172 lines
6.0 KiB
Plaintext
172 lines
6.0 KiB
Plaintext
//We start from 30 to not interfere with TG species defines, should they add more
|
|
/// We're using all three mutcolor features for our skin coloration
|
|
#define MUTCOLOR_MATRIXED 30
|
|
#define MUTCOLORS2 31
|
|
#define MUTCOLORS3 32
|
|
// Defines for whether an accessory should have one or three colors to choose for
|
|
#define USE_ONE_COLOR 31
|
|
#define USE_MATRIXED_COLORS 32
|
|
|
|
//Defines for processing reagents, for synths, IPC's, Protean's and Vox
|
|
#define PROCESS_ORGANIC 1 //Only processes reagents with "ORGANIC" or "ORGANIC | SYNTHETIC" or "ORGANIC | PROTEAN" or "ORGANIC | SYNTHETIC | PROTEAN"
|
|
#define PROCESS_SYNTHETIC 2 //Only processes reagents with "SYNTHETIC" or "ORGANIC | SYNTHETIC" or "SYNTHETIC | PROTEAN" or "ORGANIC | SYNTHETIC | PROTEAN"
|
|
#define PROCESS_PROTEAN 4 //Only processes reagents with "PROTEAN" or "ORGANIC | PROTEAN" or "ORGANIC | SYNTHETIC | PROTEAN"
|
|
|
|
#define REAGENT_ORGANIC 1
|
|
#define REAGENT_SYNTHETIC 2
|
|
#define REAGENT_PROTEAN 4
|
|
|
|
//Some defines for sprite accessories
|
|
// Which color source we're using when the accessory is added
|
|
#define DEFAULT_PRIMARY 1
|
|
#define DEFAULT_SECONDARY 2
|
|
#define DEFAULT_TERTIARY 3
|
|
#define DEFAULT_MATRIXED 4 //uses all three colors for a matrix
|
|
#define DEFAULT_SKIN_OR_PRIMARY 5 //Uses skin tone color if the character uses one, otherwise primary
|
|
|
|
// Defines for extra bits of accessories
|
|
#define COLOR_SRC_PRIMARY 1
|
|
#define COLOR_SRC_SECONDARY 2
|
|
#define COLOR_SRC_TERTIARY 3
|
|
#define COLOR_SRC_MATRIXED 4
|
|
|
|
// Defines for mutant bodyparts indexes
|
|
#define MUTANT_INDEX_NAME "name"
|
|
#define MUTANT_INDEX_COLOR_LIST "color"
|
|
#define MUTANT_INDEX_EMISSIVE_LIST "emissive"
|
|
|
|
// Defines for default mutant bodyparts indexes
|
|
#define MUTANTPART_NAME 1
|
|
#define MUTANTPART_CAN_RANDOMIZE 2
|
|
|
|
// Defines for markings indexes
|
|
#define MARKING_INDEX_COLOR 1
|
|
#define MARKING_INDEX_EMISSIVE 2
|
|
|
|
//The color list that is passed to color matrixed things when a person is husked
|
|
#define HUSK_COLOR_LIST list(list(0.64, 0.64, 0.64, 0), list(0.64, 0.64, 0.64, 0), list(0.64, 0.64, 0.64, 0), list(0, 0, 0, 1))
|
|
|
|
/// Organ slot external
|
|
#define ORGAN_SLOT_EXTERNAL_CAP "cap"
|
|
#define ORGAN_SLOT_EXTERNAL_FLUFF "fluff"
|
|
#define ORGAN_SLOT_EXTERNAL_HEAD_ACCESSORY "head_accessory"
|
|
#define ORGAN_SLOT_EXTERNAL_MOTH_MARKINGS "moth_markings"
|
|
#define ORGAN_SLOT_EXTERNAL_NECK_ACCESSORY "neck_accessory"
|
|
#define ORGAN_SLOT_EXTERNAL_SKRELL_HAIR "skrell_hair"
|
|
#define ORGAN_SLOT_EXTERNAL_SYNTH_ANTENNA "synth_antenna"
|
|
#define ORGAN_SLOT_EXTERNAL_SYNTH_SCREEN "synth_screen"
|
|
#define ORGAN_SLOT_EXTERNAL_TAUR "taur"
|
|
#define ORGAN_SLOT_EXTERNAL_XENODORSAL "xenodorsal"
|
|
#define ORGAN_SLOT_EXTERNAL_XENOHEAD "xenohead"
|
|
#define ORGAN_SLOT_BORER "borer"
|
|
|
|
//Defines for an accessory to be randomed
|
|
#define ACC_RANDOM "random"
|
|
|
|
#define MAXIMUM_MARKINGS_PER_LIMB 3
|
|
|
|
#define BODY_SIZE_NORMAL 1.00
|
|
#define BODY_SIZE_MAX 1.5
|
|
#define BODY_SIZE_MIN 0.8
|
|
|
|
//In inches
|
|
#define PENIS_MIN_GIRTH PENIS_MIN_LENGTH
|
|
#define PENIS_MAX_GIRTH 40
|
|
#define PENIS_DEFAULT_GIRTH 5 // a lil big but not by much
|
|
#define PENIS_MIN_LENGTH 1
|
|
#define PENIS_MAX_LENGTH 72
|
|
#define PENIS_DEFAULT_LENGTH 6 //still a lil long but not insane
|
|
|
|
#define TESTICLES_MIN_SIZE 0
|
|
#define TESTICLES_MAX_SIZE 8
|
|
|
|
#define SHEATH_NONE "None"
|
|
#define SHEATH_NORMAL "Sheath"
|
|
#define SHEATH_SLIT "Slit"
|
|
#define SHEATH_MODES list(SHEATH_NONE, SHEATH_NORMAL, SHEATH_SLIT)
|
|
|
|
#define MANDATORY_FEATURE_LIST list(\
|
|
"mcolor" = "#FFFFBB",\
|
|
"mcolor2" = "#FFFFBB",\
|
|
"mcolor3" = "#FFFFBB",\
|
|
"ethcolor" = "#FFCCCC",\
|
|
"skin_color" = "#FFEEDD",\
|
|
"flavor_text" = "",\
|
|
"breasts_size" = 1,\
|
|
"breasts_lactation" = FALSE,\
|
|
"penis_size" = 13,\
|
|
"penis_girth" = 9,\
|
|
"penis_taur_mode" = TRUE,\
|
|
"penis_sheath" = SHEATH_NONE,\
|
|
"balls_size" = 1,\
|
|
"body_size" = BODY_SIZE_NORMAL,\
|
|
"custom_species" = "",\
|
|
"penis_uses_skintones" = TRUE,\
|
|
"penis_uses_skincolor" = TRUE,\
|
|
"testicles_uses_skintones" = TRUE,\
|
|
"testicles_uses_skincolor" = TRUE,\
|
|
"vagina_uses_skintones" = TRUE,\
|
|
"vagina_uses_skincolor" = TRUE,\
|
|
"breasts_uses_skintones" = TRUE,\
|
|
"breasts_uses_skincolor" = TRUE,\
|
|
)
|
|
|
|
#define AROUSAL_CANT 0
|
|
#define AROUSAL_NONE 1
|
|
#define AROUSAL_PARTIAL 2
|
|
#define AROUSAL_FULL 3
|
|
|
|
//Species IDs. If you wanna look at tg's species ID defines, go look in the *other* DNA.dm file
|
|
#define SPECIES_AKULA "akula"
|
|
#define SPECIES_AQUATIC "aquatic"
|
|
#define SPECIES_DWARF "dwarf"
|
|
#define SPECIES_HUMANOID "humanoid"
|
|
#define SPECIES_INSECT "insect"
|
|
#define SPECIES_MAMMAL "mammal"
|
|
#define SPECIES_PODPERSON_WEAK "podweak"
|
|
#define SPECIES_SYNTH "synth"
|
|
#define SPECIES_SLIMESTART "slimeperson" //There's already SPECIES_SLIMEPERSON in tg
|
|
#define SPECIES_SKRELL "skrell"
|
|
#define SPECIES_TAJARAN "tajaran"
|
|
#define SPECIES_UNATHI "unathi"
|
|
#define SPECIES_VOX "vox"
|
|
#define SPECIES_VOX_PRIMALIS "vox_primalis"
|
|
#define SPECIES_VULP "vulpkanin"
|
|
#define SPECIES_XENO "xeno"
|
|
#define SPECIES_GHOUL "ghoul"
|
|
#define SPECIES_TESHARI "teshari"
|
|
#define SPECIES_HEMOPHAGE "hemophage"
|
|
#define SPECIES_FELINE_PRIMITIVE "primitive_felinid"
|
|
#define SPECIES_PROTEAN "protean"
|
|
#define SPECIES_GAS "serpentid"
|
|
|
|
#define SPECIES_MUTANT "mutant"
|
|
#define SPECIES_MUTANT_INFECTIOUS "infectious_mutant"
|
|
#define SPECIES_MUTANT_SLOW "slow_mutant"
|
|
#define SPECIES_MUTANT_FAST "fast_mutant"
|
|
|
|
// Leaving this here because it's used for bodyparts, like SPECIES_X are, but since taurs aren't a species... Named it LIMBS instead.
|
|
#define LIMBS_TAUR "taur"
|
|
|
|
#define DNA_FEATURE_COLOR_BLOCKS_PER_FEATURE 3
|
|
#define DNA_FEATURE_BLOCKS_TOTAL_SIZE_PER_FEATURE (DNA_BLOCK_SIZE + DNA_BLOCK_SIZE_COLOR * DNA_FEATURE_COLOR_BLOCKS_PER_FEATURE)
|
|
|
|
#define FEATURE_MUTANT_COLOR_TWO "mcolor2"
|
|
#define FEATURE_MUTANT_COLOR_THREE "mcolor3"
|
|
#define FEATURE_SKIN_COLOR "skin_color"
|
|
#define FEATURE_TAIL_GENERIC "tail"
|
|
#define FEATURE_FLUFF "fluff"
|
|
#define FEATURE_PENIS "penis"
|
|
#define FEATURE_TESTICLES "testicles"
|
|
#define FEATURE_VAGINA "vagina"
|
|
#define FEATURE_WOMB "womb"
|
|
#define FEATURE_ANUS "anus"
|
|
#define FEATURE_BREASTS "breasts"
|
|
#define FEATURE_SKRELL_HAIR "skrell_hair"
|
|
#define FEATURE_XENODORSAL "xenodorsal"
|
|
#define FEATURE_XENOHEAD "xenohead"
|
|
#define FEATURE_TAUR "taur"
|
|
|
|
#define MUTATION_SOURCE_SPECIES "species"
|
|
#define MUTATION_SOURCE_QUIRK "quirk"
|