mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-17 05:27:38 +03:00
dee30c0f32fe8824941114fbfb2cbac5c4caed66
70 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
189ebe61ab |
Seperate EMAG into EMAG and Authentication Disruptor (#34337)
(cherry picked from commit 253a9fbdf1372f80dad65a80dcb8e5d169861804) |
||
|
|
8a95ee85bf |
Upstream 28.02-03.03 (#268)
* More Tajaran Markings (#1834) <!-- 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]? --> Description. Adds separate eye colors to Tajaran and makes most of the markings from "Fashion Update: Earrings & Makeup" available to Tajarans --- <!-- 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 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 --> 🆑 Tonk - add: Tajarans now have separate eye, wrist, tattoo, and makeup markings --------- Co-authored-by: VMSolidus <evilexecutive@gmail.com> (cherry picked from commit e45008ddf8a529c2126907ecac8ffff2a74058de) * Automatic Changelog Update (#1834) (cherry picked from commit 0091c1ebdc4bc768c0906049fa9d417d962d1839) * Cybernetics Trait Changes (#1828) # Description Changes/buffs to Cybernetic Traits. Some lesser used traits get some love, while some other stuff gets some logical re-balancing. Feel free to point out if some shitcode is broken or need explaining. --- # TODO - [ ] I got ideas cooking that I don't know how to code --- # Changelog 🆑 tweak: Striking Calluses no longer require you to be one of 3 jobs and Human. Also increased the +1 damage to +2. tweak: Bionic Spinarette SHOULD no longer have a hunger penalty and costs less. tweak: Platelet Factories heal rate buffed from 0.07 to 0.35, airloss from 0.7 to 0.25 and healing cap increased from 200 to 400. tweak: Decreased the cost of Thermal Vision to be in line with Night Vision. tweak: IPC Platelet Factories healing cap increased from 200 to 250 tweak: Cyber-Eyes Omnihud now pickable by Command too. fix: Fixed name and description of Cyber-Eyes Modules for Night Vision and Thermal Vision. remove: Mind over Machine from Cyber-Eyes Modules. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - "Striking Calluses" now delivers increased unarmed strike damage, enhancing combat performance. - **Documentation** - Trait names and descriptions have been updated for greater clarity and consistency, including changes to "Cyber-Eyes" terminology. - **Chores** - Redundant trait options were removed from the selection pool to streamline gameplay. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Raikyr0 <Kurohana@hotmail.com.au> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> (cherry picked from commit a480c6605ebdfdd32d87a9001f2aef8303433a8d) * Automatic Changelog Update (#1828) (cherry picked from commit 365dd4353a06854120e0a38ff05f193bad48bbc7) * Shadowkin Age Fixes & Plus Plushies (#1684) # Description Shadowkin middle-aged increased to 80, old age lowered to 175, max age lowered to 250. Shadowkin can now collect their goofy little plushie from a variety of sources --- # TODO - [x] Adjust Shadowkin age brackets - [x] Add Shadowkin plushie to crates and stuff --- # Changelog 🆑 ShirouAjisai - add: Added Shadowkin plushie to crates and stuff - tweak: Tweaked Shadowkin age brackets <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new "shadowkin plushie" loadout item, enhancing customization options. - Expanded the collectible pool by adding a new plushie available in multiple game areas, including reward systems and random spawners. - Enhanced the variety of items available for the `PresentRandom` entity with the addition of the "shadowkin plushie." - **Adjustments** - Refined life-stage parameters for the Shadowkin species, adjusting age thresholds to better define maturity. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: SixplyDev <einlichen@gmail.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: ShirouAjisai <zaneromeave319@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> (cherry picked from commit fb3d00036f6a21d7fa3c4b41341cd61b1e41e0d0) * Automatic Changelog Update (#1684) (cherry picked from commit caf8572352d38f51b15d21f0e1f92434f869dd14) * Trait Add Tag (#1846) # Description Added TraitAddTag Function, which for example can be used to add Spidercraft to the Spinerette trait. # Changelog 🆑 - add: TraitAddTag Function <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Entities now receive automatic tag assignments at spawn, enhancing the system's trait interaction and overall categorization capabilities. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Raikyr0 <Kurohana@hotmail.com.au> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> (cherry picked from commit b1acdc4017dc1181b7f557351e82ef1df93635c2) * Automatic Changelog Update (#1846) (cherry picked from commit 9622d443d5308eda14231c3b3bb3130884465272) * Arachne SpiderCrafting (#1847) # Description Added SpiderCraft Tag to Arachne # Changelog 🆑 - add: Added SpiderCraft to Arachne <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new "SpiderCraft" classification for the Urist McArachne entity, expanding its behavior and interactions related to spider-specific mechanisms. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Raikyr0 <Kurohana@hotmail.com.au> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> (cherry picked from commit ff4146f879d397993eee22a2a4807e986e404641) * Automatic Changelog Update (#1847) (cherry picked from commit 91d40483c2c49f86d7b2609a5ac9cd7b30d16c00) * Add Centcom Disabler (#1845) <!-- 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]? --> it self recharges a bit. It's also green. It's also a steal target, because it's green. I noticed the Nanotrasen Representative has a disabler in his locker by default, but does not get to pick one in a loadout. I figured I'd remedy this, by giving him a shiny green Disabler that slightly recharges on its own. It deals the same stamina damage as the normal Disabler. The only differences are: - Green - Steal Target - Slightly higher rate of fire - Slightly recharges itself (half as slow as the antique pistol) - Admits Centcom doesn't trust you with lethals in its description --- <!-- 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/f7eaff3d-b8b9-4954-9688-fb9ef0d04588  </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 CentCom disabler as loadout option for the Nanotrasen Representative. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Expanded loadout options for the Nanotrasen Representative role with a dedicated weapon configuration. - Introduced the "CentCom disabler," a new self-defense weapon option with advanced features. - Updated localization entries to reflect the new representative weapon grouping. - Added a new steal target group for the Nanotrasen representative's weapon. - Enhanced visual assets with updated animations and states for the new weapon. - Introduced new objectives related to the Nanotrasen Representative role, enhancing gameplay experiences. - Added the "Nanotrasen Representative" job title to localization. <!-- end of auto-generated comment: release notes by coderabbit.ai --> (cherry picked from commit 143d24951a200ab94f3e4e88d3a3a90eeb8856ca) * Automatic Changelog Update (#1845) (cherry picked from commit 7ca0757334ee9a1d87c9cbf1f9cc02a860ecc136) * Plant Analyzer Port (#1849) <!-- 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]? --> Ported directly from https://github.com/Goob-Station/Goob-Station/pull/1685 I tweaked the sprite, and changed its usage of a Papersystem. I can't speak for the code quality, since I didn't write it, but I'm willing to fix things so long as I have the capability to do so. --- <!-- 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/0189567a-57ca-4e9d-ba0d-74e622e1d30d https://github.com/user-attachments/assets/25ea6100-1458-4804-98e4-5f70b6bfcd45 </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: Port Plant Analyzer from botanySupremacist, who took it from ian321 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a comprehensive plant analyzer interface that displays detailed plant health, tray data, and environmental conditions. - Added an in-game report printing feature for easy access to analysis results. - **Enhancements** - Refined yield calculations and plant metabolism behaviors. - Integrated the analyzer item into crafting recipes, vending machines, and locker inventories. - Expanded localization for clearer, user-friendly plant analysis information. - Added new localization strings for printer status feedback. - Introduced new classes and messages for improved data handling and user interaction within the plant analyzer system. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Timfa <timfalken@hotmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> (cherry picked from commit 47a55408ad92af463159dea3325edd0c9c9611ce) * Automatic Changelog Update (#1849) (cherry picked from commit 4da1efdfd293d5df1c8bd889c621eea94ed5fed8) * Mind Role Entities (#31318) * Mind Role Entities wip * headrev count fix * silicon stuff, cleanup * exclusive antag config, cleanup * jobroleadd overwerite * logging stuff * MindHasRole cleanup, admin log stuff * last second cleanup * ocd * minor cleanup * remove createdTime datafield * now actually using the event replacement I made for role time tracking * weh (cherry picked from commit 24fae223e698b09cf9928c4a0f2f1dc774f266ab) * Fix error (cherry picked from commit d33bf89a62ae2f5d51f3af01b4ae2ef54341b5c5) * Update SharedContentIoC.cs (cherry picked from commit a50fed2fee56b57d0507a58ebf7bc13de82ad9d2) * dragon antag refactor (#28217) * remove dragon system usage of GenericAntag * add AntagRandomSpawn for making antags spawn at a random tile * add AntagSpawner to make an antag spawner just spawn an entity * add antag prototype for dragon since it never had one * make dragon spawner a GhostRoleAntagSpawner, remove GenericAntag * make dragon rule use AntagSelection and stuff * remove dragon GenericAntag rule * add back to spawn menu --------- Co-authored-by: deltanedas <@deltanedas:kde.org> (cherry picked from commit c0a56377bc5b9563de973d04f92d7d6923ca9145) * Cultist Mind Roles (cherry picked from commit 585e26103a67cc2bd185faaa468ddc5840a8e9c3) * Update midround.yml (cherry picked from commit b78d24ce6bb7f8cb4a85a89f6f974fbce1d83055) * Update ghost_roles.yml (cherry picked from commit 22df7509b5c5113afc8f1ba168223b0756de5d47) * Solarian Alliance Content (#1851) # Description This PR acts as a proper introduction to players for the Sol Aliance faction, a major antagonist group from my old home server's lore. To do so, I've ported a large number of assets from Aurora.3 to this repo, as well as created a new Midround Antagonist called "Deserters", which shows off this group to players. <details><summary><h1>Media</h1></summary> <p>    </p> </details> # Changelog 🆑 - add: A new Midround Antagonist has been added to the game. The "Solarian Deserters" are a group of highly trained soldiers who haven't been paid for far too long, whom have come to the station to loot it for everything valuable. - add: Lore guidebook entry for the Solarian Alliance, a majorly antagonistic faction. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced the "Solarian Navy Deserter" role with detailed localization, objectives, and traits. - Launched a dynamic shuttle event featuring interactive elements like secure doors, turret defenses, and specialized equipment. - Expanded gameplay with new storage options, tactical helmets, uniforms, identification cards, and door access tailored for the Sol Alliance. - Added a new NPC faction and game events enhancing combat and role-play dynamics. - Introduced various clothing items and uniforms associated with the Sol Alliance, including tactical gear and dress uniforms. - Added new metadata and structured entries for various clothing and equipment assets. - **Documentation** - Enriched lore and guidebook entries with expanded nation details, emphasizing the Solarian Alliance. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> (cherry picked from commit 6d919038f3845bb4008a17e1d068196779162f4a) * Automatic Changelog Update (#1851) (cherry picked from commit ffaf99ca4b01e63f6bb98731e630f066fad25909) * Supermatter Atmos Mapping Assets (#1859) # Description This adds "High Flow" variants of all existing atmos devices, which are useful for supermatter engines. I also added the ability for FixAtmosMarkers to optionally accept a gas mixture directly, as opposed to the stupid hardcoded gas mixes that they were limited to using previously. # Changelog 🆑 - add: Added high pressure variants of atmos devices intended for supermatter engines. - add: Added engineering locked high security doors, also for use in supermatter engines. - add: Fix Atmos markers can now accept a gas mixture directly for modifying their tile. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced atmospheric commands now dynamically use specific gas mixtures for more flexible performance. - Introduced a new supermatter coolant entity, offering an alternative liquid nitrogen-like option. - Added several high-pressure and high-flow gas components, including pumps, filters, mixers, vents, and injectors. - Updated map elements by refining door access prototypes and labels for improved in-game clarity. <!-- end of auto-generated comment: release notes by coderabbit.ai --> (cherry picked from commit b9c3c8b366c15b5f09cfd641c90b09254f06de94) * Automatic Changelog Update (#1859) (cherry picked from commit 468a263863f17772e6233032e5099d6c83764616) * Rerotate Arena (#1853) <!-- 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]? --> Rerotates Arena. Adds an AI satellite, and maps a few station maps, cameras, and psionic registry computers. Adds myself as the maintainer for it. Do note that I am still learning how to map. Please state any changes that is wished to be seen before it is ready to merge. It is 3AM, I need sleep. --- # 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] Space cleanup - [x] Psionic Registry Computers - [x] AI Satellite & Related Stuff --- <!-- 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: Arena is back <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - The Arena map is now reactivated with updated configurations and active maintenance. - Enhanced gameplay details and role assignments have been enabled for a more engaging experience. - The configuration for the Arena map has been fully activated, including various roles and attributes. <!-- end of auto-generated comment: release notes by coderabbit.ai --> (cherry picked from commit 534a058eb489ceb4abaadac7e4943ed2baaa8c67) * Automatic Changelog Update (#1853) (cherry picked from commit 3b30c0a1fe8dc5e10c3cb0536e26d101893663a2) * Port Grab Intent From Goob (#1856) # Description After months, Grab intent is finally ported to EE, as a result of a 4 hour Adderall induced code binge. ## This PR is more shit than code. Required for CQC, an attempt to port that will come later. @Erisfiregamer1 requires this for [Changelings](https://github.com/Simple-Station/Einstein-Engines/pull/1855). Thanks to Gus for the Goobstation pr, and to Spatison for the original port on WWDP Tests on my local repo worked. # TODO * [ ] Await review * [ ] pain # Media  # Changelog 🆑 Eagle * add: Ported Grab Intent from Goobstation <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced pulling and grabbing interactions now feature multiple stages that impact how actions and collisions feel. - Virtual item handling during throws and drops has been refined for more dynamic in-game outcomes. - Alert visuals have been updated to provide nuanced feedback depending on the intensity of pulls and grabs. - Player movement and breathing mechanics have been fine-tuned for more realistic behavior. - New localization strings deliver clearer, context-sensitive notifications for grab-related actions. - Introduced a new component and system for managing entities thrown while grabbed, including damage handling and visual effects. - New event classes enhance interaction handling for virtual items during grabbing actions. - **Bug Fixes** - Improved logic for stopping pull actions to ignore grab states when necessary. - **Chores** - Added metadata for new textures related to alerts in the user interface. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: VMSolidus <evilexecutive@gmail.com> (cherry picked from commit 18722e86f3190632026127af111dcc0d10d4af49) * Automatic Changelog Update (#1856) (cherry picked from commit 309ab74013fed2be64d9fb0457631210d860644b) * Port Role Types (#1860) Ports https://github.com/space-wizards/space-station-14/pull/33420 This is the last requirement before we can start mass-porting new antags. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced role displays in player and character interfaces with a new "Role Type" column. - Updated admin overlay options, including a classic antagonist label. - Expanded ghost role behaviors for various entities, offering more dynamic gameplay. - New localization entries for role types and UI settings for sounds and layout customization. - Added new mind roles and role types, improving role management and gameplay interactions. - Introduced new events for player spawning processes to enhance gameplay scenarios. - **Refactor** - Streamlined role management and update processes for improved reliability and performance. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com> (cherry picked from commit e10c51cdb39845ed1f2bb9b08f0b226cefbd402e) * Rock And Stone <!-- 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]? --> Ports Lavaland and required systems from Goobstation. --- # 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] Port over _Lavaland - [x] Port over required codepatches - [-] Test locally (Should be fine) - [X] Pass tests --- <!-- 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: Lavaland has been ported! <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a dynamic mining voucher interface allowing players to redeem various mining kits. - Enhanced shuttle docking systems with an updated console interface for smoother FTL transitions. - Added immersive boss music management for enhanced in-game boss encounters. - Expanded Lavaland gameplay with new procedural map generation, weather events, and storm scheduling. - Integrated new interactive commands and UI improvements for advanced weapon upgrades, Hierophant boss actions, and research features. - Added new components and systems for managing various gameplay elements, including damage squares, tendrils, and block charges. - Implemented new localization entries for improved player experience across various game features. - Introduced new components for managing mining vendors and vouchers, enhancing the interaction with mining kits. - Added a new system for managing the deployment of shelter capsules in the Lavaland environment. - **Tests** - Added integration tests to validate Lavaland planet generation and map initialization. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: VMSolidus <evilexecutive@gmail.com> (cherry picked from commit f2f5d4610db795a124b37780230eec5d5ca0264a) * Automatic Changelog Update (#1844) (cherry picked from commit 990878b9ed60b4e22388038b63714ec2dc693bbf) * fixs * fix * fuck --------- Co-authored-by: Tonk-GCR <190437025+Tonk-GCR@users.noreply.github.com> Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com> Co-authored-by: Raikyr0 <kurohana@hotmail.com.au> Co-authored-by: SixplyDev <einlichen@gmail.com> Co-authored-by: Timfa <timfalken@hotmail.com> Co-authored-by: Errant <35878406+errant-4@users.noreply.github.com> Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com> Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: astriloqua <129308840+astriloqua@users.noreply.github.com> Co-authored-by: Eagle-0 <114363363+Eagle-0@users.noreply.github.com> Co-authored-by: Eris <eris@erisws.com> |
||
|
|
618bb61d2b |
Allow Cloning Living People (#1679)
# Description
Allows living people to be cloned. Implements (but does not cherry-pick)
https://github.com/Goob-Station/Goob-Station/pull/932. Whether living
people can be cloned or not can be set with a new CVar
`cloning.allow_living_people`.
Also prevents Plasmamen from self-igniting while being cloned in a
cloning pod. (Lore reason: They are literally submerged in fluids while
being cloned)
Fixes a bug in `EndFailedCloning` that caused the server to crash if the
used biomass was too low:
|
||
|
|
6249942d3e |
Goob Mechs (#1611)
# 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]? --> We like mechs here, yeah? --- # 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 --> 🆑 Mocho, John Space - tweak: The H.O.N.K. has received an airtight cabin for honk operations in outer space. - add: Added the Ripley MK-II, a heavy, slow all-purpose mech, featuring a pressurized cabin for space operations. - add: Added the Clarke, A fast moving mech for space travel, with built in thrusters (not certain if they work properly though :trollface:) - add: Added the Gygax, a lightly armored and highly mobile mech with enough force to rip walls, or someone's head off. - add: Added the Durand, a slow but beefy combat suit that you dont want to fight in close quarters. - add: Added the Marauder, a specialized mech issued to ERT operatives. - add: Added the Seraph, a specialized combat suit issued to ??? operatives. - add: The syndicate has started issuing units under the codenames "Dark Gygax" and "Mauler" to syndicate agents at an introductory price. - add: The exosuit fabricator can now be emagged to reveal new recipes. - add: There are 4 new bounties cargo can fulfill for mechs. Feedback on the cost/reward is welcome! --------- Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com> Co-authored-by: John Space <bigdumb421@gmail.com> Co-authored-by: gluesniffler <159397573+gluesniffler@users.noreply.github.com> Co-authored-by: ScyronX <166930367+ScyronX@users.noreply.github.com> (cherry picked from commit e3003b67014565816e83556c826a8bba344aac94) |
||
|
|
885ee5a831 |
Wizmerge for Station AI (#1351)
<!-- 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 the adding AI is now up to y'all because i'm not touching loadout code for name datasets, but it shouldn't be too bad from here --------- Signed-off-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com> Signed-off-by: SolStar <44028047+ewokswagger@users.noreply.github.com> Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: themias <89101928+themias@users.noreply.github.com> Co-authored-by: Verm <32827189+Vermidia@users.noreply.github.com> Co-authored-by: DrSmugleaf <10968691+DrSmugleaf@users.noreply.github.com> Co-authored-by: Sphiral <145869023+SphiraI@users.noreply.github.com> Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com> Co-authored-by: Mr. 27 <45323883+Dutch-VanDerLinde@users.noreply.github.com> Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com> Co-authored-by: Alzore <140123969+Blackern5000@users.noreply.github.com> Co-authored-by: ravage <142820619+ravage123321@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> Co-authored-by: Intoxicating-Innocence <188202277+Intoxicating-Innocence@users.noreply.github.com> Co-authored-by: Saphire <lattice@saphi.re> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com> Co-authored-by: Tayrtahn <tayrtahn@gmail.com> Co-authored-by: CaasGit <87243814+CaasGit@users.noreply.github.com> Co-authored-by: BramvanZijp <56019239+BramvanZijp@users.noreply.github.com> Co-authored-by: Boaz1111 <149967078+Boaz1111@users.noreply.github.com> Co-authored-by: NakataRin <45946146+NakataRin@users.noreply.github.com> Co-authored-by: Kara <lunarautomaton6@gmail.com> Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com> Co-authored-by: SlamBamActionman <slambamactionman@gmail.com> Co-authored-by: Doomsdrayk <robotdoughnut@comcast.net> Co-authored-by: Brandon Hu <103440971+Brandon-Huu@users.noreply.github.com> Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com> Co-authored-by: ElectroJr <leonsfriedrich@gmail.com> Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com> Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com> Co-authored-by: Julian Giebel <juliangiebel@live.de> Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com> Co-authored-by: Repo <47093363+Titian3@users.noreply.github.com> Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com> Co-authored-by: icekot8 <93311212+icekot8@users.noreply.github.com> Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Co-authored-by: no <165581243+pissdemon@users.noreply.github.com> Co-authored-by: Tornado Tech <54727692+Tornado-Technology@users.noreply.github.com> Co-authored-by: osjarw <62134478+osjarw@users.noreply.github.com> Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com> Co-authored-by: TGRCDev <tgrc@tgrc.dev> Co-authored-by: Milon <milonpl.git@proton.me> Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> Co-authored-by: Fildrance <fildrance@gmail.com> Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru> Co-authored-by: chavonadelal <156101927+chavonadelal@users.noreply.github.com> Co-authored-by: SolStar <44028047+ewokswagger@users.noreply.github.com> Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com> Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com> Co-authored-by: ArchRBX <5040911+ArchRBX@users.noreply.github.com> Co-authored-by: archrbx <punk.gear5260@fastmail.com> Co-authored-by: Radezolid <snappednexus@gmail.com> Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com> Co-authored-by: EmoGarbage404 <retron404@gmail.com> Co-authored-by: MilenVolf <63782763+MilenVolf@users.noreply.github.com> Co-authored-by: Velcroboy <107660393+IamVelcroboy@users.noreply.github.com> Co-authored-by: Velcroboy <velcroboy333@hotmail.com> Co-authored-by: neuPanda <chriseparton@gmail.com> Co-authored-by: neuPanda <spainman0@yahoo.com> Co-authored-by: Dvir <39403717+dvir001@users.noreply.github.com> Co-authored-by: Whatstone <whatston3@gmail.com> Co-authored-by: VideoKompany <135313844+VlaDOS1408@users.noreply.github.com> (cherry picked from commit 93ed70acfeda357133a701f637d3faeec02749bb) |
||
|
|
96ac353f4a |
Reimplement Part Upgrading (#917)
# Description By extremely popular demand(Both internally, and from our downstreams), this PR reimplements Part Upgrading. Since some of the systems that this PR touches were substantially changed since the removal of Parts, I had to do a lot of very in depth by-hand edits of individual systems. Shockingly, the only one that really proved any trouble was Cloning System, so I'm genuinely surprised wizden didn't substantially touch any of these codes since removing parts.. # Changelog 🆑 - add: Part Upgrading has returned! --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> |
||
|
|
24f26f21dd |
[Upstream] Апстрим фич и фиксов с Einstein Engines. (#39)
* Remove the Stupid Station Records Check From News (#739) # Description It was never used but caused annoyance all the time: the listening post could never use the news console and ghosts/centcom officials/skeletons could never publish news because of it. (This was not tested, I recommend either waiting til I test it or making someone else test it before merging) # Changelog 🆑 - fix: You no longer need to have a station record to publish news. Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com> * Morale System (Port From White Dream) (#620) # Description This Feature has been graciously provided for Einstein Engines to port from the White Dream codebase. Mood is a system for tracking a character's current Mental State, which fluctuates throughout the round as a result of various events that can modify it. Each consisting of a single line event that can be trivially inserted into any other system, and a yml configured "Moodlet", which is applied to said character. Moodlets can be temporary or permanent, and can also modify a characters mood in either positive or negative directions. Things like, "Being Hungry", "Being Injured", "Petting a cute animal", "Being Hugged", all create a Moodlet. Mood can provide buffs or debuffs, primarily to movement speed. In fact Mood's movement speed modifier actually completely replaces the movement speed modifiers from Hunger & Thirst. Instead Hunger & Thirst create a negative moodlet that persists until you eat and drink, which _can_ give you a speed penalty. But you might for instance diminish the negative effects by seeking out other positive sources. Or they might just get worse, who knows what could happen? # Media Mood takes the form of a series of Moodlets, which modify your character's internal Mood stat. It's kinda like a healthbar, but for your mental state. Whenever you gain a moodlet, it appears in a popup. White text for standard moodlets, red text for negative moodlets. By clicking on your mood icon, text will show up displaying all of your currently active Moodlets. https://github.com/user-attachments/assets/3e9420bb-3a43-4d97-9127-31d704c15287 New traits!  Permission from Codeowners:  # TODO - [x] Refactor the Crit Threshold modification, and Movement Speed Modification to make it more granular. # Changelog 🆑 VMSolidus & Skubman - add: The Mood System has been ported from White Dream. Mood acts as a 3rd healthbar, alongside Health and Stamina, representing your character's current mental state. Having either high or low mood can modify certain physical attributes. - add: Mood modifies your Critical Threshold. Your critical threshold can be increased or decreased depending on how high or low your character's mood is. - add: Mood modifies your Movement Speed. Characters move faster when they have an overall high mood, and move slower when they have a lower mood. - add: Saturnine and Sanguine have been added to the list of Mental traits, both providing innate modifiers to a character's Morale. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: Angelo Fallaria <ba.fallaria@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> # Conflicts: # Content.Server/GameTicking/Rules/TraitorRuleSystem.cs * Automatic Changelog Update (#739) # Conflicts: # Resources/Changelog/Changelog.yml * Automatic Changelog Update (#620) # Conflicts: # Resources/Changelog/Changelog.yml * Psionic Refactor Version 2, Part 1 (#731) # Description Finally, after many long months, and this project surviving a complete restart from square one, I have now made actual, real progress on an actual proper "Refactor" of Psionics. This PR primarily moves ALL of the logic for initializing Psionic Powers into highly configurable YML. The initialization of psionics is no longer handled by components, and is instead now handled entirely by a centralized system. To even further cut down on component bookkeeping, nearly all logic needed for generating Psions has been moved to the PsionicComponent. The PotentialPsionicComponent now no longer exists. Additionally, and although they are not currently implemented(I will do so in the next PR after this), I have also laid the groundwork for substantial reworks to the other aspects of Psionics. Power generation, casting stats, feedback messages, non-action powers, and so on. It's actually possible to now add a psionic power that does not add any active abilities at all, rather by adding one or more components, thus enabling purely Passive Powers. Or a combination of the two, active-powers with a passive component. # Media https://github.com/user-attachments/assets/0fd6b9a4-7d84-4e6e-980a-9d7dd4264f6f # Changelog 🆑 - add: Latent Psychic has been added as a new positive trait. - tweak: Psionics have received a substantial refactor. While no new powers have been added this patch, this initial refactor lays the groundwork so that new psionic powers will be easier to create. - tweak: Latent Psychic is now fully required to become psionic, or to interact with Oracle. - tweak: Psychics can now have more than one active power. - remove: Mimes are no longer Psionic. - tweak: Chaplain, Mantis, & Mystagogue all receive the Latent Psychic trait for free, automatically. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com> # Conflicts: # Content.Server/Zombies/ZombieSystem.Transform.cs * Automatic Changelog Update (#731) * Fix Overlays (#756) # Description Overlays have a funny bug where the calls to update them are global. Meaning if any single person gets a bad enough mood to greyscale themselves, everyone globally gets greyscaled. This bug was also present on Dogvision and Ultravision, and had the same cause. Frontier luckily had a fix for those two, and the fix works here as well for the Mood Overlay. # Changelog 🆑 - fix: Fixed an issue where Overlays(Dogvision, Ultravision, Mood) would apply globally to all entities when updating. * Automatic Changelog Update (#756) * Missing Psychic Trait Strings (#758) # Description I accidentally deleted these at some point, so here they are again.  No changelog because I don't want to publicly admit the error. :) --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Action Blacklists (#760) # Description  I noticed that EntityTargetAction prototypes have a Whitelist field, but no Blacklist field. This turned out to be trivial to add, and now it's no longer necessary for Psionic powers to hardcode in C# that they can't affect anyone psionically insulated or Mindbroken. In total only 3 powers had this change, but new powers in the future that affect a target can now arbitrarily blacklist any component(Most likely, PsionicInsulation and Mindbroken. :)) All of this, just to remove 9 total lines of C# hardcoding. # Changelog 🆑 - add: Actions no longer need to hardcode in target blacklists, and can now blacklist entities in YML. This is notably useful for Psionic powers, which all share a common feature that they can't target people with Psionic Insulation (Or have been Mindbroken). * Automatic Changelog Update (#760) * Psionic Powers Add Components With Arguments. (#763) # Description While coding another Psionic Power feature, I discovered that the current implementation of iterating over components does not carry over arguments for the components. So I copied over the method used by Traits exactly-as-is, and just changed the names of the variables to accommodate the PsionicSystem. # Changelog 🆑 - add: PsionicPowers that add a Component now also allow for adding a Component with Arguments. This works exactly like the trait system's implementation of components. * Automatic Changelog Update (#763) * DeltaV/DS14 IPC Port (#744) <!-- 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]? --> Ported over IPC from DS14, with the fixes from DeltaV. --- # 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] Port - [ ] Check for errors (Local tests wouldn't run on this one) --- <!-- 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 IPC as a playable species. --------- Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: Daniela <43686351+Day-OS@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#744) * Update MoodSystem.cs (#761) # Description MoodSystem was lacking a Component Shutdown to yeet the alert, so it was causing intermittent test fails. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Traits Refactor (#765) # Description I decided traits weren't flexible enough, so I refactored them to also optionally add Actions(Activatable Abilities), and PsionicPowers(Going through the PsionicAbilitiesSystem). Neither of these have any current implementations, I'll leave that to other people. Trait Components are by extension no longer a hard requirement, although if you add a blank trait that adds nothing, you have only yourself to blame. But doing so won't crash the game or throw an error anyway. # Changelog 🆑 - add: Traits can now add Active Abilities to a character. - add: Traits can now add Psionic Powers to a character. * Automatic Changelog Update (#765) * Made Stamres Show in Resistances View Take 2 (#767) <!-- 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 title for some reason something went horribly wrong [here](https://github.com/Simple-Station/Einstein-Engines/pull/766) --- <details><summary><h1>Media</h1></summary> <p>  </p> </details> --- # Changelog no cl no fun --------- Co-authored-by: whateverusername0 <whateveremail> * Minor Ifrit Health Rework (#762) # Description Closes #754 Ifrit is a fire spirit, he really shouldn't be taking 1.5x fire damage. This makes sense and should help with players accidentally killing themselves with the fire ball. For balance, the cold damage modifier was changed to 0.5x, unsure if it should be lower. Minor passive regeneration has also been added, since there isn't another way to heal other than the Mystagogue sitting there hitting them with the book of mysteries. # Changelog 🆑 - tweak: Ifrit has received some damage resistance changes --------- Signed-off-by: stellar-novas <stellar_novas@riseup.net> Co-authored-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#762) * Xenoglossy (#772) <!-- 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 Adds xenoglossy to the power pool. I originally planned it for cataloguer but it looks like that doesn't exist anymore. <!-- 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 --> # 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 --> 🆑 Rane - add: Added Xenoglossy to the psionic power pool. --------- Signed-off-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Automatic Changelog Update (#772) * Increase Trait Point Granularity (#775) # Description Since we now have a LOT of Traits, and soon to be another fresh batch of Traits coming in now that they've been refactored to offer even more options, it's come up that Traits are kinda hard to balance with the current combination of point costs and allotted starting points. To help alleviate this problem, I've both doubled the point values of every trait in the game, as well as doubled the default allotted starting points. There is now more room to balance trait costs against each other. I have not however actually made use of the new range of point costs yet, and would like to consult with other contributors and maintainers on which traits need to be adjusted. # TODO - [ ] Go over trait point costs again to address balance. - [ ] Do this again in 6 months when we have 200 traits. # Changelog 🆑 - tweak: Trait points have been made more granular by both doubling the available number of trait points, and increasing the base cost of all pre-existing traits. * Automatic Changelog Update (#775) * Fix Heisentests (#778) # Description Attempt number 5000 to get the Heisentests to STOP. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Fix RGB Moths (#777) # Description Magic single line Yml Fix obtained by digging through DeltaV's Blame **GO!** # Changelog 🆑 - tweak: Moths can now be colorful again. * Automatic Changelog Update (#777) * Remove DV AGPL License Headers (#781) # Description They're confusing. Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> * Return Of The Cataloguer (#779) # Description Cataloguer has returned to Epistemics as the newest 4th member of the "Crew Aligned Wizards Club". The Cataloguer is a variation on the Librarian role, which automatically starts with the new Xenoglossy Psionic Power, which allows him to know and speak all languages. Additionally, the Cataloguer is now once again a member of Epistemics instead of Civilian, and has had Epi added to his access. On all maps that previously did not have a Librarian spawner, one Scientist spawner has been replaced with a Cataloguer. # Changelog 🆑 - add: Cataloguer has been re-added to the game as a new roundstart Psionic role. The Cataloguer is a unique role that will always start with the Latent Psychic trait, as well as the new Xenoglossy power, which allows him to know and speak all languages. * Automatic Changelog Update (#779) * Psionic Power Feedback Messages (#776) # Description This PR implements the previously planned feature whereby obtaining a Psionic Power plays some form of notification to alert the player that they have gained a new ability. Since some Psionics like Xenoglossy are purely passive, it's very important to give an indication to players what's going on. To that end, PsionicPowerPrototype has been expanded to include new datafields related to Initialization Feedback. There are now three kinds of feedback messages: Popup, Feedback, and Metapsionic. All feedback will only play for powers obtained during the round, rather than for entities that innately start with powers. - Popups will appear over your character's head as a small, brief message. These should be no more than a sentence at most. - Feedback will appear in the Chat window as a message only visible to the Psion themself. These can be as much as a paragraph in length. - Metapsionic messages are coming in their own separate PR: https://github.com/Simple-Station/Einstein-Engines/pull/774 In a separate PR, I also wish to add Audio feedback as well. # Media I apologize that the video has been bitcrunched to a point that the chat window can't be read. https://github.com/user-attachments/assets/11e30e91-8fc6-48a2-b6a5-9ecf7127065e # Changelog 🆑 - add: Gaining a new Psionic Power can now display messages to alert the player, both as a short popup, and optionally a lengthier message sent to the user's Chat window. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com> * Automatic Changelog Update (#776) * Allow Playing Multiple Announcement Sounds at Once (#740) # Description @VMSolidus said he had issues with SuperMatter announcements not playing correctly. --- <details><summary><h1>Media</h1></summary> <p> https://github.com/user-attachments/assets/e0cbbe77-00ce-4c9e-837a-00c91fee8623 </p> </details> --- # Changelog 🆑 - fix: Announcements can play multiple sounds now (you can revert to the old behavior in sound setting if you want though) * Automatic Changelog Update (#740) * Add Insulation to Robots (#773) # Description Soulless Robots didn't have PsionicInsulation, which meant they were eligible targets for powers such as Mindswap. This is a pretty simple fix. # Changelog 🆑 - fix: Robots and other mechanical creatures are now correctly immune to non-physical psionic powers. * Implement Mind Contests (#757) # Description Now that the initial Psionic Refactor is out of the way, this is my first new standalone Psionics PR, filling in the MindContest function that was added over a month ago(but was set to always return 1f as a placeholder). Mind Contests are unique among the Contests System in that they do not treat the lack of a Psionic Component as a failure condition, and instead as a variable. No changelog because MindContests are not currently used anywhere, all I'm doing is adding the actual function logic. * Added Language and Healing Components to IPC Entities (#786) # Description This pull request introduces two new components to the IPC entities: 1. **LanguageKnowledge**: This component allows IPCs to speak and understand Galactic Common and RobotTalk. Previously, IPCs were limited to Universal language, which caused communication issues with the crew. With this addition, IPCs can now effectively communicate using the Galactic Common and RobotTalk languages. 2. **WeldingHealable**: This component enables IPCs to heal themselves using a welding tool. Given the nature of IPCs as robotic entities, this feature is essential for self-maintenance and ensures they can stay operational even after sustaining damage. These changes aim to improve the functionality and immersion of IPCs within the game, allowing them to better integrate and interact with other entities while also providing them with the ability to self-repair. --- # TODO - [x] Add `LanguageKnowledge` component to IPC entities to support Galactic Common and RobotTalk. - [x] Add `WeldingHealable` component to IPC entities for self-repair with welding tools. # Changelog 🆑 - add: Added the ability for IPCs to speak and understand Galactic Common and RobotTalk languages. - add: Enabled IPCs to heal themselves using welding tools via the WeldingHealable component. Signed-off-by: v0idRift <163446847+v0idRift@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#786) * Fix supermatter.ftl (#790) supermatter .ftl was broken, this fixes it. <!-- 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]? --> Easly fix the supermatter .ftl files that was not set correctly, why? i dunno. now its works. --- # 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: Supermatter Annoncements Signed-off-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com> * Automatic Changelog Update (#790) * Fix Door Access (#798) # Description Somehow all the doors accesses broke. Seems somebody used the AccessReader Component on the door instead of the door electronics. This PR fixes all the doors that I could find that were broken. # Changelog 🆑 - fix: Fixed most door accesses including: Lawyer, Mantis, Corpsman, Boxer, Clown, Mime, Musician, Reporter, Library, Zookeeper, Salvage and Psychologist. * Automatic Changelog Update (#798) * Cherry-Pick PR #27113 (#803) # Description This is a cherry-pick of https://github.com/space-wizards/space-station-14/pull/27113 Which fixes a bug that has been reported here where the FixGridAtmos command does not work. # Changelog 🆑 - fix: Fixed the FixGridAtmos command. Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> * Automatic Changelog Update (#803) * Return Of The Pibble (#789) # Description This PR Rebases one of Nyanotrasen's funniest features: The Pibble. I mean "Lab Mix", according to the description. Lab Mixes are comically muscular dogs famous for their ability to attack and destroy Felinids, Mailmen, and more recently Harpies. Watch out, there is also a rare variant of Lab-Dachshund Mix, colloquially known as the "Ventbull", which can occasionally be found roaming the station's vents. Please keep your children, Felinids, and Birbs at a safe distance. # Changelog 🆑 - add: Lab Mixes have been added to the game as a new random animal. Be sure to keep Felinids and Harpies away from them. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Automatic Changelog Update (#789) * Make IPC Sounds Great Again (#811) # Description This PR brings back Ekrixi IPC sounds, and rebases IPC sounds on top of silicons. Duplicate of #810 [due to](# "Due to your attempt to evade your ban, you are banned indefinitely. You may appeal your ban, but only at least 6 months after your last ban evasion attempt, and only with a voucher of good behavior from another SS13/SS14 server.") `master` branch skill issues. <details open><summary><h2>Media</h2></summary> None </details> --- # Changelog 🆑 router - add: Added more sounds to IPCs. IPCs can now also whistle, whirr, beep, boop, ping, chime, buzz and buzz twice. - fix: IPCs no longer have the default wilhelm sound. - tweak: Silicon deathgasps are now darker. * Automatic Changelog Update (#811) * Add IPC's Missing Components (#793) # Description IPCs were missing Offer Item, Laying Down, and Carriable. # Changelog 🆑 - fix: IPCs can now lay down, offer people items, and be picked up and carried. * Automatic Changelog Update (#793) * Temporarily Disable Telegnosis (#795) # Description Telegnosis is broken, and so I'm temporarily disabling it. # Changelog 🆑 - fix: Temporarily disabled Telegnosis pending a lengthier update. * Automatic Changelog Update (#795) * IPC Missing Deathgasp (#800) # Description IPC were missing a deathgasp, so I wrote one for them.  # Changelog 🆑 - fix: IPC now have their own unique deathgasp message. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#800) * Make Shoving and Stamina Great Again (#809) # Description First off, shoving was broken badly. It would roll shoving chance twice, meaning that you had only about 6% chance to actually shove someone, and it would only remove 6% of their stamina. Additionally, stamcrits have always pissed me off by just how stupid they were. Also, some of the code in the stamina system had highly misleading names, which has led vmsolidus to implement mass contests the wrong way there. This PR introduces changes to fix those issues: - Shoving only rolls the shove chance once. - Shoving deals 50 * shove chance stamina damage, as intended, without depending on target's stamcrit threshold. In the future it should depend on the weapon used (claws, fists, etc), but for now it's fine. - Shoving advantage ranges were re-evaluated. Mass difference now can give 0.5x-2x advantage, and health difference can give 0.75x - 1.25x. Stamina difference still gives a neglectable 0.9x - 1.1x advantage. - The stamina slowdown is now added and calculated dynamically using MovementSpeedModifierSystem, which means the slowdown will no longer disappear 3 seconds after receiving damage, and will not stack (however, it now scales with stamina damage). - When you exit stamcrit, you start at (100 - epsilon) stamina damage. There still exists another check that prevents you from getting re-stunned in the next ~5 seconds (maybe we should remove that too?), but the slowdown and combat disadvantages will apply as they are supposed to. This means you can no longer stand up after being exhausted to the point of fainting on the ground and immediately rush back into combat. In addition to that, I also did the following: - Re-added the mass contest to EscapeInventorySystem. It seems like it's been nuked when the new mass contest system was being implemented and never added back. - Fixed the mass contest in carrying again <!-- 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/076b3c3b-cdd1-4ec7-969d-2564c814a40e </p> </details> --- # Changelog 🆑 - fix: Shoving once again works correctly, and mass difference matters a lot when shoving someone. - fix: The time it takes to escape one's hands once again depends on the mass difference between the escapee and the holder. - tweak: Exiting stamina crit now leaves you with 0 stamina. You can't be immediately stunned again, but you will suffer from slowdown and combat disadvantages! * Automatic Changelog Update (#809) * Thieves Outside of Traitor (#799) # Description Mirroring a PR from Floof that I was much too lazy to cherry-pick. This just changes gamemodes outside of tator and rev to allow thieves if it makes sense to. --- # Changelog 🆑 - tweak: Thieves are now in Survival, Hellshift, and Extended. Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> * Automatic Changelog Update (#799) * Telepathy (Minor)Refactor (#819) # Description This PR re-introduces a feature that was present in the Psionic Refactor version 1, that of the Natural Telepath trait. Where before Natural Telepath was treated as an "Upgraded" version of Latent Psychic, now it is a standalone trait that makes use of new functionality, where traits can add psionic powers directly, as opposed to relying on just adding components. To accomodate for this, the Telepathy functionality has been modified such that it no longer makes the expectation that PsionicComponent users have the ability to coherently speak telepathically, and instead checks for a specific TelepathyComponent. Since Telepathy is added to a Psion via their ActivePowers list, it is also eliminated when the Psion is mindbroken. <details><summary><h1>Media</h1></summary> <p>  </p> </details> # Changelog 🆑 - add: TelepathyComponent has been split off from the PsionicComponent, now as it's own standalone feature. - add: Telepathy has been added as a new Psionic Power - add: Natural Telepath has returned from Psionic-Refactor V1, now using new functionality from the trait system that allows traits to buy psionic powers directly. - add: Latent Psychics who have neither bought Natural Telepath, nor acquired Telepathy during the round, can sometimes hear snippets of conversation from telepathic chat. - tweak: The cost of Latent Psychic has been reduced from 6 to 4 points, this is to accommodate for the loss of Telepathy as a bonus feature for all Psionics. Since Natural Telepath is a 2 point trait, this gives a net 0 change in trait points for anyone who wishes to keep being a roundstart Telepath. - tweak: Psionic Mantis, Mystagogue, Chaplain, and Cataloguer are all Naturally Telepathic, and thus get the new trait for free. * Automatic Changelog Update (#819) * Psionic Insulation Trait (#820) # Description This PR brings back the x-Waveform Misalignment trait from Psionic Refactor version 1. There's not really much to say here. Having this trait means that you are completely immune to most psionic powers and effects, with the only exception of the physical effects of Elementalist abilities. It is also an extraordinarily expensive trait, the most expensive in the game by far. This trait will get even more useful when Cultists, Wizards, and Heretics are brought into the game. # Changelog 🆑 - add: x-Waveform Misalignment has been rebased from the Psionic Refactor v1. x-Waveform Misalignment is an extraordinarily expensive trait that grants full immunity to nearly all psionic powers and effects, both positive and negative. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#820) * New Interaction System (#733) # Description This implements the New Interaction Verb System™©, designed to allow defining verbs using yml and make adding new verbs way easier than it was before. This was initially designed just to bring back generic no-op interactions like hugging, but can now be used to create way more unique interactions for all the different entities. In the core of the system lies InteractionVerbPrototype. Besides defining the obvious qualities of the verb itself, such as the name, description, interaction constraints, it also has several important properties: - The requirement of the verb - what is required for the verb to show up as "enabled" in the context menu and be allowed to be performed. There's just one requirement slot, but using the ComplexRequirement class you can use multiple requirements and choose whether they are combined via boolean or, boolean and, or something in-between. - The action of the verb - it defines its own IsAllowed (whether the action is applicable to the target entity at all), CanPerform (called before and after the potential do-after), which defines whether this exact attempt at performing the action succeeds and shows a success popup, or fails and shows a fail popup, and finally Perform, which tries to perform the action and return a boolean result, which determines... well, what was stated before. Similarly to requirements, there are complex and conditional actions which can be combined into whatever monstrousity you can imagine... In fact, it is entirely possible to build a turing-complete programming language out of actions! - Effects, specifically three of them: one that is shown when the interaction performs successfully, one that is shown when it fails, and one that is shown when the do-after for the interaction begins succesfully (which means the first CanPerform check of the verb has succeeded). Each one of them defines a popup (configuration for which is stored in a different prototype) and a sound. Those are also designed to be highly customizable: you can choose who sees the popup and where, and more. Verbs can be global or local. Global verbs are added to any entity should it meet the prerequisites and pass all the necessary checks (which are also designed to be highly configurable). Local verbs are defined in OwnInteractionVerbsComponent and InteractionVerbsComponent of the user and target respectfully. At the moment of writing there are 8 built-in global verbs and 1 non-global verb, not including abstract verbs: - 3 no-op actions that are made for RP purposes, that is looking at someone, hugging someone, petting someone. The latter two may be later used to modify the target's morale should the PR for it be merged. - 2 actions related to standing: one for forcing someone down, and one for helping them get up, waking them up and removing 2.5 seconds of stun in addition to that (before you could click someone with empty hand to remove 1.5 seconds of stun - I removed that in favor of the new system) - 1 action for making someone who's laying down (on the bed or otherwise) to sleep. - 1 actions for falling asleep yourself (no need for bed or bag or whatever to tell you that you can sleep - this does not provide any healing properties or anything like that, purely an RP feature). - 1 action for pinching yourself - made simply with the intent of testing some possibilities of the new system, I decided to keep it because it's a bit funny. Local actions include: - An action for knocking on windows, doors, windoors, computers, machines. More are to be added to this list as the progress continues. # TODO - [X] Implement the core of the system - ~~Add more, way more actions. Possible ideas include: [slapping/kicking someone, hugging toys/plushies, pressing random buttons on a computer, ... ]. I could use some ideas for that.~~ - skipping for now, we can do it in follow-up prs to clutter this one less. - [X] Port all InteractionPopupComponents to the new system, and remove their old usages from non-animals. - [X] Introduce contests and a way to configure them (could reuse RangeSpecifier for that; certain actions such as pushing down/helping up would benefit a lot from this). - [X] Hide chat logs for people who cannot see the action being performed. - [X] Implement cooldowns - [ ] Cleanup. <details><summary><h1>Media</h1></summary> <p> Note: this video was made before a few important fixes were made. https://github.com/user-attachments/assets/17b616dd-4bc8-4af3-916c-6a5d16c77064 Newer video - demonstrates various actions and shows that chat logs cannot be seen if the source of the logged popup is outside the view. https://github.com/user-attachments/assets/d6228855-fb7f-45d1-812f-56afe10f3f86 </p> </details> --- # Changelog 🆑 - add: A new interaction system has been implemented. The right-click menu now provides a wide variety of different interactions with different entities. Some old default interactions, such as hugging, knocking, fence rattling, have also been moved to that system. --------- Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com> * Automatic Changelog Update (#733) * feat: translation for new interaction system * fix: fix interaction system changing state action to ours * Glacier Real (#1169) (#728) * glacier real * troll * atmosia tweaks * 1 less can of plasma not too op * replace troll generator with solar crate * add StationSurface to glacier * add surface map * biome stuff upstream #28017 * unpause after loading * fix no terrain * comment out the surface spawning * shipyard * glacier justiceroid * updateprototype and cleanup * fix random shit * untroll * courier * add to test :trollface: * fix * futureproofing * hot loop inlet lmao * tweak some pumps in atmosia * carpy and make salv locker lighting better * Edit lights, move salv dock, add justice maints, edit entity names for casing consistency, other minor edits --------- <!-- 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 Ports Glacier from DeltaV. Justice department has been yeeted. # Changelog 🆑 - add: Glacier Returns. --------- Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: Velcroboy <velcroboy333@hotmail.com> * Automatic Changelog Update (#728) # Conflicts: # Resources/Changelog/Changelog.yml * Rebase Saltern (#804) # Description Saltern, now featuring a full Epistemics department, and a Supermatter engine. :) <details><summary><h1>Media</h1></summary> <p>  </p> </details> # Changelog 🆑 - add: Saltern has been added to the map rotation. Now featuring a compact Supermatter engine, full Epistemics department, and a significantly expanded Chapel and Library. * Automatic Changelog Update (#804) * Core Supermatter (#792) # Description **Walks into a room** **Slaps down CORE, but with Supermatter** **Doesn't elaborate** **Leaves** <!-- 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 🆑 - add: Core has been added to the list of maps in rotation. This time featuring a custom Supermatter Engine * Automatic Changelog Update (#792) * Fix InnatePsionicPowers For Mapped Entities (#824) # Description InnatePsionicPowers needed to be moved from ComponentStartup to MapInitEvent, which is a deceptively named event that ALSO functions identically in use to ComponentStartup, except that it's safe to use for entities that are mapped in, in addition to joining the round or being spawned in. Whereas ComponentStartup isn't allowed to modify or add components for any entity that is mapped(which includes Spawners apparently). This change allows for entities like Oracle and Sophia to make use of InnatePsionicPowers, which is done by request from Rane, who for mysterious reasons wishes for the two divine statues to be both Prayable, and have the Noospheric Zap Power. I have also verified by ingame testing that this does infact apply to people who join after the map is initialized, as well as things pre-existing on the map. So Oracle still gets her powers, while a latejoining Mystagogue still gets his. # Changelog 🆑 - fix: InnatePsionicPowers now operates on MapInitEvent instead of ComponentStartup, meaning that it can now be safely used on entities that are mapped in instead of spawned. - add: Oracle and Sophia are now recognized as Divine, and as such are creatures that can be prayed to. * Automatic Changelog Update (#824) * Update Credits (#837) This is an automated Pull Request. This PR updates the GitHub contributors in the credits section. Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com> * Disable Mood In Debug (#806) # Description MoodSystem has a Race Condition against DeleteAllThenGhost. # TODO - [ ] Run the tests 10 times in a row to see if DeleteAllThenGhost will appear. * Diagonal Window Smoothing (#805) # Description Diagonal windows weren't updated to use the new smoothing when we added a bunch of new sprites designed around connected textures. This PR fixes that for all diagonal windows.  # Changelog 🆑 - add: Diagonal windows now use connected textures. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#805) * Maximize Default Description Limits (#788) # Description The current in game UI can reasonably support names up to 48 characters in length, as well as descriptions up to 1024 characters long. Any longer, and the UI requires a scroll bar. This change is present on Cosmatic Drift, which uses the same character UI we currently have. I've had many people requesting this change, and while I am aware that we wish to at some point update to a new character UI(such as Parkstation's UI), but a stopgap here is still nice, and it's just two Const variables. # Media  # Changelog 🆑 - tweak: Character names can now be up to 48 characters in length. - tweak: Character descriptions can now be up to 1024 characters in length. This is the maximum size descriptions can be without the menu having a scroll bar. And while we'd like it to be bigger, we're going to want to get a new UI for this in the future! * Automatic Changelog Update (#788) * Bot for Changelog (#833) 🆑 - add: Changelogs should be shown in Discord now --------- Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Co-authored-by: TAZIKLIK <73418250+TAZIKLIK@users.noreply.github.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Update actions_changelogs_since_last_run.py (#841) Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Added Jukebox (#26736) (#802) <!-- --> # Description <!-- --> Adds super cool super nice Jukebox to the bar! Ran off .ogg files, can use any royalty free song. --- <!-- --> <details><summary><h1>Media</h1></summary> <p> ![Example Media on]  </details> --- # Changelog <!-- --> 🆑 Kacey, Nova - add: Added Jukebox with basic songs. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: iNVERTED <alextjorgensen@gmail.com> Co-authored-by: DJBIGYAPPA420 <antoniobryandiii@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#802) # Conflicts: # Resources/Changelog/Changelog.yml * remove: wrong changelog * remove: wrong changelog * fix: a few more incorrect translations * Psionic Extraplanar Creatures (#829) # Description Certain things in the game were intended to be classed as Psionic(And mostly without powers), but were apparently lacking the components. To clarify, ANYTHING that comes from an alternate layer of reality, alternative plane of existence, extra dimensions, other universes, bluespace, etc, is intended to have a PsionicComponent to abstract represent their nature as a magical being of some variety. The importance of this is largely related to the use of Metapsionics to detect them, but also for the valid target lists for Anti-Psychic abilities, such as the bonus damage from the Anti-Psychic Knife. While here, I've also added the "Loto Oil Slime" from Psionic Refactor Version 1, now that Reagent Slimes(as Extraplanar creatures brought to this world by Liquid Anomalies) have a PsionicComponent. needs https://github.com/Simple-Station/Einstein-Engines/pull/824 # Changelog 🆑 - add: Revenants, Reagent Slimes, and Ore Crabs are now considered to be Psionic(But cannot gain powers randomly). This is due to their status as "Magical And/Or Extraplanar Creatures", which makes them valid targets for anti-psychic abilities such as the Psionic Mantis' Anti-Psychic Knife. - add: Some Reagent Slimes can now contain Lotophagoi Oil. * Automatic Changelog Update (#829) * Cloning Refactor (#735) # Description Since Cloning code is effectively abandonware by it's original codeowners, and I was the last person in this entire game to update it, I am technically the codeowner of Cloning. And by extension, it's also my responsibility to maintain the Cloning code. I've been putting this off for awhile due to how busy I've been with other projects, but since I'm now waiting on all my other refactors to be reviewed, I decided to finally sit down and comprehensively refactor Cloning. In addition to massive substantial code cleanup(Cloning machines no longer run on Frametime for one!), here's most of the changes. - Cloning Pods must be powered for the entire 30 second duration of the cloning process. - Said "30 second duration" is no longer hardcoded. Although no methods currently exist to reduce it. I plan on revisiting this after I bring back Machine Upgrading. - Cloning can now FAIL partway through. If the cloning pod is Depowered, Unanchored, or Emagged, it will automatically swap to the "Gore" state. - When in a Gore state, Cloning Pods will destroy the entity they were trying to clone, replacing them with a pool of blood and ammonia that scales with the mass of the entity that was to be cloned! - Clones come out of the pod with a significant quantity of Cellular damage, and are almost always in need of resuscitation. Consider using Cryogenics to "Finish" your clones. Doxarubixadone is literally named after this process, and is a perfectly suitable cryo chem for resuscitating clones. <details><summary><h1>Media</h1></summary> <p> New gore sprites for the Metem machine, because it can now have gore mode.  </p> </details> # Changelog 🆑 - add: Cloning & Metempsychosis Machines have been refactored! - add: Cloning can now fail at any point during the cloning process, turning the would-be clone into a soup of blood and ammonia. - add: "Clone Soup" scales directly with the mass of the entity you're attempting to clone. Fail to clone a Lamia, and you'll be greeted with an Olympic swimming pool worth of blood when the machine opens. - add: Cloning will fail if at any point during the procedure, the machine is depowered, unanchored, or emagged. - add: Clones come out of the machine with severe Cellular damage. Consider using Doxarubixadone in a Cryo tube as an affordable means of "Finishing" clones. - tweak: Cloning Time is now increased proportionally if an entity being cloned is larger than a standard human(smaller entities are unchanged) - tweak: The cost to clone an entity can now be configured on a per-server basis via CCVar "cloning.biomass_cost_multiplier" - tweak: The Biomass Reclaimer can now be toggled to round-remove ensouled bodies or not via CCVar "cloning.reclaim_souled_bodies" - add: The effects of Metempsychosis now scale with a Psion's relevant caster stats. More powerful psychics are more likely to get favorable results from being forcibly reincarnated. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Automatic Changelog Update (#735) * Delete All Then Ghost Fault Tolerance (#787) # Description  I'm putting this here as an option to deal with our Heisentest problems, by making the tests "Fault-Tolerant" wherever practical, but I don't want this merged without Death and Psprite agreeing to this. For the most part I believe that these tests are failing because they are essentially checking that "Random events are not creating entities", by creating their own enforced Race Conditions. This particular test is repeatedly failing because the Mood System has no way of deducing that it's in a test. Even though the alleged issue is a nothingburger.  Tests absolutely shouldn't have been designed around race conditions. # Changelog No changelog because this isn't playerfacing. * Update Issue Templates (#797) # 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]? --> Rewrites the issue templates and removes the redundant security vulnerability issue Also, sorry Death, titles are now sentence case to maintain consistency with the auto generated security policy one Blame GitHub not me </3 --- <!-- 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> Here's the old one, can't make issues on a fork so I can't show how it looks now.  </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 --> N/A Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> * Add PR URL to Changelogs and Make Author a Header (#843) 🆑 - add: New changelogs should now show links to their PRs - tweak: Changelog authors should now be a header instead of bold text - fix: Changelogs shouldn't send random amounts of old changelogs --------- Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Automatic Changelog Update (#843) * Update actions_changelogs_since_last_run.py (#846) string didn't become int 🆑 - fix: oatnsdaoersoaetaroeoertnsirlea Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> * Psychognomy (#808) <!-- 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 Psychognomy is a passive power that gives you a descriptor on the origin of a telepathic message. There's enough of them that are ambiguous enough. I also changed Oracle and Sophia a little bit, giving them innate psionic powers. 🆑 Rane - add: Added Psychognomy. - tweak: Reverted Sophia name change. - tweak: Minor tweaks to psionic chat eligibility and formatting. - add: Some new utility has been added to player-controlled Oracle or Sophia. NPC functionality later :^) --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> * Automatic Changelog Update (#808) # Conflicts: # Resources/Changelog/Changelog.yml --------- Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> Signed-off-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com> Signed-off-by: stellar-novas <stellar_novas@riseup.net> Signed-off-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Signed-off-by: v0idRift <163446847+v0idRift@users.noreply.github.com> Signed-off-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com> Signed-off-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com> Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Co-authored-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com> Co-authored-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: SimpleStation Changelogs <SimpleStation14@users.noreply.github.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Co-authored-by: Timemaster99 <57200767+Timemaster99@users.noreply.github.com> Co-authored-by: Daniela <43686351+Day-OS@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> Co-authored-by: username <113782077+whateverusername0@users.noreply.github.com> Co-authored-by: stellar-novas <stellar_novas@riseup.net> Co-authored-by: Rane <60792108+Elijahrane@users.noreply.github.com> Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Co-authored-by: v0idRift <163446847+v0idRift@users.noreply.github.com> Co-authored-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com> Co-authored-by: Fansana <116083121+Fansana@users.noreply.github.com> Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Co-authored-by: router <messagebus@vk.com> Co-authored-by: ShatteredSwords <135023515+ShatteredSwords@users.noreply.github.com> Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com> Co-authored-by: Velcroboy <velcroboy333@hotmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Evgencheg <73418250+Evgencheg@users.noreply.github.com> Co-authored-by: TAZIKLIK <73418250+TAZIKLIK@users.noreply.github.com> Co-authored-by: DJB1gYAPPA <whyeven42@gmail.com> Co-authored-by: iNVERTED <alextjorgensen@gmail.com> Co-authored-by: DJBIGYAPPA420 <antoniobryandiii@gmail.com> Co-authored-by: Pspritechologist <81725545+Pspritechologist@users.noreply.github.com> |
||
|
|
92dcd724d4 |
Refactor Sign Languages and Language Markers (#575)
# Description This refactors #510 and #553. #553 specifically was reverted and re-implemented from scratch. As a consequence to all of this, the chat system was refactored a bit too, hopefully for the best. Changes: - InGameICChatType, InGameOOCChatType, ChatTransmitRange were all moved to shared and made serializable - Added a method to wrap whisper messages to reduce code duplication in chat system - Both WrapPublicMethod and WrapWhisperMessage call the same generic WrapMessage method, which allows to add speech verbs to whispers and more. That method is also fully responsible for adding language markers and deducing speech verbs now. - Everything related to speech was moved out of LanguagePrototype and into SpeechOverrideInfo. LanguagePrototype now holds an instance of that. - Added AllowRadio, RequireSpeech, ChatTypeOverride, SpeechVerbOverrides, MessageWrapOverrides to SpeechOverrideInfo, all of which are used in implementing the sign language. - Suffered a lot # TODO - [X] Cry - [X] Fix the sign language not displaying properly over the character. - [X] Find a way to circumvent being unable to speak?? <details><summary><h1>Media</h1></summary><p>  See below </p></details> # Changelog No cl no fun --------- Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com> Co-authored-by: Danger Revolution! <142105406+DangerRevolution@users.noreply.github.com> |
||
|
|
8df7cc309e |
Metempsychosis Returns (#685)
* Metempsychosis Returns * Last updates * Fixin the linter * Update lathe.yml * Update CloningSystem.cs * Fixing the random name bug * Fugitive, rough but functional * Update fugitive.yml * Update humanoid.yml * Checking if its the floortile * Guh * Update EntityTest.cs * Revert "Update EntityTest.cs" This reverts commit 82375acd67cc44e740ba803a4329b4c2493cd273. * Revert "Guh" This reverts commit bc98f0f858e0f78e846f237bad384f7e00c4e3a7. * Revert "Checking if its the floortile" This reverts commit 51d3355cc11fffd7333d67235ffbe47665c783eb. * Revert "Update humanoid.yml" This reverts commit 5af8fbdabe576b8bfade1cc23025c525b455aee6. * Revert "Update fugitive.yml" This reverts commit 13124dbc77be3afdea047ac4dc533b3bafc1ed9f. * Revert "Fugitive, rough but functional" This reverts commit 47586c3b15595cb72c8e26e980e7f0ae79318d07. * Update Content.Server/Medical/Components/MedicalScannerComponent.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Content.Server/Nyanotrasen/Cloning/MetempsychosisKarmaComponent.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineComponent.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Resources/Prototypes/Nyanotrasen/Entities/Structures/Machines/metempsychoticMachine.yml Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Resources/Prototypes/Nyanotrasen/Research/biochemical.yml.yml Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update Resources/Textures/Nyanotrasen/Structures/Machines/metempsychotic.rsi/meta.json Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningSystem.cs Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningSystem.cs * Update Content.Server/Nyanotrasen/Cloning/MetempsychoticMachineSystem.cs Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update MetempsychoticMachineSystem.cs * Cleaning up some of the Metem code * Update CloningConsoleSystem.cs reordering for less merge conflict Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Reordering usings for less merge conflicts Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update HumanoidAppearanceComponent.cs Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningSystem.cs Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Apply suggestions from code review Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningConsoleSystem.cs Somehow this got removed during cleanup Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningConsoleSystem.cs Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningSystem.cs I put it back in the wrong file... Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update CloningConsoleSystem.cs Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Apply suggestions from code review Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Requested changes but need assistance with test fail * biochem is gone apparently * Update experimental.yml Signed-off-by: VMSolidus <evilexecutive@gmail.com> * Update MetempsychosisTest.cs * Update CloningSystem.cs --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com> Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com> |
||
|
|
777b074fed | Fix missing import and damage change | ||
|
|
7573dba496 |
Rip out remaining machine upgrades (#24413)
* Rip out remaining machine upgrades * eek (cherry picked from commit a9e89ab37221c4f5eff5a9e1d42e97c6f3e0753b) |
||
|
|
aea2326ecc |
Revert "Unrevivable trait (#24226)"
This reverts commit 7a2e500f689738b64abc24929e8d4a387749ba64. |
||
|
|
830ae5579f |
Unrevivable trait (#24226)
* unrevivable trait + remove unclonable remnants * cleanup * change to hascomp (cherry picked from commit 7a2e500f689738b64abc24929e8d4a387749ba64) |
||
|
|
ce27944275 |
Revert 'Revert 'Solution Entities'' (#23168)
(cherry picked from commit d23c8d5c19e56a582b6b12f832bd318efbdac7c7) |
||
|
|
aebae6fab7 |
Content ecs containers (#22484)
(cherry picked from commit 7a77d6d5dd73a34be238fdebc284da5bc2917c67) |
||
|
|
a23dce4702 |
Rename Miasma to Ammonia (#22791)
* Rename Miasma to Ammonia * Namespace changes * Map change????? why |
||
|
|
99f9583a3e |
Adds a new AtmosphereSystem.GetTileMixture() override (#21804)
|
||
|
|
b1ee2d48ff |
Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com> |
||
|
|
9a5af16a3a | Moves cloning comp & cloning event to shared (#21253) | ||
|
|
9cc8a7fc81 | Remove 700 usages of Component.Owner (#21100) | ||
|
|
93c3b03b11 |
Psionics (#44)
* Psionics It's a ton of stuff relating to the basic Psionics system and all the powers. I'm saving this as a bit of a sanity check before moving forward. Left to do: 1. Implementing the Psionic faction so that the chat works as intended. 2. Adding the start-state cooldown timers to the actions. * Cleaned up everything with the word 'Psionic' on it. Got the psionic chat working. Got some other stuff working * Some final psionic cleanup. The last batch of content. * Update RobustToolbox * rebased * Revert "Update RobustToolbox" This reverts commit c0cf35d03f828f6ccfeb05fcffd91cf074818fc9. * Update RobustToolbox * Revert "Update RobustToolbox" This reverts commit c4dc828df7912e063ea856b2a83a790bc88d1e09. * Update RobustToolbox * Psionics It's a ton of stuff relating to the basic Psionics system and all the powers. I'm saving this as a bit of a sanity check before moving forward. Left to do: 1. Implementing the Psionic faction so that the chat works as intended. 2. Adding the start-state cooldown timers to the actions. * Cleaned up everything with the word 'Psionic' on it. Got the psionic chat working. Got some other stuff working * Some final psionic cleanup. The last batch of content. * rebased * Cleaned up everything with the word 'Psionic' on it. Got the psionic chat working. Got some other stuff working * Broken Commit With these changes in place, the unit does not work. Recording them so i don't lose my work. * Brings it All Together. Dawn of the final Commit. Rebase completed. * Update RobustToolbox * Changed 'Station Events' to 'StationEvents' and cleaned up the Delta-V Events.yml file of duplicate events. * Delete ghost_roles.yml Duplicate. * Update familiars.yml * Update familiars.yml * Update GlimmerReactiveSystem.cs * Makes tinfoil hats craftable. * Decided I'm not dealing with adding fugitives or Glimmer Wisps right now. * Psionic invisibility won't work now that Eye component exists. Or at least, the integrator test won't psas. * Update special.yml * Added #nyanotrasen code or //Nyanotrasen code to many, many files. * Properly fixes comments. --------- Signed-off-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com> Signed-off-by: PHCodes <47927305+PHCodes@users.noreply.github.com> Co-authored-by: Debug <sidneymaatman@gmail.com> Co-authored-by: Colin-Tel <113523727+Colin-Tel@users.noreply.github.com> |
||
|
|
3f3ba6ac62 | Move minds, roles, jobs and objectives to shared (#19679) | ||
|
|
15c0211fb2 |
Refactor minds to be entities with components, make roles components (#19591)
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com> Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com> |
||
|
|
f2bfdd8e17 | Remove superseded machine linking code (#18244) | ||
|
|
3ac4cf85db | Cleaner BoundUserInterfaces (#17736) | ||
|
|
dd7032a860 | Mind ECS (#16826) | ||
|
|
3d5c491a6e | [Add] Adds uncloneable trait (#16688) | ||
|
|
6ebd784cb6 |
Device Linking and better linking ui (#13645)
Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com> Co-authored-by: Visne <39844191+Visne@users.noreply.github.com> Co-authored-by: ElectroJr <leonsfriedrich@gmail.com> Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com> |
||
|
|
ff58e6462d |
CloningPod emag effect. (#15876)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com> |
||
|
|
317a4013eb | Puddles & spreader refactor (#15191) | ||
|
|
4d71b1b81e | Revert "Mind ecs" (#14881) | ||
|
|
bfc4da9377 | Mind ecs (#14412) | ||
|
|
48bcd30ef9 |
Makes humanoid appearance component networked. (#13009)
Fixes https://github.com/space-wizards/space-station-14/issues/12248 |
||
|
|
6cebc2d733 | Zombie cloning fix (#12520) | ||
|
|
eeb5b17b34 |
Mobstate Refactor (#13389)
Refactors mobstate and moves mob health thresholds to their own component Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com> |
||
|
|
c2fd5665af | SpawnMultiple cleanup in stacksystem (#13441) | ||
|
|
fecd60e98a | Generalized material spawning (#12489) | ||
|
|
faca40b8d5 |
more component ref removal + combining server/client comps (#13178)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com> |
||
|
|
7895ddebe3 | medical scanner machine upgrading (#12487) | ||
|
|
9428d4b341 |
stack cleanup and mild refactoring (#11717)
* stack cleanup * fix tests and ulong * somehow did half a commit * ulong got usmall. (it's ints now) * sussy baka cleanup * mirror's review * make da tests pass again * shadowcommander review * sloth por favor * Update StoreSystem.Ui.cs |
||
|
|
a201d777bc | Machine upgrade examine verb (#12119) | ||
|
|
a9dd9257d8 |
cloning machine upgrade support (#11588)
* cloning machine upgrade support * foo |
||
|
|
5a0a04bde7 |
Humanoid appearance refactor (#10882)
* initial commit - species prototype modifications - markings points as its own file - shared humanoid component * adds a tool to convert sprite accessories to markings (in go) * removes a fmt call * converts sprite accessory to markings * adds hair and facial hair to marking categories * multiple changes - humanoid visualizer system - markings modifications for visualizer - modifications to shared humanoid component - lays out a base for humanoid system * hidden layers, ports some properties from appearance component, shrinks DefaultMarkings a little * squishes the initialize event calls into one function adds stuff to set species/skin color externally from a server message - currently laid out as if it a dirty call to a networked component, may be subject to change (server-side has not been implemented yet) * makes the sprite pipeline more obvious * apply all markings, hidden layer set replacement * ensures that markings are cleared when the new set is applied * starts refactoring markingsset (unfinished) * more additions to the markingset api * adds constructor logic to markingset * adds a method to filter out markings in a set based on a given species * fixes enumerators in markingset * adds validator into MarkingSet, fixes ForwardMarkingEnumerator * modifications to the humanoid visual system * ensuredefault in markingset * oop * fixes up data keys, populates OnAppearanceChange in visualizer * changes to humanoid component, markings marking equality is now more strict, humanoidcomponent is now implemented for client as a child of sharedhumanoidcomponent * markings are now applied the visualizer by diffing them * base sprites are now applied to humanoids from humanoidvisualizer * passes along base sprite settings to the marking application so that markings know to follow skin color/alpha or not (see: slimes) * custom base layers on humanoids * merges all data keys into one data class for humanoid visualizers * setappearance in sharedhumanoidsystem, removes custombaselayercolors * humanoidcomponent, system (empty) in server * adds some basic public API functions to HumanoidSystem * add marking, remove marking * changes appearance MarkingsSet to a List<Marking>, adds listener for PlayerSpawnCompleteEvent in HumanoidSystem * ensuredefaultmarkings, oninit for humanoids * markingmanager API changes * removes MarkingsSet * LoadProfile, adjusts randomization in humanoid appearance to account for species * base layer settings in humanoidsystem, eye color from profile * rearranges files to centralize under Humanoid namespace * more reorganization, deletes some stuff gotta break stuff to make other things work, right? goodbye SpriteAccessory... * fixes a good chunk of server-side issues still does not compile, yet * singlemarkingpicker xaml layout * singlemarkingpicker logic * magic mirror window (varying pieces of it, mostly client-oriented) * removes some imports, gives MagicMirror a BUI class (not filled in yet) * populates magic mirror BUI functionality / window callbacks * fixes up some errors in humanoidprofileeditor * changes to SingleMarkingPicker SingleMarkingPicker now accepts a List<Marking>, species, and total possible markings available in that marking category * fixes up hair pickers on humanoid profile editor * fixes the errors in markingpicker * markingsystem is now gone * fixes a bunch of build errors * so that's why i did it like that * namespace issues, adds robustxamlloader to singlemarkingpicker * another robustxamlloader * human, lizard sprites/points * prototype fixes, deletion of old spriteaccessory * component registration, fixes dwarf skin toning no, 'ReptilianToned' does not exist * removes component registration from abstract humanoid component * visualizer data now cloneable * serialize for visualizer key * zero-count edge case * missing semi-colon moment * setspecies in humanoidsystem * ensures that default markings, if empty, will cause ensuredefault to skip over that given category * tryadd instead of add * whoops * diff and apply should properly apply markings now * always ensure default, fixes double load for player spawning * apply skin color now sets the skin color property in humanoidcomponent * removes sprite from a few species prototypes * sprite changes for specific base layers based on humanoid sex * layer ordering fix, and a missing base layer should now disallow markings on that layer * anymarking base layer, adds the right leg/foot for humans * loading a profile will now clear all markings on that humanoid * adds missing layers for humans * separates species.yml into respective species prototype files * ensures that if layer visibility was changed, all markings have to be reapplied * server-side enforcement of hiding hair (and other head-related markings) when equipping things that hide hair * slime fix, clothingsystem now dictates layer visibility server side * sussy * layer settings should now ensure a marking should match the skin tone * whoops * skincolor static class and functions in UI * skin color validation in humanoidcharacterappearance * markingpicker now shows only the markings for the selected category in used * getter for slot in singlemarkingpicker now ensures slot is 0 if markings exists * FilterSpecies no longer attempts to do removal while iterating * expands for SingleMarkingPicker * humanoid base dummy has blank layers now (and snout/tail/headside/headtop) * fixes an issue with visualizer system if the marking count was different but the markings themselves were (somewhat) the same * whoops * adds edge case handlers for count differences in humanoid markings * preview now loads profile instead of directly setting appearance * moves marking set loading to update controls * clones a marking set in markingpicker by using the deep clone constructor * whoops (deep cloning a marking now copies the marking id) * adds replace function for markingset * points should now update after the markings are remove/added * merging base layer sprites into a humanoid should now clear them before merging * sets dirty range start to count only if the dirty range start was never set above 0 * fixes up some issues with singlemarkingpicker * color selector sliders in single marking picker should now expand * hair from hair pickers should now apply in profile loading (client-side) * category in singlemarkingpicker now sets the private category variable * slot selector should now populate * single marking picker buttons now have text, also shows the category name over all user-clickable elements * removes a comment * removing hair slots now sets it to bald, defaults to zero used slots if current hair is bald on hair/facial hair * random skin color, eye color * populate colors now checks if the marking count is greater than zero in singlemarkingpicker * hair/facial hair pickers now just get the first possible hair from the respective species list * different approach to random skin color * oh, that's why it wasn't working * randomize everything now just updates every single control * selecting a new marking in SingleMarkingPicker should attempt to copy over old colors, populate list now uses cache, * markingmanager now uses OnlyWhitelisted to populate by category and species * filterspecies now uses onlyWhitelist to filter markings based on whitelist or not * oops * ui fix for singlemarkingpicker, ensures that cache is not null if it is null when populatelist is called * order of operations for the horizontal expand for add/remove * hair pickers should now update when you add/remove the hair slot * fixes variable naming error in character appearance * loc string fix in singlemarkingpicker * lizards, vox now have onlyWhitelist, vox restriction for hair/facialhairs * having zero possible hairs should no longer cause an exception in randomization * setting species should now update hair pickers * ignore categories for marking picker * and a clear as well for the category button * places that functionality in its own function instead * adds eye base sprite, vox now also have their own custom eye sprites * loading a profile client-side should do FilterSpecies for markings now * client-side load profile does filter species after adding in the hairs now * magic mirror * callbacks now call the callback instead of adding it on construct * whoops * in removemarking too * adds missing synchronize calls * comments out an updateinterface call in magic mirror * magic mirror window title, minimum sizing * fixes minsize, adds warning for players who try to set their hair for species that have no hair * removes spaces in xaml * namespace changes/organization * whoopsie (merge conflicts) * re-enables identity from humanoid component * damagevisuals now uses the enum given to it instead of the layerstate given on that layer tied to the enum * removes commas from json * changes to visuals system so the change is consistent * chest * reptilian * visualizer system now handles body sprite setting/coloration, similar to how characterappearance did it not a big fan of this * adds a check in applybasesprites * adding/removing parts should now make them invisible on a humanoid * body part removal/adding now enumerates over sublayers instead * synchro now runs in bodycomponent startup * parts instead of slots * humanoidcompnent check * switches from rsi to actualrsi * removes all the body stuff (too slow) * cleans up resolves from humanoid visualizer system * merging sprites now checks if the base sprites have been modified or not (through things like species changes, or custom base sprite changes) * not forgetting that one again * merging now returns an actual dirty value * replaces the sequenceequal with a more accurate solution * permanent layers, layer visibility on add/remove part in body * should send all hidden layers over now * isdirty in visualizer system for base layers * isdirty checks count as well * ok, IsDirty should now set the base layers if the merged sprites are different * equals override in HumanoidSpritePrototypes.cs temporary until record prototypes :heck: * makes fields readonly, equates IDs instead * adds forced markings through marking picker * forced in humanoidsystem api, ignorespecies in markingpicker * marking bui * makes that serializable as well * ignore species/forced toggles now work * adds icon to modifier verb, interface and keys to humanoid bases * needs the actual enum value to open, no? * makes the key the actual key * actions now propagate upwards * ignore species when set now repopulates markingpicker * modifiable base layers in the markings window * oops! * layout changes * info box should now appear * adds ignorespecies for marking picker, collapsible for base layer section of appearance modification window * collapsible layout moment * if base layers have changed, all markings are now dirty (and if a base layer is missing, the marking is still 'applied' but it's now just invisible * small change to marking visibility * small changes to modifier UI * markings now match skin on zombification * zombie stuff * makes the line edit in marking modifier window more obvious * disables vox on round start * horizontal expand on the single label in base layer modifiers * humanoid profiles in prototypes * randomhumanoidappearance won't work if the humanoid has a profile already stored * removes unused code * documentation in humanoidsystem server-side * documentation in shared/client * whoops * converts accessory into marking in locale files (also adds marking loc string into single marking picker) * be gone, shared humanoid appearance system from the last upstream merge * species ignore on randomization (defaults to no ignored species) * more upstream merge parts that bypassed any errors before merge * addresses review (also just adds typeserializers in some places) * submodule moment * upstream merge issues |
||
|
|
2e7dcb1ed8 |
Lathe Refactor and ECS (#11201)
* lathe and material storage refactor * materialStorage ECS it kinda sus tho * beginning the lathe shitcode dive * couple lathe visuals and lathe system * lathe changes and such * dynamic lathe databases * rewrote internal logic on to ui * da newI * material display clientside * misc ui changes * component state handling and various other things * moar * Update Content.Shared/Lathe/LatheComponent.cs Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> * first volley of sloth review * more fixes * losin' my mind * all da changes * test fix and other review Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> |
||
|
|
b92175c562 | Fix appearance being lost on cloning (#11250) | ||
|
|
78a4ab6eb2 | Update for collision events by-ref (#10933) | ||
|
|
87549adfa5 | add special job components back when cloning (#11045) | ||
|
|
f36d278499 |
Biomass (#10313)
* Material * good prototype * Fix material storage * You can insert biomass into the cloner * ok, basic biomass subtraction works * amogus * ok chance works * Alright, the biomass and genetic stuff works * feedback for cloning * more reclaimer polish * ship it * starting biomass + fix lathes * I changed my mind on rat mass and these guys are definitely getting ground up * Doafter * clean up, sync the two * fix naming, fix mass * technology + construction * additional logging, stop unanchoring when active * fix event / logs * dont gib dead salvage * auto eject * fix deconstruction behavior * make warning message better, temporarily disable cancer scanner * fix biomass stacks * add easy mode CVAR * stack cleanup, make biomass 2x as fast * bugfix * new sprite from hyenh * fix tests * hello? :smilethink: * :smilethink: * medical scanner gets antirotting * fix cloner and medical scanner Co-authored-by: Moony <moonheart08@users.noreply.github.com> |
||
|
|
139713eb13 | Fix bad string format error in Rider (#10339) | ||
|
|
2f4849eae1 |
Cloning Rework (#8972)
Co-authored-by: fishfish458 <fishfish458> |