Commit Graph

50 Commits

Author SHA1 Message Date
Winkarst
dda491ece4 Remove calls to FormattedMessage obsolete methods (#31706)
* Remove FormattedMessage obsolete methods

* Oops
2025-07-19 15:20:15 +10:00
Nemanja
859abc8ec2 Blueprints (#31138)
* Blueprints

* Update tables_loot.yml

* doink

* mark as required

(cherry picked from commit 85b7d183bd9010feab003af1cef0980790d6cd7a)
2025-07-16 17:08:19 +10:00
Spatison
800db26bee [Fix] Research Point Multiplier (#449)
* SoftCapMultiplier

* WD mark
2025-04-20 06:20:39 +03:00
EctoplasmIsGood
0059fc4d01 Lathe Messages (#1940)
<!--
This is a semi-strict format, you can add/remove sections as needed but
the order/format should be kept the same
Remove these comments before submitting
-->

# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Adds lathe messages when new recipes are unlocked, ported from goob LRP

# 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: Lathes will now notify you when they have new recipes

---------

Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Signed-off-by: EctoplasmIsGood <109397347+EctoplasmIsGood@users.noreply.github.com>
Co-authored-by: BombasterDS <115770678+BombasterDS@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
(cherry picked from commit fd9cfbb512e5ff6130ecded09ee498224e29ed2d)
2025-03-21 16:56:48 +03:00
VMSolidus
0acf7c5b4b Replace Tech Lockout With Softcap (#1605)
# Description

This PR fully replaces the "Tier 3 Tech Lockout" with a research
softcap. How it works is that technologies are allowed to set a softcap
contribution, meaning that they multiplicatively increase the cost of
all other research by a certain amount. By default, this is done by all
Tier 3 Technologies. Essentially, this means that you're no longer
limited to a single research category's tier 3 selections. Instead the
costs of research increase the more capstones you unlock. The current
cost increase for research is displayed on the console.

<details><summary><h1>Media</h1></summary>
<p>

![image](https://github.com/user-attachments/assets/e65fa1ee-c849-489c-b690-f7ce8d98b678)

</p>
</details>

# Changelog

🆑
- remove: Removed the "Tier 3 Tech Lockout" mechanic. You are no longer
limited to 1 discipline worth of t3 research.
- add: Research is now "Softcapped" by Tier 3 unlocks. Each unlocked
Tier 3 technology multiplicatively increases the cost of all other
research. Rushing a capstone can be quite expensive, as will be getting
multiple capstones. I hope you're glad that you can build more than one
prober now without guaranteeing the station will explode.

(cherry picked from commit b7da1f4ff64ca3ce8c4dc4545186573174b3e89c)
2025-01-20 21:24:31 +03:00
VMSolidus
ef33768a68 Port Frontier Guns And The Den PRs For Them (#1490)
# Description
this ports the following PRs:
https://github.com/TheDenSS14/TheDen/pull/128
https://github.com/TheDenSS14/TheDen/pull/133
https://github.com/TheDenSS14/TheDen/pull/135
https://github.com/TheDenSS14/TheDen/pull/143

Essentially, this PR adds several new "Civilian Grade" firearms to the
game that come from Frontier, most of which use the new LightRifle
cartridge, a fairly underpowered round. Security can take the new
Argenti revolver in their loadouts, while Salvage can spend their Mining
Points on the civilian rifles. Notably, the ones purchased in the Mining
Vendor do not come with ammo. Salvage needs to go request ammo from
Security, or a traitor salvage can emag the cargo autolathe to get ammo
for them.

I'm going to laugh my ass off the first time a Warden has to deal with
Salvage specialists coming to ask "Hey can you print me ammo for my
MOSIN?"

<details><summary><h1>Media</h1></summary>
<p>

New 0 point revolver for sec. It does shit-tier damage since it fires
.20 rifle, but with an 8 round capacity, it's the highest capacity
revolver in the game.

![image](https://github.com/user-attachments/assets/403acae6-deb9-4ef6-b5f4-dab5201d8009)

![image](https://github.com/user-attachments/assets/7ea66718-837c-489e-8da3-5ef60c25e33a)

New salvage vendor "Civilian Grade" equipment

![image](https://github.com/user-attachments/assets/6723f2f7-cf7b-438e-b9b7-2df108d20336)

Tested and verified that the salvage vendor guns actually do spawn
empty:

![image](https://github.com/user-attachments/assets/ea0eb959-2815-4a5b-87ce-d0654b74133f)

</p>
</details>

# Changelog

🆑
- add: Added the Argenti, Gestio, Novalite C1, and SVT firearms. Added
an "Empty" Mosin variant for Salvage.
- add: Salvage technicians can now spend their mining points on new
"Civilian Grade" firearms from the Mining Vendor. These don't come with
ammo, so you'll have to request ammo be printed by Security.
- add: Added the Argenti Revolver to Security Loadouts.
- tweak: Salvage Specialist lockers are now guaranteed to come with one
pickaxe and one ore bag.

---------

Co-authored-by: sleepyyapril <123355664+sleepyyapril@users.noreply.github.com>
Co-authored-by: Rosycup <benjho049@gmail.com>

(cherry picked from commit e2d4a3243e43f73c566d5372297f77083c42cf99)
2025-01-14 02:13:47 +03:00
sleepyyapril
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)
2025-01-14 00:13:42 +03:00
SimpleStation14
318bb084d1 Mirror 26421: Nerf Ninja's Research Stealing (#446)
## Mirror of PR #26421: [Nerf ninja research
stealing](https://github.com/space-wizards/space-station-14/pull/26421)
from <img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)

###### `3b9c5d43ec97a0693ced0118fcfcb8467aa5595e`

PR opened by <img
src="https://avatars.githubusercontent.com/u/98561806?v=4"
width="16"/><a href="https://github.com/EmoGarbage404">
EmoGarbage404</a> at 2024-03-25 01:44:21 UTC - merged at 2024-03-26
00:52:27 UTC

---

PR changed 4 files with 75 additions and 8 deletions.

The PR had the following labels:
- Status: Needs Review


---

<details open="true"><summary><h1>Original Body</h1></summary>

> <!-- Please read these guidelines before opening your PR:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
> <!-- The text between the arrows are comments - they will not be
visible on your PR. -->
> 
> ## About the PR
> <!-- What did you change in this PR? -->
> Changes ninja gloves to steal a flat rate of techs instead of wiping
all of them.
> Additionally adjusts the objective to require 1 to 2 steals to reach
the target amount.
> 
> ## Why / Balance
> <!-- Why was it changed? Link any discussions or issues here. Please
discuss how this would affect game balance. -->
> Ninja's stealing research was previously an extremely trivial and
annoying objective. For them, you can pretty easily break into the
server room and wait out the 20 second doafter. It's not super hard and
you're not exactly shooting off warning signs. At this very low cost,
science loses literally an hour+ of progress.
> 
> This nerf changes it to only remove 4-8 random technologies, or only
about 20k to 40k points worth. This is still pretty crippling but not
awful. On top of that, they need to do it twice to hit the target
amounts of 9 to 12 techs stolen. This provides counterplay by actually
giving science a chance to see that all their research has vanished
before the ninja is already gone. It also makes it significantly harder
for ninja to obliterate everything science has done.
> 
> ## Media
> <!-- 
> PRs which make ingame changes (adding clothing, items, new features,
etc) are required to have media attached that showcase the changes.
> Small fixes/refactors are exempt.
> Any media may be used in SS14 progress reports, with clear credit
given.
> 
> If you're unsure whether your PR will require media, ask a maintainer.
> 
> Check the box below to confirm that you have in fact seen this (put an
X in the brackets, like [X]):
> -->
> 
> - [x] I have added screenshots/videos to this PR showcasing its
changes ingame, **or** this PR does not require an ingame showcase
> 
> ## Breaking changes
> <!--
> List any breaking changes, including namespace, public
class/method/field changes, prototype renames; and provide instructions
for fixing them. This will be pasted in #codebase-changes.
> -->
> 
> **Changelog**
> <!--
> Make players aware of new features and changes that could affect how
they play the game by adding a Changelog entry. Please read the
Changelog guidelines located at:
https://docs.spacestation14.io/en/getting-started/pr-guideline#changelog
> -->
> 
> 🆑
> - tweak: Ninjas no longer wipe all technologies when using their
gloves on a research server.
> 


</details>

Co-authored-by: SimpleStation14 <Unknown>
2024-07-11 17:55:36 -07:00
Nemanja
40f7e0b53e Lathe Categories (#24247)
* Lathe Categories

* serilog my beloathed

(cherry picked from commit 73e94dfa92e0afe3ad0decd1d7248d13fa4f208c)
2024-01-26 23:12:38 +01:00
DrSmugleaf
4257bd2c7e Make all prototype types partial (#21374) 2023-11-12 20:29:57 +01:00
Nemanja
a30e3ae432 technology auto guidebook (#21029)
* technology auto guidebook

* boo-womp

* boo-womp II
2023-10-20 15:30:17 +02:00
Debug
fd2cc8570d Sync master up to 1/10 (#74)
* Automatic changelog update

* Make NPC names proper nouns & fix some genders (#20534)

* Proper names & genders

* Uppercase proper names

* Make Smile female

* fix bingus wrinkly head (#20531)

* rouny meat and steak (#20526)

* lost friendship flavor

* add rouny steak

* rouny special meat

* rouny meat textures

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* Wearable Wet Floor Sign and 'Janitorial Suicide Vest' (#20311)

* Explosive wet floor sign & janitorial suicide vest

* fix attributions

* Remove name & desc from explosive wet floor sign

* Make wet floor sign chameleonable

* Automatic changelog update

* Minor slippery stuff (#20535)

* Update submodule to 162.2.0 (#20570)

* Predicted armor (#20560)

* clean up some lines in smile the slime prototype (#20552)

* Revert "Use full file path for temp replays (#19002)" (#20545)

* Add EyesGlasses into ClothesMate (#20523)

* Automatic changelog update

* Fix Punpun crew monitor sensor (#20484)

* Automatic changelog update

* EasyPry airlocks for arrivals. Now also prying refactor I guess (#19394)

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

* Automatic changelog update

* Make arcades hackable again (#20555)

* Automatic changelog update

* Health alert tweaks (#20557)

* Automatic changelog update

* Add active and ended game rule components, generic TryRoundStartAttempt and minPlayers field (#20564)

* Improve active game rule querying, add generic try round start attempt method, move minPlayers to GameRuleComponent

* Nukeops todo and cleanup

* Remove Active field

* Add EndedGameRuleComponent

* bartender suit (#20521)

* give me a drink bartender

* guh

* aARG

* Necropolis and mine walls (#20578)

* Automatic changelog update

* archaic accent tweaks (#20567)

* Automatic changelog update

* Add confirmation to kick and respawn in the admin player actions panel (#20542)

* Remove windows-latest CI runs, remove unused build-test-release.yml (#20540)

* Change .editorconfig to keep existing attribute arrangement (#20538)

* Automatic changelog update

* Catch replay start and end errors on round restarts (#20565)

* Update trivial components to use auto comp states (#20539)

* Fix role unbans not applying in real time (#20547)

* Disable AHelp buttons when no player is selected, update button styling (#20568)

* Automatic changelog update

* Added a toggle fullscreen button (default F11) (#20272)

* Added a toggle fullscreen button (default F11)

* Removed un-needed comments

* Review Requested Changes

* Fixed Acidental Spacing Change

* bwoink, removed extraneous code

* nothing, litterally

* Automatic changelog update

* Fix not networking markings (#20588)

* Automatic changelog update

* Update RobustToolbox to v162.2.1 (#20590)

* Automatic changelog update

* Glorfcode (force say on damage/stun/crit) (#20562)

* Automatic changelog update

* Fix AHelp progressively showing more AHelp panels (#20591)

* Automatic changelog update

* caninsert entitystorage tweaks (#20589)

* Automatic changelog update

* Fix mapping actions crashing on load (#20592)

* Fix loading a map with a ThirstComponent crashing the game (#20594)

* Fix electrocution displaying real name of disguised players (#20603)

* Organ fixes (#20488)

* Automatic changelog update

* Kettle medical rework (#20435)

* Initial try at medical rework for kettle

* Re-add decal decorations to Kettle's medical

* Add more lockers to kettle's med

* Actually upload kettle's map, not its proto

* Automatic changelog update

* Added blocked visuals to volumetric pump (#20610)

* Automatic changelog update

* Move TimedDespawn to engine (#20515)

* Update submodule to 163.0.0 (#20616)

* Remove v0.1 version number from local main menu screen (#20617)

* Remove cloneData parameter from AutoNetworkedField (#20596)

* Update submodule to 164.0.0 (#20618)

* fix cognizine ghost role (#20632)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* Move ID layer one pixel to correct alignment (#20630)

* Update nukie hardsuit descriptions (#20529)

* Make holofans destructable (#20445)

* Automatic changelog update

* bowl is open (#20453)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Add TestPair.WaitCommand() (#20615)

* Rename ThreatPrototype and mark fields as required (#20611)

* Adjust hard bomb shape (#20608)

* dragon refactor, objectives and use GenericAntag (#20201)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Automatic changelog update

* Added generic empty liquids tank (#20563)

* Move view variables verb to the top of the list with no category and localize it (#20546)

* saltern update (#20325)

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Fix followers leaking (#20643)

* Add Winter Boots (#20622)

* add

* fix prototype

* Add QM mantle (#20621)

* add

* fix prototype

* Automatic changelog update

* Slime mobs breathe nitrogen and resprite their organs (#20577)

* Slimes breathe nitrogen and resprite their organs

* ups

* mmm

* Automatic changelog update

* Fix the new lizard horn's consistency + issue (#20620)

* fix

* add

* Revert "add"

This reverts commit a054a3204a8f185a94ceb80b1bd3bc9f30423711.

* Add RandomHumanoidAppearance component to for space ninjas (#20605)

* Automatic changelog update

* Space cat breathes space (#20550)

* Space cat breathes space

Made Space Cat lungs ROBUST

* Made Space Cat's lungs ROBUST 2.0

* Automatic changelog update

* Wide anomaly locator (#20581)

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* add textures

* fix encoding

* fix 2

* Automatic changelog update

* Fixed Telescopic Shield Lighting (#20650)

* Fixed Telescopic Shield Lighting Bug fix #20199

* no need for these at all

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Automatic changelog update

* Add a special hardsuit for nukie medic (#20471)

* Automatic changelog update

* Carry over other mutations when doing species mutation (#20551)

* Automatic changelog update

* Add Spanish accent to poncho and sombrero (#20377)

---------

Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: ravage <142820619+ravage123321@users.noreply.github.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Co-authored-by: LEVELcat <68501903+LEVELcat@users.noreply.github.com>
Co-authored-by: Repo <47093363+Titian3@users.noreply.github.com>
Co-authored-by: nikthechampiongr <32041239+nikthechampiongr@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Doru991 <75124791+Doru991@users.noreply.github.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Skarletto <122584947+Skarletto@users.noreply.github.com>
Co-authored-by: NULL882 <104377798+NULL882@users.noreply.github.com>
Co-authored-by: lunarcomets <140772713+lunarcomets@users.noreply.github.com>
Co-authored-by: Miro Kavaliou <miraslauk@gmail.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
Co-authored-by: Kacper Urbańczyk <kacperjaroslawurbanczyk@gmail.com>
Co-authored-by: TsjipTsjip <19798667+TsjipTsjip@users.noreply.github.com>
Co-authored-by: daerSeebaer <61566539+daerSeebaer@users.noreply.github.com>
Co-authored-by: Fluffiest Floofers <thebluewulf@gmail.com>
Co-authored-by: Flareguy <78941145+Flareguy@users.noreply.github.com>
Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
Co-authored-by: drteaspoon420 <87363733+drteaspoon420@users.noreply.github.com>
Co-authored-by: Ubaser <134914314+UbaserB@users.noreply.github.com>
Co-authored-by: Nim <128169402+Nimfar11@users.noreply.github.com>
Co-authored-by: Kacper Urbańczyk <mikrel071204@gmail.com>
Co-authored-by: Tox Cruize <141375638+TexCruize@users.noreply.github.com>
Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: Michael Cu <43478115+michaelcu@users.noreply.github.com>
2023-10-03 14:15:46 -05:00
metalgearsloth
c9648da984 Content update for NetEntities (#18935) 2023-09-27 21:59:12 +02:00
deltanedas
24810d916b ninja 2 electric boogaloo (#15534)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-09-10 16:20:27 +10:00
DrSmugleaf
a88e747a0b Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Nemanja
a01f26d3a6 fix lathe syncing and tweak ui (#17489) 2023-06-20 00:39:35 -06:00
Nemanja
8411739e00 Fix secfab being able to print protolathe items (#17443) 2023-06-18 16:35:19 -06:00
Nemanja
9efc727fe1 RND Rework [Death to Techweb] (#16370)
* Techweb rework

* more ui work

* finishing ui

* Finish all the C# logic

* the techs + lathes

* remove old-tech

* mirror-review
2023-05-15 15:17:30 -05:00
Visne
c6d3e4f3bd Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00
Nemanja
69971272e6 lathe recipes no longer specify textures (#12944)
Co-authored-by: Moony <moony@hellomouse.net>
2023-01-01 15:56:03 -08:00
Nemanja
4eee1ee9b2 clean up infinite researchsystem shitcode (#13136)
* clean up infinite researchsystem shitcode

* fml some more shit

* make syncing work logically

* naming naming naming
2022-12-25 15:22:23 -06:00
Nemanja
050e157005 Technology Disks (#13077)
* clean up a bunch of R&D code

* don't store components

* brug

* speedrun some sloth review

* technology disks

* expand functionality, begin work on printer

* disk printer ui

* file

* fix the rebase

* disk console is finito

* Update DiskConsoleSystem.cs
2022-12-20 16:39:57 -06:00
Pieter-Jan Briers
a323671984 Changes for prototype load parallelization (#13066)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-12-20 14:25:34 -08:00
DrSmugleaf
7fbc2608e8 Remove redundant read-only VV from datafields (#12626) 2022-11-16 20:22:11 +01:00
Paul Ritter
c5e5729bd4 removes beforeserialization hook (#12319) 2022-11-03 12:41:12 +11:00
Nemanja
6fd083af0b fix infinite lathe printing bug (#12343) 2022-11-01 18:05:00 -05:00
Rinkashikachi
df681f98aa Technology localization (#10252) 2022-08-08 18:40:20 +10:00
metalgearsloth
5dbb3220dd ECS and bandaid research (#9251) 2022-06-28 22:54:08 +10:00
wrexbe
bc68ac96dd Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Rane
93cdca4f82 Partial lathe ECS, fix cursed lathe visualizer, a bit more audiovisual feedback for lathes (#7238)
* Prototype that's mostly borked rather than completely borked

* ECS inserting mats

* Partial ECS mostly done, needs cleanup and visualizer

* Replace timers

* Power visualizes at least

* First ""working"" version

* Clean up all lathes

* Colors

* Fix animation timing

* Fixes greyscale, adds a bunch of colors

* Give every (used) material a color

* Made most lathes take long enough you can at least see there's some sort of animation

* Insertion feedback popup

* Sound for circuit printer and uniform printer

* Fix queueing, optimize update

* Remove mono crash

* cleanup

* Fix test failure

* Techfab inserting sprite

* Cleanup and commenting

* Fix bug in CanProduce check

* Fix UI resolves

* Mirror review stuff
2022-04-17 17:34:14 +10:00
Paul Ritter
2ff40d5a1f Serv3 rework content changes (#7145) 2022-04-03 02:01:22 +02:00
mirrorcult
ec4d4688c7 Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
wrexbe
17db0775c8 Auto comp (#6416) 2022-02-02 14:35:40 +11:00
Leon Friedrich
2a7c84a8dd Fix some lathe recipes (#5941) 2021-12-30 01:19:49 +11:00
metalgearsloth
88bdf0ce61 Add some more prototype serializers (#5934) 2021-12-30 00:48:18 +11:00
Visne
b7dc3c81ae Remove redundant #nullable enable (#4275) 2021-07-16 17:37:09 -07:00
Acruid
59e5cc5e3c Remove Static Component NetIds (#4247)
* Remove the unnecessary NetID property from ComponentState.

* Remove Component.NetworkSynchronizeExistence.

* Removed Component.NetID.

* Adds component netID automatic generation.

* Removed NetIdAttribute from serverside components with no corresponding clientside registration.

* Completely remove static NetIds.

* Renamed NetIDAttribute to NetworkedComponentAttribute.

* Add GenerateNetIds calls to client and server entry points.
Add test to make sure auto generated NetIds are identical.

* Component changes when rebasing that I am too lazy to rewrite into the branch.

Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-07-12 10:32:10 +02:00
DrSmugleaf
ff1a2d97ea Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00
Vera Aguilera Puerto
bbfc0c320a Fixes materials in lathe recipes 2021-05-22 11:30:11 +02:00
DrSmugleaf
ad3b7fe97d Remove field: from DataField attributes (#3932) 2021-05-04 15:37:16 +02:00
Paul
73cef00aeb makes prototypeinheritance opt in 2021-03-05 11:13:00 +01:00
Paul Ritter
5c50b1f6ed Serialization v3 content PR (#3491)
* serv3 in shared pt 1

* beginning of deepclone api

* progress in implementing ideepclone & serv3 in content

* adds target

* its cant hurt you it cant hurt you

* more changes to content.server

* adds dataclasses

* almost there

* renamed & edited entry

* finishes refactoring content to use serv3

* gasmixture runtimes, next: reagentunit

* fucin hell that was an annoying one

* adds flags

* fixes some yaml errors

* removes comment

* fixes generic components for now

* removes todo
actually clones values my god paul
fixes bug involving resolving custom data classes from other proj
renames dataclass
fixes spritecomp
adds WithFormat.Constants support

* adds deepclone to ResistanceSet

* adds a bunch of deepclone implementations
adds a deepclone analyzer (TODO)
adds a deep clone fallback for classes & structs

* fixes a bunch of runtimes

* adds deepclone to entityuid

* adds generator to sln

* gets rid of warnings

* fixes

* argh

* componentdata refactors

* more deepclone impl

* heck me i reworked all of content deepclone

* renames custom dataclasstarget

* misc

* reworks prototypes

* deepclone nuke

* renamed customdataclass attribute

* fixes everything

* misc fixed

* the killcommit

* getting there

* changed yamlfieldattribute namespace

* adds back iselfserialize

* renames everything to data(field/definition)

* ouch

* Fix most errors on content

* Fix more errors in content

* Fix some components

* work on tests

* fixes some customdataclasses

* fuggin shit

* yes

* yeas

* Remove data classes

* Data field naming fixes

* arg

* Git resetti RobustToolbox

* Merge fixes

* General fixes

* Fix startup serialization errors

* Fix DamageContainerPrototype when supported classes or types are null

* Implement construction graph step type serializer

* Fix up construction serialization

* Fix up construction serialization part 2

* Fix null list in technology database component

* Fix body serialization

* Fix entity storage serialization

* Fix actions serialization

* Fix AI serialization

* Fix reaction serialization

* Fix body serialization

* Fix grid atmosphere serialization

* Rename IServ3Manager to ISerializationManager

* Convert every non generic serializer to the new format, general fixes

* Serialization and body system fix

* pushinheritance fix

* Update all prototypes to have a parent and have consistent id/parent properties

* Merge fixes

* smh my head

* cuddling slaps

* Content commit for engine PR

* stuff

* more fixes

* argh

* yes even you are fixed

* changelog fixes

* fixes seeds

* argh

* Test fixes

* Add writing for alert order prototype

* Fix alert order writing

* FIX

* its been alot ok

* Fix the rest of the visualizers

* Fix server alerts component tests

* Fix alert prototype tests not using the read value

* Fix alert prototype tests initializing serialization multiple times

* THIS IS AN AMERICAN CODEBASE GOD BLESS THE USA

* Add ImplicitDataDefinitionForInheritors to IMechanismBehavior
Fixes the behaviors not being found

* Fix NRE in strap component
Good night to the 1 buckle optimization

* Fix clothing component slot flags serialization tag

* Fix body component in all components test

* Merge fixes

* ffs

* Make construction graph prototype use serialization hooks

* human yaml linted

* a

* Do the thing for construction

* stuff

* a

* monke see yaml linter

* LINT HARDER

* Remove redundant todo

* yes

* Add skip hook argument to readers and copiers

* we gamin

* test/datafield fixes

* adds more verbose validation

* moves linter to action

* Improve construction graph step type serializer error message

* Fix ammo box component NRE

* gamin

* some updates to the linter

* yes

* removes that test

* misc fixes

* array fix
priority fix
misc fixes

* adds proper info the validation

* adds alwaysrelevant usa

* Make yaml linter take half as long to run (~50% less)

* Make yaml linter 5 times faster (~80% less execution time)

* based vera being based

* fixes mapsaving

* warning cleanup & moves surpressor

* removes old msbuild targets

* Revert "Make yaml linter 5 times faster (~80% less execution time)"

This reverts commit 3e6091359a26252c3e98828199553de668031c63.

* Add -nowarn to yaml linter run configuration

* Improve yaml linter message feedback

* Make dependencies an argument instead of a property on the serialization manager

* yamllinting slaps

* Clean up type serializers

* Move yaml linter code to its own method

* Fix yaml errors

* Change yaml linter action name and remove -nowarn

* yaml linter please shut

* Git resetti robust toolbox

Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-03-05 01:08:38 +01:00
Visne
9b94d5c195 Added nullable to most Content.Shared files (#3238)
* Add nullable to some Content.Shared files.

* Use [NotNullWhen(true)]

* Undo adding now redundant !'s

* Forgot one

* Add a ton more nullable

* You can guess

* Fix some issues

* It actually compiles now

* Auto stash before merge of "null2" and "origin/master"

* I lied

* enable annotations -> enable

* Revert ActionBlockerSystem.cs to original

* Fix ActionBlockerSystem.cs

* More nullable

* Undo some added exclamation marks

* Fix issues

* Update Content.Shared/Maps/ContentTileDefinition.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Resolve some issues

* Remove unused method

* Fix more issues

* Fix more issues

* Fix more issues

* Fix more issues

* Fix issue, rollback SharedGhostComponent.cs

* Update submodule

* Fix issue, invert some if-statements to reduce nesting

* Revert RobustToolbox

* FIx things broken by merge

* Some fixes

- Replaced with string.Empty
- Remove some exclamation marks
- Revert file

* Some fixes

* Trivial #nullable enable

* Fix null ables

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-02-27 14:12:09 +11:00
DrSmugleaf
3e702723fd Content PR for YAML hot reloading (#3319)
* Content PR for YAML hot reloading

* Add CanAdminReloadPrototypes (host permission)

* IndexedPrototype fixes
2021-02-20 00:05:24 +01:00
Acruid
ca4fd649fe Massive Namespace Cleanup (#3120)
* Engine namespace changes.

* Automated remove redundant using statements.

* Simplified Graphics namespace.

* Apparently the container system stores full type names in the map file.😞 This updates those names.

* API Changes to LocalizationManager.LoadCulture.

* Update submodule to v0.3.2
2021-02-11 01:13:03 -08:00
py01
07e4318893 Technology prototype camelCase 2020-07-18 20:47:10 -06:00
ZelteHonor
b2e2aef78d Rider static analysis (#433)
* Non-accessed local variable

* Merge cast and type checks.

* StringComparison.Ordinal added for better culture support

* Supposed code improvement in launcher. Remove unused code.

* Update ExplosionHelper.cs

Unintentional change.

* Optimized Import

* Add Robust.Shared.Utility import where it was deleted

* Other random suggestion

* Improve my comment
2019-11-13 23:37:46 +01:00
Víctor Aguilera Puerto
ba8b495ec0 Adds Research, unlockable technologies, Protolathes... (#264)
* Work on Research so far
More work on UI...
Fix ResearchClient and Protolathe UI stuff.
Fix infinite select -> request state -> select -> ... loop
Add UI to ResearchClient, etc.
Technology Database states, and a bit of work on the research console ui
A bit of work on Research Console UI
Protolathe sync
Stuff that actually does things
Protolathe databases yay
Alright got my motivation back
Yeah, no. It's almost 3 AM already
Fix serialization bug again
More work on stuff
Stuff
Adds files for most new components/systems.

* Protolathes actually work now

* Research. Just Research.

* Adds icons from Eris.

* Address reviews

* Change LatheMenu resize behaviour

* Update Content.Client/GameObjects/Components/Research/ResearchConsoleBoundUserInterface.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Update Content.Client/Research/ResearchConsoleMenu.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Move IoC Resolve out of for loop

* Address review

* Localize stuff
2019-09-03 22:51:19 +02:00
Pieter-Jan Briers
996b45a04f Project File Refactor (#241)
* Project file refactor, content edition

* Update submodule
2019-05-28 00:18:29 +02:00
Víctor Aguilera Puerto
fe0414eda7 Lathes (#207)
* Recipe stuff.

* Lathe GUI and stuff

* god dammit

* Lathe menu works, yay.

* EventArgs henk

* Some work

* SS14 -> Robust

* More SS14 -> Robust

* Lathe materials

* Lathe works, Lathe GUI, Queue GUI, etc

too many changes to name them here

* Remove materials button, add ViewVariables and update lathe on connect

* Add Autolathe RSI

* Adds new recipes, fixes a few bugs.

* Remove unused ScrollContainers

* Use same delegate for spawn.

* Removes client-side LatheComponent in favor of BoundUserInterface

* Remove GetMaterial and TryGetMaterial

* Use auto-properties in a few places.

* Adds LatheDatabase, and a bunch of other changes

* Remove useless log.

* Remove lathetype from prototypes.

* Turns Storage, Lathe and Database into autoproperties

* Remove Hacked property from LatheRecipePrototype

* Remove unneeded dependency injection from components

* Refactors LatheDatabaseComponent to use ComponentState

* Refactors MaterialStorageComponent to use ComponentState

* Oopsie

* Another oopsie

* Last oopsie, I hope

* Fix missing Close call.
2019-04-26 15:51:05 +02:00