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

Xeno Backpacks #1274

Merged
merged 20 commits into from
Dec 17, 2022
Merged

Xeno Backpacks #1274

merged 20 commits into from
Dec 17, 2022

Conversation

Drulikar
Copy link
Contributor

@Drulikar Drulikar commented Oct 16, 2022

About The Pull Request

This pull request adds support for marines to strap a backpack onto allied xenos. The xeno cannot view the contents of the bag nor interact with it any way other than through a new shake verb. Marines also have access to the new shake verb for any emptyable storage item. Shaking a storage item that is either in your hands or back slot has a high chance to drop out a single item. Xenos that shake an empty backpack also have a low chance to drop the backpack on the ground.

Strapping on, unstrapping, and accessing any allied xeno backpack does take some time to complete.

The item class size of gardener and healer fruit has been lowered to medium, but they occupy more space in a bag than a regular medium item (so only five can fit in a typical bag). The intention of this change is to allow a bag loaded with either fruit (for xenos) or medical supplies (for marines) that a xeno can go out and distribute, but its primarily on a marine to facilitate this.

Sprites were created by Jean 'Docteur' Corbeau aka SubjectD9341.

Preview
NOTE: Some sprites in above are no longer accurate. See updated images below...

Defender
SentDroneSpitter
RunnerPraeWarrior

Sprite progress (though ultimately up to them how far they want to go):

  • Medic bag on Drone
  • Regular bag on Drone
  • Medic bag on Defender
  • Regular bag on Defender
  • Medic bag on Sentinel
  • Regular bag on Sentinel
  • Medic bag on Runner
  • Regular bag on Runner
  • Medic bag on Warrior
  • Regular bag on Warrior
  • Medic bag on Spitter
  • Regular bag on Spitter
  • Medic bag on Praetorian
  • Regular bag on Praetorian

Any unlisted castes aren't planned at this time.

Why It's Good For The Game

Opens up more interactions between marines and xenos, namely for friendly "greenos". Encourages more cooperation between a friendly xeno faction because equipping and loading of these backpacks can only be performed by a marine; a xeno can only shake items out or shake the bag off. Allowing fruit to be placed in bags is primarily to allow a medic roony to either provide healing to xenos by shaking out some fruit, or to marines by shaking out some medical supplies.

Changelog

🆑 Drathek, SubjectD9341
add: Standard issue marine backpacks can now be equipped to most allied xenos (Runners/Praetorians/Drones/Defenders/Warriors/Sentinels/Spitters) and accessed. Use a pack in help intent on a xeno to strap it to her after a duration. Access it with an empty hand in help intent after a duration. Drag a xeno with a pack to you when you have an empty hand to unstrap it from her after a duration.
add: Added the Shake verb to storage items. Humans and xenos can now shake emptyable inventories which has a 75% chance to drop an item if there are any. Xenos also have a 25% chance to cause the pack fall off them when empty.
balance: Resin fruit is now class size medium but size cost large so five can fit in a backpack.
soundadd: Emptying a storage item now uses the existing rustle sound (or whatever use_sound its configured to use).
soundadd: Unequipping a backpack now uses the existing rustle sound (or whatever use_sound its configured to use).
imageadd: Added sprites for regular and medical packs on Runners/Praetorians/Drones/Defenders/Warriors/Sentinels/Spitters.
code: Any storage item that is STORAGE_ALLOW_EMPTY now either adds/removes empty_verb and toggle_click_empty depending on if the user is a xeno.
code: Refactored /atom/movable/vis_obj/xeno_wounds so it can be more generic as just vis_obj (now it will be used by both wounds and packs and packs don't need to be xeno_wounds) and use VIS_INHERIT_DIR instead of a signal.
fix: Xeno wounds no longer inherit hive color.
/:cl:

@github-actions github-actions bot added Sprites Remove the soul from the game. Feature Feature coder badge Balance You need to be a professional veteran game maintainer to comprehend what is being done here. Code Improvement Make the code longer labels Oct 16, 2022
@Drulikar
Copy link
Contributor Author

Gibbing a xeno currently destroys any equipped bag. Should this behavior not be desired /mob/living/carbon/gib in carbon.dm can have a check to drop the bag. I'm inclined to leave it this way because usually any situation that is gibbing them should be enough reason to destroy any bag too, but at the same time xeno bodies gib rather frequently too.

@Drulikar
Copy link
Contributor Author

PR is suitable for merging (don't feel discouraged to test and review), but will be drafted while Jean still has more sprites in progress.

@Drulikar Drulikar marked this pull request as draft October 16, 2022 21:41
@Drulikar Drulikar requested review from stanalbatross and removed request for monkeysfist101, Agameofscones and nauticall October 16, 2022 23:36
@github-actions
Copy link
Contributor

This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself

@github-actions github-actions bot added the Stale beg a maintainer to review your PR label Oct 26, 2022
…ks), spitter regular/medical, sentinel regular/medical, drone regular/medical, defender regular/medical (needs tweaks).
Unfortunately we want a base class to be allowed so we have to override that.
…ng it once they have their first backpack)

Refactor atom/moveable/vis_obj to be more generic
Update crit sprites for warrior
@Drulikar Drulikar marked this pull request as ready for review November 2, 2022 22:29
@harryob harryob added the Testmerge Candidate we'll test this while you're asleep and the server has 10 players label Nov 15, 2022
@Googles-Hands Googles-Hands mentioned this pull request Nov 18, 2022
3 tasks
Copy link
Member

@harryob harryob left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code checks out, still needs sprite approval

@github-actions github-actions bot added the Merge Conflict PR can't be merged because it touched too much code label Nov 21, 2022
# Conflicts:
#	code/modules/mob/living/carbon/xenomorph/update_icons.dm
@github-actions github-actions bot removed the Merge Conflict PR can't be merged because it touched too much code label Nov 22, 2022
@github-actions github-actions bot closed this Dec 5, 2022
@fira fira reopened this Dec 5, 2022
@stanalbatross stanalbatross added Balance Approved This PR has had its balance and gameplay-affecting aspects approved. Cry to the Head-maint about it. and removed Stale beg a maintainer to review your PR labels Dec 6, 2022
Copy link
Contributor

@kugamo kugamo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sprites will work, APPROVED.

@kugamo kugamo added the Sprites Approved confirmed no stray pixels label Dec 14, 2022
@harryob harryob merged commit d7e6129 into cmss13-devs:master Dec 17, 2022
github-actions bot added a commit that referenced this pull request Dec 17, 2022
github-actions bot added a commit that referenced this pull request Dec 17, 2022
@Drulikar Drulikar deleted the Drathek_XenoBackpacks branch March 18, 2023 03:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Balance Approved This PR has had its balance and gameplay-affecting aspects approved. Cry to the Head-maint about it. Balance You need to be a professional veteran game maintainer to comprehend what is being done here. Code Improvement Make the code longer Feature Feature coder badge Sprites Approved confirmed no stray pixels Sprites Remove the soul from the game. Testmerge Candidate we'll test this while you're asleep and the server has 10 players
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants