Refactors the Chemistry-Reagents-Food-Drinks mega-file into 14 new files
for easier maintenance and readability. Food/drinks are divided into
either general food and drinks or cultural food and drinks. From there,
they're divided by human groups, then nonhuman species. Also marks
several for review or removal at a later date for being blatant
references or not real drinks.
Buffs most commonly seen energy weapons by anywhere from 2-6 shots.
Laser pistols get closer to 2-3, laser carbines and rifles see buffs of
3-5 more shots, and blasters get the most love at 2-6 more shots,
depending on model. Anything with a scope, disruptors, anything that
autorecharges, or otherwise unique/odd have been left alone.
These changes are being made to hopefully bring energy weapons more in
line with ballistics. I've noticed that energy weapons are very rarely
used by anyone but security or someone doing a very specific gimmick.
Any time its rev or there otherwise is a crew militia started, I'll
order both laser and ballistics, and the ballistics are always taken
first. Ballistics overall are very strong, dealing far more enduring
damage than energy weapons tend to. And, most ballistics blow energy
weapons out of the water for just raw DPS. For example, both the laser
rifle and burst rifle have a damage of 30, with an ap of 20 for the
laser and 28 for the ballistic. This is fairly comparable, but
critically, the burst rifle is a burst rifle. So per trigger pull,
you're potentially doing up to 60 damage with ap 28. This of course
assumes you're using lethal for both, polymer rounds for the burst rifle
do 25 damage at ap 34. Which would be up to 50 damage per trigger pull.
I just don't think that the rechargeable plus beams going through
windows makes up for it.
Energy weapons also just suffer from critically small ammo counts. Which
is fine in a ship environment like the horizon (to a degree), but they
tend to perform very poorly in expedition settings. To the point that
they're arguably not worth taking for most away sites. This is mostly
because the average encounter will spend half or 1/3rd your ammo.
I still want ballistics and energy weapons to have their respective
rolls of expendable ammo vs rechargeable, and projectile vs beams (going
through windows without having to break them first being a very nice
advantage). But, I'd like to see people at least consider energy weapons
over ballistic for mechanical reasons rather than just flavor. Like I
tend to do with their current stats.
So Zeng-Hu, a medical and science company has gloves right? But they're
not on par with neither latex nor nitrile gloves, now that didn't make
sense to me so here's a buff, now they're on par with nitrile gloves.
(I don't know if glove powergaming happens but can reduce them to latex
if _nitrile_ is too strong)
This change reduces the damage that the green, watermelon-looking
"Creature" mobs are capable of.
Previously, their attacks had a damage range of 20-50. For comparison,
Plains Tyrant and Cavern Geist do 40 damage an attack.
The Xenoarchaology item that spawns these green dudes seems to be
capable of spawning them pretty quickly - and when you're fighting
simple mobs that are able to break your bones and give you an arterial
bleed in a single hit, that gets silly pretty fast.
I've tweaked the damage numbers so that the Creatures are a little
stronger than Hivebot Guardians in terms of damage.
Adds a generic Idris dress to the loadout, exclusive to Idris
Incorporated characters, sprited by the very talented Comet Blaze on
discord! I'd mostly see this being worn by service staff, including
ICSUs and IAUs, which currently don't have a very good generic uniform
to wear.

Mapping changes are adding the same dress to the Idris Cruiser offship.
Adds a new item to the smoking loadout tab, an empty metal cigarette
case that can hold 14 cigarettes. Intended to be filled up by rolling
people or those who prefer to keep all of their poison-in-a-stick within
a cute, convenient package.
Fixes an issue wherein the in-hand mob sprites would not display for
cigarette packets and cigar cases, they now do so properly. Modified the
north facing sprites so they don't look out of place (appear BEHIND the
player sprite)
Fixes an issue wherein you could place cigars into smaller cigarette
packets, which became relevant because that meant you could stuff the
cigarette case full of oversized cigars. Now you can only hold cigars in
cigar cases, as you should.
Built for modularity, it should be easy for contributors to add their
own cigarette cases design, and to tweak the existing cigar cases code
to allow for the same handling of open icon states, where multiple
closed icon sprites change to one single batch of open icon sprites,
reducing bloat. Courtesy of Geeves.
While currently out of scope of the P-R, this is intended to be improved
later down the line by allowing you to select which kinds of cigarettes
can spawn in the case in addition to allowing it to start empty, kind of
like how lunch boxes work. Was too complex for me to figure out and
would've taken far longer than needed, but is a planned project for the
future.
Ports the DBCore subsystem from tg.
A few things had to be dumbed down to make them work here.
Separate PRs will be created for different systems as they are moved
over to the new DBCore.
---------
Co-authored-by: Werner <Arrow768@users.noreply.github.com>
Given that the pharmacist is given inhalers and autoinhalers to fill
every round with pneumalin, pulmo, dexalin, and whatever, I figured this
might've been an oversight.
Super helpful for Odyssey rounds when all the crew are going down and
medical wants to bring the entire fridge (8 autoinhalers + 2 inhalers +
4-6 small inhaler cartridges AND the bottles)
EDIT: Changed to only inhaler cartridges, not autoinhalers nor inhaler
bases.
Refactored (second passage) how movement works, now it's mostly in line
with TG handling and avoids calling 3 gazillion Cross() Uncross() etc.
on every atom in a turf.
Fixed EMP protection from species not actually protecting (this includes
the surge prevention for IPCs).
Fixed EMP 3D calculation runtiming because I forgot to make the value
absolute and it was doing the square root of a negative number.
It's now possible to queue the round to start with the Start Round verb
even while the system is initializing, for an even faster pain train to
enter the round and test things.
Updated the renderers to work with BYOND 516.
Some update of ZAS to hopefully be more efficient, and cold/hot air
effects.
Gas effects are now less prominent.
Ported from Bay
There was an edge case where collisions were checking the platform first
before any other obstacles on the tile and platforms were pulling people
down to "hop down" through the railings or whatever. Fixes that.
Whoopsie.
---------
Signed-off-by: FlamingLily <80451102+FlamingLily@users.noreply.github.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Fixes#20571Fixes#17105
- bugfix: "Fixes invisible thermal lance inhands."
- bugfix: "Fixes bulwark chat bubbles."
Also moved the bulwark sprites in dmis to the left one pixel to match
all the other sprites. It annoyed me that it was 9 pixels adjusted
instead of 8 like everyone else. Alignment unchanged.
I noticed these when testing another PR. These don't fit our current
server style, and they're obviously ancient.
I ported the current ones from Baystation, which fit our style much
more. In addition, the code itself has been improved to remove the old
spans.
Title. Noble Row said that their passports would likely be electronic,
so I went with that. Humans can also take them, as some humans are
mentioned as having citizenship through marrying an IPC on the wiki, but
this can be removed if requested.
!!Requires synth lore team input!! @NobleRow
Sprite preview (subject to change):

---------
Co-authored-by: Gabby <59633984+feartheblackout@users.noreply.github.com>
Fixes:
* Platforms blocking thrown items from moving. I believe this also fixes
maneuvering over platforms, et cetera.
* Fixed a bug that would cause platforms to become un-climbable if
climbing them was aborted early.
* Made it so that you can "climb down" a platform just by walking over
them. Climbing "Up" a platform still requires a climb action and will
block things that cannot climb, but now you can have vehicles, such as
mechs, go over a platform without needing to climb. This allows you to
piledriver someone with a mech from deck three to deck one. If you want.
These are intended to be available in the cargo list, so marking as
draft until that can be confirmed.
This ports radiation collectors from baystation12. These use the
ssradiation system that we have, to generate power from phoron and
radiation. This is contrasted with the prior iteration of these units,
which solely generated power from the singularity. These could be used
to generate power around a supermatter reactor, or a fusion reactor, or
any number of things that the playerbase can think of. The only thing is
that these cost precious phoron; you do not want to use these as the
sole source of power aboard anything.
### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:
| Path | Original Author | License |
| --- | --- | --- |
| icons/obj/machinery/rad_collector.dmi | Chinsky (Baystation12) |
CC-BY-SA |
---------
Co-authored-by: Cody Brittain <cbrittain10@live.com>
Per request of human lore.
Adds one new origin and six new accents.
Saturn becomes a new origin, under which three accents become options,
Iapetus (Cassinian), Enceladus, and Titan.
Mercury and Eris accents added to the currently unused 'Sol System'
origin, making it far less redundant than it currently is.
Unity Station accent added as an option for Earth origin.
"Stationer (STA): Similar to the conventional Terran accent, the
“Stationer” accent instead has its roots in North American English,
reflecting the Alliance’s history in the region.
Mercurian (MCY): Mercurian Common is often heard in the boardrooms of
Einstein Engines, which employs much of the planet’s population. Those
who speak with this accent are often – to no fault of their own –
regarded with suspicion by the SCC due to this association.
Enceladian (ENC): Enceladian Common is descended from the accents of
North and South America, and the residents of Saturn’s moon take pride
in ensuring their accent calls back to their ancestral homes on Earth.
Cassinian (CAS): Cassinian Common, the accent of Iapetus, is typically
associated with the Solarian Interstellar Intelligence Bureau, and
characters affiliated with it in Solarian movies will often talk like a
Cassinian: soft-spoken and generally polite, but reserved and often
distant.
Titanii (TIA): The largest offworlder population in the Sol System,
Titanii Common involves plentiful hand gestures and other visual
signals. Linguists have long theorized the prominence of hand gestures
in this accent comes from the moon’s EVA-centric industries.
Erisian (ERN): Erisian Common bears some resemblance to Lunarian Common
due to the planetoid’s long association with the Solarian Navy. Like its
counterpart, it is very hard to effectively replicate for an outsider."

