backend-infra-engineer: Post v0.3.9-hotfix7 snapshot (build cleanup)

This commit is contained in:
scawful
2025-12-22 00:20:49 +00:00
parent 2934c82b75
commit 5c4cd57ff8
1259 changed files with 239160 additions and 43801 deletions

View File

@@ -0,0 +1,19 @@
;#ENABLED=True
;#PATCH_NAME=Crystal Switch Conveyor
;#PATCH_AUTHOR=Zarby89
;#PATCH_VERSION=1.0
;#PATCH_DESCRIPTION
;Causes crystal switches to be moved by conveyors
;#ENDPATCH_DESCRIPTION
lorom
pushpc
org $06B8D0
JSL ConveyorSwitch
NOP
pullpc
ConveyorSwitch:
JSL $06E496 ; Sprite_CheckTileCollisionLong
LDA.w $0F50, X : AND.b #$F1
RTL

View File

@@ -0,0 +1,95 @@
;#ENABLED=True
;#PATCH_NAME=Elemental Trinexx
;#PATCH_AUTHOR=Jared_Brian_
;#PATCH_VERSION=1.0
;#PATCH_DESCRIPTION
;Changes Trinexx's side heads to be both ice heads, both fire heads, or swapped.
;The heads will shoot the corrisponding beams and will also appear the correct color.
;The main head will appear the elemental color if you set that option but otherwise will be the default palette.
;You will still need to set the side heads to take damage from the appropriate elemental rod with the advanced damage editor.
;#ENDPATCH_DESCRIPTION
;#DEFINE_START
;#name=Changes the arrangement of side heads.
;#type=choice
;#choice0=Inverted Heads
;#choice1=Ice Heads Only
;#choice2=Fire Heads Only
!ElementType = $00
;#name=Changes the main head palette.
;#type=choice
;#choice0=Default Palette
;#choice1=Ice Palette
;#choice2=Fire Palette
!MainHeadPalette = $00
;#DEFINE_END
pushpc
if !ElementType == 0
; Change the palettes of the side heads to the inverted palette.
org $0DB425
db $0D, $0B
; Swap which head shows the apropriate particales when charging up.
org $1DBAD9
db $F0 ; Replace a BNE with a BEQ.
; Swap which head shoots what beam.
org $1DBAE8
LDA $0E20, X : CMP.b #$CC
; Another beam related thing.
org $1DBAF8
LDA.b #$CC
elseif !ElementType == 1
; Change the palettes of the side heads to the ice palette.
org $0DB425
db $0D, $0D
; Make the fire head show ice spakles when charging up.
org $1DBAD9
db $80 ; Replace a BNE with a BRA.
; Make the fire head shoot ice instead of fire.
org $1DBAE8
LDA.b #$CD : NOP #5
elseif !ElementType == 2
; Change the palettes of the side heads to the fire palette.
org $0DB425
db $0B, $0B
; Make the ice head show flames when charging up.
org $1DBAD9
NOP : NOP ; Remove the BNE and never branch.
; Make the ice head shoot fire instead of ice.
org $1DBAE8
LDA.b #$CC : NOP : NOP : NOP
db $80 ; Replace a BNE with a BRA.
endif
if !MainHeadPalette == 1
; Change the palette of all the main head to the ice.
org $0DB424
db $4D
; Change the snake trinexx palette to ice.
org $1DB033
db $0D
elseif !MainHeadPalette == 2
; Change the palette of all the main head to the fire.
org $0DB424
db $4B
; Change the snake trinexx palette to fire.
org $1DB033
db $0B
endif
pullpc

View File

@@ -0,0 +1,43 @@
;#PATCH_NAME=Eye Lasers Active
;#PATCH_AUTHOR=Jared_Brian_
;#PATCH_VERSION=1.0
;#PATCH_DESCRIPTION
;Changes the wall eye lasers to always be active or always inactive reguardless of what X position they are placed on.
;Normally in vanilla every other X position is set to be inactive unless link is looking directly at them.
;#ENDPATCH_DESCRIPTION
;#DEFINE_START
;#name=Active?
;#type=bool
!EyeActive = $00
;#DEFINE_END
pushpc
if !EyeActive == $00
; Make it so the eye lazers are always inactive reguardless of what X position they are placed on.
org $1EA50B
; Replaced code:
; LDA $0D10, X : AND.b #$10 : EOR.b #$10 : STA !requires_facing, X
NOP #5 : LDA.b #$00 : STA $0EB0, X
org $1EA52C
; Replace code:
; LDA $0D00, X : AND.b #$10 : STA !requires_facing, X
NOP #3 : LDA.b #$00 : STA $0EB0, X
elseif !EyeActive == $01
; Make it so the eye lazers are always active reguardless of what X position they are placed on.
org $1EA50B
; Replaced code:
; LDA $0D10, X : AND.b #$10 : EOR.b #$10 : STA !requires_facing, X
NOP #5 : LDA.b #$01 : STA $0EB0, X
org $1EA52C
; Replace code:
; LDA $0D00, X : AND.b #$10 : STA !requires_facing, X
NOP #3 : LDA.b #$01 : STA $0EB0, X
endif
pullpc

View File

@@ -0,0 +1,56 @@
;#ENABLED=True
;#PATCH_NAME=Kholdstare Speeds
;#PATCH_AUTHOR=Jared_Brian_
;#PATCH_VERSION=1.0
;#PATCH_DESCRIPTION
;Changes the speeds at which kholdstare can move.
;By default he will move the same speed on the x and y axis in all 4 diagonal directions.
;Values above 0x80 are negative.
;#ENDPATCH_DESCRIPTION
;#DEFINE_START
;#name=X Value 1
;#type=byte
!XValue1 = $0010
;#name=X Value 2
;#type=byte
!XValue2 = $0010
;#name=X Value 3
;#type=byte
!XValue3 = $00F0
;#name=X Value 4
;#type=byte
!XValue4 = $00F0
;#name=Y Value 1
;#type=byte
!YValue1 = $00F0
;#name=Y Value 2
;#type=byte
!YValue2 = $0010
;#name=Y Value 3
;#type=byte
!YValue3 = $0010
;#name=Y Value 4
;#type=byte
!YValue4 = $00F0
;#DEFINE_END
pushpc
; Speed chagnes.
org $1E95DD
.x_speed_limits
db !XValue1, !XValue2, !XValue3, !XValue4
.y_speed_limits
db !YValue1, !YValue2, !YValue3, !YValue4
pullpc

View File

@@ -0,0 +1,24 @@
;#ENABLED=True
;#PATCH_NAME=Spike damage
;#PATCH_AUTHOR=kan
;#PATCH_VERSION=1.0
;#PATCH_DESCRIPTION
;Allows mail upgrades to reduce sprite damage
;$08 = 1 heart, $04 = half heart, $10 = 2 heart, etc...
;#ENDPATCH_DESCRIPTION
;#DEFINE_START
;#name=Green Mail Damage
!GreenMailDamage = $08
;#name=Blue Mail Damage
!BlueMailDamage = $08
;#name=Red Mail Damage
!RedMailDamage = $08
;#DEFINE_END
pushpc
org $07BA07
db !GreenMailDamage
db !BlueMailDamage
db !RedMailDamage
pullpc

View File

@@ -0,0 +1,52 @@
;#ENABLED=True
;#PATCH_NAME=More spike directions
;#PATCH_AUTHOR=Zarby89,kan
;#PATCH_VERSION=1.0
;#PATCH_DESCRIPTION
;Allows more spike blocks Subtype (sprite property)
;Default Values : (00) = normal, (08) = normal vertical
;Values, ascending by speed
;00,01,02,03,04,05,06 = Horizontal
;08,09,0A,0B,0C,0D,0E = Vertical
;#ENDPATCH_DESCRIPTION
lorom
pushpc
org $0691D7 ; SpritePrep_SpikeBlock:
JSL NewSpikePrep
RTS
org $1EBD0E
JSL NewSpikeCollision
RTS
pullpc
speedValuesH:
db $20, $10, $18, $28, $30, $38, $40, $FF
db $00, $00, $00, $00, $00, $00, $00, $FF
speedValuesV:
db $00, $00, $00, $00, $00, $00, $00, $FF
db $20, $18, $20, $28, $30, $38, $40, $FF
NewSpikePrep:
TXY
LDX.w $0E30,Y
LDA.l speedValuesH,X : STA.w $0D50,Y
LDA.l speedValuesV,X : STA.w $0D40,Y
TYX
RTL
NewSpikeCollision:
LDA.b #$04 : STA.w $0DF0, X
LDA.w $0D50, X : EOR.b #$FF : INC A : STA.w $0D50, X
LDA.w $0D40, X : EOR.b #$FF : INC A : STA.w $0D40, X
LDA.b #$05 : JSL $0DBB7C ; Sound_SetSfx2PanLong
RTL