Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Food/Produce chemmaster dump fix #2938

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

SleeplessJake
Copy link

About the PR

The InjectableSolution entity had an extra component "RefillableSolution" which made food/produce of this entity able to be dragged (dumped) into the chem master. This affected items such as pizza, ambrosia deus, and other food/produce items. Without having the game implementation to allow for drawing out of food/produce. However upstream seems to maybe intend this in the future -- so it is commented out for the time being rather than removed outright. Food is still able to be injected into and instead goes directly into the user's hand when interacted with -- instead of being able to drag the sprite around.

Located within food_base.yml

Why / Balance

As mentioned this component is intended to allow for drawing out of food items however there is no game implementation for such a thing. This also had the side effect (bug) of allowing food/produce to be dragged into the chemmaster.

The balance this brings is two major points alongside removing this bug:

  • Food and produce items can no longer be emptied out and injected with unknown reagents. (No more donk-pocket roulette / 17u lexorin pizza)
  • The grinding process can not be subverted and just dragged into chem masters. (Sorry that 100 potency deus needs to be ground -- even though it doesn't fit in a 100u beaker)

Technical details

Within the food_base.yml the id: FoodInjectableBase entity has had the type: RefillableSolution component commented out. As previous comments seem to be that upstream might intend for produce/food items to be drawn from with syringes.

Media

Requirements

  • I have tested all added content and changes.
  • it does not require an ingame showcase.

Breaking changes

If upstream ever intends to add the ability to draw from produce/food with syringes then these comment lines should be removed. However, this will reintroduce the issue of being able to drag food/produce into the chem master. Which is an issue with the FoodInjectableBase component itself.

Changelog
🆑

  • tweak: Food/Produce can no longer be dragged into machines such as the chem master.

The InjectableSolution entity had an extra component "RefillableSolution" which made food/produce of this entity able to be dragged (dumped) into the chem master. Without having the game implementation to allow for drawing out of food/produce. However upstream seems to maybe intend this in the future -- so it is commented out for the time being rather than removed outright.

Located within food_base.yml
@SleeplessJake SleeplessJake requested a review from a team as a code owner February 9, 2025 02:23
@github-actions github-actions bot added size/XS Under 16 lines Changes: YML Changes any yml files S: Needs Review and removed size/XS Under 16 lines labels Feb 9, 2025
@deltanedas
Copy link
Member

doesnt this make it so you cant pour ketchup on e.g. a burger, only inject ketchup into it

@SleeplessJake
Copy link
Author

doesnt this make it so you cant pour ketchup on e.g. a burger, only inject ketchup into it

Good question -- I hadn't thought of that as a test case. I will get back to you on it ETA 20-30 (out of house atm)

@SleeplessJake
Copy link
Author

doesnt this make it so you cant pour ketchup on e.g. a burger, only inject ketchup into it

Good question -- I hadn't thought of that as a test case. I will get back to you on it ETA 20-30 (out of house atm)

This does remove the ability to put ketchup on burger. And while digging around in the component itself it seems like this might be an issue for upstream. I will keep digging but for now -- this is not an applicable fix for the time being. I will test messing with the component itself, however, I see a change to this component can also effect thing such as beakers... tricky tricky.

The issue I am finding is that for beakers, food, produce, etcetera -- is that the RefillableSolution component gives the behavior of being able to click and drag it. Removing this from beakers or making any edit to RefillableSolution that would remove this click+drag behavior... Player characters don't have this component yet can be click+dragged... Gonna see if there is a solution somewhere in there.

@deltanedas
Copy link
Member

make it a field that can be set for food specifically that disables drag and drop

players can be dragged for vaulting which is unrelated

@SleeplessJake
Copy link
Author

make it a field that can be set for food specifically that disables drag and drop

players can be dragged for vaulting which is unrelated

Yeah absolutely -- I'll develop a solution more fitting in the next day or so. I was hoping the player character had a drag + drop component i could get some insight from. However it's a body component which makes so possible -- indeed unrelated.

@dvir001
Copy link
Contributor

dvir001 commented Feb 9, 2025

Here is the frontier fix:
new-frontiers-14/frontier-station-14#2583

@SleeplessJake port this code and make sure to credit whatstone

@SleeplessJake
Copy link
Author

SleeplessJake commented Feb 9, 2025

Here is the frontier fix: new-frontiers-14/frontier-station-14#2583

@SleeplessJake port this code and make sure to credit whatstone

@dvir001 hey thanks boss that helps a lot -- I'm used to industry code so trying to wrap my head around c# and .net was giving me a headache. Will get on that tonight or tomorrow when back home proper.

Cheers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes: YML Changes any yml files S: Needs Review
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants