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

Add support for changing the final boss #454

Merged
merged 16 commits into from
Aug 10, 2024
Merged

Add support for changing the final boss #454

merged 16 commits into from
Aug 10, 2024

Conversation

dyceron
Copy link
Collaborator

@dyceron dyceron commented Aug 6, 2024

Okay, so this PR is kinda wild. I've imagined this idea for a while and decided to take a stab at it. It's not very traditional, but it's yet another way to spice up the gameplay up a little bit. With this, any of the four bosses (Arachnus, Diggernaut, Queen, Ridley) can be the final boss! To summarize the changes I made:

  • I moved required_dna to a new field called objective which also lists the boss required to finish.
  • Beating the configured boss completes the game and rolls the credits
  • Just like with accessing Ridley, accessing the new final boss is also locked to DNA
    • If the player doesn't have enough DNA, a message will appear on screen. Arachnus and Diggernaut will warp Samus back to the previous cc
  • If Ridley is not the final boss:
    • Access to the fight is always active until Ridley is dead, and a textbox prompt is shown asking the player if they want to proceed or continue to the ship
    • After Ridley is dead, Samus will respawn at the ship and a new pickup is added to the right of the ship. The Ridley landing site is also permanently inaccessible
  • If Arachnus is the final boss:
    • The credits will not roll until the exterior room is re-entered to prevent memory errors
    • The pickup will not spawn at all
    • Arachnus' health is buffed and beams/Screw Attack is nerfed. Power Bombs no longer work
      • Debating on if it's worth also buffing Arachnus's speed/length of attacks, if that's even possible
  • If Diggernaut is the final boss:
    • The credits roll after the death cutscene
    • The grapple block near the elevator is always moved regardless if remove_elevator_grapple_blocks is enabled or not to allow access to the elevator
  • If the Queen is the final boss:
    • The credits roll after the death cutscene
    • The wall behind the Queen is always removed regardless if reverse_area8 is enabled to allow for traversal

Some screenshots to showcase this option

Arachnus Final Boss
image

Diggernaut Final Boss
image

Queen Final Boss
image

Ridley Not Final Boss
image

Fixes #428

@dyceron dyceron requested a review from ThanatosGit August 6, 2024 05:36
@ThanatosGit
Copy link
Collaborator

I just read the description here so far: Is there any way to make it multiworld compatible in RDV? I have no idea how you could prevent the generator from placing other world's DNA - or whatever macguffin - behind e.g. Diggernaut. But me having no clue how you would do something related to logic is not uncommon :D

@dyceron
Copy link
Collaborator Author

dyceron commented Aug 6, 2024

I believe it's possible with DB layers and/or bootstrap? I don't know the full details of that just yet, but it would be nice to have this MW compatible if possible.

@Miepee
Copy link
Contributor

Miepee commented Aug 6, 2024

Layers in the DB exist for that purpose. Inactive layers will not exist to the generator at all.

@steven11sjf
Copy link

You can definitely make arachnus deal more damage via tunables. it might be possible to alter attack speeds by messing with BMSAS (iirc part of BMSAD) and possibly BCSKLA, moving keyframes around.

Overall I'm not really sure how to feel about Arachnus being a final boss. I definitely think queen should be an option, and I see the case for diggernaut since it's a mid-late game boss, but an A2 boss seems pretty underpowered and turning it into a damage sponge feels lazy.

@Miepee
Copy link
Contributor

Miepee commented Aug 6, 2024

I'm pretty sure this feature was inspired by VARIA where you can customize the goal to beat any of the existing (mini)bosses.
I do think that turning Arachnus into a bullet sponge is overkill, but this PR also doesnt really do that to my knowledge. It only buffs Arachnus to not die faster than you can say "Hi Arachnus" with like 70% of the items in the game. Aka, make him an actual miniboss instead of a glorified enemy.

@dyceron
Copy link
Collaborator Author

dyceron commented Aug 6, 2024

I did consider not including Arachnus, bur for completeness sake I wanted it. More tweaks for it will make it more worth it.

@Miepee
Copy link
Contributor

Miepee commented Aug 6, 2024

Out of curiosity, is there a reason why buffed arachnus is only available when he's the final boss? Feel like general rando could also benefit from him not being a complete pushover

@dyceron
Copy link
Collaborator Author

dyceron commented Aug 6, 2024

Out of curiosity, is there a reason why buffed arachnus is only available when he's the final boss? Feel like general rando could also benefit from him not being a complete pushover

Feels out of place to adjust in general. As the final boss it makes sense otherwise it's a complete joke.

@Miepee
Copy link
Contributor

Miepee commented Aug 6, 2024

IDK, balancing arachnus to not die in one hit seems like in-line for me with balancing diggernaut and ridley.

@dyceron
Copy link
Collaborator Author

dyceron commented Aug 6, 2024

I don't want to make arachnus crazy powerful considering it can be an early check normally. Regardless, that's out of scope for this pr.

@dyceron dyceron requested a review from ThanatosGit August 7, 2024 00:22
@dyceron
Copy link
Collaborator Author

dyceron commented Aug 7, 2024

Fixed some stuff and removed unused stuff

@dyceron
Copy link
Collaborator Author

dyceron commented Aug 8, 2024

I just remembered I forgot to change something

@dyceron dyceron requested a review from ThanatosGit August 8, 2024 22:29
@dyceron
Copy link
Collaborator Author

dyceron commented Aug 8, 2024

Made some adjustments to starting DNA and also change the message when collecting all DNA for each boss. I wasn't sure if I wanted to just not display the Baby hint if the final boss isn't Ridley, so I left it in.

All DNA and Baby

image

All DNA and no Baby

image

@ThanatosGit ThanatosGit merged commit 717e07a into main Aug 10, 2024
7 checks passed
@ThanatosGit ThanatosGit deleted the change-final-boss branch August 10, 2024 05:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

option to change finalboss
4 participants