- Traits reorganized
- No more 0 pt trait for non-custom species, UNLESS: you are a xenochimera
- Non-custom, non-xenochim must spend 1 point to be able to climb (climber, amateur) in vein of soft fall
- Custom/Xenochim can take (climber, natural) for 0 pts in vein of winged flight
- All species may take (climber, master) for 2 pts to halve their climbing speed
- Adjusted Tajara to be as fast as Vassilians to.
- Implemented Nutrition logic in inspiration of winged flight
- Climbing up costs twice as much nutrition as climbing down (50 vs 25)
- Climbing while hungry (less than 200 nutrition) introduces a delay of 1 second
- Climbing while starving (less than 100 nutrition) introduces 30% fall chance (does not override if higher)
- Cannot climb if nutrition is lower than 50 for up, 25 if down.
* Same logic as climbing up for fall chance
* Additional fall chance if trying to climb down a unclimbable wall: min 75%
* Works by checking the turf 1 step in front of the mob if empty,
and places them under that turf if it is possible
* Climbing times are same as climbing up
* Grace period somewhat shorter
* Also added tweaks to logic of climbing up to avoid pointless checks
* Also tweaked the traits (expanded tutorial for climbing down, proper trait exclusion)
* Adds new turf/simulated proc: climb_wall
* * Anyone can attempt this by standing next to wall
* * Untrained have chance to fall
* * Trained dont fall unless interrupted
* * Speed varies wildly depending on gear & skills
* * * Takes lowest climb_delay, multiplies 5 by it
* * * Depending on tresholds, may add 10/5 seconds on top (>1.25, >1.0)
* * Gear can enable even rookies to climb. Simplemobs cant use gear
* * Except scugs. They can specifically use their spears to climb, leaving it behind
* Adds new turf/simulated var: climbable
* * solidrock, /mineral/cave have climbable set to true
* Adds new turf/simulated logic for init, examine() and a yet-unused proc
* * proc toggle_climbability allows turning walls climbable. Useful for GMs!
* * Could also later implement a tool to turn walls climbable when used using it.
* Adds new mob/living vars, can_climb and climbing_delay
* * These are for handling silicons and simple mobs
* Adds new species vars, can_climb and climbing_delay
* * These are for human mobs
* climbing_delay defaults to 1.5
* * Tajara have it at 1.25
* * Vassalian have it at 1
* * Scugs got it at 2.0, reduced to 0.75 when using spear
* New traits: climber; climber, professional; climber, master
* * Cost 0, 1, 2 pts as positive trait respectively
* * Enable safe climbing, reduce delay to 1.25, 1.0 respectively
* moves rock_climber from shoes to items define
* Adds new item var, climbing_delay set at 1
Goes back and touches/fixes-up #14938.
Adds two missing options for the shark 'head' parts that were previously missing, as well as spruces-up their sprites.
- "shark upper ears and fin alt style (Colorable)"
- "shark lower ears and fin (Colorable)"
* Makes entity_narrate() call entity_narrate_args() with input gleaned from user interface
* Sanitizes text input. Multiple times: custom IDs are sanitized on creation
* Interface text input sanitized on input
* Sanitizes arguments of argument based function as well
* Enables multi-line text input when making messages using interface.
* Multiline also works with commandline tool using \n
Adds a few extra parts and options to the character setup:
Heterochromia markings for the left eye
A turkey-styled tail ("Would have
been a really good thing for Thanksgiving probably but I'm not going to wait that long.")
Shark-styled ear options as well head-fins
And three new variations of the Akula tail
- tail and fins
- stripes
- tips
* Changed type checks to check for /atom for non-mobs
* Changed static typing to use /atom for non-mobs
* Rearranged code logic where relevant so we only check for /atom if mob/living came out invalid
* Added a guard clause against observers on adding a ref. Only added to this as there's hopefully no way to access ghosts with the remaining procs
* Also added "Remove All" as an option for removing refs. It requires confirmation.
*Adds verbs to client: Narrate Entity, ... (Add ref), ... (Remove ref), ... (Interface)
* Adds new Client var to hold reference to entity_narrate datum instance
*Creates entity_narrate datum to hold list of unique/custom entity names, and an assoc list of name:atomref
* All listed client verbs initialize the datum onto the client var for later use when first used
* User is expected to right click mobs within viewrange to add them to ref list
* User is prompted to create a unique identifier to generate the key:value pair
* User may either request an interface to do the narration (interface)
* User may alternatively go narrate-mob "identifier" "speak/emote" "narration" into command line
* In case of argument call, message may be ommited to bring up non-multiline tgui_input_text
* User may remove entities from their personal list at will
* Users adding entities to their personal list are logged
* Users attempting to add players to their personal list are likewise logged
* Users succeeding despite this are logged if they try to speak for them
* If type is mob/living, it uses .say and .custom_emote() procs
* .say uses the mob's languages, stutters and so forth
* if type is obj/, user must specific speech verb when composing narration.
* User may narrate from any range.
* Each proc checks for R_FUN permission and prevents using if lacking rights