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

Harpy Visual Rework #677

Merged
merged 38 commits into from
Feb 12, 2024
Merged

Harpy Visual Rework #677

merged 38 commits into from
Feb 12, 2024

Conversation

VMSolidus
Copy link
Contributor

@VMSolidus VMSolidus commented Jan 15, 2024

About the PR

This is the third and final update to Harpies, after this PR is merged, they will finally be at a state I would consider to be finished. This PR functions as a complete visual rework to Harpies, adding several new visual features to them, including a complete rework of their layering mechanics. This alleviates several of the clipping issues they've had, and finally allows for me to create bespoke new species sprites for their clothing.

In addition, @ps3moira and @stillxicarus have contributed entirely new sprites for use with Harpies. They now have new high-detail wing marking options, as well as fully avian limbs.

Why / Balance

Birds.

Technical details

A new visual system is being added, for handling selectively hiding markings from Harpies when they equip a specific kind of outerwear(Hardsuits & Softsuits). This novel technique involves selectively toggling visibility to their wings and tail, while we can then replace their wing with that of a covered hardsuit variant when such clothing is equipped. It's likely that I could of course re-use this technique for Lamia and Drider, in order to address some issues they have had in the past.

Media

New multi-shape wing markings, enabling a wider variety of marking options. These now feature hueshift maps to allow the wings to be more colorful than ever before.
https://github.com/DeltaV-Station/Delta-v/assets/16548818/8c121e36-62c3-4660-b6fd-b61375924775
image
image

New Ultravision feature that allows Harpies to see in the same light spectrum as real life birds.
image

  • I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog
🆑 VMSolidus, PS3Moira, Stillxicarus

  • add: Harpies have received a full visual rework. Featuring clothing sprites, new markings, a complete overhaul of their layering, as well as visual systems.
  • add: Harpies now have bird related speech verbs
  • add: Two new traits have been added related to birds. Harpies now start by default with the new Ultraviolet Vision trait, letting them see a whole new spectrum of colors. This trait can be taken by other curious people. Harpies that wish to see in RGB colors can instead take the new Normal Vision trait.

@github-actions github-actions bot added Changes: C# Changes any cs files Changes: Localization Changes any ftl files Changes: Sprite Changes any png or json in an rsi Changes: YML Changes any yml files labels Jan 15, 2024
Copy link
Contributor

github-actions bot commented Jan 15, 2024

RSI Diff Bot; head commit 5f9c737 merging into e42d139
This PR makes changes to 1 or more RSIs. Here is a summary of all changes:

Resources/Textures/DeltaV/Mobs/Customization/Harpy/harpy_ears.rsi

State Old New Status
harpy_ears_default Modified

Resources/Textures/DeltaV/Mobs/Customization/Harpy/harpy_tails.rsi

State Old New Status
phoenix_tail Modified
rooster_tail Modified

Resources/Textures/DeltaV/Mobs/Customization/Harpy/harpy_wings.rsi

State Old New Status
harpy Modified
harpy2tone1 Modified
harpy2tone2 Modified
harpy3tone1 Modified
harpy3tone2 Modified
harpy3tone3 Modified
harpyspeckled1 Modified
harpyspeckled2 Modified
harpyundertone1 Modified
harpyundertone2 Modified
harpywingtip1 Modified
harpywingtip2 Modified
classicharpy Added
harpyfolded Added

Resources/Textures/Clothing/Head/Hardsuits/atmospherics.rsi

State Old New Status
equipped-head-harpy Added

Resources/Textures/Clothing/Head/Hardsuits/capspace.rsi

State Old New Status
off-equipped-HELMET-harpy Added
on-equipped-HELMET-harpy Added

Resources/Textures/Clothing/Head/Hardsuits/cybersun.rsi

State Old New Status
equipped-HELMET-harpy Added

Resources/Textures/Clothing/Head/Hardsuits/engineering-white.rsi

State Old New Status
off-equipped-HELMET-harpy Added
on-equipped-HELMET-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/atmospherics.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/capspace.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/cybersun.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering-white.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/engineering.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/luxury.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/paramed.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/salvage.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/spatio.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/syndicate.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/syndiecommander.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/Clothing/OuterClothing/Hardsuits/syndiemedic.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/Head/Hardsuits/Combat/hos.rsi

State Old New Status
off-equipped-HELMET-harpy Added
on-equipped-HELMET-harpy Added

Resources/Textures/DeltaV/Clothing/Head/Hardsuits/Combat/officer.rsi

State Old New Status
off-equipped-HELMET-harpy Added
on-equipped-HELMET-harpy Added

Resources/Textures/DeltaV/Clothing/Head/Hardsuits/Combat/standard.rsi

State Old New Status
off-equipped-HELMET-harpy Added
on-equipped-HELMET-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/advanced.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/corpsman.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/hos.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/medical.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/officer.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/riot.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/standard.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Clothing/OuterClothing/Hardsuits/Combat/warden.rsi

State Old New Status
equipped-OUTERCLOTHING-harpy Added

Resources/Textures/DeltaV/Mobs/Customization/Harpy/harpy_chest.rsi

State Old New Status
lower Added
upper Added

Resources/Textures/DeltaV/Mobs/Customization/Harpy/harpy_legs.rsi

State Old New Status
feet Added
talons Added
thighs Added

Resources/Textures/DeltaV/Mobs/Customization/Harpy/harpy_tailsx72.rsi

State Old New Status
finch_tail Added

Resources/Textures/DeltaV/Mobs/Species/Harpy/organs.rsi

