This PR significantly reworks IPCs to make them more interactive with
many other aspects of gameplay. Some of the changes made are:
- IPCs are no longer immune to radiation, they instead have a
(currently) unique flat reduction to radiation. Minor rad sources will
not harm them, whereas significant sources such as the Supermatter will
require more meaningful protection.
- IPCs are no longer immune to space. They take constant heat damage
when exposed to a hard vacuum, as their internal cooling system fails in
the absense of an atmosphere. Just like organics, they can wear space
suits to be protected from this.
- IPCs now bleed coolant. It doesn't actually do anything currently, but
it looks cool.
- IPCs have gained numerous new traits so that you can customize your
IPC how you please.
- Nanite Auto Repair Bots have been nerfed. Now they only work up to 75
damage. They still work if you are dead.
<details><summary><h1>Media</h1></summary>
<p>
Hardened Circuits:

G2 Chassis:

Superior Radiation Shielding:

IPC guidebook fix and tweak:

</p>
</details>
🆑
- tweak: IPCs are no longer immune to Radiation and Space.
- tweak: IPC shock damage has been reduced from 3x to 1.2x
- add: IPCs have gained numerous new traits for customization. As well
as rebalanced Nanite Auto-Repair Bots.
- add: Circuitry can now be used to repair Synthetics.
- fix: Fixed the guidebook link for IPCs not appearing in character
creation.
---------
Signed-off-by: OldDanceJacket <98985560+OldDanceJacket@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: OldDanceJacket <98985560+OldDanceJacket@users.noreply.github.com>
# Description
These are a few traits that have been requested. There's a longer list
but I can't really get to them right now.
# TODO
<details><summary><h1>Media</h1></summary>
<p>

</p>
</details>
# Changelog
🆑
- add: Added traits for spawning in with individual cybernetic legs
(without any other modifications). These traits uniquely cost neither
points, nor trait selections.
- add: Added bundle traits for Dwarf and Kobold.
- add: Added Forked Tongue trait for Unathi.
- add: Added Stunted Snout trait for Vulpkanin.
- tweak: Cyber-Eyes Basic System no longer costs any trait slots, and
has had its points cost reduced.
---------
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
This PR significantly reworks some parts of the mood system, namely by
completely restoring and reworking the saturation scale shader so that
its not completely terrible. Additionally, I've added numerous new
instances and locations where Moodlets can be found in the game,
particularly when it comes to food and drugs, as well as a new Mood
interaction with the Deep Fryer. Chef gameplay is significantly expanded
via the introduction of flavor related moodlets, as well as the almighty
deep fryer giving a unique, moderately strong, and long lasting moodlet
to anyone who eats whatever you deep fry.
Go ahead, give someone a deep fried stick of salted butter coated in
chocolate. You'll make their day.
The big differences with the Saturation Scale are that its now variable,
with smooth transitions, with the scale scaling with your character's
mood. The more depressed you are, the more desaturated the world
becomes. Whereas if you have entirely too many positive mood bonuses,
the world becomes incredibly vibrant.
<details><summary><h1>Media</h1></summary>
<p>
Shoukou's Bar as seen by someone with the Sanguine trait(and no other
moodlets)

Max mood

Saturnine trait:

Minimum mood(dead)

Smooth transitions for shader tone.
https://github.com/user-attachments/assets/3ab55da1-eca6-4cc5-9489-f4ad13ed0f27
</p>
</details>
🆑
- add: Re-enabled the "Mood shader" after significantly reworking it.
Mood visual effects now scale with your character's mood, instead of
only ever being near-greyscale. Being high life now makes the world more
colorful and saturated.
- add: A huge variety of medicines, drugs, and even food items(based on
flavor!) now have mood effects. Reaching for the packet of salt now
actually makes food provide a better mood buff.
- add: Being Tear-gassed causes a massive mood penalty.
- add: Deep frying food provides a strong mood bonus.
- add: Added new Manic, Mercurial, and Dead Emotions traits.
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
# Description
The muted and thief trait have been rebalanced based on request from ODJ
who had many other things to fix before the release.
# Media
<[Official ODJ Media]> provided.