Nanotrasen and Nanotrasen aggressive law modules/boards renamed to
Conglomerate/Conglomerate Aggressive
Adds the Conglomerate Aggressive lawboard (this lawset already exists,
just never was given a board?). Adds a copy to AI Secure Storage
(alongisde the existing lawboards, this falls under a board the SCC
would have just in case, like the other ones there.)
---------
Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
Per request of synthlore - you can no longer select the android job
title to spawn in with a positronic brain in a shipbound chassis, and
neither can you manufacture one.
Cyborgs broadly are not removed and are completely playable, but they
must contain either an MMI or a robot circuit. Positronics can still be
installed into an AI core.
Fixes#19603Fixes#20558
- bugfix: "Fixes plant bags - now uses storage_slot system, along with
other bag subtypes."
- bugfix: "Borgs can interact with tables again."
- refactor: "Refactors make_exact_fit to be a binary variable."
- refactor: "Refactors storage items to use make_exact_fit instead of
arbitrary max_storage_space values."
- refactor: "Refactors storage items to use defines for storage space."
- bugfix: "Fixes monkey cube boxes having superfluous overlay."
- rscadd: "Updates the progress bar toggle message."
- qol: "Objects that rotated 90 degrees in storage no longer rotate in
storage slots."
<img width="732" alt="dreamseeker_qRVkIlYN78"
src="https://github.com/user-attachments/assets/1226ed22-52c1-4965-a1b4-2290e56a2ab3"
/>
-Adds 8 new food dishes, among them 6 Asian/Konyanger from cuisine (Moss
burger, moss big bite burger, sweet chili chicken, crimson lime,
vegetable eggrolls, and meat eggrolls) and 2 other dishes (dodo ikire
and mozzarella sticks)
-Adds sweet chili sauce
-Adds Macarons to the custom foods you can make with the oven
-Waffles and fries now visually change based on specific syrups or
condiments you pour onto them much like pancakes already do.
-Removed the aspect of batter that makes people nauseous after consuming
it because it was breaking a lot of fried foods.
-Rearranges a bit of code so things are in the right category
-Makes produce boxes more likely to have onions and garlic in them since
there are a lot of recipes that require them.
(NOTE: If/when giving feedback please keep in mind my knowledge of code
is very limited, I may not know some terms you refer to, and some of the
code for more advanced mechanics has been copied and edited from other,
pre-existing bits in the code.)
---------
Signed-off-by: tomixcomics <11053204+tomixcomics@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Adjusts the generic exoplanet dirt turf so it doesn't leave footprints,
it's used in maps such as odyssey ones and the footprints get hellish on
those.
Also gives many exoplanet turfs descriptions, as well as adjusts the
names of some of them.
Added armor defines
Converted raw strings use to defines
Added UT test to ensure people set the armor var correctly (to a list)
No player facing changes
Title. Characters with Orepit citizenship aren't meant to be either
Consular Officers or Diplomatic Aides, but the latter was showing up as
an option in the join menu so this should rectify that. Orepitters might
still able to be Diplomatic Aides for the Coalition depending on how
lore feels, but this doesn't touch that. Should count as a bugfix unless
maintainers decide it isn't.
---------
Co-authored-by: Gabby <59633984+feartheblackout@users.noreply.github.com>
**NOTE TO SYSADMINS: See "SQL Details" section below for information on
SQL modifications.**
Moves the data containing cargo items (i.e. the ones you order from ops
and get in the cargo shuttle) from the online database to the codebase.
Everything from suppliers to categories to individual items is now
code-side and editable by developers/contributors.
Refactors cargo items to use `singletons` instead of `datums` for
`cargo_supplier`, `cargo_category`, and `cargo_item`. Multiple-instnace
things like cargo_orders, etc. still use `datums`.
Fixed a bunch of strange discrepancies in categories, suppliers, and
pricing for various cargo items. I did a little bit, but it's exhausting
to go through all of it right now.
Clicking the 'Details' button on the Cargo Order app now actually gives
you details instead of bluescreening. Also added some UI elements to the
Cargo Order app - Cargo Control and Delivery remain untouched.
Overhauled the Cargo Order console TGUI window. It now has tabs on the
left, displays restricted access, supplier information, and boasts
search functionality.
### SQL Details
<details>
<summary>SQL Details [Click to Expand]</summary>
The following SQL tables should be deleted or deprecated from the server
database, as they are no longer in use:
- `ss13_cargo_items`
- `ss13_cargo_categories`
- `ss13_cargo_suppliers`
The included migration file, `V011__codeside_cargo`, creates a new table
`ss13_cargo_item_orderlog` to the DB. This **replaces**
`ss13_cargo_orderlog_items`. Because of this,
`ss13_cargo_orderlog_items` is deprecated and should either be deleted
or locked & preserved for logging purposes.
</details>
## Screenshots





