Commit Graph

2116 Commits

Author SHA1 Message Date
Fluffy
a3a4d46fa7 Hitby refactor (#19624)
Refactored hitby to be in line with TG's version.
Refactored item weight defines to a more clear naming scheme, also in
line with TG's version.
Refactored how the movement bumps are handled, ported signals to handle
them, in preparation for the movement update.
Fixed disposal hit bouncing the hitting atom on the wall.
Items do not push other items anymore if they are tiny.
2024-07-28 20:52:08 +00:00
Fluffy
dc812d3e31 Updated progress bar datum to the latest iteration (#19672)
Updated progress bar datum to the latest iteration
2024-07-27 19:02:24 +00:00
Fluffy
f26e4a0380 Collapse dmms (#19698)
Collapsed all the multi-z dmm maps into single-file dmms
Moved some of the map geometry into traits
2024-07-27 19:00:57 +00:00
lavillastrangiato
c03efa6661 Changes mentions of New Ankara to Tabiti (#19609)
As per NEWLORE.

---------

Signed-off-by: lavillastrangiato <63124803+lavillastrangiato@users.noreply.github.com>
Co-authored-by: La Villa Strangiato <mangodeity@gmail.com~>
2024-07-27 10:09:52 +00:00
Fluffy
ac19237a3a Update the position datum to the latest iteration (#19694)
Update the position datum to the latest iteration

No player facing changes expected
2024-07-27 10:09:49 +00:00
courierbravo
5dd0832b83 Tips Grammar/Spelling fix (#19699)
Fixed some grammar spelling issues for the tips.
2024-07-26 10:55:32 +00:00
Fluffy
947487ba62 Updated the Datum Component System and dcs signals handling (#19625)
Updated the Datum Component System and dcs signals handling
2024-07-20 17:33:21 +00:00
Fluffy
78348238a3 Removed the GELF logging infrastructure (#19577)
Removed the gelf logging infrastructure.
Refactored the various logging procs to be a direct call in light of the
above.
Removed ancilliary UDP related things.
2024-07-08 12:48:16 +00:00
courierbravo
a9a859c9f1 Tip fixes (#19563)
Fixed the grammar in some of the tips I added in #19515, removes some
tips I should have removed on the first pass.
2024-07-03 08:21:52 +00:00
FlamingLily
6a9101e763 Fixes SMES hacking (#19549)
~~In preparation for my grand political strategy to get SMES hacking
wires added to the aurora wiki, I made sure they were working.~~

It's on the wiki now so you have to merge this it's canon 🫡 

Changes:
* The RCON wire in a SMES now actually disconnects a SMES from RCON
(before it only prevented AI control).
* When the input wire is cut in a SMES, it will now correctly report
that the SMES is not charging on the UI.
* The Failsafe and Grounding wires of a SMES now correctly trigger the
red light when only one is cut, instead of both needing to be triggered.

---------

Signed-off-by: FlamingLily <80451102+FlamingLily@users.noreply.github.com>
2024-07-03 04:01:44 +00:00
Sparky
0666833d9a Shuttle manifest update (#19345)
Adds some new fields to the shuttle manifest:
- Destination (Per shuttle)
- Heading (Per shuttle)
- Mission (Per shuttle)
- Departure Time (Per Shuttle)
- Return Time (Per Shuttle)
- Expedition/Mission Leader (One per shuttle)
- Shuttle Pilot (One per shuttle)

Also adds the shuttle manifest to Bridge Crew PDAs by default.

<img width="458" alt="image"
src="https://github.com/Aurorastation/Aurora.3/assets/26849270/802d9a8d-9c43-4883-a5a7-d23967616766">
2024-06-26 10:16:53 +00:00
courierbravo
4c5eb2dc7e CourierBravo's Tips (#19515)
Added over 90 new tips.
Removed a couple tips that are outdated/inaccurate.
2024-06-26 10:09:30 +00:00
feartheblackout
71ef6c3bcd Adds a Lii'kenka origin & citizenship (#19437)
![image](https://github.com/Aurorastation/Aurora.3/assets/59633984/52ed81ab-06c0-427f-845d-14ec1563b7b1)

![image](https://github.com/Aurorastation/Aurora.3/assets/59633984/7aaee2a9-73ad-489e-abfc-b276e2a7bdeb)

![image](https://github.com/Aurorastation/Aurora.3/assets/59633984/b44e16b2-7844-46cc-a85e-595779ce16f5)
Done at the request of @desvenlafaxine.
2024-06-20 10:16:58 +00:00
Fluffy
92c3ec6caf SSthrowing (#19421)
Ported SSThrowing from TG, to handle throwings.
Updated movement system to the latest iteration, made it a datum as per
latest iteration.
Updated pass/hit handling of atoms, introduced pass_flag_self to
determine what atoms allow to pass.
Moved procs and defines around to make them more organized.
2024-06-18 19:32:06 +00:00
Fluffy
1e43a1267c Turned various spawns into timers / removed (#19402)
Turned various spawns into timers / removed.
Removed the magnet machinery and sd alerts, ancient code that was not
used anywhere anyways.
2024-06-16 15:24:27 +00:00
LynxSolstice
4a45d5454b Return of the Paramedic (#19125)
This PR brings back the more accurate title for First Responders, of
Paramedic, to bring it in line with some snippets of the SOP and to be
more accurate to the role itself, as both Security Officers and the rare
and elusive Firefighting Atmospherics Technician can be considered first
responders.

also I just like it better.

Changes any mentions of first responder in gear/access/etc to Paramedic
or PARAMEDIC where applicable.
2024-06-14 21:05:34 +00:00
Fluffy
4758c4edd0 Fixed claymores not detonating on signal (#19409)
Fixed claymores not detonating on signal
2024-06-11 08:34:43 +00:00
Geeves
b5c63771af Overhead Emotes - High-fives and Fist-bumps (#19198)
* Added overhead emotes, high-fives and fist-bumps. Help intent click
someone's arm for a high-five, their hand for fist-bump.


https://github.com/Aurorastation/Aurora.3/assets/22774890/aa8809ce-5af1-47f6-bf89-462256b8a120

### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

| Path | Original Author | License |
| --- | --- | --- |
| icons/mob/overhead_emote.dmi | CM-SS13 | [Creative Commons 3.0 BY-SA
license](https://creativecommons.org/licenses/by-sa/3.0/) |
2024-06-10 16:43:29 +00:00
Fluffy
0b577daa9f Added a sawn-off shotgun to the uplink (#19342)
Added a sawn-off shotgun to the uplink, box with some ammo and a
holster, 4TC.

---------

Signed-off-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
2024-06-08 19:08:13 +00:00
Ben
19bb859923 Kosmostrelki now know Baghrar (#19356)
As stated in da lore: 'The Kosmostrelki are usually trained in the
martial art of Baghrar, both to instill discipline and help with their
balance. '

To reflect this, ERT and Kosmostrelki ghostroles now have the martial
art of Baghrar.

---------

Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
2024-06-08 16:39:38 +00:00
Fluffy
aeb27e21e1 Fixed vars getting set twice in the same class (#19294)
Fixed vars getting set twice in the same class
2024-06-02 23:13:31 +00:00
Fluffy
37814ef383 Refactored item equipement observable away (#19241)
Refactored item equipement observable away, turned them into signals.
Partially ported on_equipped / equipped procs from TG, updated logic,
added signals for them.
2024-05-31 21:25:02 +00:00
Geeves
0173a9c100 Progress Bar Darkness Fix (#19278)
* Progress bars now render on the HUD layer, meaning it won't be
affected by darkness.
2024-05-31 20:15:20 +00:00
Sparky
b790191c24 Togglable Science Goggles (#19203)
Science goggles can now be toggled onto your forehead like safety
goggles.
2024-05-28 20:54:52 +00:00
Sparky
32a63d39a8 Clip-On Radios (#19164)
Adds Clip-On Radios, which can be equipped to both ear or wrist slots,
always appearing on the body, clipped onto your uniform or jacket.
2024-05-22 09:09:35 +00:00
Fluffy
3dc4cce9c2 Minor span refactoring (#19177)
Minor span refactoring
2024-05-19 16:37:29 +00:00
Fluffy
4d28057431 Added telefreedom implants (#19124)
Added telefreedom implants, including a box with (almost) everything you
need to make them work for 4 people, and added it to the uplink.
Fixed implanters not taking the implant and dropping it to the ground
when hit by one (while keeping it referenced).
2024-05-19 16:09:40 +00:00
Cody Brittain
d95734c606 Emissives (#18895)
A significant amount of influence was taken from
https://github.com/Baystation12/Baystation12/pull/33255, however adapted
to Aurora. Key things to note is the port of the newer alpha settings
from /tg/, among other improvements.

The ancient holographic and screen overlay code has been purged. This is
now handled with emissives, while holograms are handled with filters as
well.

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2024-05-12 20:51:45 +00:00
Fluffy
37c49194b3 Added an initial implementation of field howitzers (#18977)
Added an initial implementation of field howitzers

Howitzer and projectile sprites are from TGMC
Powder sprites are from NSV13
Firing sound is from https://freesound.org/people/qubodup/sounds/161341/
(CC0)
Clanking sound is from
https://freesound.org/people/simone_ds/sounds/366084/ (CC0)

---------

Signed-off-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
2024-05-12 19:01:02 +00:00
Ben
47ae292bac Merchant Traders now have greetings for Species + Biases (#18825)
Traders used to only do greetings based on each subspecies, due to
significant overlap for some (ie, IPCs), functionality added for traders
to greet based on general species, if a specific subspecies is not
found.

Adds new defines for each species that is a list that has all subspecies
for them (ALL_IPC covers all frames for examples)

Biases for Species
DENY: "No service for Bots here"
UPCHARGE: Service, but prices higher
DISCOUNT: Special prrrices forrr comrrrades

---------

Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
2024-05-01 22:35:49 +00:00
DreamySkrell
621b05e491 Cult Base tweaks - no cult books for cultists (#19018)
changes:
- rscadd: "Cult Base cultists spawn without cult books, so they can only
use the runes mapped into the map, and can't make more."
- rscadd: "Conversion rune added that does not give the new cultist the
cult book."
  - rscadd: "Cult Base mapping and ghostspawner tweaks."


REASONING:

having them spawn without cult books means they can only use mapped in
runes
which means they can't go out into other ships (or horizon) and spread
cult there
can't make stuff like stun talismans
can't make a ton of cult swords and armors and constructs

and so the cult stuff is mostly contained to this site
and outside of the cult base, these cultists are mostly just weird
people with bloody clothes
and not really all that supernatural

ghostspawner welcome text and desc is also updated to say they should
try to act more covert


![image](https://github.com/Aurorastation/Aurora.3/assets/107256943/1f45e107-231b-4887-8193-5dc1e3f6bab8)

---------

Co-authored-by: DreamySkrell <>
2024-04-27 22:40:01 +00:00
Ben
32eef8561b Napalm Grenade Telecrystal Cost Increase (#19004)
Napalm Grenade now costs 8 telecrystals (from 5) in uplink.

As it stands it is too powerful for its cost, this should better reflect
it's effectiveness.

---------

Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
2024-04-26 08:57:19 +00:00
DreamySkrell
d0c272b435 Cult Base Away Site (#18578)
![image](https://github.com/Aurorastation/Aurora.3/assets/107256943/afe938e9-b3c9-4819-b74b-f403bdb57efd)

changes:
  - rscadd: "Cult Base away site."
  - rscadd: "Adds some mapped in cult runes."
- rscadd: "Adds ooc welcome message, separate from normal welcome
message."
  - rscadd: "Allows corpses to use outfits."
  - rscadd: "Allows corpses use different species."
  - rscadd: "Adds some generic outfits."
  - rscadd: "Ghostspawner spawn points are actually randomly picked."
  - bugfix: "Fixes marker layers."

---------

Co-authored-by: DreamySkrell <>
2024-04-20 21:14:47 +00:00
Avery Marie
b18e52b262 Tau Ceti Celebration Event PR (#18981)
This fixes the HAPT shuttle/replaces it and adds the VIP ghost role to
the CCIA spawner for this weekends coming event, and for future use.
2024-04-20 18:13:46 +00:00
Fluffy
1f759338d8 Processing subsystems improvements (#18961)
Refactored the use of the isprocessing var into the datum flag
DF_ISPROCESSING.
Updated SSprocessing and SSmachinery to have a constant fire rate.
Updated gas cooler to be time-constant thanks to the above.
2024-04-20 20:16:08 +02:00
RustingWithYou
6957bc34f1 Blueprints Rework (#18947)
Reworks blueprints to use an eye component for area selection and
changing. Blueprints will now work on whichever overmap site they spawn
on if overmap is enabled, though currently they have only been added to
the Horizon.

Adds shuttle-modifying blueprints for altering shuttle areas and
exoplanet outpost blueprints for creating areas on exoplanets. A set of
outpost blueprints and a lockbox containing blueprints for the Horizon's
shuttles have been added to the CE's locker.

Moves eye creation to a component.

Ported from:
https://github.com/NebulaSS13/Nebula/pull/465
https://github.com/NebulaSS13/Nebula/pull/564
https://github.com/NebulaSS13/Nebula/pull/3046
2024-04-19 21:56:26 +00:00
Fluffy
ab23fbdb70 Function overloads condensation (#18939)
Unified most of the procs into one definition, so there are no duplicate
around the codebase.
Marked some of the above as overridable if a good enough case can be
made for them (eg. external dependency or unlikely to be used).
2024-04-19 21:19:41 +00:00
Fluffy
9bb5a8ea09 Made the Destroy proc not sleepable (#18940)
Made the Destroy proc not sleepable

---------

Co-authored-by: FluffyGhost <FluffyGhost>
2024-04-16 20:03:23 +00:00
Fluffy
417be39b6a Character preferences / records html decoding (#17796)
Character preferences / records are now decoded correctly for the
computer UI and character preference.

Known issues, that already existed before this PR: Security incident
reports cannot be imported (nothing appears), charges and details of an
incident do not show up on the PDA application


![image](https://github.com/Aurorastation/Aurora.3/assets/65877598/86817f80-9026-49d7-92c7-57ebbffdf60c)
2024-04-15 08:43:52 +00:00
Fluffy
b6f650366b Door rigging tool (#18899)
Added a door rigging tool, it allows you to mine a door, so that when it
opens, it explodes. Requires the door to be welded shut first.
Added a box and antag uplink item for the above.

---------

Signed-off-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Co-authored-by: Geeves <ggrobler447@gmail.com>
2024-04-15 08:39:48 +00:00
RustingWithYou
2f097a06fe Origin Trait Changes + Vaurca Language Traits (#18912)
Origin traits, as well as species natural armor, will correctly remove
themselves when culture/origin/species is changed.
Vaurca primary language processors (K'lax Sinta'Unathi and C'thur
Nral'malic) are now culture traits rather than loadout items. This means
that they can be added/removed from ghostroles automatically without
having to copypaste the same code 200 times.

Secondary language processors (Sinta'Azaziba, Freespeak, Tradeband) have
stayed as loadout items as some of them do not have distinct cultures or
origins they can be added to.
2024-04-15 08:37:05 +00:00
smellie
11f8eff319 Cryonics Additions + IV Bag Stuff (#18415)
### Summary:
This PR fleshes out cryonics, both inside a cryotube and outside of a
cryotube, and gives a pharmacist a lot more to do during those high
energy rounds as they will be required to prepare and oversee any
cryonic mixes. Lots of ways you can go about doing with the biggest
reward being brain regeneration that bypasses oxygenation requirements,
at the cost of significant downsides if done improperly.

This generally empowers pharmacists and physicians and offers
non-surgical treatment alternatives, though often incurs a penalty or
takes a little longer than surgical treatment, so it doesn't make
surgeons redundant.

This list'll be exhaustive so medical players aren't left in the dark
and can just refer to this while a wiki update is worked on, instead of
digging through code.

 **Changes to Stasis/Cryotubes:**
- Stasis at temperates between 120K and 200K has been reduced to between
5 and 10, as opposed to 10 and 20. This means chemicals still have a
good chance of metabolising if you set a cryotube to above ~140K.
Cryotubes will still achieve good stasis if you cool below 120K -
upgraded stockparts from the workshop/R&D will help with this.
- (Bugfix) IPCs will not longer be knocked unconscious if they enter an
active cryotube.

**Misc. Reagent Additions/Tweaks:**
- Bicaridine now only requires 30u in the blood to begin attempting to
repair arterial bleeds, as opposed to 50u.
- Adds a Blood Thinning chemical effect. This prevents Coagzolug's blood
clotting effect from working and works in the opposite way - increasing
how much blood you lose per blood loss tick. Fluvectionem and
Synaptizine apply Blood Thinning at a strength of 25, translating to 25%
faster blood loss.

**Cryonic Chemicals:**
- Cryoxadone and Clonexadone both overdose at 5u. **_This is not a
problem when using a cryotube due to how cryotubes administer
reagents._** Overdosing either results in genetic damage and severe eye
damage.
- Cryoxadone and Clonexadone's organ healing capabilities have been
significantly nerfed. The organ healing is still noticable and useful
for pharmacist/surgeonless rounds; they cannot heal the brain though.
- Cryosurfactant has been renamed to Cryosilicate, mimicking
Pyrosilicate - the recipe now uses silicate instead of surfactant.
- Cryosilicate and Pyrosilicate now have an effect when used in the
body: cryosilicate will supercool a patient; pyrosilicate will
chemically incinerate someone. Leporazine will inhibit these functions.
- Bicaridine will repair arterial bleeds when used in cryogenic
conditions.
- Kelotane will repair disfigurement when used in cryogenic conditions.
- Peridaxon 2x effective in cryogenic conditions. Peridaxon can
denecrotise livers and kidneys in extracool cryogenic conditions - it
cannot denecrotise other organs. Using peridaxon in cryogenic conditions
will result in benign tumour growth (see below).
- Red Nightshade can repair bone breaks in cryogenic conditions. It will
still put a patient into a berserk state.
- Cataleptinol - see below.

**Cataleptinol Rework:**
Cataleptinol has been reworked from the ground up and is where
pharmacist's will be able to shine by making fancy cryotube beaker
mixers or cryonic mixtures for use in IV stands.
- The new recipe is 2 parts Alkysine, 0.5 parts Phoron, 1 part
Clonexadone and a 5u Cryosilicate catalyst. This translates to: 120u
Alkysine + 60u Clonexadone + 30u Phoron w/ 5u Cryosilicate = 60u (1
bottle) of Cataleptinol - expensive and lots of tricky precursors,
leaves enough left over to make a 2nd bottle without having to remake
all of the precursors.
- **In cryogenic conditions**, Cataleptinol will restore 7.5% brain
activity per metabolisation tick. This _bypasses the 85% oxygenation
requirement_, at the cost of hallucinations, blood thinning and liver
damage. The trade is roughly 40% brain activity (assuming nothing is
causing brain damage) for total liver failure.
- **Outside of cryogenic conditions**, Cataleptinol becomes a lot less
reliable and a lot more dangerous to use, with only a 75% chance of
restoring 2% brain activity per metabolisation tick. It will still
bypass oxygenation requirements, making it useful during _**severe
emergencies**_, at the cost of inducing painshock in addition to the
above hallucinations, blood thinning and liver damage. The trade is
roughly 25% brain activity (assuming nothing is causing brain damage)
for total liver failure.
- Cataleptinol _**overdoses at 3u**_ and has a fast metabolisation of
0.6u/tick - this makes it hard to dose without using an IV drip. If you
overdose Cataleptinol by using another method of administration, then
the patient's liver will crash, brain regeneration undone and the
patient will have severe seizures resulting in more pain. Using
Cataleptinol outside of cryogenic conditions **is high risk and only
potentially high reward**, but it could buy a couple more minutes.

**Tumours:**
- Adds Benign Tumours. Benign tumours simply drain nutrition and cause
frequent pain; they do not spread or affect nearby organs.
- Adds Malignant Tumours. Malignant tumours will begin by draining
nutrition then effecting symptoms based on the tumour's location (chest
tumours -> coughing, gasping, chest pain; brain tumours ->
disorientation, memory loss; abdominal -> vomiting, abdominal pain;
anywhere else -> lethargy). In the later stages, malignant tumours will
begin to damage the organs they are close to, then will eventually enter
the circulatory _~~and lymphatic~~_ system and spawn more malignant
tumours in other parts of the body.
- Peridaxon will result in benign tumour growth when overdosed or used
in cryogenic conditions.
- Genetic damage will result in malignant tumour growth.
- Ryetalyn is the anti-tumour drug and will put both benign and
malignant tumours into recession. You can also surgically intervene and
excise tumours as you would k'ois mycosis or fluke parasites.
- You cannot have more than 3 of any tumour - things won't get too out
of hand.

**IV Bag Stuff:**
- Adds 2 labels for IV bags: Cryonics Mixture, denoted by a CR; Other
Mixture, denoted by an M.
- Renames `blood packs` to `IV bags` and changes their formatting. What
was `blood pack O+` will now appear as `IV bag - O+ Blood`; `blood pack
Saline Plus` -> `IV bag - Saline Plus`.

**Misc.:**
- Only 20 genetic degradation on a limb is required to deform it instead
of 30. This should make it slightly more common, as 30 is a large number
to reach when this number is calculated per limb.
- Seizures can be given variable strengths.
- (Bugfix) Coolant tanks no longer just set a room's temperature to 0K
when destroyed. The amount it cools a room scales with the amount of
coolant still in the tank but cannot go below 173K/-100°C.
- Cryocells now have stockparts and can be upgraded/deconstructed.
2024-04-13 16:14:51 +00:00
RustingWithYou
4c7eb47229 Adds Camera MIU to uplink (#18887)
Adds the camera MIU to the antag uplink.
2024-04-12 22:22:23 +00:00
Fluffy
4e76fc5133 Ruins sanitization and unit test (#18923)
Properly split and use prefixes and suffixes, unit test to verify the
file exists and is not empty, and that the format convention is
respected
2024-04-12 22:21:34 +00:00
Fluffy
6f77b4d87b Update changelog generation (#18915)
Updated the changelog system


![image](https://github.com/Aurorastation/Aurora.3/assets/65877598/da2fc947-7179-4b57-9b6a-284b221529ed)
2024-04-11 23:34:18 +02:00
Fluffy
e8a007bf14 Fix some gamemodes from not being votable (#18791)
For some cursed reason the gamemode selection uses the config tag
instead of the name, that sometimes is the same as the config tag,
either way this should fix some gamemodes from not being votable and
thus the system reverting to extended
2024-04-08 08:35:40 +00:00
RustingWithYou
58f4b508e5 Einstein ERT Rig Armor Changes & ID Fixes (#18888)
The Einstein ERT rigs now use the armor values of the SCC rigs instead
of the (terrible) values of the old NT ones, as well as having the same
initial modules.

Also fixes missing ID access on EE and Zeng ERTs
2024-04-07 19:54:46 +00:00
RustingWithYou
d2366cc925 Konyang Guns & Armor (#18803)
Adds the three Konyang-themed guns used during Silicon Nightmares events
- the Konyang service pistol, Konyang police SMG, and Konyang rocket
launcher. These have been mapped in where appropriate, with the
exception of the rocket launcher.

---------

Signed-off-by: Werner <1331699+Arrow768@users.noreply.github.com>
Signed-off-by: RustingWithYou <63625389+RustingWithYou@users.noreply.github.com>
Co-authored-by: Werner <1331699+Arrow768@users.noreply.github.com>
Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
2024-04-04 10:37:15 +00:00
Cody Brittain
ddb14f4036 Planes & Layers part 1: The Re-Layering Redux (#18741)
This is part 1 of a project to, eventually, bring the render planes
system from /tg/ and bay into Aurora. This is a prerequisite and blocker
for many things the development team and community want to have, and
this was long overdue.

Many objects have been re-assigned layers, which are now thoroughly
defined. Maps have had their custom layer defines purged, as we should
be moving away from this in favor of saner definitions in the base
items.

This should be a test-merge due to the sheer amount of layers changed,
which will very likely create issues that I cannot possibly discover and
debug in a reasonable amount of time myself.

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2024-04-01 14:50:27 +00:00
Cody Brittain
bce6975e54 Add a two-item limit to Sanasomnum in the uplink (#18733)
* Add a two-item limit to Sanasomnum

Signed-off-by: Cody Brittain <cbrittain10@yahoo.com>

* CL

* Fix extension

---------

Signed-off-by: Cody Brittain <cbrittain10@yahoo.com>
2024-03-27 12:35:56 +00:00