---
🆑
- tweak: Tweaked as told.
Co-authored-by: ilmenwe <no@mail.com>
(cherry picked from commit 713a562f830c6ec48b8b0d054d5dcb765eb49bb8)
# Description
IPCs have vocoder/voicechips to talk, they can resonable be extended
altered used to produce a larger range of sound.
<details><summary><h1>The trait avalible on a IPC in character
create</h1></summary>
<p>

🆑
- add: Added IPC to permitted for Lyre Bird.
- altered: description to make it more neutral and less harpy specific.
Co-authored-by: ilmenwe <no@mail.com>
(cherry picked from commit 48460f47d46491eccb07da810c1f81fb9c6a1739)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR adds 2 negative traits that IPCs can take.
Inefficient Cogitator increases the power drain that IPCs have by around
33%. (1.5/s -> 2/s) Gives 3 points.
Defective Chassis functions as the IPC version of brittle bones, aka
Osteogenesis Imperfecta. It halves their death threshold
(120 -> 60), as they can't go into crit. Gives 6 points. (Because
brittle bones will give 6 points anyway)
Also yes I tested the power drain, it works, I just didn't want to show
me standing still for 6 minutes, or show footage that isn't the trait
with the value cranked up.
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>



</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- add: Added the Inefficient Cogitator and Defective Chassis traits!
Both are negative traits for IPCs. Inefficient Cogitator increases the
power drain of IPCs by ~33% (1.5/s -> 2/s) and gives 3 points, Defective
Chassis halves their death threshold, as they can't go into crit (it's
the IPC version of brittle bone disease). Gives 6 points.
(cherry picked from commit 9bd362b19c670e242fb4fc807ca45dab49d4b4d7)
# Description
Done on stream with @OldDanceJacket and with a livestream of >30 people.
This PR massively trims down the most problematic aspects of Psionics
related to traits, blatantly by just outright removing the option for
buying roundstart powers. Station's were basically space hogwarts, which
caused problems. Also at ODJ's insistence, we dialed back a LOT of the
"Negative trait proliferation", in order to reduce the crew power
scaling issues.
Also some small psionic related bugfixing.
# TODO
<details><summary><h1>Media</h1></summary>
<p>
These are all 6 of the remaining "Psionics" traits.

</p>
</details>
# Changelog
🆑
- tweak: Significantly reduced the amount of points given by most
negative traits.
- fix: Fixed the Psionic Mantis not being able to roll powers.
- remove: Removed all trait menu options for buying roundstart psionic
powers. I'm sorry about this, but it broke a LOT of things, and wasn't a
good idea at all in the first place. There's no longer the Elementalist
psicaster type, since there's also no power shop.
---------
Signed-off-by: Timfa <timfalken@hotmail.com>
Co-authored-by: Timfa <timfalken@hotmail.com>
(cherry picked from commit e50ef59b4a2bb2b38a36b22736b4b42c2735975b)
# Price drops and value cuts
Based off of player feedback and overall issues with the design of
points following previous PR's, prices for a big chunk of traits have
been adjusted.
This has very intentional direction regarding traits.
Firstly, a number of negative traits have been reduced in the amount of
points they return to the user. This is simply a reduction of points
however, as no negative trait was changed to give 0, with a few of the
more 'awful' negative traits given a few extra points for those that opt
in.
Next up is the various price reductions across the board to a number of
the under-preforming positive traits. A number of these were rather
interesting but were hampered by silly prices.
Aside from this, a few traits fall into a slight balance adjustment,
such as vampirism becoming more expensive, a slight nerf to the regen of
Nanobots(nothing else yet), and the adjustment to the Oni's trait
selection no longer costing them any trait points.
Please enjoy!
---
<details><summary><h1>Media</h1></summary>
<p>