---------
Signed-off-by: naut <55491249+nauticall@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
- Full moderators can now use rejuvenate.
- Full moderators can now spawn atoms.
- Full moderators can now remove/add languages.
- Full moderators can now teleport mobs.
- Repurposes R_BAN into a generic permission that full moderators and
above have, and locks teleport behind it.
None of these powers may be used for round-altering purposes. Pending
review by the head admin and the host.
To-do: check that Borealis and permissions in general don't explode with
these changes.
---------
Co-authored-by: realmattatlas <liermattia@gmail.com>
Removed the use of deprecated parameter icon-size.
Uniformed all clients to use fit to screen.
Fit to viewport is automatically attempted at login.
Statusbar is now hidden by default, giving more screen space.
Toggle fullscreen now works as expected, for even more screen space.
---------
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: realmattatlas <liermattia@gmail.com>
I had to unironically bust out my pen and paper for this bullshit and
magnifying tool to actually check if things were pixel perfect.
- bugfix: "Fixes storage box alignment and storage space UI to use
better maths."
- qol: "Tweaks IDs, IDs and firing pins now rotate 90 degrees when in
storage for easier clickability."
- bugfix: "Fixes Item Tooltip toggle message."
- bugfix: "Fixes roundstart items in storage not showing item outlines."
Fixes#20529
---------
Signed-off-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Done with permission from @NobleRow and the synthetic lore team!
Reflects the outcome of the BitByte news article [found
here.](https://forums.aurorastation.org/topic/15858-bitbyte/page/4/#comment-179689)
For humans: "All Orepitters abroad in the Open Doors memorandum would
not work in jobs not requiring an education, and cannot work for
Hephaestus Industries because of its practice of not hiring Trinarists,
nor directly for the Stellar Corporate Conglomerate due to its distrust
of the Church; Orepitters who travel abroad independently, either
because they are not Trinarists or not participants in the memorandum,
are not held to this. Human Orepitters born in the Twenty Parishes
should select the Native Orepitter accent, while humans born in
Providence or the Marches should select the Providence accent."
For IPCs: "All Orepitters abroad in the Open Doors memorandum would not
work in jobs not requiring an education, and cannot work for Hephaestus
Industries because of its practice of not hiring Trinarists, nor
directly for the Stellar Corporate Conglomerate due to its distrust of
the Church; Orepitters who travel abroad independently, either because
they are not Trinarists or not participants in the memorandum, are not
held to this."
---------
Co-authored-by: Gabby <59633984+feartheblackout@users.noreply.github.com>
Fixed ninja teleporter requiring access to run.
Renamed the program to 'ninja teleporter' and removed the standard
teleporter from the program list for the preset.
Fixes#20237