Skip to content
This repository has been archived by the owner on Jul 18, 2023. It is now read-only.

Commit

Permalink
Update a bunch of stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
1234567890num committed Aug 16, 2021
1 parent 5a3697c commit a844453
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 144 deletions.
64 changes: 28 additions & 36 deletions GoA Practice.lua
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
--RAM Version
--Last Update: Minor Optimizations
--Todo: GoA portal color & Mining Area warps (CoR skip 2nd part)
--Last Update: PC Form Icon with GoA Companion Bugfix & CoR Room Transitions
--Todo: GoA portal color

LUAGUI_NAME = "GoA RAM Practice Build"
LUAGUI_AUTH = "SonicShadowSilver2 (Ported by Num)"
LUAGUI_DESC = "A GoA build to let you practice various events."

function _OnInit()
local VersionNum = 'GoA Version 1.52.8'
local VersionNum = 'GoA Version 1.52.9'
if (GAME_ID == 0xF266B00B or GAME_ID == 0xFAF99301) and ENGINE_TYPE == "ENGINE" then --PCSX2
if ENGINE_VERSION < 3.0 then
print('LuaEngine is Outdated. Things might not work properly.')
Expand Down Expand Up @@ -291,12 +291,6 @@ if ReadShort(Btl0+0x2EB4C) == 1000 then --MCP Vanilla HP
WriteShort(Btl0+0x312E6,0x01A1) --Auto Limit (Auron)
WriteShort(Btl0+0x314EA,0x01A1) --Auto Limit (Beast)
WriteShort(Btl0+0x315EA,0x01A1) --Auto Limit (Simba)
WriteShort(Btl0+0x31A6C,0x820E) --Dash
WriteShort(Btl0+0x31A6E,0x820D) --Running Tackle
WriteString(Obj0+0x13450,'SHOP_POINT\0') --Wallace -> Moogle
WriteString(Obj0+0x13470,'N_EX960_RTN.mset\0')
WriteShort(Sys3+0x16F40,0x001) --Stock Potion
WriteShort(Sys3+0x16F42,0x003) --Stock Ether
WriteShort(Btl0+0x2EB4C,500) --Fast MCP (50% Base HP)
WriteShort(Btl0+0x2EB8C,300) --Double Max Damage %
WriteShort(Btl0+0x2EB8E,100) --Double Min Damage %
Expand All @@ -309,6 +303,14 @@ if ReadShort(Btl0+0x2EB4C) == 1000 then --MCP Vanilla HP
-- Edge of Ultima
WriteShort(Sys3+0x13F16,0x1A5) --Ability: MP Hastera
WriteShort(Sys3+0x13F18,0x0405) --Magic:4 Strength:5
end
if ReadShort(Btl0+0x31A6C) == 0 then --Vanilla Lion Sora Abilities
WriteShort(Btl0+0x31A6C,0x820E) --Dash
WriteShort(Btl0+0x31A6E,0x820D) --Running Tackle
WriteString(Obj0+0x13450,'SHOP_POINT\0') --Wallace -> Moogle
WriteString(Obj0+0x13470,'N_EX960_RTN.mset\0')
WriteShort(Sys3+0x16F40,0x001) --Stock Potion
WriteShort(Sys3+0x16F42,0x003) --Stock Ether
--Party EXP Requirement
for Member = 0,12 do
local EXPAddress = Btl0 + 0x25928 + Member*0x634
Expand Down Expand Up @@ -2930,37 +2932,19 @@ elseif World == 0x04 then --Hollow Bastion
Spawn('Short',0x06,0x024,0x1A)
Spawn('Short',0x06,0x026,0x1A)
WriteShort(Sve+2,0x1A)
elseif Room == 0x15 then
if PrevPlace == 0x1804 then
if PrevBtl == 0x01 then --Mineshaft Heartless I
Warp(0x04,0x1A,0x18,0x02,0x0F,0x02)
elseif PrevBtl == 0x02 then --Mineshaft Heartless II
Warp(0x04,0x1A,0x16,0x02,0x0F,0x02)
end
elseif PrevPlace == 0x1604 then --Mining Area Valves
Warp(0x04,0x1A,0x01,0x02,0x0F,0x02)
end
elseif Room == 0x16 then
if PrevPlace == 0x1804 then --Mineshaft Heartless II
Warp(0x04,0x1A,0x16,0x02,0x0F,0x02)
elseif Events(0x01,0x01,0x01) then --Mining Area Valves
Spawn('Short',0x0F,0x032,0x04)
Spawn('Short',0x0F,0x034,0x1A)
Spawn('Short',0x0F,0x036,0x01)
end
elseif Room == 0x16 then --Mining Area Valves
Spawn('Short',0x03,0x024,0x011A) --Exit
Spawn('Short',0x04,0x024,0x011A)
Spawn('Short',0x05,0x024,0x011A)
BitNot(Save+0x1D25,0x02) --HB_FM_712_END
elseif Room == 0x18 then
if PrevPlace == 0x1904 then
if PrevBtl == 0x01 then --Transport to Remembrance Nobodies I
Warp(0x04,0x1A,0x15,0x02,0x0F,0x02)
elseif PrevBtl == 0x02 then --Transport to Remembrance Nobodies II
Warp(0x04,0x1A,0x17,0x02,0x0F,0x02)
elseif PrevBtl == 0x03 then --Transport to Remembrance Nobodies III
Warp(0x04,0x1A,0x19,0x02,0x0F,0x02)
end
elseif Events(0x02,0x01,0x01) then --Mineshaft Heartless I
if Events(0x02,0x01,0x01) then --Mineshaft Heartless I
Spawn('Short',0x12,0x02A,0x04)
Spawn('Short',0x12,0x02C,0x1A)
Spawn('Short',0x12,0x02E,0x18)
Spawn('Short',0x03,0x024,0x181A) --Exit
Spawn('Short',0x04,0x024,0x181A)
Spawn('Short',0x05,0x024,0x181A)
--Softlock Prevention
Spawn('Short',0x09,0x024,0x0018) --Door to Transport to Remembrance -> Mineshaft
Spawn('Short',0x09,0x026,0) --Approachable from All Sides
Expand All @@ -2971,20 +2955,28 @@ elseif World == 0x04 then --Hollow Bastion
Spawn('Short',0x12,0x066,0x04)
Spawn('Short',0x12,0x068,0x1A)
Spawn('Short',0x12,0x06A,0x16)
Spawn('Short',0x03,0x024,0x161A) --Exit
Spawn('Short',0x04,0x024,0x161A)
Spawn('Short',0x05,0x024,0x161A)
Spawn('Short',0x06,0x024,0x161A)
Spawn('Short',0x07,0x024,0x161A)
end
elseif Room == 0x19 then
if Events(0x00,0x01,0x01) then --Transport to Remembrance Nobodies I
Spawn('Short',0x0B,0x02A,0x04)
Spawn('Short',0x0B,0x02C,0x1A)
Spawn('Short',0x0B,0x02E,0x15)
Spawn('Short',0x03,0x024,0x151A) --Exit
elseif Events(0x00,0x02,0x02) then --Transport to Remembrance Nobodies II
Spawn('Short',0x0B,0x066,0x04)
Spawn('Short',0x0B,0x068,0x1A)
Spawn('Short',0x0B,0x06A,0x17)
Spawn('Short',0x03,0x024,0x171A) --Exit
elseif Events(0x00,0x03,0x03) then --Transport to Remembrance Nobodies III
Spawn('Short',0x0B,0x0AA,0x04)
Spawn('Short',0x0B,0x0AC,0x1A)
Spawn('Short',0x0B,0x0AE,0x19)
Spawn('Short',0x03,0x024,0x191A) --Exit
end
elseif Room == 0x20 then
if Events(0x73,0x73,0x73) then --Vexen
Expand Down
73 changes: 19 additions & 54 deletions GoA RAM Non-Rando.lua
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
--RAM Version
--Last Update: Minor Optimizations
--Last Update: OC Demyx Bugfix, Music Code Optimizations, PC Form Icon with GoA Companion Bugfix

