zarby89 / enemizer Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Beamos can't be gotten passed this point without taking damage: https://imgur.com/a/fLeyu
I left Randomize Enemies Damage unchecked.
Thieves (both LW and DW versions) tend to still deal damage even though I'm pretty sure they should just push you around without dealing damage, but most importantly, Ganon basically dealt no damage at all.
Enemizer 6.0.12 - ALttP - VT_no-glitches-27_normal-open-dungeons_271208976 (EN362171639)
Options used:
Everything else unchecked. "Allow 0 Damage" and "Shuffle Damage Groups" were left checked when I unchecked "Randomize Enemy Damage", in case that could be a potential cause for problems.
I don't recall seeing any enemies other than those three with abnormal damage.
(Snip!)
Some places, usually the overworld, have had garbled graphics since the 6.0.12 release.
The three desert statues that block entry into Desert Palace:
Depending on where you entered desert actually caused the graphics to be different each time.
The Bombos Monolith, also in desert:
The Fat Fairy (or Pyramid Fairy) (Note: the Waterfall Fairy and the Rupee Fairy have normal sprites):
To preface for those who do/may not know, taking damage during the fake flippers glitch causes death, regardless or current amount of hearts/armour.
When performing fake flippers in the zora area, I was hit. However, instead of death, Link disappeared and the screen scrolled to the bottom right, until it hit the end and just sat there. A reset was required to fix the issue.
I assume this issue is occuring because this enemy has randomly been set to do 0 damage. If I am mistaken and this is not the issue I can attempt to replicate this issue.
I also do not have video or screenshots of this issue, but I could provide the rom if required.
Gets stuck because of the floor.
This feels like an issue on my side, but when I try to generate the rom, I get a .net framework error with the message: ( I use Windows 8.1)
************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Enemizer.Randomization.move_header()
at Enemizer.Randomization..ctor(Int32 seed, Int32 flags, Byte[] ROM_DATA, String filename, String skin, Boolean spoiler, Boolean linkrandompalette)
at Enemizer.EnemizerForm.openFileDialog1_FileOk(Object sender, CancelEventArgs e)
at System.Windows.Forms.FileDialog.OnFileOk(CancelEventArgs e)
at System.Windows.Forms.FileDialog.HandleVistaFileOk(IFileDialog dialog)
(Turns out to be lack of instructions to correctly apply the rom then a bug.)
Remove +/- % and switch to "modes"
This prevents you from finishing escape
Using enemizer 6.0.29, hard/standard/swordless seed
Contact me on discord if you need the rom / orginal
I went through the game using MSU1:
Couldn't easily test these last two, but I know the other ones don't happen on vanilla alttp-msu1 (and thus everything works properly.)
This is with higan v105.
Random Sprite on Hit is fun. I don't know how anyone even came up with that idea. But it would be cool if there was also a way to limit the random sprites to ones you choose from. Maybe even let people save sets they like to use often so they don't have to select everything every time.
It could also be cool to be able to do that for the Link's Sprite Random setting. But it's Random Sprite on Hit where it would really shine, because that's so dynamic.
At least two enemies have had garbled sprites over all releases of Enemizer, and are still garbled in V6.0.12
The first is the hoarder enemy, specifically the few cases that it appears under a large rock:
In this, the above, example, the spike trap next to Link is actually a hoarder that is throwing hearts. The lower spike trap is, in fact, a spike trap.
This case is somewhat rare, this garbling seems to make these hoarders into spike traps, and not "spazzing sprites" like many of the other garbled sprites do. As an aside, I find that many spike traps during the Mothula fight turn into rock hoarders (or rock hoarder parts) in many seeds:
The second enemy that is still has garbling is ravens found in bushes (that also immediately run away, unlike some other ravens). Sorry, I didn't circle the garbled raven in any of these shots, but I assume it will be identifiable since all other sprites make sense now:
Need to check rom user selects is a rando rom.
Also add note to readme and download page.
I watched OhheyitsDavid (Twitch streamer) play an Enemizer run that ended in the 'kill five penguins' room in Ice Palace about two weeks ago, where two enemies were moving spikes (unkillable), two enemies were the blobs that come out of the ground, and the last enemy would not spawn. I don't believe he reported the issue or saved the rom, so that example is lost.
A couple of days ago I created perhaps my fifth Enemizer, and ran into a similar issue. The second room in Mire would not spawn an enemy, although I used Bombos, walked all over the level looking for a blob, and also Googled if I could kill fire sticks or beamos. Over the course of trying to end the run for several more hours, and on my ninth or tenth attempt in clearing the room, I spotted one of Swamp Palace's water skeeters fleeing the top left side of the screen. Bombos was the only way to kill it in this case.
I know most "kill all enemy" triggers work when a skeeter leaves, but I was surprised that this was clearly the last enemy. I had cleared the room, then went up and down the stairs immediately, as to not respawn the enemies that I had killed.
Here is the rom where I had last saved it, a long time before I had found the correct solution. Note: this randomizer is Item, Enemy, and entrance, in order to enter Mire you need to enter Sanctuary's vanilla (light world) entrance. Sorry, no screenshots or video, my school laptop barely runs SNES9x.
Knowing what I found in this rom helps me know I can repeatedly try to spawn and kill this enemy, and that this enemy does exist. In the very least I would like to help others know that they are not 100% softlocked by the seed.
From Plan, on the randomizer discord:
"...also add changing what tile do the flying tiles leave behind. by which I mean spikes and holes. make tile rooms empty out the entire room into a hole."
If possible, have the flying tiles randomize what the leave behind as:
Add "Hero Mode" ala A Link Between Worlds
As the title states, request that the escort mission present in vanilla LttP be present in enemized version. This quest had two requirements, both the escort of the maiden to the boss room and the bombing of the floor to let sunlight into the boss room, and even if only one can be implemented it would still be an improvement.
Fix mimic damage class
https://zarby89.github.io/Enemizer/
The GitHub link at the bottom of the page is pointing at the old "Enimizer" repository instead of this one.
The Kyameron (Water Bubbles) and Water Tektites (Skeeters) of late Swamp Palace were set to be the only enemies there due to problems, but there still seems to be one or two problems:
https://clips.twitch.tv/YummyHomelyLettuceFeelsBadMan
In the clip above or image below: the enemies on top of the stair case (same room) don't have to be reverted to the two, since they are not in water.
Then up the stairs (next room, with the thin corridor) the vanilla enemy is the slime that pops out of the ground. After some enemies blocked this corridor (and the next room) it was supposed to be set to vanilla, however it was set instead to the same Skeeters and Bubbles. This might not be a big problem, but they look weird and are still stuck in place like most other enemies are.
Then the waterway, caught in the end clip, the three Skeeters in vanilla may be enemized into Skeeters or Kyameron. The problem with this is the latter, like most non-skeeter enemies, are invisible. Both this and the problem directly above can be solved by leaving these enemies unrandomized, instead of setting them between Kyameron or Water Tektites.
Lastly the enemies in the left most room of Swamp (after the second flood room) the enemies are also all set to be Skeeters or Water Bubbles. The first three or so enemies are on land, and should be (re)set to the regular pool of enemies.
No rollers by kiki or you can get stuck
In the last room of Swamp Palace (pre-boss, of course) there is seven enemies:
Four red blob/slime enemies that "pop out of the ground", three below the entrance, one in a "pot storage room" visible from the entrance.
Three Water Tektite/"Striders"/"Skeeters" in the moving water in the lower half of the room.
In the enemizer, this room, with exception, is filled with:
Example: Two thieves stuck in place, a red anti-fairy (fidget spinner type) bouncing free, not bound like most other enemies, and one enemy missing, a castle guard that was also stuck in place.
The anti-fairy is free of this bug, but other enemies prove impossible to get past, such as these thieves, and for no clear reason why. This would also likely make this room impossible for OHKO runs without Cape or Cane of Byrna.
Example: When an invisible enemy overlaps Link you can see right through him.
The invisible enemies exhibit different abilities, such as the ability to squeak like sewer rats, but I can say that I have seen a single flying stalfos head being pushed by the current against the wall. I don't know if the fact that it was against the wall is why I could see it, but I have also never seen the Enemizer put other flying enemies or re-add skeeters to this location. (emphasis, seen, they may have been there before and I could not identify them.
Commonly, but not always, enemies found in bushes and grass have garbled sprites. This isn't limited to before or after defeating Agahnim I, and it seems that bush enemy in a "room" will always be the same, so it is either always garbled or always normal. This also seems to affect the pot guard that is occasionally found in the pot in Chicken House.
An eyegore found in a bush in lost woods.
This sprite seems harmless. It blocks shots, but not movement. However, two of them were found in the grass.
A squirrel (Deadrock enemy) found South of Link's house, garbled in both its solid and normal forms
A normal bush guard post-defeat of Agahnim I, with similarly garbled tree leaves
A very limited number of rooms in the game have thrown tiles:
The room with asterisks have garbled sprites, and have with every release of Enemizer V6:
I thought it also affected the 6th room of the boss area of Desert Palace, but I did find one seed that did not have them garbled. However, here is a garbled example anyways:
I have never seen the remaining two, Tower of Hera Basement or Misery Mire Torch room, be garbled.
Randomize the sprites locations in the rooms and on the overworld.
with a flag option to turn it on or off
Instead of flooding Discord, we can just start a list here.
I'm aware that we've got palette randomization as part of the scope of the project.
Some palettes don't play nice with cave doors when inside a cave and that may want to be addressed.
Mothula soft/hard lock in ToH found by Devan2002 on discord. Said he got stuck between edge of platform and spikes after killing Mothula. Probably started falling state, but blocks kept him from moving far enough into pit to fall.
Probably need asm change to remove spikes after Mothula dies (currently the spikes that are moving in the room are removed, but the wall ones stay after death and do zero damage). Or we just need to exclude Mothula from ToH and GT3(?)
Hey, I'm wondering, does Enemizer properly take everything into account to make sure random dungeon enemies can't possibly cause softlocking?
I am aware that sometimes the enemizer places stuff like Beamos in the most inopportune of places, requiring you to damage boost through them to get past them, and this is fine with me, that's part of the strategy of getting through those areas, but there are other things that made me scratch my head a little bit in wonder.
For example, in the run I was doing the other day, the switch in the main room of Mire was randomized under a different pot, which is fine, but a moveable statue was spawned on top of the pot. It isn't possible to move those statues when they're on top of a pot, and it's not possible to lift the pot while the statue is on there, so the only way I could figure out to access that pot was to smash it with the hammer, through the statue. This allowed me to then push the statue and step on the switch, but it also made the hammer a hard requirement for accessing this switch (unless I'm dumb and there was another way to move the pot or the statue that didn't require the hammer, in which case I'm interested in knowing :p)
That chest ended up being the compass or something dumb like that, but if it had been the big key or something, then hammer would have been an additional requirement for mire altogether, which would have been a problem if the hammer was on mire boss/big chest (or even in that particular chest), maybe also if hammer was in fat fairy's cave with Mire having crystal 5 or 6.
Picture to show what I'm talking about: http://i.imgur.com/E63iqZk.png
That pot had the switch under it, and the bunny beam got randomized into a moveable statue. I know it's possible to lift pots while moveable statues are partially onto them, like we do in Swamp Palace, but in my case the statue was fully on top of the pot, + I could only really access the pot from the left/right so i had fewer angles to try and lift the pot from which might not have helped. Statue wouldn't move an inch either no matter what I tried, until I smashed the pot away.
If there's already checks to prevent that kind of thing from happening then it's all good, I just figured I'd ask about it because this kind of thing seems a bit odd to me, and with the wide variety of entities that can be shuffled around, I figured it was possible that there could be weird interactions like this that flew past the radar. :p it's probably a fairly rare occurrence.
Lord_Calvanian encountered a Beamos in Skull Woods in the torch puzzle room. It was in front of the lower-right torch. You can walk through it, but that's intentional damage taken.
Image.
In Swamp Dam, pull switches are jacked up.
Anti-Faeries seem to be messed up too.
iBazly had an issue fighting Mothula in Turtle Rock. Immune to Tempered Sword slashes but vulnerable to Fire Rod shots.
Maybe it has something to do with Trinexx' shell on the ground or the properties of that sector of the super room.
Twitch Clip
This sparkle is preventing hookshoting across the gap: https://imgur.com/a/CINEC
RoomIdConstants.R11_PalaceofDarkness_TurtleRoom, // TODO: test, probably the single turtle in the L section
Can hug the wall and get past without taking damage.
RoomIdConstants.R25_PalaceofDarkness_DarkMaze, // TODO: test, top mob will probably block maze
Top mob does indeed block maze
RoomIdConstants.R30_IcePalace_BombFloor_BariRoom, // TODO: test
Can get past without taking damage
RoomIdConstants.R39_TowerofHera_BigChest, // TODO: test, top left dodongo
Top left dodongo blocks path, bottom left dodongo can be squeezed by without taking damage but it is tricky: https://imgur.com/a/BlZZT
RoomIdConstants.R75_PalaceofDarkness_Warps_SouthMimicsRoom, // TODO: test
Can get by without taking damage.
RoomIdConstants.R85_CastleSecretEntrance_UncleDeathRoom, // TODO: test
Can get by without taking damage.
RoomIdConstants.R95_IcePalace_HiddenChest_SpikeFloorRoom, // TODO: would this cause problem in OHKO since you can't hookshot if middle mob is beamos,etc?
Can still Hookshot without taking damage when middle enemy is beamos, can also hookshot back to chest (although a bit tricky): https://imgur.com/a/9m1JP
RoomIdConstants.R131_DesertPalace_WestEntranceRoom, // TODO: test
Can get by just fine.
RoomIdConstants.R132_DesertPalace_MainEntranceRoom, // TODO: test
No issues here.
RoomIdConstants.R133_DesertPalace_EastEntranceRoom, // TODO: test (only a problem for ER?)
No issues here.
RoomIdConstants.R140_GanonsTower_EastandWestDownstairs_BigChestRoom, // TODO: test (probably safe?)
No issues here.
RoomIdConstants.R146_MiseryMire_DarkBombWall_SwitchesRoom, // TODO: test
The sliding spike block blocks the way through.
RoomIdConstants.R149_GanonsTower_FinalCollapsingBridgeRoom, // TODO: test, probably safe because of conveyor belts
Is safe to get past.
RoomIdConstants.R156_GanonsTower_InvisibleFloorMazeRoom, // TODO: test
This is fine.
RoomIdConstants.R160_MiseryMire_Pre_VitreousRoom, // TODO: test
Anti fairy blocks path.
RoomIdConstants.R170_EasternPalace_MapChestRoom, // TODO: test
Both doors on right side are blocked: https://imgur.com/a/gFyPo
RoomIdConstants.R179_MiseryMire_SpikeKeyChestRoom, // TODO: test lower stalfos blocking door
Can't squeeze past lower stalfos as beamos without taking damage: https://imgur.com/a/qu9Sx
RoomIdConstants.R187_ThievesTown_Hellway, // TODO: test, should be ok but double check
No issues.
RoomIdConstants.R188_ThievesTown_ConveyorToilet, // TODO: test
No issues.
RoomIdConstants.R208_AgahnimsTower_DarkMaze, // TODO: test
Can navigate through entirety of dark maze just fine except for the blue guard is blocking the chest.
RoomIdConstants.R220_ThievesTown_SouthEastEntranceRoom, // TODO: test
Left side to this chest is blocked, but can get to it from the right side. It's tricky, but you can squeeze past the enemy after going upstairs just barely by going north of them: https://imgur.com/a/7G2G0
RoomIdConstants.R249_Cave0xF9, // TODO: test, probably can get past
Can get past these guys no problem.
See video, https://www.twitch.tv/videos/300165917
Using Enemizer 6.0.04
While quite rare compared to actually randomizing enemies, seeds made by the Enemizer sometimes mess up sprites when no randomizations are selected at all.
To be clear, these are the Enemizer selections:
I used it on:
Enemizer 6.0.04 - ALttP - VT_no-glitches-26_normal-open-triforce-hunt_triforce-hunt_189603668 (EN229154905)
While looking for garbled sprites I usually go to PoD, Hera, Mire, and Thieves' Town. In this seed all enemies there were fine, but at Eastern sprites were messed up; "Bowling balls", both small and large, and Eyegores, both red and green.
I'm aware that we've got palette randomization as part of the scope of the project.
Small hearts under pots seem to be subject to it and should probably stay their default color scheme.
I apologize if it is not the Enemizer causing this problem, but I have rarely ran into this problem and I believe it is caused by the enemy randomization somehow:
The "last chest" you get to in Ice Palace, as little of a name I have for it, which I believe the item randomizer calls "[dungeon-D5-B5] Ice Palace - b5 up staircase" has a tongue-activated door to go back towards the boss-area of the dungeon. When using Enemizer, this tongue sometimes pulls, makes a Zelda-Unlock noise, but does not open the door.
In this image, the tongue is pulled, but the door that link is looking at should be open:
This is not a softlock, nor a "Save & Quit" lock, as there is an exit above that is not preferred for time or enemies. It has happened in about one in five (20%) of all Enemizers I have seen or watched. Occasionally, though possible anecdotal, I see what looks like a changed sprite in the tongue-statue during transition.
If a ROM with this glitch occurring is wanted or needed, I can upload it, just ask.
If you lack the small key and mirror, and fall down into first room of ToH while the orange blocks are up, and if you lack the means by which to hit the crystal switch (i.e. fire/ice rod, bow, cane of somaria, sword beams) then only way to escape without saving and quitting is to death warp off of enemies.
Right now the possibility exists that you could have three enemies spawn which are unable to damage you. The two dodongos, for instance, can be enemies who lack ranged attacks and are unable to harm you through their cages. The minimoldorm can be a non-damaging enemy such as a thief or bunny beam. If this occurs then the game would force you to save and quit, and reclimb up DM to ToH the long way.
Using Enemizer v6.0, both original download on the discord with Pug changed to pug and latest download to test
When attempting to generate a seed with Bosses > Randomize Bosses checked off will cause the Enemizer to freeze for an indefinite amount of time, and upon clicking anywhere will close due to "Not Responding"
Changing the Type of Randomization does not alter this issue, always crashes when checked, always works while unchecked.
So far I have found these files to crash:
ALttP - VT_no-glitches-26_normal-open-triforce-hunt_triforce-hunt_750028925
ALttP - VT_no-glitches-26_normal-open-triforce-hunt_triforce-hunt_872136068
Reproduction: https://www.youtube.com/watch?v=x1CuBAN3Q-Q
Error message: https://pastebin.com/zzLx5aQK
Disabling the "Random Dungeon Sprites" option causes the Enemizer program to crash when Generate is clicked. Application seems to work fine so long as that option is Enabled.
Windows 10 Pro CU x64
As brought up by Fouton in the discord.
Using the (normal) randomized seed of: 991020648
Spoiler for No-glitches-27 normal-open-ganon 991020648.txt
The ice rod is in Ganon's Tower in this seed:
"Ganon's Tower - Hope Room - Left": "Ice Rod"
The crystals in this seed are:
Fouton's settings included chaos boss randomization, seed EN991020648. It ended up having Trinexx in Palace of Darkness.
I ran the same seed through the enemizer with all randomization settings off except for bosses; I ran about five seeds through each boss level.
In basic boss randomization:
EN86649039 has Trinexx in Ice Palace
EN291024711 has Trinexx in Palace of Darkness
in normal boss randomization:
EN39128504 has Trinexx in Misery Mire
EN834554323 has Trinexx in Palace of Darkness
in chaos boss randomization, in addition to Fouton's:
EN740639169 has Trinexx in Desert
Not only has it been across the dungeons pretty evenly, but the type of randomization doesn't seem to affect it. Maybe a seed with ice rod in the pedestal could also be checked.
mimic patch needs switch for non-enemy randomized roms
Randomize trap switches (eg. escape, eastern)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.