</p>
</details>
---
# Changelog
🆑 ODJ
- tweak: Adjusted a number of trait prices; Oni now have a free species
trait choice, Harpies singing is far cheaper, being small is now free,
etc.
Co-authored-by: jcsmithing <jcsmithing@gmail.com>
Co-authored-by: Timfa <timfalken@hotmail.com>
(cherry picked from commit 403d017bbade4cc0be6da9504e185e171854c930)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR adds 2 language traits: One for Moffic, one for Chittin. Both
can be taken by IPC and Harpy, and Moths can take Chittin, Chitinids can
take Moffic. These three are the only ones that can take those traits,
which cost 1 point.
Additionally, it prevents Harpies from taking the Valyrian language
trait, as they already start with that language so no need for them to
waste a point.
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>


</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- add: Added Moffic (moff lang) and Chittin (chitinid lang) as languages
traits. Available for IPCs and Harpies for 1 point, as well as Moths for
Chittin and Chitinids for Moffic.
- fix: Harpies can no longer waste a point on the Valyrian standard
language trait, which they already start with.
(cherry picked from commit b57de115858c44f9164a04d9e222f8d6fb68680a)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
Discussed with some harpy players and agreed upon on call where we
talked about trait balance (for the cost reduction for the trait).
This PR makes true flight (the trait for moffs that you can take when
under 60kg, gives you a modified version of harpy flight) cost 2 (from
5) and reduces the speed modifier for flying from 1.2 to 1.19.
(effective 32% increase to 30.9%)
Also adjusts the speed modifier for harpy flight to 1.3. (from an
effective speed increase of 54% to 60.16%)
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- tweak: Adjusted moth and harpy flight to be more balanced. (Moth
flight, ~30% speed increase, Harpy flight ~60% over sprinting, accounts
for all modifiers, including harpies 10% sprint speed increase) Makes
True Flight trait cost -2 instead of -5.
(cherry picked from commit 22527a646746a1ac60ea35a8abb3e88756f5ef9c)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
Just gives Qiilour a unique font and blacklists Xelthia from traits that
don't make sense for them (Talons/Claws, Natural Weapons Removal, all
Arm-related Bionics)
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>

Font (Nova Flat)

