Splat 
A type of supernatural being (like vampires, werewolves, ghouls, etc.) that players can be. Has traits and actions that are inherent to all members of the splat.
Also manages the supernatural powers of this splat that the owner has, but it's limited until future reworks improve powers.
Vars | |
| can_frenzy | Can frenzy and is given a verb to manually do it. |
|---|---|
| desc | Description of what the splat is and what it does |
| id | ID for trait sources and whatnot |
| incompatible_splats | Splats that someone with this splat cannot gain |
| name | Name of the splat |
| owner | Mob this splat belongs to |
| power_type | Base type of the powers that this splat has |
| powers | Powers unique to this splat possessed by the owner |
| splat_actions | Actions possessed by all members of this splat |
| splat_biotypes | Biotypes possessed by all members of this splat |
| splat_priority | The priority a splat has in being returned when checked for, and for overriding behavoirs if something contests |
| splat_traits | Traits possessed by all members of this splat |
| tooth_fingerprint | If examining the pulled tooth of the splat can gain some indication of what it is. |
Procs | |
| add_actions | Internal proc to add all of the splat's actions to the new owner on gain. |
| add_biotypes | Internal proc to add all of the splat's biotypes to the new owner on gain. |
| add_splat_traits | Internal proc to add all of the splat's traits to the new owner on gain. |
| assign | Assign this splat to a new owner. |
| check_roundstart_eligible | Checks if a splat is eligible to be picked at roundstart. |
| clear_powers | Internal proc to clean up all power instances owned by this splat. Called by unassign() on losing the splat. |
| create_pref_biotypes_perks | Adds adds any perks related to the splat's splat_biotypes flags. |
| create_pref_unique_perks | Used to add any splat specific perks to the perk list. |
| get_features | Returns a list of strings representing features this splat has. Used by the preferences UI to know what buttons to show. |
| get_power | Standardize this all when the power system is made universal, the procs have to be implemented on every subtype because powers are currently completely unrelated datums. |
| get_splat_description | Gets a short description for the specices. Should be relatively succinct. Used in the preference menu. |
| get_splat_lore | Gets the lore behind the type of species. Can be long. Used in the preference menu. |
| get_splats_perks | Generates a list of "perks" related to this splat (Postives, neutrals, and negatives) in the format of a list of lists. Used in the preference menu. |
| on_gain | Effects on gaining the splat. |
| on_lose | Effects on losing the splat normally. |
| on_lose_or_destroy | Effects on losing the splat if the owner isn't null. |
| prepare_human_for_preview | Given a human, will adjust it before taking a picture for the preferences UI. This should create a CONSISTENT result, so the icons don't randomly change. |
| remove_actions | Internal proc to remove all of the actions added by this splat on lose. Checks for and skips actions that also belong to another splat. |
| remove_biotypes | Internal proc to remove all of the biotypes added by this splat on lose. Checks for and skips biotypes added by the owner's species or other splats. |
| remove_splat_traits | Internal proc to remove all of the traits added by this splat on lose. |
| unassign | Remove this splat from its owner. |
Var Details
can_frenzy 
Can frenzy and is given a verb to manually do it.
desc 
Description of what the splat is and what it does
id 
ID for trait sources and whatnot
incompatible_splats 
Splats that someone with this splat cannot gain
name 
Name of the splat
owner 
Mob this splat belongs to
power_type 
Base type of the powers that this splat has
powers 
Powers unique to this splat possessed by the owner
splat_actions 
Actions possessed by all members of this splat
splat_biotypes 
Biotypes possessed by all members of this splat
splat_priority 
The priority a splat has in being returned when checked for, and for overriding behavoirs if something contests
Typically a two digit number plus a SPLAT_PRIO define to ensure its easy to shift around prios and nothing overlaps. e.g 50 + SPLAT_PRIO_SPLAT for a mid imporant fullsplat
splat_traits 
Traits possessed by all members of this splat
tooth_fingerprint 
If examining the pulled tooth of the splat can gain some indication of what it is.
Proc Details
add_actions
Internal proc to add all of the splat's actions to the new owner on gain.
add_biotypes
Internal proc to add all of the splat's biotypes to the new owner on gain.
add_splat_traits
Internal proc to add all of the splat's traits to the new owner on gain.
assign
Assign this splat to a new owner.
Fails if the new owner cannot be given the splat or a signal return cancels it. Proceeds to give the splat to the owner and add its traits, actions, and biotypes before applying on_gain() effects. Returns the splat on success.
Arguments:
- owner - Mob gaining the splat.
check_roundstart_eligible
Checks if a splat is eligible to be picked at roundstart.
Checks the config to see if this splat is allowed to be picked in the character setup menu. Used by [/proc/generate_selectable_splat_and_languages].
clear_powers
Internal proc to clean up all power instances owned by this splat. Called by unassign() on losing the splat.
create_pref_biotypes_perks
Adds adds any perks related to the splat's splat_biotypes flags.
Returns a list containing perks, or an empty list.
create_pref_unique_perks
Used to add any splat specific perks to the perk list.
Returns null by default. When overriding, return a list of perks.
get_features
Returns a list of strings representing features this splat has. Used by the preferences UI to know what buttons to show.
get_power
Standardize this all when the power system is made universal, the procs have to be implemented on every subtype because powers are currently completely unrelated datums.
get_splat_description
Gets a short description for the specices. Should be relatively succinct. Used in the preference menu.
Returns a string.
get_splat_lore
Gets the lore behind the type of species. Can be long. Used in the preference menu.
Returns a list of strings. Between each entry in the list, a newline will be inserted, for formatting.
get_splats_perks
Generates a list of "perks" related to this splat (Postives, neutrals, and negatives) in the format of a list of lists. Used in the preference menu.
"Perk" format is as followed: list( SPECIES_PERK_TYPE = type of perk (postiive, negative, neutral - use the defines) SPECIES_PERK_ICON = icon shown within the UI SPECIES_PERK_NAME = name of the perk on hover SPECIES_PERK_DESC = description of the perk on hover )
Returns a list of lists. The outer list is an assoc list of [perk type]s to a list of perks. The innter list is a list of perks. Can be empty, but won't be null.
on_gain
Effects on gaining the splat.
Overridable proc that handles all splat-specific behavior when the splat is gained. Called in assign() after the owner gained the splat and its traits, actions, and biotypes were added.
on_lose
Effects on losing the splat normally.
Overridable proc that handles most splat-specific behavior when the splat is lost. Called in unassign() before any part of the splat is removed from the owner. Not called if the owner is being deleted.
on_lose_or_destroy
Effects on losing the splat if the owner isn't null.
Overridable proc that handles splat-specific behavior when the splat is lost. Called in unassign() before anything else whether or not the owner is being deleted. Should be used only for cleanup like removing the owner from a splat-specific global list.
prepare_human_for_preview
Given a human, will adjust it before taking a picture for the preferences UI. This should create a CONSISTENT result, so the icons don't randomly change.
remove_actions
Internal proc to remove all of the actions added by this splat on lose. Checks for and skips actions that also belong to another splat.
remove_biotypes
Internal proc to remove all of the biotypes added by this splat on lose. Checks for and skips biotypes added by the owner's species or other splats.
remove_splat_traits
Internal proc to remove all of the traits added by this splat on lose.
unassign
Remove this splat from its owner.
Fails if the owner is null, or cleans up the splat if the owner is being deleted. First applies on_lose() effects then removes all of the splat's traits, actions, and biotypes that were added in assign() before removing the splat entirely.