State Old New Status
lung-l Added
lung-r Added

Resources/Textures/DeltaV/Mobs/Species/Harpy/parts.rsi

State Old New Status
full Added
head_f Added
head_m Added
l_arm Added
l_foot Added
l_hand Added
l_leg Added
r_arm Added
r_foot Added
r_hand Added
r_leg Added
torso_f Added
torso_m Added

Edit: diff updated after 5f9c737

@DebugOk
Copy link
Contributor

DebugOk commented Jan 15, 2024

I'm not sure how I feel about custom sprites for every jumpsuit, and I don't want that to be the standard. @leonardo-dabepis what are your thoughts on this? We already have vulps requiring custom sprites, and I'm not sure expanding that list is worth it. But I'm willing to let harpies be the only exception if you're okay with it

@leonardo-dabepis
Copy link
Contributor

I'm not sure how I feel about custom sprites for every jumpsuit, and I don't want that to be the standard. @leonardo-dabepis what are your thoughts on this? We already have vulps requiring custom sprites, and I'm not sure expanding that list is worth it. But I'm willing to let harpies be the only exception if you're okay with it

I think this is fine. The custom sprites look good on the harpy and the edits that would need to be made to accommodate new clothing items are minimal.

@VMSolidus
Copy link
Contributor Author

image
So as with some new novel techniques I've come up with for the layering, it isn't 100% necessary for them to look good with existing sprites. However, they do look nicer with species variations. As in the example above, the Atmos tech right now has a custom jumpsuit sprite. Whereas the Mystagogue doesn't have one yet.
image

They also don't require new sprites at all for jumpskirt variations.
image

@VMSolidus
Copy link
Contributor Author

image
image
But basically, the gist of how I accomplished this was that the marking layer for their wings is partially on the torso instead of the arms. Effectively, their wings are partially above and beneath clothing. This allowed me a previously impossible degree of flexibility in their appearance. These new techniques I learned are going to be useful for when we get around to bringing back Arachne, since I'll be able to put all these layering tech to good use for improving their sprites.

Copy link
Contributor

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the Status: Merge Conflict Fix your PR! label Jan 21, 2024
@github-actions github-actions bot removed the Status: Merge Conflict Fix your PR! label Jan 21, 2024
@VMSolidus VMSolidus marked this pull request as ready for review February 6, 2024 02:19
@VMSolidus
Copy link
Contributor Author

This PR is now ready for review.

Copy link
Contributor

github-actions bot commented Feb 8, 2024

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the Status: Merge Conflict Fix your PR! label Feb 8, 2024
@github-actions github-actions bot removed the Status: Merge Conflict Fix your PR! label Feb 8, 2024
Copy link
Contributor

@DebugOk DebugOk left a comment

Choose a reason for hiding this comment

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

Didn't test, beyond my one comment I'll assume its fine

@VMSolidus
Copy link
Contributor Author

My final QA pass has been completed. All Harpy markings have had a hueshift map applied to them for the sake of consistency, and all missing localizations have been added. There was also a missing marking state for the chest layer that I added in.

@VMSolidus VMSolidus enabled auto-merge (squash) February 12, 2024 22:00
@VMSolidus VMSolidus enabled auto-merge (squash) February 12, 2024 22:03
@DebugOk
Copy link
Contributor

DebugOk commented Feb 12, 2024

Please don't try to self merge without my review. Not that it would've worked as my request blocks it, and dismissing it would cause it to hang on the codeowner requirement

@VMSolidus
Copy link
Contributor Author

Oh my bad, I had mistakenly though you had set an approval on it. I apologize for the misunderstanding.

@@ -100,7 +100,7 @@
id: GauzeUpperArmRight
bodyPart: RArm
markingCategory: Arms
speciesRestriction: [Moth, Dwarf, Human, Reptilian, Arachnid, SlimePerson, Felinid, Oni, Vulpkanin] # Delta V - Felinid, Oni, Vulpkanin
Copy link
Contributor

Choose a reason for hiding this comment

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

Whats going on here?

@@ -58,7 +58,7 @@
id: TattooCampbellLeftArm
bodyPart: LArm
markingCategory: Arms
speciesRestriction: [Human, Dwarf, Felinid, Oni] # Delta V - Felinid, Oni
Copy link
Contributor

Choose a reason for hiding this comment

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

And here

@@ -72,7 +72,7 @@
id: TattooCampbellRightArm
bodyPart: RArm
markingCategory: Arms
speciesRestriction: [Human, Dwarf, Felinid, Oni] # Delta V - Felinid, Oni
Copy link
Contributor

Choose a reason for hiding this comment

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

And here

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Looks like more cases where this PR previously conflicted with another PR that added certain markings to more species. It conflicted with this PR at the time since it was allowing Harpies to use markings that in this PR would conflict with their new visuals. I've submitted a fix for these conflicts.

@VMSolidus
Copy link
Contributor Author

hueshifted birb
And here's the new look for the full body markings with hueshifts

Copy link
Contributor

@DebugOk DebugOk left a comment

Choose a reason for hiding this comment

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

I dont like the fact this adds new sprites for clothing, but oh well

@DebugOk DebugOk enabled auto-merge (squash) February 12, 2024 22:23
@DebugOk DebugOk merged commit 1f3128c into DeltaV-Station:master Feb 12, 2024
12 checks passed
DeltaV-Bot pushed a commit that referenced this pull request Feb 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes: C# Changes any cs files Changes: Localization Changes any ftl files Changes: Sprite Changes any png or json in an rsi Changes: YML Changes any yml files Status: Needs Review
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants