DungeonGen bug
Animated tiles fix
This commit is contained in:
@@ -2139,7 +2139,7 @@ def find_forced_groupings(sector_pool, dungeon_map):
|
||||
if len(found_list) == 1:
|
||||
forced_sectors = []
|
||||
for sec in other_sectors:
|
||||
cats = categorize_groupings(sec)
|
||||
cats = categorize_groupings([sec])
|
||||
if opp in cats.keys() and (len(cats[opp][0]) > 0 or len(cats[opp][1]) > 0):
|
||||
forced_sectors.append(sec)
|
||||
if len(forced_sectors) > 0:
|
||||
|
||||
@@ -1,31 +1,8 @@
|
||||
# New Features
|
||||
|
||||
* Mirror Scroll no longer erases blocks, the real mirror still will. (Sorry!)
|
||||
* Standard+Crossed Dungeon now gives you a little magic, a few bombs, and a few arrows if you die or S&Q after meeting your uncle (also works with mirror/scroll)
|
||||
* Dungeon reminder added to hud for Crossed dungeons
|
||||
* Blinking red square added to hud and it indicates a boss room is close by. Only appears if you have the compass. (Basic & Crossed)
|
||||
* Agahnims dungeon items can be started with now
|
||||
* GUI updates courtesy of Mike T
|
||||
|
||||
## Map Features (Crossed only + Experimental)
|
||||
|
||||
* Key counters added to hud. Indicates number of keys in chests (found/total). In small key shuffle, this count indicates how many smalls for that dungeon could be outside it.
|
||||
* Total key indicator added to hud if you have found the map. Counts down from the total number of keys in dungeon to 0 as you collect them.
|
||||
* Big Key indicator added to hud. Indicates if BK is not in the dungeon, or if BnC guard has it (Probably will move away from hud if kept)
|
||||
|
||||
Note: Only one of the key indicator will probably become core at most.
|
||||
|
||||
## Experimental changes
|
||||
|
||||
* Mirror scroll is now core for non-vanilla Door Shuffle (no longer experimental)
|
||||
* GT Bosses stay dead in non-vanilla Door Shuffle (no longer experimental)
|
||||
* Map features listed above are now experimental
|
||||
* None yet
|
||||
|
||||
# Bug Fixes
|
||||
|
||||
* Splashing at hobo no longer prevents you from buying bomb capacity upgrades
|
||||
* Small vitreous eyeballs will not drop items (DR basic and crossed only)
|
||||
* In Vanilla doors the HC back hallway area was broken - should be better now - also Trap Doors
|
||||
* Firebar speed should now be consistent. Ice palace rooms have slow firebars even if shuffled to other dungeons. Others should have normal speed firebars.
|
||||
* Red/Blue pendant swap fixed (originally ER bug)
|
||||
* Compass shuffle vs map shuffle item menu fix (originally ER bug)
|
||||
* Crossed Dungeon generation improvements
|
||||
* Fix for Animated Tiles in crossed dungeon
|
||||
2
Rom.py
2
Rom.py
@@ -22,7 +22,7 @@ from EntranceShuffle import door_addresses, exit_ids
|
||||
|
||||
|
||||
JAP10HASH = '03a63945398191337e896e5771f77173'
|
||||
RANDOMIZERBASEHASH = '9ed3ae2d129faa1cd3858e2f72b11b62'
|
||||
RANDOMIZERBASEHASH = '6042de1d3a63417efe4397b69c626b88'
|
||||
|
||||
|
||||
class JsonRom(object):
|
||||
|
||||
@@ -1,3 +1,23 @@
|
||||
org $279500
|
||||
TilesetTable:
|
||||
; 0 1 2 3 4 5 6 7 8 9 a b c d e f --Offset Ruler
|
||||
db $13,$04,$04,$06,$0d,$ff,$08,$05,$06,$07,$07,$07,$0e,$0e,$0b,$ff
|
||||
db $13,$04,$04,$0d,$0d,$0d,$08,$05,$06,$07,$07,$07,$0e,$0e,$0b,$0b
|
||||
db $04,$04,$04,$0d,$0d,$ff,$08,$05,$08,$09,$07,$07,$06,$ff,$0b,$06
|
||||
db $04,$05,$04,$12,$08,$08,$08,$08,$08,$09,$07,$07,$06,$0e,$0b,$0b
|
||||
db $04,$04,$04,$12,$0a,$0a,$08,$ff,$ff,$09,$07,$07,$0e,$0e,$0b,$0b
|
||||
db $04,$04,$04,$12,$08,$01,$09,$09,$09,$09,$07,$0e,$0e,$0e,$0b,$0b
|
||||
db $04,$04,$04,$12,$0a,$0a,$08,$09,$09,$ff,$07,$0e,$0e,$0e,$0b,$ff
|
||||
db $04,$04,$04,$12,$12,$12,$08,$05,$ff,$ff,$ff,$0e,$0e,$0e,$0b,$0b
|
||||
db $04,$04,$04,$12,$12,$12,$ff,$05,$ff,$05,$ff,$0e,$0e,$0e,$0b,$ff
|
||||
db $0c,$0c,$0c,$0c,$ff,$0e,$0e,$0c,$0c,$05,$ff,$0e,$0e,$0e,$0b,$0b
|
||||
db $0c,$0c,$0c,$0c,$0d,$0e,$0e,$05,$05,$05,$05,$0a,$0a,$ff,$0b,$0b
|
||||
db $04,$0c,$0c,$0c,$0d,$0d,$0d,$0d,$05,$05,$05,$0a,$0a,$ff,$0b,$0b
|
||||
db $04,$0c,$0c,$0c,$0d,$0d,$0d,$0d,$05,$05,$ff,$0a,$0a,$ff,$0b,$ff
|
||||
db $04,$0c,$0c,$ff,$ff,$0d,$0d,$ff,$05,$05,$05,$0a,$0a,$ff,$0b,$06
|
||||
db $04,$06,$06,$06,$06,$06,$06,$06,$06,$ff,$06,$06,$ff,$06,$06,$06
|
||||
db $06,$06,$03,$03,$03,$03,$ff,$ff,$06,$06,$06,$06,$ff,$06,$06,$06
|
||||
|
||||
org $279700
|
||||
KeyDoorOffset:
|
||||
; 0 1 2 3 4 5 6 7 8 9 a b c d e f --Offset Ruler
|
||||
|
||||
@@ -31,7 +31,7 @@ jsl SpiralWarp
|
||||
|
||||
|
||||
; Graphics fix
|
||||
org $02895d
|
||||
org $02895d ; Bank 02 line 1812 (JSL Dungeon_LoadRoom : JSL Dungeon_InitStarTileChr : JSL $00D6F9 : INC $B0)
|
||||
Splicer:
|
||||
jsl GfxFixer
|
||||
lda $b1 : beq .done
|
||||
@@ -39,10 +39,14 @@ rts
|
||||
nop #5
|
||||
.done
|
||||
|
||||
org $00fda4
|
||||
org $00d377 ;Bank 00 line 3185
|
||||
DecompDungAnimatedTiles:
|
||||
org $00fda4 ;Bank 00 line 8882
|
||||
Dungeon_InitStarTileCh:
|
||||
org $00d6ae ;(PC: 56ae)
|
||||
LoadTransAuxGfx:
|
||||
org $00d739 ;
|
||||
LoadTransAuxGfx_Alt:
|
||||
org $00df5a ;(PC: 5f5a)
|
||||
PrepTransAuxGfx:
|
||||
org $0ffd65 ;(PC: 07fd65)
|
||||
|
||||
15
asm/gfx.asm
15
asm/gfx.asm
@@ -1,11 +1,24 @@
|
||||
GfxFixer:
|
||||
{
|
||||
lda $b1 : bne .stage2
|
||||
lda DRMode : bne +
|
||||
jsl LoadRoomHook ;this is the code we overwrote
|
||||
jsl Dungeon_InitStarTileCh
|
||||
jsl LoadTransAuxGfx_Alt
|
||||
inc $b0
|
||||
rtl
|
||||
+ lda $b1 : bne .stage2
|
||||
jsl LoadRoomHook ; this is the rando version - let's only call this guy once - may fix star tiles and slower loads
|
||||
jsl Dungeon_InitStarTileCh
|
||||
jsl LoadTransAuxGfx
|
||||
jsl Dungeon_LoadCustomTileAttr
|
||||
jsl PrepTransAuxGfx
|
||||
lda DRMode : cmp #$02 : bne + ; only do this in crossed mode
|
||||
ldx $a0 : lda TilesetTable, x
|
||||
cmp $0aa1 : beq + ; already eq no need to decomp
|
||||
sta $0aa1
|
||||
tax : lda $02802e, x : tay
|
||||
jsl DecompDungAnimatedTiles
|
||||
+
|
||||
lda #$09 : sta $17 : sta $0710
|
||||
jsl Palette_SpriteAux3
|
||||
jsl Palette_SpriteAux2
|
||||
|
||||
@@ -6,6 +6,7 @@ RecordStairType: {
|
||||
}
|
||||
|
||||
SpiralWarp: {
|
||||
lda DRMode : beq .abort ; abort if not DR
|
||||
lda $040c : cmp.b #$ff : beq .abort ; abort if not in dungeon
|
||||
lda $045e : cmp #$5e : beq .gtg ; abort if not spiral - intended room is in A!
|
||||
cmp #$5f : beq .gtg
|
||||
@@ -65,6 +66,16 @@ SpiralWarp: {
|
||||
ldy #$01 : jsr SetCamera
|
||||
|
||||
stz $045e ; clear the staircase flag
|
||||
|
||||
; animated tiles fix
|
||||
lda DRMode : cmp #$02 : bne + ; only do this in crossed mode
|
||||
ldx $a0 : lda TilesetTable, x
|
||||
cmp $0aa1 : beq + ; already eq no need to decomp
|
||||
sta $0aa1
|
||||
tax : lda $02802e, x : tay
|
||||
jsl DecompDungAnimatedTiles
|
||||
+
|
||||
|
||||
ply : plx : plb ; pull the stuff we pushed
|
||||
lda $a2 : and #$0f ; this is the code we are hijacking
|
||||
rtl
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user