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

[Extra Mode] Implement Chaos Mod #4374

Open
wants to merge 32 commits into
base: develop
Choose a base branch
from

Conversation

Caladius
Copy link
Contributor

@Caladius Caladius commented Sep 29, 2024

This Extra Mode implements a Chaos Mod akin to the Grand Theft Auto V Chaos Mod. Voting is triggered through Twitch Chat using Sail.

Events Currently Implemented:

Event Description
Invisibility Link is invisible for the length of the event.
Force Iron Boots Equips Iron Boots for the length of the event.
Force Hover Boots Equips Hover Boots for the length of the event.
Bomberman Mode Explosive limit is removed and a lit Bomb drops under Link every second.
The Floor is Lava Link flinches every second causing interrupts.
Fake Teleport Link is teleported to a random location for a period of time and is then returned to his previous area.
Random Teleport Link is teleported to a random location.
Actor Magnet All Actors (minus Enemies) magnetize to Link, slowly moving to his position.
Death Switch A random C or D button is replaced periodically with a Sold Out item, pressing that button will Kill Link.
Iron Knuckle Ring A ring of Iron Knuckles spawn in a circle around Link facing inward, they strike on spawn.
Mido Sucks Self explanatory, he sucks... Talk to him to make him suck less.
Spawn Royal Guard A Hyrule Castle Guard spawns nearby, getting caught will toss you out of the area...
Erase Dungeon Reward This will erase a Dungeon Reward at random and corresponding Dungeon Boss. See Note 1
Unstable Ceiling A ceiling spawns above Link and tries to crush him.
Force Stop Heart Similar to Banjo Tooie, Links health will run rampant, press A to stop it.
Spawn Spike Trap Spawns a ceiling spike trap and tries to crush Link.
Floating Stuff Links Inventory spawns in the area and removes from his bag.
Drop Rupees on Hit Lose Rupees every time Link takes Damage.
Fire Maze A series of Fire Walls spawn, follow the maze to get out.
Cardinal's Revenge Pots seek their revenge for their smashed brethren.

Build Artifacts

@@ -206,6 +206,9 @@ void func_80A55D00(EnHeishi3* this, PlayState* play) {
if ((Message_GetState(&play->msgCtx) == TEXT_STATE_EVENT) && Message_ShouldAdvance(play) &&
(this->respawnFlag == 0)) {
Flags_SetEventChkInf(EVENTCHKINF_CAUGHT_BY_CASTLE_GUARDS);
if (LINK_IS_ADULT) {
gPlayState->linkAgeOnLoad ^= 1; // Test for EVENT
Copy link
Contributor

Choose a reason for hiding this comment

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

Could this be moved to a hook for scene load using the entrance below? Or does the age need to be child before triggering the scene change?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think there's a few things in this PR that touch source that shouldn't. This possibly being one of them but you do have to ensure Link loads as a child in that scene prior otherwise the game will crash.

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.

3 participants