Commit Graph

63 Commits

Author SHA1 Message Date
Leon Friedrich 828b1f2044
Rejig LogStringHandler (#30706)
* Rejig LogStringHandler

* Fix session logs

* Fix properly

* comments

* IAsType support

* Fix mind logs

* Fix mind logging AGAIN

---------

Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
2025-09-05 14:22:49 +02:00
Winkarst-cpu 021adbe1e1
New Feature: Kitchen spike rework (#38723)
* Start

* Wow, text

* Ultra raw

* More stuff

* Wow, DOT and gibbing!!!

* More stuff

* More

* Update

* Yes

* Almost there

* Done?

* I forgot

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Beck

* Unhardcode
2025-08-19 10:56:36 -07:00
Nemanja 524725d378
HandsSystem Refactor (#38438)
* checkpoint

* pt 2

* pt... i forgot

* pt 4

* patch

* More test fixes

* optimization!!!

* the REAL hand system

* fix RetractableItemActionSystem.cs oversight

* the review

* test

* remove test usage of body prototype

* Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* hellcode

* hellcode 2

* Minor cleanup

* test

* Chasing the last of the bugs

* changes

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2025-06-25 15:13:03 +02:00
drakewill-CRL 294a5a1b69
Display obvious plant mutations in examine text (#32650)
* Effect mutations now display on examine

* ChangeSpecies shouldn't stay on the list after running. Name cleanup

* EmoGarbage Review - convert description to LocId and add minor logic fix

* fix the dastardly yaml

---------

Co-authored-by: PraxisMapper <praxismapper@gmail.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
2025-04-29 00:45:10 -04:00
Nemanja 1540880eb2
Predict Labels (#36406)
* Predict Labels

* nitpicks
2025-04-10 22:19:48 -07:00
J af9526197a
Extracts magic strings from Tag calls (#36305)
* Extracts magic strings from Tag calls

When #36281 gets merged, the `TagSystem` methods will all give warnings. Let's fix those warnings before they even happen!

* Adds missing libraries

* Remove not yet implemented TagSystem changes

* Fix tag spelling error

Genuinely surprised there was only 1!

* Styling and proper type changes

* Styling

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2025-04-04 20:20:19 -04:00
SlamBamActionman 43d08100b9
"New player" admin logging improvements (#35961)
* Initial commit

* Adjust a whoooole bunch of logs

* Also spears

* Track going crit

* Review fix

* Review fixes
2025-03-20 20:56:51 +01:00
Ignaz "Ian" Kraft 36b59c69f4
allow paper labels on seeds (#34450)
* allow paper labels on seeds

* added the components required by PaperLabel to the SeedBase

* localize insert/eject for PaperLabel

* visualize the paper label on seeds

* new paper layer for seeds

* eject the seed label on use

* different looking paper label

* forgot to turn on a layer
2025-02-08 15:16:06 -08:00
Tr1bute 83f7d3f3df
Added Popup for the Ligneous plant mutation when using hands. (#33136)
* Added Popup for the Ligneous plant mutation when using hands.

There was some confusion for players with the Ligneous mutation which makes the plant harvestable only with sharp tools. Adding a popup with the message "The plant is too tough." to give them a hint to use something other than just their hands.

I decided to only put the message when attempting to harvest using hands, as the intent is clear that the player just wanted to harvest, but wasn't able to. Using any other tools like a crowbar or a screwdriver will not trigger the popup.

* Update Resources/Locale/en-US/botany/components/plant-holder-component.ftl

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>

---------

Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
2024-11-04 01:56:41 +01:00
Leon Friedrich adb7aee831
Fix PlantHolder interactions & InteractionSystem assert (#32874) 2024-10-18 16:40:36 +11:00
LittleNyanCat c027919618
Several small SFX tweaks (#28897)
* Several small sfx tweaks

* fix small yml oopsie

* Redo the basin code to use events

* now uses an event for when the transfer is successful, not when there's just an attempt

* forgot to remove this

* Update Content.Server/Botany/Components/PlantHolderComponent.cs

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

* Update Content.Server/Botany/Systems/PlantHolderSystem.cs

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

* adds sound variations to shoes as well

* variations on honkbots and the H.O.N.K mech

* Update Content.Server/Botany/Systems/PlantHolderSystem.cs

* Update Content.Server/Botany/Systems/PlantHolderSystem.cs

* fix compile issue

* oops forgot to delete this

* cleanup

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-16 20:38:02 -05:00
slarticodefast 87981f3886
Fix plant holder double solution transfer (#32813) 2024-10-15 20:57:30 -07:00
drakewill-CRL 1dec19cc05
Botany Rework Part 1: Mutations (#31163)
Instead of each mutation being a flag that gets checked at some unique point in BotanySystem somewhere, they're now EntityEffects that get applied when the mutation occurs and when produce is harvested. One new list was added to SeedData so that multiple other fields could be removed.

All the non-stat-change mutations that have been rolled are added to the Mutations list, and get applied to the plant when the mutation occurs or when a seed with the mutation is planted. Produce get mutations applied at harvest if they apply to the produce, and carry all of the plant's mutations over as a seed. This gets rid of the one-off checks for things like Slippery, Bioluminescent, Sentient, etc.

The base odds of a mutation applying should be equal to the odds of the original mutation check. It pretended to have 1 bit flip (on averge) per mutation power, and odds of each mutation was the odds of one of its bit being flipped (1 /275 * bits). The 'thermometer code' applied for numbers will be replaced with simple random rolls, as both average out to the middle value. The new checks are much easier to understand and don't obfuscate the actual changes of something happening behind 3 layers of math. The biggest player-facing change is that Potency will be able to get over 65 significantly more often than it did in the previous system, but it will be just as common to get low values as high ones.

Mutation definitions have been moved to a .yml file. These include the odds per tick per mutagen strength of that mutation applying that tick, the effect applied, if it applies to the plant and/or its produce. This makes mutations simpler to add and edit.

This PR is limited specifically to the mutation logic. Improving other aspects of the system will be done in other PRs per the design document. Mutations was chosen first because its got the largest amount of one-off checks scattered all over that could be consolidated. Once this is merged, mutations could be contributed to the codebase with minimal extra work for later botany refactor PRs.
2024-09-14 20:12:17 -07:00
Cojoke ef1fadf275
Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem (#30084)
* Replace instances of SolutionContainerSystem with SharedSolutionContainerSystem

* guap

* More fixes

* Wait you can do that?

---------

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2024-09-02 13:26:04 +02:00
Crotalus 9c9bfda4d2
Fix botany bugs (#27210)
* Fixed bug with missing gas not getting reset

* Fix bug with MutateInt not using min/max in prob calculation

* Add divison by zero check

* Fix styling
2024-08-18 03:05:26 +02:00
Token 27793111bb
Plants scream mutation now have more scream variety (#30862)
* seed screams now SoundCollectionSpecifier
More types of scream sounds

* plants scream mutation have 10+ scream types

* plant scream reduce scream volume
And scream powerness get's from yml instead of hardcode, so from prototypes could be changed pretty much easilly

* plants review change
2024-08-16 22:09:25 -04:00
slarticodefast bd5d415575
Make the sentient plant mutation non-copyable to other plantholders (#29133)
make the sentient plant mutation not propagate by clipping, using the seed extractor or cryoxadone
2024-08-11 19:23:14 +10:00
Jezithyr 6869adfa78
Move GasMixture to shared (#27480)
* Moved GasMixture to shared

* Temp Fix for sandbox violation, idk why Array.Resize isn't working properly. It's already sandboxed.

* The most powerful webedit in history
2024-04-30 14:31:05 -07:00
botanySupremist 58e4b5fe4c
Clipping a harvestable plant yields undamaged seeds (#25541)
Clipping a plant in any condition currently causes it and its clippings to be damaged.

Make clipping harvestable (already eligible for seed extractor) plants yield seeds at full health.
2024-04-10 10:51:25 -07:00
Flesh 5b485fedbd
fixed the specific if statement called when plant age is under 0 (#25346) 2024-02-17 10:08:59 -07:00
Flesh dab2c48849
Change plant clipping mechanics (#25326)
Make seeds from clipped plants inherit the decreased health from parents.
Also require one growth stage before clipping.
2024-02-16 21:02:12 -08:00
Kevin Zheng 52f74fa39d
Require plants to be harvestable before sampling (#24851) 2024-02-13 17:05:28 -05:00
deltanedas 9a7b8be428
Reset LastProduce after plant removal (#24590) 2024-01-26 11:50:50 -06:00
themias fd7ff690b1
Grave digging and decomposition (#23646)
* Grave digging and decomposition

* fix

* update based on review comments

* code review

* remove unused field
2024-01-14 11:47:31 -05:00
Kara 0ae3858b69
Examine prediction (#23565)
* Initial prediction

* new group handling

* groups for all examines that use multiple rn

* compile

* why was it doing this??

* handle newlines with sorting properly
2024-01-06 17:53:13 +11:00
TemporalOroboros d23c8d5c19
Revert 'Revert 'Solution Entities'' (#23168) 2023-12-29 08:47:43 -04:00
Emisse 938d6d9945
Revert "Solution Entities" (#23160)
Revert "Solution Entities (#21916)"

This reverts commit d75e743dd7.
2023-12-28 20:45:42 -07:00
TemporalOroboros d75e743dd7
Solution Entities (#21916)
* Creates Content.Shared.Chemistry.Solutions
Copies Solution class to new namespace
Obsoletes old Solution class

* Switches over to the Solutions.Solution Solution

* Creates Content.Shared.Chemistry.Containers
Copies relevant components/systems to the new namespace
Obsoletes old versions

* Switches over to the Containers.XYZ namespace

* Creates SolutionSystem and obsoletes old SolutionContainerSystem methods

* Start using SolutionSystem for Solution manipulation

* EnumerateSolutions

* Move TryGetMixableSolution

* Move EnsureSolution to Server

* Create Solution Entities

* Stop using obsolete solution system methods

* Fix prototype component tests

* Add using ..Audio.Systems; back

* Wrap solution container slots in ContainerSlots

* Actually add the slot to the solution container map

* Dirty SolutionContainerComponent when ensuring solutions

* Revert namespace changes

* Remerge SolutionSystem and SolutionContainerSystem

* SolutionContainerManagerComponent refactor

* Avoid wrapping necessary code in DebugTools.Assert as it is removed when compiling for release

* Readd examine reagent sorting

* Fix errors

* Poke tests

* Fix solution names not being applied

* Fix WoolyComponent including statement

* Fix merge skew

* Fix compile errors

* Make reactions use solntities

* Reindent solution class namespace

* Field attribute changes

* AutoGenerateComponentState for SolutionContainerComponent

* SolutionContainerComponent -> ContainedSolutionComponent

* ref ReactionAttemptEvent

* Denetwork preinit solutions

* Misc 1

* Nullable TryGetSolution out vars

* Cache associated solutions

* Fix merge skew

* Use explicit regions in SharedSolutionContainerSystem.Capabilities

* Add debug assert

* Use explicit regions in SharedSolutionContainerSystem.Relay + ref SolutionContainerChangedEvent

* ContainedSolutionComponent.Name -> ContainedSolutionComponent.ContainerName

* SolutionComponent doc comments

* Implicit DataField names and property purge

* ReagentEffect DataField names

* Local variables for readability

* Sort using statements + Entity<T> event handlers

* Fix compile erros

* Fix compile errors

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-12-28 17:58:14 -08:00
metalgearsloth 269c93245d
Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-11-27 22:12:34 +11:00
Brandon Hu c032fad909
Stops plants from growing when they do not have enough resources (#21510) 2023-11-11 11:12:13 -08:00
metalgearsloth 5b8f3c48c4
Revert "Update submodule to 175.0.0 (#21318)" (#21319) 2023-10-29 15:29:30 +11:00
metalgearsloth 9b1b3e03ed
Content audio (#20862) 2023-10-29 14:58:23 +11:00
DrSmugleaf f560f88eb5
Remove 700 usages of Component.Owner (#21100) 2023-10-19 12:34:31 -07:00
Kara 77964d4a6b
Kill `SharedEntityExtensions` and all popup extensions (#20909)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-10-16 16:56:09 +11:00
TemporalOroboros 0775ab6a14
Moves SolutionContainerManagerComponent to Shared. (#20944) 2023-10-15 03:45:28 +11:00
metalgearsloth 9f9577acd0
Fix component constraints (#20241) 2023-09-20 10:12:48 +10:00
Doru991 3f51795cc7
Add plant species mutations (#19960) 2023-09-13 20:56:24 -08:00
metalgearsloth 99b77bc2d3
Remove lights compref (#19531) 2023-09-11 19:18:06 +10:00
deltanedas 6d5c310b36
Make constructed hydro trays start empty (#19620) 2023-09-05 12:15:06 -08:00
Leon Friedrich e4ca6f4fb9
Allow solutions to store extra reagent data (#19323) 2023-09-05 07:55:10 +10:00
Doru991 3af1cc0dbd
Botany tweaks vol. 2.5 (#19039)
* Buff nutriment on plants

* Super composting buff

* 1984 pt. 2

* Use standard function
2023-08-13 01:10:22 -06:00
Doru991 30f0ad2134
Botany tweaks vol. 2 (#18888)
* Even more consumption

* Revert "Even more consumption"

This reverts commit 94ae0eca0ba1b4a55913f92519e1354b77e70734.

Oops forgot a file

* Believe it or not, more nutrient consumption

* Buff ez nutrient and l4z

* Add left 4 zed to emagged nutrimax just because

* Change some thresholds
2023-08-09 19:43:06 -06:00
Doru991 67e2f3799f
Minor botany tweaks (#18832)
* Make the water consumption actually influenced by the seed's water consumption value

* Tweak default water and nutrient consumption

* Composting plants works now

* Tweak seeds YML, add ez nutrient bottle to Nutrimax

* Increase default nutrient consumption a bit
2023-08-07 18:29:59 -06:00
Ben c858c76341
Anchorable shared (#17422)
Co-authored-by: BenOwnby <ownbyb@appstate.edu>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-06-29 22:35:54 +10:00
DrSmugleaf 9146374e39
Remove ghost role component references (#15262) 2023-04-12 23:32:14 +10:00
DrSmugleaf b947856431
Remove hands component reference (#15197) 2023-04-07 11:21:12 -07:00
deltanedas 60ac402b8b
clipping and extracting put seeds in the users hands (#14343) 2023-03-05 22:37:57 -04:00
Duke 8640f0b0a3
New botany mutations (#13646) 2023-03-05 21:11:13 -04:00
Leon Friedrich 466384b081
Solution rejig (#12428) 2023-01-12 14:41:40 +11: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