There's a couple of these that xelthia are blacklisted from but just
proof that I tested that they were, in fact, blacklisted from them
</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑 Zeta_Null
- add: Added a proper font for Qiilour to use
- tweak: Put Xelthia on some trait blacklists that they wouldn't
reasonably be applicable for (Arm Related things)
(cherry picked from commit fed740ae1b18e7c9f5dc523025af3e5167a38c67)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This is a PR to add a new species, the Xelthia. I find that most of the
species in this game don't feel particularly alien, and I'm aware that
they aren't as alien as some might want, but I feel like they're
decently alien, personally. In addition to this, I've tried to set them
up to fill niches that aren't particularly common with other species,
such as having a heat resistance and cold weakness where other species
tend to have cold resistances and heat weaknesses.
Here's their current list of (planned) traits, which is tentative and
I'm open to adjusting.
### Negatives
- Cold weaknesses
- Lack of a gloves slot thanks to having tentacle arms
- Carnivores, will only eat things containing meat for the most part
### Positives
- Heat resistances
- Arm Regrowth, dropping their current arms
- Acid blood (Currently slippable)
- Caustic immunity (so they don't burn from falling in their own blood)
### ???
- Dropped arms are able to be eaten and/or cooked.
I've not worked with C# before now, so apologies if the code is a little
bit scuffed or anything
---
# TODO
<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->
- [x] Implement Xelthia Species, complete with sprites and a language
- [x] Add species default names
- [x] Add displacement maps and such to make sure they look right
- [x] Implement primary YAML-based species functions, basically
everything that isnt the limb regrowth function
- [x] Axe the initial psionics bit
- [x] Add the actual function for limb regrowth
- [x] Add proper lore
- [x] Any other possible considerations with adding Xelthia
characteristics
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>
https://github.com/user-attachments/assets/4fd3cb4f-4d5d-44dd-b5c0-62fd392e8920




</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑 Zeta_Null
- add: Added Xelthia, a custom alien species
- add: Added an insulated jacket, to account for Xelthia not having
access to a glove slot.
- add: Xelthia tentacle item that drops when arms are regrown. This is
able to be cooked.
---------
Signed-off-by: ZetaNull <93877175+ZetaNull@users.noreply.github.com>
(cherry picked from commit 5de2bd074f7ee852774c11fd92996f7c14fd3d1b)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
Yeah so last time I did an accent/language fix
(https://github.com/Simple-Station/Einstein-Engines/pull/2212) I kinda
forgot about the scottish, frontal lisp and stutter ones
so this PR does exactly the same thing as the PR linked, just for the
missing accents. (Commenting out the lines that were supposed to let us
make accents fully free as they don't work for now, which were the ones
that specify how many trait slots and slots in the character item group
the trait takes up)
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>
https://github.com/user-attachments/assets/bd8a7e15-7f83-4330-b1d7-d3edd203b291
</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- fix: Fixed the scottish, stutter and frontal lisp accents not working.
(cherry picked from commit 4646aa05822ebfdff5090918066bed2dff473410)
# Description
The bug with the traits menu related to psionics is a significantly more
complicated issue, so I'm fixing that separately, it notably involves
touching a different system entirely than anything in this PR. The
biggest ones this fixes are Psi-Invis and Anoigo. Others are a variety
of other powers that were supposed to be checking "Is the target
insulated?" but weren't. To make it easier to check, I added an overload
for the OnAttemptPowerUse function that accepts a Target EntityUid,
which extends the insulation check to a second entity, which all of the
pre-existing targetted powers now use. Which simplifies the need to
constantly write the checks over and over again.
The biggest fixes this patch from to Psi Invisibility, and to an
underlying secondary problem that I discovered as a result of more
closely examining the cause of the Invis bugs. So now the client gets
networked their casting stats. Both Psi-invis and Anoigo have had their
audio fixed (it was a typo in both cases). Anoigo now also checks if the
target has insulation.
This last point is relevant because certain "High Security" doors have
had their components psifoil insulated to protect from people with a
rare and obnoxious power from forcing their way in.
<details><summary><h1>Media</h1></summary>
<p>
https://github.com/user-attachments/assets/ba53df07-5ed9-4b08-b787-a6f6b347c8a3
</p>
</details>
# Changelog
🆑
- add: NT has had its station's "High Security" doors such as Command,
Security, and Vault doors shielded with psifoil around their components.
They can no longer be forced open by the Anoigo power.
- tweak: Anoigo, Dispel, Mindswap, Healing Word, Breath Of Life,
Pyrokinesis, and Noospheric Zap now all don't work if the target has
psionic insulation.
- fix: Psionic Invisibility now actually works as advertised.
- fix: Psionic Invisibility and Anoigo now actually produce a sound, as
well as properly enforce their cooldowns.
- tweak: Anoigo reclassified as a "Dangerous" power, it now also costs
10 points for Elementalists.
- remove: Prisoners can no longer be Psionic.
- fix: Mantis can no longer summon his black blade if his hands are
full.
---------
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit a4b8cf17f0a6cb62a499cb004fd2f5512c31ef18)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR tries to better balance bionic arms and comments out speed legs
FOR NOW.
For Bionic arms, it restricts them to only be accessible to security,
command, dignitaries and paramedics, while also knocking down the cost
back to 8, as it used to be. (this is because it is now only available
to a select few and not everyone)
On top of that, I added a new trait, Prybar Prosthetics, which are
cybernetic arms that can pry open UNPOWERED doors (so it's a crowbar).
This one is much cheaper than bionic arm (3 points) and is available to
everyone besides prisoners. (Yes it replaces your limbs with a new
cybernetic arm with this function, the DX-1 Pryarms)
For speed legs, like previously stated, they're getting commented out.
This is only temporary, until someone can figure out a way to rebalance
them (speed legs as a whole I mean, not the trait itself.) so they
aren't just a permament increase to speed. Speed is too good, look at
what harpies pay for a 10% increase while sprinting.
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>



</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- add: Added the Pryarm Prosthetics trait, that replaces your arms with
the DX-1 Pryarms, which let you pry open unpowered doors just as you
would with a crowbar.
- tweak: Made bionic arm cost 8 points again and be restricted to
command, security, dignitaries and paramedics only.
- remove: Speed legs trait go bye bye for now.
(cherry picked from commit 980ba8139fd78eaeebab464bac985cd34fe0ead0)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR adds 2 new surgery related traits to the game (surgery training
which boosts your surgery speed to 1.6, only available for non-medical
jobs, as well as experienced surgeon, which boosts your surgery speed to
2.5, available only to medical jobs + corpsman, without intern. They
both cost 3 points.) while also tweaking and fixing the CPR training
one. (reduces cost from 4 to 3 and adds BSO to the blacklist as BSO
already has CPR training innately)
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>





</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- add: Traits that increase your surgery speed, Surgery Training (1.6,
between intern and standard doc) for non-medical, and Experienced
Surgeon (2.5, same as CMO) for medical w/o intern and with corpsman
- tweak: CPR Training cost 4 -> 3
- fix: BSO can no longer take the CPR trait as they already have it
innately
(cherry picked from commit b0950e4c56fa4b58b46f2961b397cac626249d6d)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR comments out the CharacterItemGroup for basic languages so you
can take ALL OF THEM (side effects may include using all your trait
slots) and the lines responsible for breaking both languages and accents
(the ones that specify how many slots it takes up in the item group and
how many trait slots it uses)
This is so we can have them functioning until that code gets fixed
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- fix: Languages and accents now work. JOHN LANGUAGE IS FINALLY REAL!
(cherry picked from commit add7e379b8524e179ea8469be34bd77f44e69691)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
So Bram didn't test his changes, meaning weakling and bodybuilder didn't
do anything except break taildrag. I'm not fixing those traits because
he also added traits that functionally do the same thing but better.
I'm removing weakling and the old bodybuilder, and keeping featherweight
/ bulky (which has now been renamed to bodybuilder by request of the
person who paid for the original PR)
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- remove: Removed old bodybuilder and weakling traits since they didn't
work, and gave bulky the name bodybuilder instead
Co-authored-by: Your Name <EctoplasmIsGood@users.noreply.github.com>
(cherry picked from commit b2a4e43717e277c7417f2fd5e0c8d6a03a58b53b)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR Redefines the max items from the basic language item group (1)
BUT makes it so that EVERY SINGLE LANGUAGE TRAIT takes up 0 slots in
that item group, letting you effectively take all the languages if you
have enough space.
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- tweak: Made every single language trait take up no slots in their
defined max items limit, effectively letting you take unlimited
languages, so you can become the man himself, John Language. (FOR REAL
THIS TIME.)
(cherry picked from commit b603afa85bb4100a114f577527831260e6fdf8cf)
# Description
This PR adds a dedicated "Psionics" tab to the traits menu, where every
single Psionics related trait has been moved to. It includes
subcategories for Psicaster Type, Feats, and Powers.
There are currently 3 different variants of "Psicaster", two of which
are new.
**Latent Psychic**: Exactly as before with Psionics V3. No changes here.
**PsychoHistorian**: A new variant psicaster that enjoys significantly
faster power development, with a heavy focus on "Utility" powers. As a
tradeoff, they can ONLY obtain utility powers.
**Elementalist**: The second new variant psicaster type. Elementalists
have the option to buy powers directly from the Anomalist power
category. The tradeoff here is that these are the only powers they will
ever have. Elementalists will never generate new powers during a round,
and cannot gain Potentia.
All 3 Psicaster Types have their own dedicated "Shop" that is accessed
via the Powers tab in the traits menu. They each have their own separate
costs and availabilities. They also all 3 have their own random power
charts.
# TODO
<details><summary><h1>Media</h1></summary>
<p>

</p>
</details>
# Changelog
🆑
- add: Added a dedicated Psionics tab to the Traits menu.
- add: Added PsychoHistorian as a new psionic variant. PsychoHistorians
have significantly faster new power generation, but are strictly limited
to the Mentalics power category. They essentially only get "Utility"
powers. PsychoHistorians have Telepathy as a free bonus power.
- add: Added Elementalist as a new psionic variant. Elementalists do not
generate new powers at all during the round. Instead, they purchase
powers directly at character creation, using the Anomalist powers
category.
- add: @#$%(*&FAREWELL, FRIEND. @#&#^!@*(&^$I @*#$&^@#$% WAS
@#$@#$*&^@#$ALWAYS A *&#^@$@#THOUSAND *(&@^#$TIMES *(@#$(*&MORE
*(&^*&(EVIL ^&*((*&^THAN (*&^&*(^%*(&THOU!
(cherry picked from commit 7cc86ec5558c6fbe42cdfc4cd61ac31e4bd69232)
# Description
This PR gently reworks the traits and loadouts system to where both
systems have a new Datafield for "Slots", which declares how many
selections the trait/loadout occupies. The actual implementation of
these differs between the two, since Traits has an actual selection
limit, while Loadouts do not(but instead respect CharacterItemGroups).
In both cases, Slots are defaulted to 1, and can be omitted in most
cases.
Where this shines particularly is in Traits, where it serves as a new
second line for trait balancing. Traits such as Accents, which are
completely worthless, otherwise would never be taken at all since they
compete with other traits for Opportunity Cost. Conversely, there's only
so many points we can increase a powerful trait to, (literally, they
cannot cost more than the current trait maximum). So traits can be made
to occupy >1 slot selections.
Slots can be defined for Item Groups as well, which is what this
datafield does on Loadouts, which both of these share. But since Traits
have two different places that their slots are used, I've opted to
create a split slot datafield for Traits. To simplify things, their
ItemGroupSlots defaults to their Slots datafield, but can be
independently changed as desired.
<details><summary><h1>Media</h1></summary>
<p>
https://github.com/user-attachments/assets/99dddfe1-76d2-445a-a94a-1998d3d39c51
</p>
</details>
# Changelog
🆑
- tweak: Accents no longer cost trait slots.
(cherry picked from commit d760c5813d5dd29b3eddebd8d671bf3ed6e86b3e)
# Description
Removes the ability to obtain bartender firearms & most weapons &
equipment from security via the Restricted Gear trait. In exchange,
makes it cost 6 points rather then 10.
If there's any other changes that someone wants, let me know.
---
# TODO
All finished.
---
# Changelog
🆑
- remove: All guns from the Restricted Trait are GONE because I HATE
YOU.
---------
Signed-off-by: Yarinoi <122653864+Yarinoi@users.noreply.github.com>
(cherry picked from commit aabe75658c726738051eed792d2bab03f5d362c3)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
Removes ion damage and makes all weapons that did ion damage deal shock
instead. IPCs and Silicons will now take a whopping 3x shock damage, as
they have lost their primary weakness (heat), and ion damage is no more.
Shock damage is pretty rare, and I've reduced the amount of damage done
by disablers to compensate.
Shock damage can be tuned down for IPCs/Silicons once being shocked has
a unique reaction, like causing their electronics to spazz, or draining
their battery.
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- tweak: Ion damage has been merged with shock damage
- tweak: Disabler damage has been turned from heat to shock and reduced
- tweak: All silicon lifeforms now take 3x shock damage
---------
Co-authored-by: Your Name <EctoplasmIsGood@users.noreply.github.com>
(cherry picked from commit c80df35b3b2aca4195757f811b3d8669b80061c4)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR removes the limit to how many basic language traits you can
take, reduces the cost of sign language from -2 to -1 and ensures that
you cannot take more than 1 accent from the accent traits. (Previosly,
when new accents got added, the bunch with german, french, spanish,
italian and russian, they weren't added to the character item group that
makes it so you can only take 1, so I added them)
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- tweak: Reduced sign language cost from -2 to -1
- tweak: Removed the limit on how many language traits you can take
- fix: Made sure that you cannot take more than 1 accent trait
(cherry picked from commit bb8ac8ed83e82ffdb4efa0899df08e2684749bd2)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
This PR changes the speed modifier for Moth Flight from 1.09 to 1.2
(adding up to an effective ~30% increase over walking with the base moth
weightless modifier, over the 20% from before)
Moths have a trait called true flight which costs 5 points
to take it in the first place you need to be at most 60kg
It essentially gives you harpy flight (moth version)
A PR was made some time ago that changed both the moth flight and harpy
flight
What you need to know is that harpies get an effective ~60% speed boost
while flying, and handslots taken
Moths however, can use their handslots and also get some friction for
sharper turns BUT their effective movement speed increase is only ~20%
(By effective increase I mean combining weightless speed buff, flying
speed buff, and in the case of harpies, their innate movement speed buff
of like 15%)
While playing around I noticed the moth flight is barely noticable when
used (the movement speed IS there of course, but it's barely noticable)
I do understand that speed is a very big thing and a powerful tool, with
flying having no slips and all, and moths being able to use their hands
while flying BUT
it really feels like it barely does anything
So because to even get moth flight you need to:
- Be light enough
- Invest a trait slot and 5 points
- And flight itself being an active which rapidly drains stamina
So I made this PR to slightly increase the speed moth flight gives you
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- tweak: Increased the moth flight speed modifier from 1.09 to 1.2
(cherry picked from commit 45b76e604289bfe60afbd169e169b99c980271f9)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
Adds a new trait 'Restricted Gear' that unlocks job requirements for a
curated list of items (most equipment), allowing you to take items from
other jobs at a loadout and trait cost.
The main idea is to allow freedom of choosing items 'initial player
power' at a cost of trait points 'final player power', as well as
effectively automating greytiding. Item selection is moderated through
loadout cost, all the numbers are up for discretion, costs can be
balanced by interpolating the cost of the trait and the cost of
contraband items.
This trait is definitely not suitable for all servers, ~~but it has a
place in lowpop RP downstreams like Grimbly Station which I play on.~~
RIP Grimbly Station
---
# TODO
<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->
This PR only really features yml changes, so it could be considered in a
complete state. However there is also room for design / balance
discussion.
- Should command staff be able to use Restricted Gear? (currently yes)
- Should prisoners be able to use Restricted Gear? (currently no, but
funny)
- - it would also be possible to add item restrictions on restricted
gear so prisoners cant smuggle guns
- Should Restricted Gear grant access to certain items on your current
job? (Heirloom armory weapons for security, lethal .50 for bartender
etc)
- Tweaking of numbers, interpolation between trait cost and loadout
cost.
- ~~Does this trait need a CVar requirement? (there was some discussion
on discord about it)~~
- Probably more that I haven't stated.
Of course, this can also be tailored to any downstream as required.
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>
Trait name / description:

(dw death i changed *it's* to *its*)
You can use exchange loadout points to get other jobs' items.

Loadout point costs don't apply to your own job.

</p>
</details>
---
# Breaking changes
PASSENGERS CAN GET GUNS (provided a minimum playtime requirement).
If you don't want it, comment it out
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- add: Added a trait 'Restricted Gear' which unlocks loadout job
restrictions at a significant price.
---------
Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: sleepyyapril <flyingkarii@gmail.com>
Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
(cherry picked from commit 332e07ea64ac3ca04055ff6d190d8bdecb03b6bc)
# Description
Adds 4 new traits.
Bulky (Costs 6 pts) increases your characters density by 55, which
increases your weight.
Featherweight (Gives 3 pts) halves your density, halving your weight.
Bodybuilder and Weakling adjust the modifiers for pulling speed, also
costing 6 and giving 3.
Also, added a VVModify function for traits, which allows you to get the
current value of a VV path, and then change it via multiplication or
addition/subtraction, this was needed for Bulky/Lightweight, since
Density is under FixturesComponent, which is a robust toolbox thing, and
I dont think an engine PR with a densitymodifier field is the way to go.
This was done for a Goob MRP bounty.
---
# Changelog
🆑 BramvanZijp
- add: Added the Bulky and Featherweight traits, which increase/decrease
your characters weight.
- add: Added the Bodybuilder and Weakling traits, which impact the
movement speed penalty while pulling.
---------
Signed-off-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com>
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit fe93a8827a83b9dd40e7eaa2312351fc52511693)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->
# Description
<!--
Explain this PR in as much detail as applicable
Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->
Contractors v1 is the first version of a system that will allow you to
set a nationality and an employer to your character. Initially, this
will determine the availability of some loadout items, jobs and traits,
but this is built to expand upon later.
As of this moment, the PR will let you select a nationality, an employer
and a lifepath. Nationalities give you a language and a passport, while
the other two don't do a lot yet. (except Command can only be NanoTrasen
and most other jobs can't be unemployed)
The passport functions, and the CharacterRequirements do as well.
there's still a lot more that can be done--tying jobs to certain
employers, items or traits to nationalities or lifepaths, but the reason
I want to merge it before that's done is primarily so that I don't need
to be the sole person working on it anymore. The C# is done, the rest is
YAML, and we have a bunch of competent YAML warriors who will do great
stuff with this, no doubt.
---
# TODO
<!--
A list of everything you have to do before this PR is "complete"
You probably won't have to complete everything before merging but it's
good to leave future references
-->
- [x] Create Nationality and Employer Prototype code
- [x] Create Nationality and Employer Character Requirements
- [x] Add both fields to the Character Creation menu
- [x] Create Nationality and Employer Prototypes
- [x] Create Nationality and Employer Prototypes YAML
- [x] Add requirements to a few jobs
- [ ] Add requirements to a few traits
- [ ] Add requirements to a few loadout items
- [x] create a passport item that can be opened and closed
- [x] Give each nationality a passport item valid for their species
---
<!--
This is default collapsed, readers click to expand it and see all your
media
The PR media section can get very large at times, so this is a good way
to keep it clean
The title is written using HTML tags
The title must be within the <summary> tags or you won't see it
-->
<details><summary><h1>Media</h1></summary>
<p>

https://github.com/user-attachments/assets/9e61aed8-2e07-4d44-89c7-595a170df8c7
</p>
</details>
---
# Changelog
<!--
You can add an author after the `🆑` to change the name that appears
in the changelog (ex: `🆑 Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->
🆑
- add: Contractors. Be sure to edit your character to set an employer
and nationality!
- add: Nationality, Lifepath, and Employer have been added to character
creation. These don't currently do much except spawn a passport
containing information about where your character is from and who they
are, but they are fully integrated with Character Requirements, and by
extension can be used for and alongside Traits, Loadouts, Jobs,
Antagonists, etc.
---------
Signed-off-by: Timfa <timfalken@hotmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit c3b12c62ee3bd226b57022690d1b24cb7cf54e3f)