LUAGUI_NAME = 'GoA RAM Non-Randomizer Build'
LUAGUI_AUTH = 'SonicShadowSilver2 (Ported by Num)'
LUAGUI_DESC = 'A GoA build for use with vanilla items.'

function _OnInit()
local VersionNum = 'GoA Version 1.52.8'
local VersionNum = 'GoA Version 1.52.9'
if (GAME_ID == 0xF266B00B or GAME_ID == 0xFAF99301) and ENGINE_TYPE == "ENGINE" then --PCSX2
if ENGINE_VERSION < 3.0 then
print('LuaEngine is Outdated. Things might not work properly.')
Expand Down Expand Up @@ -346,15 +346,15 @@ if ReadShort(Btl0+0x2EB4C) == 1000 then --MCP Vanilla HP
WriteString(Obj0+0x2C050,'F_EX030_EH')
WriteString(Obj0+0x2C070,'F_EX030.mset')
end
--Change Form's Icons in PC From Analog Stick
if Platform == 1 then
WriteByte(Sys3+0x116DB,0x3B) --Valor
WriteByte(Sys3+0x116F3,0x3B) --Wisdom
WriteByte(Sys3+0x1170B,0x3B) --Limit
WriteByte(Sys3+0x11723,0x3B) --Master
WriteByte(Sys3+0x1173B,0x3B) --Final
WriteByte(Sys3+0x11753,0x3B) --Anti
end
end
--Change Form's Icons in PC From Analog Stick
if Platform == 1 and ReadByte(Sys3+0x116DB) == 0x19 then
WriteByte(Sys3+0x116DB,0x3B) --Valor
WriteByte(Sys3+0x116F3,0x3B) --Wisdom
WriteByte(Sys3+0x1170B,0x3B) --Limit
WriteByte(Sys3+0x11723,0x3B) --Master
WriteByte(Sys3+0x1173B,0x3B) --Final
WriteByte(Sys3+0x11753,0x3B) --Anti
end
--Start New Game 1
if Place == 0x0102 and Events(0x34,0x34,0x34) then --Opening Cutscene
Expand Down Expand Up @@ -1739,7 +1739,7 @@ elseif Place == 0x0106 and Events(Null,Null,0x02) then --The Reunion
WriteByte(Save+0x1D6F,4)
elseif Place == 0x0306 and Events(Null,Null,0x05) then --Arriving in the Underworld
WriteByte(Save+0x1D6F,5)
elseif Place == 0x1106 and Events(Null,Null,0x01) then --Sora and Friends vs. Demyx
elseif Place == 0x1106 and Events(0x7B,0x7B,0x7B) then --Regained Power
WriteByte(Save+0x1D6F,6)
elseif Place == 0x0806 and Events(Null,Null,0x01) then --Presistent Ol' Pete
WriteByte(Save+0x1D6F,7)
Expand Down Expand Up @@ -2514,11 +2514,8 @@ if ReadByte(Save+0x1D2F) == 8 then
Spawn('Float',0x02,0x134,pi/2) --Sora Rotation Y
Spawn('Float',0x02,0x164,700) --Party 1 Position Z
Spawn('Float',0x02,0x174,pi/2) --Party 1 Rotation Y
if Events(Null,Null,0x00) then --Don't Change Music on Demyx Fight
WriteByte(BGM-4,0x91) --Music Change (Vim & Vigor)
WriteByte(BGM,0x91)
WriteByte(BGM+12,0x91)
end
WriteShort(Sys3+0x0CD10,0x91) --Castle Gate Music: Vim & Vigor (Field)
WriteShort(Sys3+0x0CD12,0x91) --Castle Gate Music: Vim & Vigor (Fight)
end
if Place == 0x1A04 then
WriteInt(Save+0x3544,0x12020100) --Add Goofy
Expand Down Expand Up @@ -3383,29 +3380,10 @@ if ReadByte(Save+0x1CFF) == 13 then --STT Removals
WriteShort(Save+0x24F0,Store) --Change Equipped Keyblade
end
end
if ReadShort(Sys3+0xC0CE) == 0x35 then --STT BGM
local BaseDefaultBGM = Sys3 + 0xC0CC
for i = 0x00,0x29 do
local DefaultBGM = BaseDefaultBGM + 0x40*i
if ReadShort(DefaultBGM+2) == 0x35 then
WriteShort(DefaultBGM+0x0,0x76) --Lazy Afternoons
WriteShort(DefaultBGM+0x2,0x77) --Sinister Sundowns
WriteShort(DefaultBGM+0x4,0x76)
WriteShort(DefaultBGM+0x6,0x77)
WriteShort(DefaultBGM+0x8,0x76)
WriteShort(DefaultBGM+0xA,0x77)
end
end
elseif ReadByte(Save+0x3FF5) == 6 and ReadByte(Save+0x1CFE) == 0 and ReadShort(Sys3+0xC0CC) == 0x76 then --Day 6 & STT Not Cleared
local BaseDefaultBGM = Sys3 + 0xC0CC
for i = 0x00,0x29 do
local DefaultBGM = BaseDefaultBGM + 0x40*i
if ReadShort(DefaultBGM+2) == 0x77 then
WriteShort(DefaultBGM+0x0,0) --Remove Field Music
WriteShort(DefaultBGM+0x4,0)
WriteShort(DefaultBGM+0x8,0)
end
end
if ReadByte(Save+0x3FF5) == 6 and ReadByte(Save+0x1CFE) == 0 then --Day 6 & STT Not Cleared
WriteByte(Save+0x23EE,2) --STT Music: Sinister Sundowns (No Field Music)
else
WriteByte(Save+0x23EE,0) --STT Music: Lazy Afternoons & Sinister Sundowns
end
else --Restore Outside STT
BitOr(Save+0x1CEA,0x01) --TT_ROXAS_END (Play as Sora)
Expand Down Expand Up @@ -3443,20 +3421,7 @@ else --Restore Outside STT
WriteByte(Save+0x35D0,ReadByte(Save+0x35D0)+1)
end
WriteShort(Save+0x1CF9,0) --Remove stored Keyblade
if ReadShort(Sys3+0xC0CE) == 0x77 then --TT BGM
local BaseDefaultBGM = Sys3 + 0xC0CC
for i = 0x00,0x29 do
local DefaultBGM = BaseDefaultBGM + 0x40*i
if ReadShort(DefaultBGM+2) == 0x77 then
WriteShort(DefaultBGM+0x0,0x34) --The Afternoon Streets
WriteShort(DefaultBGM+0x2,0x35) --Working Together
WriteShort(DefaultBGM+0x4,0x34)
WriteShort(DefaultBGM+0x6,0x35)
WriteShort(DefaultBGM+0x8,0x34)
WriteShort(DefaultBGM+0xA,0x35)
end
end
end
WriteByte(Save+0x23EE,1) --TT Music: The Afternoon Streets & Working Together
end
--Faster Twilight Thorn Reaction Commands
if Place == 0x2202 and Events(0x9D,0x9D,0x9D) then
Expand Down
73 changes: 19 additions & 54 deletions GoA RAM.lua
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
--RAM Version
--Last Update: Minor Optimizations
--Last Update: OC Demyx Bugfix, Music Code Optimizations, PC Form Icon with GoA Companion Bugfix

LUAGUI_NAME = 'GoA RAM Randomizer Build'
LUAGUI_AUTH = 'SonicShadowSilver2 (Ported by Num)'
LUAGUI_DESC = 'A GoA build for use with the Randomizer.'

function _OnInit()
local VersionNum = 'GoA Version 1.52.8'
local VersionNum = 'GoA Version 1.52.9'
if (GAME_ID == 0xF266B00B or GAME_ID == 0xFAF99301) and ENGINE_TYPE == "ENGINE" then --PCSX2
if ENGINE_VERSION < 3.0 then
print('LuaEngine is Outdated. Things might not work properly.')
Expand Down Expand Up @@ -336,15 +336,15 @@ if ReadShort(Btl0+0x2EB4C) == 1000 then --MCP Vanilla HP
WriteString(Obj0+0x2C050,'F_EX030_EH')
WriteString(Obj0+0x2C070,'F_EX030.mset')
end
--Change Form's Icons in PC From Analog Stick
if Platform == 1 then
WriteByte(Sys3+0x116DB,0x3B) --Valor
WriteByte(Sys3+0x116F3,0x3B) --Wisdom
WriteByte(Sys3+0x1170B,0x3B) --Limit
WriteByte(Sys3+0x11723,0x3B) --Master
WriteByte(Sys3+0x1173B,0x3B) --Final
WriteByte(Sys3+0x11753,0x3B) --Anti
end
end
--Change Form's Icons in PC From Analog Stick
if Platform == 1 and ReadByte(Sys3+0x116DB) == 0x19 then
WriteByte(Sys3+0x116DB,0x3B) --Valor
WriteByte(Sys3+0x116F3,0x3B) --Wisdom
WriteByte(Sys3+0x1170B,0x3B) --Limit
WriteByte(Sys3+0x11723,0x3B) --Master
WriteByte(Sys3+0x1173B,0x3B) --Final
WriteByte(Sys3+0x11753,0x3B) --Anti
end
--Start New Game 1
if Place == 0x0102 and Events(0x34,0x34,0x34) then --Opening Cutscene
Expand Down Expand Up @@ -1765,7 +1765,7 @@ elseif Place == 0x0106 and Events(Null,Null,0x02) then --The Reunion
WriteByte(Save+0x1D6F,4)
elseif Place == 0x0306 and Events(Null,Null,0x05) then --Arriving in the Underworld
WriteByte(Save+0x1D6F,5)
elseif Place == 0x1106 and Events(Null,Null,0x01) then --Sora and Friends vs. Demyx
elseif Place == 0x1106 and Events(0x7B,0x7B,0x7B) then --Regained Power
WriteByte(Save+0x1D6F,6)
elseif Place == 0x0806 and Events(Null,Null,0x01) then --Presistent Ol' Pete
WriteByte(Save+0x1D6F,7)
Expand Down Expand Up @@ -2531,11 +2531,8 @@ if ReadByte(Save+0x1D2F) == 8 then
Spawn('Float',0x02,0x134,pi/2) --Sora Rotation Y
Spawn('Float',0x02,0x164,700) --Party 1 Position Z
Spawn('Float',0x02,0x174,pi/2) --Party 1 Rotation Y
if Events(Null,Null,0x00) then --Don't Change Music on Demyx Fight
WriteByte(BGM-4,0x91) --Music Change (Vim & Vigor)
WriteByte(BGM,0x91)
WriteByte(BGM+12,0x91)
end
WriteShort(Sys3+0x0CD10,0x91) --Castle Gate Music: Vim & Vigor (Field)
WriteShort(Sys3+0x0CD12,0x91) --Castle Gate Music: Vim & Vigor (Fight)
end
if Place == 0x1A04 then
WriteInt(Save+0x3544,0x12020100) --Add Goofy
Expand Down Expand Up @@ -3427,29 +3424,10 @@ if ReadByte(Save+0x1CFF) == 13 then --STT Removals
WriteShort(Save+0x24F0,Store) --Change Equipped Keyblade
end
end
if ReadShort(Sys3+0xC0CE) == 0x35 then --STT BGM
local BaseDefaultBGM = Sys3 + 0xC0CC
for i = 0x00,0x29 do
local DefaultBGM = BaseDefaultBGM + 0x40*i
if ReadShort(DefaultBGM+2) == 0x35 then
WriteShort(DefaultBGM+0x0,0x76) --Lazy Afternoons
WriteShort(DefaultBGM+0x2,0x77) --Sinister Sundowns
WriteShort(DefaultBGM+0x4,0x76)
WriteShort(DefaultBGM+0x6,0x77)
WriteShort(DefaultBGM+0x8,0x76)
WriteShort(DefaultBGM+0xA,0x77)
end
end
elseif ReadByte(Save+0x3FF5) == 6 and ReadByte(Save+0x1CFE) == 0 and ReadShort(Sys3+0xC0CC) == 0x76 then --Day 6 & STT Not Cleared
local BaseDefaultBGM = Sys3 + 0xC0CC
for i = 0x00,0x29 do
local DefaultBGM = BaseDefaultBGM + 0x40*i
if ReadShort(DefaultBGM+2) == 0x77 then
WriteShort(DefaultBGM+0x0,0) --Remove Field Music
WriteShort(DefaultBGM+0x4,0)
WriteShort(DefaultBGM+0x8,0)
end
end
if ReadByte(Save+0x3FF5) == 6 and ReadByte(Save+0x1CFE) == 0 then --Day 6 & STT Not Cleared
WriteByte(Save+0x23EE,2) --STT Music: Sinister Sundowns (No Field Music)
else
WriteByte(Save+0x23EE,0) --STT Music: Lazy Afternoons & Sinister Sundowns
end
else --Restore Outside STT
BitOr(Save+0x1CEA,0x01) --TT_ROXAS_END (Play as Sora)
Expand Down Expand Up @@ -3487,20 +3465,7 @@ else --Restore Outside STT
WriteByte(Save+0x35D0,ReadByte(Save+0x35D0)+1)
end
WriteShort(Save+0x1CF9,0) --Remove stored Keyblade
if ReadShort(Sys3+0xC0CE) == 0x77 then --TT BGM
local BaseDefaultBGM = Sys3 + 0xC0CC
for i = 0x00,0x29 do
local DefaultBGM = BaseDefaultBGM + 0x40*i
if ReadShort(DefaultBGM+2) == 0x77 then
WriteShort(DefaultBGM+0x0,0x34) --The Afternoon Streets
WriteShort(DefaultBGM+0x2,0x35) --Working Together
WriteShort(DefaultBGM+0x4,0x34)
WriteShort(DefaultBGM+0x6,0x35)
WriteShort(DefaultBGM+0x8,0x34)
WriteShort(DefaultBGM+0xA,0x35)
end
end
end
WriteByte(Save+0x23EE,1) --TT Music: The Afternoon Streets & Working Together
end
--Faster Twilight Thorn Reaction Commands
if Place == 0x2202 and Events(0x9D,0x9D,0x9D) then
Expand Down

0 comments on commit a844453

Please sign in to comment.