This is my script I used to display stuff:
Download dqm2.luaLanguage: lua
memory.usememorydomain("System Bus")
client.SetGameExtraPadding(0, 0, 117, 42)
local dmw2_data = require 'dqm2 data'
local text
local read8
local read16
local read32
local frameadvance
local Addresses = dmw2_data.Addresses
local Monsters = dmw2_data.Monsters
local Item_name = dmw2_data.Items
local Skills = dmw2_data.Skills
local Crit = dmw2_data.Crit
local Map = dmw2_data.Map
local Key = dmw2_data.Key
local RNG_table = dmw2_data.RNG
local Follower_Base = dmw2_data.Follower_Base
function print_instr(Start, End_)
local i = Start
local opcodes = {}
local current_num, current_op
while i < End_ do
current_num = read8(i)
current_op = Gameboy.Opcodes[current_num]
if Gameboy.One[current_num] then
if current_num > 0 then
opcodes[#opcodes+1] = string.format("0x%04X %02X %s",i, read8(i), current_op)
end
i = i + 1
elseif Gameboy.Two[current_num] then
if current_num == 224 then
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X LD (FF00 + %02X), A", i, read8(i), read8(i+1), read8(i+1))
elseif current_num == 240 then
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X LD A, (FF00 + %02X)", i, read8(i), read8(i+1), read8(i+1))
else
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X %s%02X", i, read8(i), read8(i+1), current_op, read8(i+1))
end
i = i + 2
elseif Gameboy.Three[current_num] then
if current_num == 8 then
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X%02X LD (%02X%02X), SP", i, read8(i), read8(i+1), read8(i+2), read8(i+2), read8(i+1))
elseif current_num == 234 then
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X%02X LD (%02X%02X), A", i, read8(i), read8(i+1), read8(i+2), read8(i+2), read8(i+1))
elseif current_num == 250 then
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X%02X LD A, (%02X%02X)", i, read8(i), read8(i+1), read8(i+2), read8(i+2), read8(i+1))
else
opcodes[#opcodes+1] = string.format("0x%04X %02X%02X%02X %s%02X%02X", i, read8(i), read8(i+1), read8(i+2) , current_op, read8(i+2), read8(i+1))
end
i = i + 3
end
end
-- for j = 0, #opcodes do
-- console.log(opcodes[j])
-- end
return opcodes
end
if vba then
text = gui.text
read8 = memory.readbyteunsigned
read16 = memory.readwordunsigned
read32 = memory.readlongunsigned
frameadvance = vba.frameadvance
else
text = gui.pixelText
memory.usememorydomain("System Bus")
read8 = memory.read_u8
read24 = memory.read_u24_le
read16 = memory.read_u16_le
read32 = memory.read_u32_le
frameadvance = emu.frameadvance
console.clear()
end
function display_item()
local item = 0
local item_id = 0
local start = Addresses.Item_start
for i = 0, 100 do
item_id = read8(Addresses.Item_start + i)
item = Item_name[item_id]
if item_id > 0 then
text(1,50 + (7*i), item)
end
end
end
function GetStats(o)
npc1 = {}
npc2 = {}
npc3 = {}
p1 = {}
p2 = {}
p3 = {}
npc1.Level = read8(Addresses.NPC_Battle.Level1)
npc2.Level = read8(Addresses.NPC_Battle.Level2)
npc3.Level = read8(Addresses.NPC_Battle.Level3)
p1.Level = read8(Addresses.Player.Level1)
p2.Level = read8(Addresses.Player.Level2)
p3.Level = read8(Addresses.Player.Level3)
npc1.HP = read16(Addresses.NPC_Battle.HP1)
npc2.HP = read16(Addresses.NPC_Battle.HP2)
npc3.HP = read16(Addresses.NPC_Battle.HP3)
p1.HP = read16(Addresses.Player.HP1)
p2.HP = read16(Addresses.Player.HP2)
p3.HP = read16(Addresses.Player.HP3)
npc1.Max_HP = read16(Addresses.NPC_Battle.Max_HP1)
npc2.Max_HP = read16(Addresses.NPC_Battle.Max_HP2)
npc3.Max_HP = read16(Addresses.NPC_Battle.Max_HP3)
p1.Max_HP = read16(Addresses.Player.Max_HP1)
p2.Max_HP = read16(Addresses.Player.Max_HP2)
p3.Max_HP = read16(Addresses.Player.Max_HP3)
npc1.MP = read16(Addresses.NPC_Battle.MP1)
npc2.MP = read16(Addresses.NPC_Battle.MP2)
npc3.MP = read16(Addresses.NPC_Battle.MP3)
p1.MP = read16(Addresses.Player.MP1)
p2.MP = read16(Addresses.Player.MP2)
p3.MP = read16(Addresses.Player.MP3)
npc1.Max_MP = read16(Addresses.NPC_Battle.Max_MP1)
npc2.Max_MP = read16(Addresses.NPC_Battle.Max_MP2)
npc3.Max_MP = read16(Addresses.NPC_Battle.Max_MP3)
p1.Max_MP = read16(Addresses.Player.Max_MP1)
p2.Max_MP = read16(Addresses.Player.Max_MP2)
p3.Max_MP = read16(Addresses.Player.Max_MP3)
npc1.Attack = read16(Addresses.NPC_Battle.Attack1)
npc2.Attack = read16(Addresses.NPC_Battle.Attack2)
npc3.Attack = read16(Addresses.NPC_Battle.Attack3)
p1.Attack = read16(Addresses.Player.Attack1)
p2.Attack = read16(Addresses.Player.Attack2)
p3.Attack = read16(Addresses.Player.Attack3)
npc1.Defence = read16(Addresses.NPC_Battle.Defence1)
npc2.Defence = read16(Addresses.NPC_Battle.Defence2)
npc3.Defence = read16(Addresses.NPC_Battle.Defence3)
p1.Defence = read16(Addresses.Player.Defence1)
p2.Defence = read16(Addresses.Player.Defence2)
p3.Defence = read16(Addresses.Player.Defence3)
npc1.Agility = read16(Addresses.NPC_Battle.Agility1)
npc2.Agility = read16(Addresses.NPC_Battle.Agility2)
npc3.Agility = read16(Addresses.NPC_Battle.Agility3)
p1.Agility = read16(Addresses.Player.Agility1)
p2.Agility = read16(Addresses.Player.Agility2)
p3.Agility = read16(Addresses.Player.Agility3)
npc1.Intelligence = read16(Addresses.NPC_Battle.Intelligence1)
npc2.Intelligence = read16(Addresses.NPC_Battle.Intelligence2)
npc3.Intelligence = read16(Addresses.NPC_Battle.Intelligence3)
p1.Intelligence = read16(Addresses.Player.Intelligence1)
p2.Intelligence = read16(Addresses.Player.Intelligence2)
p3.Intelligence = read16(Addresses.Player.Intelligence3)
npc1.Wild = read16(Addresses.NPC_Battle.Wild1)
npc2.Wild = read16(Addresses.NPC_Battle.Wild2)
npc3.Wild = read16(Addresses.NPC_Battle.Wild3)
p1.Wild = read16(Addresses.Player.Wild1)
p2.Wild = read16(Addresses.Player.Wild2)
p3.Wild = read16(Addresses.Player.Wild3)
npc1.ID = read16(Addresses.NPC_Battle.ID1)
npc2.ID = read16(Addresses.NPC_Battle.ID2)
npc3.ID = read16(Addresses.NPC_Battle.ID3)
p1.ID = read16(Addresses.Player.ID1)
p2.ID = read16(Addresses.Player.ID2)
p3.ID = read16(Addresses.Player.ID3)
npc1.Skill = read8(Addresses.NPC_Battle.Skill1)
npc2.Skill = read8(Addresses.NPC_Battle.Skill2)
npc3.Skill = read8(Addresses.NPC_Battle.Skill3)
p1.Skill = read8(Addresses.Player.Skill1)
p2.Skill = read8(Addresses.Player.Skill2)
p3.Skill = read8(Addresses.Player.Skill3)
npc1.Target = read8(Addresses.NPC_Battle.Target1)
npc2.Target = read8(Addresses.NPC_Battle.Target2)
npc3.Target = read8(Addresses.NPC_Battle.Target3)
p1.Target = read8(Addresses.Player.Target1)
p2.Target = read8(Addresses.Player.Target2)
p3.Target = read8(Addresses.Player.Target3)
o = {[0] = p1, [1] = p2, [2] = p3, [4] = npc1, [5] = npc2, [6] = npc3}
return o
end
function Get_Follower_Stats(Base)
if Base < 0x203A then --It's still in CartRAM
memory.usememorydomain("CartRAM")
else
memory.usememorydomain("System Bus") --since you're using WRAM as data
end
local o = {}
o.ID = read16(Base + 11)
o.Level = read8(Base + 86)
o.Exp = read24(Base + 88)
o.HP = read16(Base + 91)
o.Max_HP = read16(Base + 93)
o.MP = read16(Base + 95)
o.Max_MP = read16(Base + 97)
o.Attack = read16(Base + 99)
o.Defence = read16(Base + 101)
o.Agility = read16(Base + 103)
o.Intelligence = read16(Base + 105)
o.Wild = read16(Base + 107)
memory.usememorydomain("System Bus") --set this back
return o
end
local target = {[0] = "P1", "P2", "P3", "None", "NPC1", "NPC2", "NPC3"}
local xp = {
[9] = 89, --PearlGel
[10] = 9, --Slime
[11] = 102, --Healer
[80] = 27, --Anteater
[147] = 28, --Toadstool
[316] = 148, --Petiteel
[321] = 99, --Aquarella
[322] = 155, --Merman
[323] = 93, --Octokid
[325] = 102, --Octoreach
[332] = 111, --RougeWave
[372] = 59630 --Darck
}
function display_crit(turns)
local color = "white"
local turn_index = read8(Addresses.Turn_index)
local rng2 = read8(Addresses.RNG2)
local text_x, text_y = 245, 0
text(text_x, text_y, "V: Crit:")
local l_Crit = Crit
if turns[turn_index+1] == 10 then
--Hacky way to show Slime gets crit at these values
l_Crit[25] = 128
l_Crit[32] = 128
l_Crit[74] = 128
l_Crit[76] = 128
elseif turns[turn_index+1] == 0 then
l_Crit[25] = 0
l_Crit[32] = 0
l_Crit[74] = 0
l_Crit[76] = 0
else
l_Crit[25] = 0
l_Crit[32] = 0
end
local extra_rows = 157 --I want it to loop around to 0 after 127 without cutoff
for i = rng2, extra_rows do
if l_Crit[(rng2+(extra_rows-i)) % 128] == 128 then
l_string = "Yes"
color = "green"
else
l_string = "No"
color = "white"
end
text(text_x,text_y+7*(extra_rows-i+1), (rng2+(extra_rows-i)) % 128 .." "..l_string, color)
--I want to loop over
-- text(200,text_y+7*(i/rng2), rng2) --cool effect lmao
end
end
function display_recruit()
local text_x, text_y = 0, 151
local id = 0
local color = "white"
local index = 0
local amount = 0
--I loop 11 times
--technically there's 30 slots, but the run doesnt even get that much
--165 is A4, size of data struct
for i = 0, 0x860, 165 do
if read8(i,"CartRAM") > 0 then --monster exist. 1 farm 2 following
id = read16(i+ 11,"CartRAM")
index = (i/165) --so I can keep track where I am in terms of 1,2,3...
if read8(i,"CartRAM") == 1 then color = "white" else color = "green" end
if Monsters[id] ~= nil then
if amount < 5 then
text(text_x, text_y+7*amount, "(" .. id .. ") " .. Monsters[id], color)
else
text(63, 151+7*(amount-5), "(" .. id .. ") " .. Monsters[id], color)
end
end
amount = amount + 1
end
end
text(text_x, 144, "Monsters:" .. amount)
end
--[[
]]--
function display_followers()
local text_x, text_y = 160, 0
local id = 0
local color = "white"
local following = read8(Addresses.Followers) < 4 and read8(Addresses.Followers) or 0 --how many are following me
local follower = {}
--[[
1. Loop through follower index
2. I have base addresses already. If I have over 49, then its WRAM
3.
--]]
for i = 1, following do
if Follower_Base[read8(Addresses.Followers+i)] ~= nil then
follower = Get_Follower_Stats(Follower_Base[read8(Addresses.Followers+i)])
if Monsters[follower.ID] ~= nil then
text(text_x, (text_y + 42*(i-1)), Monsters[follower.ID] .. " (" .. follower.ID .. ") LV:" .. follower.Level)
else
text(text_x, (text_y + 42*(i-1)), read8(Addresses.Followers+i) .. " (" .. follower.ID .. ") LV:" .. follower.Level)
end
text(text_x, (text_y + 42*(i-1))+7, "HP:" .. follower.HP .. "/" .. follower.Max_HP .. " MP:" .. follower.MP .. "/" .. follower.Max_MP)
text(text_x, (text_y + 42*(i-1))+7*2, "ATK:" .. follower.Attack .. " DEF:" .. follower.Defence)
text(text_x, (text_y + 42*(i-1))+7*3, "AGL:" .. follower.Agility .. " INT:" .. follower.Intelligence)
text(text_x, (text_y + 42*(i-1))+7*4, "EXP:" .. follower.Exp .. " WLD:" .. follower.Wild)
end
end
end
function display_battle(state)
--[[Target
0 P1
1 P2
2 P3
3 None
4 NPC1
5 NPC1
6 NPC1
]]--
local amount = read8(Addresses.NPC_Battle.Amount)
local monsters = GetStats(monsters)
local npcs = {monsters[4], monsters[5], monsters[6]}
local followers = {monsters[0], monsters[1], monsters[2]}
local follower_1 = read8(Addresses.Follower_index_1)
local text_x, text_y = 160, 0
local l_string = ""
local target_string = {}
local damage = read16(Addresses.Damage_done)
local dead = 0 --because display for turn is state 3 for 1 frame at end
-- text(0,178,"Damage:"..damage)
for i = 1, amount do
if (Monsters[npcs[i].ID] == nil) then
l_string = " (" .. npcs[i].ID .. ")"
else
l_string = Monsters[npcs[i].ID] .. " (" .. npcs[i].ID .. ") LV:" .. npcs[i].Level
end
text(text_x, (text_y + 34*(i-1)), l_string)
text(text_x, (text_y + 34*(i-1))+7, "HP:" .. npcs[i].HP .. "/" .. npcs[i].Max_HP .. " MP:" .. npcs[i].MP .. "/" .. npcs[i].Max_MP)
text(text_x, (text_y + 34*(i-1))+7*2, "ATK:" .. npcs[i].Attack .. " DEF:" .. npcs[i].Defence)
text(text_x, (text_y + 34*(i-1))+7*3, "AGL:" .. npcs[i].Agility .. " INT:" .. npcs[i].Intelligence)
if npcs[i].HP == 0 then
dead = dead + 1
end
end
if follower_1 == 110 then
local accum_xp = 0
for i = 1, 3 do
-- if npcs[i].Target < 7 then
-- target_string[#target_string+1] = "NPC" .. i .. " used " .. Skills[npcs[i].Skill].name .. " against " .. target[npcs[i].Target]
-- end
if xp[npcs[i].ID] ~= nil then
accum_xp = accum_xp + xp[npcs[i].ID]
end
end
local xp_now = read24(0xE73E) --my xp
text(text_x, 100, "XP: " .. accum_xp)
text(text_x, 107, "Current: " .. xp_now)
text(text_x, 114, "Left: " .. 0x600 - xp_now % 16777215)
text(text_x, 121, string.format("Fights: %0.3f",(0x600 - xp_now % 16777215-accum_xp)/384)) --0x600/4
end
text_y = 144
--[[
Get turn order
D895-D89A Are the indices from which turn is item
0 - follower 1
1 - follower 2
2 - follower 3
3 - ??
4 - npc 1
5 - npc 2
6 - npc 3
D89E is the index of above; that's how you see current turn; 0 index is D895
Check if current monster exists
Check if current monster has a real target
--]]
local turns = {} --for crit display, gets a list of ids corresponding to the turn
for i = 0, 6 do
local current_monster = read8(Addresses.Turn_1+i)
if monsters[current_monster] ~= nil then --should be same indices as above
if monsters[current_monster].Target < 7 then --check if the target index is valid
target_string[#target_string+1] = target[current_monster] .. " used " .. Skills[monsters[current_monster].Skill].name .. " against " .. target[monsters[current_monster].Target]
turns[#turns+1] = monsters[current_monster].ID
end
end
end
local turn_index = read8(Addresses.Turn_index)
if state == 3 and dead ~= amount then --so it won't give me P1 used default against P1 spam
for i = 1, #target_string do
if turn_index == i-1 then color = "green" else color = "white" end
text(0, text_y+(7*(i-1)),target_string[i], color)
end
end
display_crit(turns)
end
function detect_region()
if read8(0xF, "ROM") ~= 0 then return "J" else return "U"
end
end
while true do
local text_x = 160
local text_y = 144
local version = detect_region()
local encounter = 0
local rng = 0
local battle_state_2 = 0
local xp_now = read24(0xE73E) --my xp
local key = read8(0xE73F)
local follower_1 = read8(Addresses.Follower_index_1)
if version == "U" then
encounter = read8(Addresses.Encounter_timer_U)
rng = read16(Addresses.RNG_U)
battle_state_2 = read8(Addresses.Battle_State_2_U)
else
encounter = read8(Addresses.Encounter_timer_J)
rng = read16(Addresses.RNG_J)
battle_state_2 = read8(Addresses.Battle_State_2_J)
end
local crit_timer = read8(Addresses.RNG2)
local line = "RNG:"..("%04X"):format(rng)
line = RNG_table[rng] ~= nil and line.." Calls:"..RNG_table[rng] or line
map = read8(Addresses.Map_ID) --マップID
map_x = read8(Addresses.Map_X) --マップXID
map_y = read8(Addresses.Map_Y) --マップyID
crit = read8(Addresses.Crit)
game_state = read8(Addresses.Game_State)
-- minutes = read8(Addresses.Minutes)
-- frame = read8(Addresses.Frame)
-- local reg = emu.getregisters()
x = read8(Addresses.X) --x座標
y = read8(Addresses.Y) --y座標
-- local opcodes = print_instr(0xD5E1, 0xDa00)
-- for i = 0,#opcodes do
-- text(0, 57 + 7 * (i), opcodes[i])
-- end
-- text(0,60,string.format("H:%02X L:%02X", reg.H, reg.L))
-- text(1, 50, "M:"..minutes.." F:"..frame)
text(text_x, text_y-7, Map[map])
text(text_x, text_y, string.format("MAPID:%d X:%d Y:%d",map,map_x,map_y))
text(text_x, text_y+7, "X: " .. x .. "Y: ".. y)
-- text(text_x, text_y+7*2, "X: " .. math.floor(x/16) .. "Y: ".. math.floor(y/16))
text(text_x, text_y+7*2, "Encounter: " .. encounter)
text(text_x, text_y+7*3, "Crit timer: " .. crit_timer)
text(text_x, text_y+7*4, line)
if game_state < 4 then
display_recruit()
display_followers()
if follower_1 == 110 then --it means we're going to mess with keys
if Key[key] ~= nil then
text(text_x, 100, "Key:" .. Key[key])
else
text(text_x, 100, "Key:" .. key)
end
text(text_x, 107, "Current: " .. xp_now)
text(text_x, 114, "Left: " .. 0x600 - xp_now % 16777215)
end
end
if game_state == 4 then
display_battle(battle_state_2, monsters)
end
frameadvance()
end
This is the module I used to store all the addresses:
Download dqm2 data.luaLanguage: lua
local dragon_warrior_monsters_2_module = {}
dragon_warrior_monsters_2_module.Addresses = {
Game_State = 0xC5DB,
Battle_State_1_J = 0xCFA5,
Battle_State_2_J = 0xCFA6,
Battle_State_1_U = 0xCFC8,
Battle_State_2_U = 0xCFC9,
RNG_J = 0xCCE0,
RNG_U = 0xCD03,
RNG2 = 0xC5E8, --??? but related to critical
Frame = 0xC5F0,
Money = 0xC617,
Item_start = 0xC61D,
-- Minutes = 0xC618,
Hours = 0xC630,
Followers = 0xC6FD, --how many npcs are following you
Follower_index_1 = 0xC6FE,
Follower_index_2 = 0xC6FF,
Follower_index_3 = 0xC700,
Encounter_timer_J = 0xC8DF,
Encounter_timer_U = 0xC902,
Crit = 0xD80E,
Crit2 = 0xD820,
Damage_done = 0xD872,
Turn_1 = 0xD895,
Turn_2 = 0xD896,
Turn_3 = 0xD897,
Turn_4 = 0xD898,
Turn_5 = 0xD899,
Turn_6 = 0xD89A,
Turn_7 = 0xD89B,
Turn_8 = 0xD89C,
Turn_9 = 0xD89D,
Turn_index = 0xD89E,
Join = 0xD8A1,
Current_turn = 0xD8A4,
Current_target = 0xD8A5,
Current_skill = 0xD8A6,
Miss = 0xDAC0,
X = 0xFF8E,
Map_X = 0xFF8F,
Y = 0xFF91,
Map_Y = 0xFF92,
Map_ID = 0xFF90,
--all 2 bytes, even the IDs
Player = {
-- ID1 = 0xD006,
-- ID1 = 0xD008,
-- ID1 = 0xD00A,
ID1 = 0xD958,
ID2 = 0xD95A,
ID3 = 0xD95C,
Name1 = 0xD0D0,
Name2 = 0xD123,
Name3 = 0xD172,
PowerUP1 = 0xD854,
PowerUP2 = 0xD856,
PowerUP3 = 0xD858,
Level1 = 0xD8B7,
Level2 = 0xD8B8,
Level3 = 0xD8B9,
HP1 = 0xD8BF,
HP2 = 0xD8C1,
HP3 = 0xD8C3,
Max_HP1 = 0xD8CF,
Max_HP2 = 0xD8D1,
Max_HP3 = 0xD8D3,
MP1 = 0xD8DF,
MP2 = 0xD8E1,
MP3 = 0xD8E3,
Max_MP1 = 0xD8EF,
Max_MP2 = 0xD8F1,
Max_MP3 = 0xD8F3,
Attack1 = 0xD8FF,
Attack2 = 0xD901,
Attack3 = 0xD903,
Defence1 = 0xD90F,
Defence2 = 0xD911,
Defence3 = 0xD913,
Agility1 = 0xD91F,
Agility2 = 0xD921,
Agility3 = 0xD923,
Intelligence1 = 0xD92F,
Intelligence2 = 0xD931,
Intelligence3 = 0xD933,
Wild1 = 0xD93F,
Wild2 = 0xD941,
Wild3 = 0xD943,
Skill1 = 0xDA1C, --move I use
Target1 = 0xDA1D,
Skill2 = 0xDA1E, --move I use
Target2 = 0xDA1F,
Skill3 = 0xDA20, --move I use
Target3 = 0xDA21
},
--When they join
NPC = {
ID1 = 0xD1C9,
ID2 = 0xD217,
ID3 = 0xD265,
Gender1 = 0xD1CC,
Level1 = 0xD1D6
},
--When they fight
NPC_Battle = {
-- Amount = 0xCFDC,
Amount = 0xD890,
Level1 = 0xD8BB,
Level2 = 0xD8BC,
Level3 = 0xD8BD,
PowerUP1 = 0xD85C,
PowerUP2 = 0xD85E,
PowerUP3 = 0xD860,
HP1 = 0xD8C7,
HP2 = 0xD8C9,
HP3 = 0xD8CB,
Max_HP1 = 0xD8D7,
Max_HP2 = 0xD8D9,
Max_HP3 = 0xD8DB,
MP1 = 0xD8E7,
MP2 = 0xD8E9,
MP3 = 0xD8EB,
Max_MP1 = 0xD8F7,
Max_MP2 = 0xD8F9,
Max_MP3 = 0xD8FB,
Attack1 = 0xD907,
Attack2 = 0xD909,
Attack3 = 0xD90B,
Defence1 = 0xD917,
Defence2 = 0xD919,
Defence3 = 0xD91B,
Agility1 = 0xD927,
Agility2 = 0xD929,
Agility3 = 0xD92B,
Intelligence1 = 0xD937,
Intelligence2 = 0xD939,
Intelligence3 = 0xD93B,
Wild1 = 0xD947,
Wild2 = 0xD949,
Wild3 = 0xD94B,
ID1 = 0xD960,
ID2 = 0xD962,
ID3 = 0xD964,
Skill1 = 0xDA24, --Move they use in fight
Target1 = 0xDA25, --Who they attack in fight
Skill2 = 0xDA26, --Move they use in fight
Target2 = 0xDA27, --Move they use in fight
Skill3 = 0xDA28, --Move they use in fight
Target3 = 0xDA29, --Move they use in fight
}
}
dragon_warrior_monsters_2_module.Items = {
[0] = "No Items",
[1] = "Herb",
[2] = "Love Water",
[3] = "World Dew",
[4] = "Potion",
[5] = "Elf Water",
[6] = "Antidote",
[7] = "Moon Herb",
[8] = "Laurel",
[9] = "Awake Sand",
[10] = "Sky Bell",
[11] = "Sage Rock",
[12] = "World Leaf",
[13] = "ATK Seed",
[14] = "DEF Seed",
[15] = "AGL Seed",
[17] = "Life Acorn",
[18] = "Mystic Nut",
[19] = "Quest Book",
[20] = "Horror Book",
[21] = "Be Nice Book",
[22] = "Cheater Book",
[23] = "Smart Book",
[24] = "Comedy Book",
[25] = "Beef Jerky",
[26] = "Pork Chop",
[27] = "Rib",
[28] = "Sirloin",
[29] = "Bad Meat",
[30] = "MeteOrb",
[31] = "Beast Tail",
[32] = "Repellent",
[33] = "Shiny Harp",
[34] = "Mist Staff",
[35] = "Friend Staff",
[36] = "Wind Staff",
[37] = "Bolt Staff",
[38] = "Snow Staff",
[39] = "Fire Staff",
[40] = "Warp Staff",
[41] = "Warp Wing",
[42] = "Exit Bell",
[43] = "Book Mark",
[44] = "Tiny Medal",
[45] = "Gold Pass",
[46] = "Log Twig",
[47] = "Strange Blank Item",
[48] = "Water Call",
[49] = "Moon Rock",
[50] = "Crest",
[51] = "Yuna Soul",
[52] = "Sleep Herb",
[53] = "Change Staff",
[54] = "Tidal Bell",
[55] = "Har Mirror",
[56] = "Sky Shield",
[57] = "Heaven Helmet",
[58] = "Heaven Armor",
[59] = "Heaven Sword",
[60] = "Wiz Stone",
[61] = "Pretty Ring",
[62] = "VIT Belt",
[63] = "VIT Belt",
[64] = "VIT Belt",
[65] = "Draco Belt",
[66] = "Magic Belt",
[67] = "Odd Belt",
[68] = "Stone Fang",
[69] = "Steel Fang",
[70] = "Merm Scale",
[71] = "Drak Scale",
[72] = "AGL Ring",
[73] = "Starry Ring",
[74] = "Smart Hat",
[75] = "Wise Hat",
[76] = "Magic Cape",
[77] = "Draco Cape",
[78] = "Silver Cape",
[79] = "Gold Cape",
[80] = "Plntnm Cape",
[81] = "Orca Cape",
[82] = "Brave Cape",
[83] = "D-Scale",
[84] = "None",
[85] = "None 2 Glitch Item",
[86] = "None 3 Glitch Item",
[87] = "None 4 Glitch Item",
[88] = "None 5 Glitch Item",
[89] = "None 6 Glitch Item",
[90] = "Life Ring",
[91] = "Divine Ring",
[92] = "War Ring",
[93] = "Mage Ring",
[94] = "Fight Ring",
[95] = "Sailor Ring",
[96] = "Thief Ring",
[97] = "Cleric Ring"
}
dragon_warrior_monsters_2_module.Monsters = {
[0] = " ",
[1] = "DrakSlime",
[2] = "SpotSlime",
[3] = "WingSlime",
[4] = "TreeSlime",
[5] = "Snaily",
[6] = "SlimeNite",
[7] = "Babble",
[8] = "BoxSlime",
[9] = "PearlGel",
[10] = "Slime",
[11] = "Healer",
[12] = "FangSlime",
[13] = "RockSlime",
[14] = "SlimeBorg",
[15] = "Slabbit",
[16] = "KingSlime",
[17] = "Metaly",
[18] = "Metabble",
[19] = "SpotKing",
[20] = "TropicGel",
[21] = "MimeSlime",
[22] = "HaloSlime",
[23] = "MetalKing",
[24] = "GoldSlime",
[25] = "GranSlime",
[26] = "WonderEgg",
[27] = "Butch",
[28] = "?",
[29] = "?",
[30] = "?",
[31] = "?",
[32] = "?",
[33] = "?",
[34] = "?",
[35] = "?",
[36] = "DragonKid",
[37] = "Tortragon",
[38] = "Pteranod",
[39] = "Gasgon",
[40] = "FairyDrak",
[41] = "LizardMan",
[42] = "Poisongon",
[43] = "Swordgon",
[44] = "Drygon",
[45] = "Dragon",
[46] = "MiniDrak",
[47] = "MadDragon",
[48] = "Rayburn",
[49] = "Chamelgon",
[50] = "LizardFly",
[51] = "Andreal",
[52] = "KingCobra",
[53] = "Vampirus",
[54] = "SnakeBat",
[55] = "Spikerous",
[56] = "GreatDrak",
[57] = "Crestpent",
[58] = "WingSnake",
[59] = "Coatol",
[60] = "Orochi",
[61] = "BattleRex",
[62] = "SkyDragon",
[63] = "Serpentia",
[64] = "Divinegon",
[65] = "Orligon",
[66] = "GigaDraco",
[67] = "?",
[68] = "?",
[69] = "?",
[70] = "?",
[71] = "Tonguella",
[72] = "Almiraj",
[73] = "Catfly",
[74] = "PillowRat",
[75] = "Saccer",
[76] = "GulpBeast",
[77] = "Skullroo",
[78] = "WindBeast",
[79] = "Beavern",
[80] = "Anteater",
[81] = "SuperTen",
[82] = "IronTurt",
[83] = "Mommonja",
[84] = "HammerMan",
[85] = "Grizzly",
[86] = "Yeti",
[87] = "ArrowDog",
[88] = "NoctoKing",
[89] = "BeastNite",
[90] = "MadGopher",
[91] = "FairyRat",
[92] = "Unicorn",
[93] = "Goategon",
[94] = "WildApe",
[95] = "Trumpeter",
[96] = "KingLeo",
[97] = "DarkHorn",
[98] = "MadCat",
[99] = "BigEye",
[100] = "Gorago",
[101] = "CatMage",
[102] = "Dumbira",
[103] = "?",
[104] = "?",
[105] = "?",
[106] = "Picky",
[107] = "Wyvern",
[108] = "BullBird",
[109] = "FloraJay",
[110] = "DuckKite",
[111] = "MadPecker",
[112] = "MadRaven",
[113] = "MistyWing",
[114] = "AquaHawk",
[115] = "Dracky",
[116] = "KiteHawk",
[117] = "BigRoost",
[118] = "StubBird",
[119] = "LandOwl",
[120] = "MadGoose",
[121] = "MadCondor",
[122] = "Emyu",
[123] = "Blizzardy",
[124] = "Phoenix",
[125] = "ZapBird",
[126] = "Garudian",
[127] = "WhipBird",
[128] = "FunkyBird",
[129] = "RainHawk",
[130] = "Azurile",
[131] = "Shantak",
[132] = "CragDevil",
[133] = "?",
[134] = "?",
[135] = "?",
[136] = "?",
[137] = "?",
[138] = "?",
[139] = "?",
[140] = "?",
[141] = "MadPlant",
[142] = "FireWeed",
[143] = "FloraMan",
[144] = "WingTree",
[145] = "CactiBall",
[146] = "Gulpple",
[147] = "Toadstool",
[148] = "AmberWeed",
[149] = "Slurperon",
[150] = "StubSuck",
[151] = "Oniono",
[152] = "DanceVegi",
[153] = "TreeBoy",
[154] = "Devipine",
[155] = "FaceTree",
[156] = "HerbMan",
[157] = "BeanMan",
[158] = "EvilSeed",
[159] = "ManEater",
[160] = "Snapper",
[161] = "GhosTree",
[162] = "Rosevine",
[163] = "Egdracil",
[164] = "Warubou",
[165] = "Watabou",
[166] = "Eggplaton",
[167] = "FooHero",
[168] = "?",
[169] = "?",
[170] = "?",
[171] = "?",
[172] = "?",
[173] = "?",
[174] = "?",
[175] = "?",
[176] = "GiantSlug",
[177] = "Catapila",
[178] = "Gophecada ",
[179] = "Butterfly",
[180] = "WeedBug",
[181] = "GiantWorm",
[182] = "Lipsy",
[183] = "StagBug",
[184] = "Pyuro",
[185] = "ArmyAnt",
[186] = "GoHopper",
[187] = "TailEater",
[188] = "ArmorPede",
[189] = "Eyeder",
[190] = "GiantMoth",
[191] = "Droll",
[192] = "ArmyCrab",
[193] = "MadHornet",
[194] = "Belzebub",
[195] = "WarMantis",
[196] = "HornBeet",
[197] = "Sickler",
[198] = "Armorpion",
[199] = "Digster",
[200] = "Skularach",
[201] = "MultiEyes",
[202] = "?",
[203] = "?",
[204] = "?",
[205] = "?",
[206] = "?",
[207] = "?",
[208] = "?",
[209] = "?",
[210] = "?",
[211] = "Pixy",
[212] = "MedusaEye",
[213] = "AgDevil",
[214] = "Demonite",
[215] = "DarkEye",
[216] = "EyeBall",
[217] = "SkulRider",
[218] = "EvilBeast",
[219] = "Bubblemon",
[220] = "1EyeClown",
[221] = "Gremlin",
[222] = "ArcDemon",
[223] = "Lionex",
[224] = "GoatHorn",
[225] = "Orc",
[226] = "Ogre",
[227] = "GateGuard",
[228] = "ChopClown",
[229] = "BossTroll",
[230] = "Grendal",
[231] = "Akubar",
[232] = "MadKnight",
[233] = "EvilWell",
[234] = "Gigantes",
[235] = "Centasaur",
[236] = "EvilArmor",
[237] = "Jamirus",
[238] = "Durran",
[239] = "Titanis",
[240] = "LampGenie",
[241] = "?",
[242] = "?",
[243] = "?",
[244] = "?",
[245] = "?",
[246] = "Spooky",
[247] = "Skullgon",
[248] = "Putrepup",
[249] = "PotRaven",
[250] = "Mummy",
[251] = "DarkCrab",
[252] = "DeadNite",
[253] = "Shadow",
[254] = "Skulpent",
[255] = "Hork",
[256] = "Mudron",
[257] = "NiteWhip",
[258] = "WindMerge",
[259] = "Reaper",
[260] = "Inverzon",
[261] = "FoxFire",
[262] = "CaptDead",
[263] = "DeadNoble",
[264] = "WhiteKing",
[265] = "BoneSlave",
[266] = "Skeletor",
[267] = "Servant",
[268] = "Lazamanus",
[269] = "Copycat",
[270] = "MadSpirit",
[271] = "PomPomBom",
[272] = "Niterich",
[273] = "?",
[274] = "?",
[275] = "?",
[276] = "?",
[277] = "?",
[278] = "?",
[279] = "?",
[280] = "?",
[281] = "JewelBag",
[282] = "EvilWand",
[283] = "MadCandle",
[284] = "CoilBird",
[285] = "Facer",
[286] = "SpikyBoy",
[287] = "MadMirror",
[288] = "RogueNite",
[289] = "Puppetor",
[290] = "Goopi",
[291] = "Voodoll",
[292] = "MetalDrak",
[293] = "Balzak",
[294] = "SabreMan",
[295] = "CurseLamp",
[296] = "Brushead",
[297] = "Roboster",
[298] = "Roboster2",
[299] = "EvilPot",
[300] = "Gismo",
[301] = "LavaMan",
[302] = "IceMan",
[303] = "Mimic",
[304] = "Exaucers",
[305] = "MudDoll",
[306] = "Golem",
[307] = "StoneMan",
[308] = "BombCrag",
[309] = "GoldGolem",
[310] = "DarkMate",
[311] = "ProtoMech",
[312] = "CloudKing",
[313] = "?",
[314] = "?",
[315] = "?",
[316] = "Petiteel",
[317] = "Moray",
[318] = "WalrusMan",
[319] = "RayGigas",
[320] = "Anemon",
[321] = "Aquarella",
[322] = "Merman",
[323] = "Octokid",
[324] = "PutreFish",
[325] = "Octoreach",
[326] = "Angleron",
[327] = "FishRider",
[328] = "RushFish",
[329] = "Gamanian ",
[330] = "Clawster",
[331] = "CancerMan",
[332] = "RogueWave",
[333] = "Scallopa",
[334] = "SeaHorse",
[335] = "HoodSquid",
[336] = "MerTiger",
[337] = "AxeShark",
[338] = "Octogon",
[339] = "KingSquid",
[340] = "Digong",
[341] = "WhaleMage",
[342] = "Aquadon",
[343] = "Octoraid",
[344] = "Grakos",
[345] = "Poseidon",
[346] = "Pumpoise",
[347] = "Starfish",
[348] = "?",
[349] = "?",
[350] = "?",
[351] = "DracoLord",
[352] = "DracoLord1",
[353] = "LordDraco",
[354] = "Hargon",
[355] = "Sidoh",
[356] = "Genosidoh",
[357] = "Baramos",
[358] = "Zoma",
[359] = "AsuraZoma",
[360] = "Pizzaro",
[361] = "PsychoPiz",
[362] = "Esterk",
[363] = "Mirudraas1",
[364] = "Mirudraas2",
[365] = "Mudou",
[366] = "DeathMore1",
[367] = "DeathMore2",
[368] = "DeathMore3",
[369] = "DarkDrium",
[370] = "Orgodemir",
[371] = "Orgodemir2",
[372] = "Darck",
[373] = "Lamia",
[374] = "Tatsu",
[375] = "Samsi",
[376] = "Bazoo",
[377] = "?",
[378] = "?",
[379] = "?",
[380] = "Lamia",
[381] = "Dimensaur",
[382] = "Kagebou"
}
dragon_warrior_monsters_2_module.Skills = {
[0] = {name = "default attack", mp = 0},
[1] = {name = "Blaze", mp = 2},
[2] = {name = "Blazemore", mp = 4},
[3] = {name = "Blazemost", mp = 10},
[4] = {name = "Firebal", mp = 4},
[5] = {name = "Firebane", mp = 6},
[6] = {name = "Firebolt", mp = 10},
[7] = {name = "Bang", mp = 5},
[8] = {name = "Boom", mp = 8},
[9] = {name = "Explodet", mp = 15},
[10] = {name = "Infernos", mp = 2},
[11] = {name = "Infermore", mp = 4},
[12] = {name = "Infermost", mp = 8},
[13] = {name = "Bolt", mp = 5},
[14] = {name = "Zap", mp = 10},
[15] = {name = "Thordain", mp = 15},
[16] = {name = "IceBolt", mp = 3},
[17] = {name = "SnowStorm", mp = 5},
[18] = {name = "Blizzard", mp = 12},
[19] = {name = "Beat", mp = 4},
[20] = {name = "Defeat", mp = 7},
[21] = {name = "Sacrifice", mp = 1},
[22] = {name = "Heal", mp = 2},
[23] = {name = "HealMore", mp = 5},
[24] = {name = "HealAll", mp = 7},
[25] = {name = "HealUs", mp = 18},
[26] = {name = "HealUsAll", mp = 36},
[27] = {name = "MPass", mp = 20},
[28] = {name = "MPassmore", mp = 40},
[29] = {name = "MPassmost", mp = 100},
[30] = {name = "Vivify", mp = 10},
[31] = {name = "Revive", mp = 20},
[32] = {name = "Farewell", mp = 0},
[33] = {name = "Antidote", mp = 2},
[34] = {name = "DeChaos", mp = 2},
[35] = {name = "NumbOff", mp = 2},
[36] = {name = "CurseOff", mp = 2},
[37] = {name = "Upper", mp = 2},
[38] = {name = "Increase", mp = 3},
[39] = {name = "Sap", mp = 3},
[40] = {name = "Defense", mp = 4},
[41] = {name = "Speed", mp = 2},
[42] = {name = "SpeedUp", mp = 3},
[43] = {name = "Slow", mp = 3},
[44] = {name = "SlowAll", mp = 4},
[45] = {name = "TwinHits", mp = 6},
[46] = {name = "Surround", mp = 3},
[47] = {name = "Sleep", mp = 3},
[48] = {name = "SleepAll", mp = 5},
[49] = {name = "TakeMagic", mp = 2},
[50] = {name = "RobMagic", mp = 0},
[51] = {name = "StopSpell", mp = 3},
[52] = {name = "PanicAll", mp = 5},
[53] = {name = "Ironize", mp = 2},
[54] = {name = "MagicBack", mp = 4},
[55] = {name = "Bounce", mp = 4},
[56] = {name = "Barrier", mp = 3},
[57] = {name = "MagicWall", mp = 3},
[58] = {name = "Transform", mp = 5},
[59] = {name = "BeDragon", mp = 9},
[60] = {name = "Chance", mp = 20},
[61] = {name = "MegaMagic", mp = 0},
[62] = {name = "BigBang", mp = 30},
[63] = {name = "Hellblast", mp = 25},
[64] = {name = "FireAir", mp = 2},
[65] = {name = "BlazeAir", mp = 4},
[66] = {name = "Scorching", mp = 8},
[67] = {name = "WhiteFire", mp = 16},
[68] = {name = "FrigidAir", mp = 2},
[69] = {name = "IceAir", mp = 4},
[70] = {name = "IceStorm", mp = 8},
[71] = {name = "WhiteAir", mp = 16},
[72] = {name = "WindBeast", mp = 3},
[73] = {name = "Vacuum", mp = 6},
[74] = {name = "Lightning", mp = 3},
[75] = {name = "RockThrow", mp = 5},
[76] = {name = "Watershot", mp = 5},
[77] = {name = "Tidalwave", mp = 15},
[78] = {name = "CallHelp", mp = 4},
[79] = {name = "YellHelp", mp = 8},
[80] = {name = "FireSlash", mp = 3},
[81] = {name = "VacuSlash", mp = 3},
[82] = {name = "BoltSlash", mp = 3},
[83] = {name = "IceSlash", mp = 3},
[84] = {name = "SlimeBlow", mp = 3},
[85] = {name = "DrakSlash", mp = 3},
[86] = {name = "BeastCut", mp = 3},
[87] = {name = "BirdBlow", mp = 3},
[88] = {name = "BugBlow", mp = 3},
[89] = {name = "Shears", mp = 3},
[90] = {name = "DevilCut", mp = 3},
[91] = {name = "ZombieCut", mp = 3},
[92] = {name = "CleanCut", mp = 3},
[93] = {name = "AquaCut", mp = 3},
[94] = {name = "MetalCut", mp = 3},
[95] = {name = "PoisonHit", mp = 2},
[96] = {name = "Paralyze", mp = 3},
[97] = {name = "NapAttack", mp = 2},
[98] = {name = "SquallHit", mp = 2},
[99] = {name = "BiAttack", mp = 3},
[100] = {name = "QuadHits", mp = 6},
[101] = {name = "RainSlash", mp = 5},
[102] = {name = "MultiCut", mp = 20},
[103] = {name = "GigaSlash", mp = 20},
[104] = {name = "ChargeUp", mp = 0},
[105] = {name = "PsycheUp", mp = 3},
[106] = {name = "HighJump", mp = 5},
[107] = {name = "EvilSlash", mp = 3},
[108] = {name = "Massacre", mp = 3},
[109] = {name = "TwinSlash", mp = 2},
[110] = {name = "Beserker", mp = 1},
[111] = {name = "Ramming", mp = 1},
[112] = {name = "Kamikaze", mp = 1},
[113] = {name = "SleepAir", mp = 3},
[114] = {name = "PalsyAir", mp = 4},
[115] = {name = "PoisonGas", mp = 3},
[116] = {name = "PoisonAir", mp = 4},
[117] = {name = "Curse", mp = 3},
[118] = {name = "OddDance", mp = 0},
[119] = {name = "RobDance", mp = 0},
[120] = {name = "PaniDance", mp = 4},
[121] = {name = "K.O.Dance", mp = 6},
[122] = {name = "LureDance", mp = 2},
[123] = {name = "LifeDance", mp = 0},
[124] = {name = "Hustle", mp = 12},
[125] = {name = "SideStep", mp = 1},
[126] = {name = "SandStorm", mp = 2},
[127] = {name = "Radiant", mp = 2},
[128] = {name = "EerieLite", mp = 2},
[129] = {name = "Surge", mp = 7},
[130] = {name = "UltraDown", mp = 7},
[131] = {name = "DeMagic", mp = 7},
[132] = {name = "ThickFog", mp = 8},
[133] = {name = "TatsuCall", mp = 20},
[134] = {name = "DiagoCall", mp = 20},
[135] = {name = "SamsiCall", mp = 20},
[136] = {name = "BazooCall", mp = 20},
[137] = {name = "SuckAir", mp = 0},
[138] = {name = "Focus", mp = 0},
[139] = {name = "LushLicks", mp = 2},
[140] = {name = "SickLick", mp = 4},
[141] = {name = "LegSweep", mp = 1},
[142] = {name = "BigTrip", mp = 3},
[143] = {name = "Ahhh", mp = 1},
[144] = {name = "WarCry", mp = 3},
[145] = {name = "Geyser", mp = 2},
[146] = {name = "DanceShut", mp = 6},
[147] = {name = "MouthShut", mp = 6},
[148] = {name = "StrongD", mp = 3},
[149] = {name = "Dodge", mp = 4},
[150] = {name = "BladeD", mp = 3},
[151] = {name = "Cover", mp = 2},
[152] = {name = "Guardian", mp = 4},
[153] = {name = "TailWind", mp = 6},
[154] = {name = "StormWind", mp = 10},
[155] = {name = "AquaWall", mp = 5},
[156] = {name = "SealPray", mp = 15},
[157] = {name = "SuckAll", mp = 2},
[158] = {name = "Imitate", mp = 4},
[159] = {name = "Meditate", mp = 8},
[160] = {name = "LifeSong", mp = 20},
[161] = {name = "LoveRain", mp = 28},
[162] = {name = "Whistle", mp = 0},
[163] = {name = "Pheromone", mp = 0},
[164] = {name = "StepGuard", mp = 2},
[165] = {name = "Outside", mp = 2},
[166] = {name = "Informer", mp = 0},
[167] = {name = "Errand", mp = 2},
[168] = {name = "EagleEye", mp = 0},
[169] = {name = "MapMagic", mp = 2},
[170] = {name = "Ahhh", mp = 1},
[171] = {name = "ZoneOut", mp = 0},
[172] = {name = "Guard", mp = 0},
[173] = {name = "PanicAll", mp = 5},
[174] = {name = "Ironize", mp = 2},
[175] = {name = "HighJump", mp = 0},
[176] = {name = "HighJump", mp = 0},
[177] = {name = "HighJump", mp = 0},
[178] = {name = "HighJump", mp = 0},
[179] = {name = "HighJump", mp = 0},
[180] = {name = "HighJump", mp = 0},
[181] = {name = "HighJump", mp = 0},
[182] = {name = "HighJump", mp = 0},
[183] = {name = "HighJump", mp = 0},
[184] = {name = "HighJump", mp = 0},
[185] = {name = "HighJump", mp = 0},
[186] = {name = "HighJump", mp = 0},
[187] = {name = "HighJump", mp = 0},
[188] = {name = "HighJump", mp = 0},
[189] = {name = "HighJump", mp = 0},
[190] = {name = "HighJump", mp = 0},
[191] = {name = "HighJump", mp = 0},
[192] = {name = "HighJump", mp = 0},
[193] = {name = "HighJump", mp = 0},
[194] = {name = "HighJump", mp = 0},
[195] = {name = "HighJump", mp = 0},
[196] = {name = "HighJump", mp = 0},
[197] = {name = "HighJump", mp = 0},
[198] = {name = "HighJump", mp = 0},
[199] = {name = "HighJump", mp = 0},
[200] = {name = "HighJump", mp = 0},
[201] = {name = "HighJump", mp = 0},
[202] = {name = "HighJump", mp = 0},
[203] = {name = "HighJump", mp = 0},
[204] = {name = "HighJump", mp = 0},
[205] = {name = "LoveRain", mp = 0},
[206] = {name = "LoveRain", mp = 0},
[207] = {name = "LoveRain", mp = 0},
[208] = {name = "", mp = 0},
[209] = {name = "", mp = 0},
[210] = {name = "", mp = 0},
[211] = {name = "", mp = 0},
[212] = {name = "", mp = 0},
[213] = {name = "", mp = 0},
[214] = {name = "", mp = 0},
[215] = {name = "", mp = 0},
[216] = {name = "", mp = 0},
[217] = {name = "", mp = 0},
[218] = {name = "", mp = 0},
[219] = {name = "", mp = 0},
[220] = {name = "", mp = 0},
[221] = {name = "", mp = 0},
[222] = {name = "", mp = 0},
[223] = {name = "", mp = 0},
[224] = {name = "Herb", mp = 0},
[225] = {name = "LoveWater", mp = 0},
[226] = {name = "WorldDew", mp = 0},
[227] = {name = "Potion", mp = 0},
[228] = {name = "ElfWater", mp = 0},
[229] = {name = "Antidote", mp = 0},
[230] = {name = "MoonHerb", mp = 0},
[231] = {name = "Laurel", mp = 0},
[232] = {name = "AwakeSand", mp = 0},
[233] = {name = "SkyBell", mp = 0},
[234] = {name = "SageRock", mp = 0},
[235] = {name = "WorldLeaf", mp = 0},
[236] = {name = "ATKseed", mp = 0},
[237] = {name = "DEFseed", mp = 0},
[238] = {name = "AGLseed", mp = 0},
[239] = {name = "INTseed", mp = 0},
[240] = {name = "LifeAcorn", mp = 0},
[241] = {name = "MysticNut", mp = 0},
[242] = {name = "Quest📚", mp = 0},
[243] = {name = "Horror📚", mp = 54},
[244] = {name = "BeNice📚", mp = 0},
[245] = {name = "Cheater📚", mp = 0},
[246] = {name = "Smart📚", mp = 0},
[247] = {name = "Comedy📚", mp = 0},
[248] = {name = "BeefJerky", mp = 0},
[249] = {name = "PorkChop", mp = 0},
[250] = {name = "Rib", mp = 0},
[251] = {name = "Sirloin", mp = 0},
[252] = {name = "BadMeat", mp = 0},
[253] = {name = "MeteOrb", mp = 87},
[254] = {name = "BeastTail", mp = 0},
[255] = {name = "No skills", mp = 0}
}
dragon_warrior_monsters_2_module.Map = {
[0] = "Monster Farm",
[1] = "GreatLog",
[2] = "Main Street",
[3] = "Magic Door",
[4] = "Reception",
[5] = "Log's Navel",
[6] = "Home",
[7] = "Stable",
[8] = "Vault",
[9] = "Key Shop",
[10] = "Evaluator",
[11] = "Arena",
[12] = "Residences",
[13] = "Starry Shrine",
[14] = "Family Room",
[15] = "Guy's Room",
[16] = "Lady's Room",
[17] = "Library",
[18] = "Girl's Room",
[19] = "Christener",
[20] = "Background",
[21] = "Old man's",
[22] = "Medal man",
[23] = "Tavern",
[24] = "Arena",
[25] = "GreatLog Castle",
[26] = "Tree Top",
[27] = "Log's nut",
[28] = "Log's view",
[29] = "Deck",
[30] = "No",
[31] = "No",
[32] = "Desert World",
[33] = "Kalka house",
[34] = "Kalka Inn",
[35] = "Asiya Inn",
[36] = "Asiya House",
[37] = "Asiya Castle",
[38] = "Asiya Throne",
[39] = "No",
[40] = "Hideout",
[41] = "Desert Shrine",
[42] = "CanalGate",
[43] = "Canal",
[44] = "Mirage Lake",
[45] = "Asiya Jail",
[46] = "Asiya Treasury",
[47] = "Mirage Lake",
[48] = "Water World",
[49] = "Yold Village",
[50] = "Port Ritz",
[51] = "Port Ritz Pub",
[52] = "Port Ritz Inn",
[53] = "Cape Cave",
[54] = "",
[55] = "Ship 1F",
[56] = "",
[57] = "",
[58] = "",
[59] = "",
[60] = "Port Polona",
[61] = "Polona inn",
[62] = "Lighthouse 1F",
[63] = "Lighthouse 2F",
[64] = "Lighthouse 3F",
[65] = "Mermaid World",
[66] = "Ship 2F",
[67] = "",
[68] = "",
[69] = "Water Shrine",
[70] = "",
[71] = "",
[72] = "",
[73] = "",
[74] = "",
[75] = "",
[76] = "",
[77] = "",
[78] = "",
[79] = "",
[80] = "",
[81] = "",
[82] = "",
[83] = "",
[84] = "",
[85] = "",
[86] = "",
[87] = "",
[88] = "",
[89] = "",
[90] = "",
[91] = "",
[92] = "",
[93] = "",
[94] = "",
[95] = "",
[96] = "",
[97] = "",
[98] = "",
[99] = "",
[100] = "",
[101] = "",
[102] = "",
[103] = "",
[104] = "",
[105] = "",
[106] = "",
[107] = "",
[108] = "",
[109] = "",
[110] = "",
[111] = "",
[112] = "",
[113] = "",
[114] = "",
[115] = "",
[116] = "",
[117] = "",
[118] = "",
[119] = "",
[120] = "",
[121] = "",
[122] = "",
[123] = "",
[124] = "",
[125] = "",
[126] = "",
[127] = "",
[128] = "",
[129] = "",
[130] = "",
[131] = "",
[132] = "",
[133] = "",
[134] = "",
[135] = "",
[136] = "",
[137] = "",
[138] = "",
[139] = "",
[140] = "",
[141] = "",
[142] = "",
[143] = "",
[144] = "",
[145] = "",
[146] = "",
[147] = "",
[148] = "",
[149] = "",
[150] = "",
[151] = "",
[152] = "",
[153] = "",
[154] = "",
[155] = "",
[156] = "",
[157] = "",
[158] = "",
[159] = "",
[160] = "Limbo World",
[161] = "Darck Stairway",
[162] = "Darck Manor",
[163] = "Darck Gallery",
[164] = "Limbo Shrine",
[165] = "",
[166] = "",
[167] = "",
[168] = "",
[169] = "",
[170] = "",
[171] = "",
[172] = "",
[173] = "",
[174] = "",
[175] = "",
[176] = "",
[177] = "",
[178] = "",
[179] = "",
[180] = "",
[181] = "",
[182] = "",
[183] = "",
[184] = "",
[185] = "",
[186] = "",
[187] = "",
[188] = "",
[189] = "",
[190] = "",
[191] = "",
[192] = "",
[193] = "",
[194] = "",
[195] = "",
[196] = "",
[197] = "",
[198] = "",
[199] = "",
[200] = "",
[201] = "",
[202] = "",
[203] = "",
[204] = "",
[205] = "",
[206] = "",
[207] = "",
[208] = "",
[209] = "",
[210] = "",
[211] = "",
[212] = "",
[213] = "",
[214] = "",
[215] = "",
[216] = "",
[217] = "",
[218] = "",
[219] = "",
[220] = "",
[221] = "",
[222] = "",
[223] = "",
[224] = "",
[225] = "",
[226] = "",
[227] = "",
[228] = "",
[229] = "",
[230] = "",
[231] = "",
[232] = "",
[233] = "",
[234] = "",
[235] = "",
[236] = "",
[237] = "",
[238] = "",
[239] = "",
[240] = "",
[241] = "",
[242] = "",
[243] = "",
[244] = "",
[245] = "",
[246] = "",
[247] = "",
[248] = "",
[249] = "",
[250] = "",
[251] = "",
[252] = "",
[253] = "",
[254] = "",
[255] = ""
}
dragon_warrior_monsters_2_module.Key = {
[0] = "",
[1] = "GreatLog",
[2] = "Oasis",
[3] = "Pirate",
[4] = "Ice",
[5] = "Sky",
[6] = "Limbo",
[7] = "Elf",
[8] = "Lonely",
[9] = "Traveler",
[10] = "Brawn",
[11] = "Baffle",
[12] = "Soul",
--Star next to name
[65] = "GreatLog",
[66] = "Oasis",
[67] = "Pirate",
[68] = "Ice",
[69] = "Sky",
[70] = "Limbo",
[71] = "Elf",
[72] = "Lonely",
[73] = "Traveler",
[74] = "Brawn",
[75] = "Baffle",
[76] = "Soul",
[255] = ""
}
dragon_warrior_monsters_2_module.Follower_Base = {
--CartRAM
[0] = 0x0,
[1] = 0xA5,
[2] = 0x14A,
[3] = 0x1EF,
[4] = 0x294,
[5] = 0x339,
[6] = 0x3DE,
[7] = 0x483,
[8] = 0x528,
[9] = 0x5CD,
[10] = 0x672,
[11] = 0x717,
[12] = 0x7BC,
[13] = 0x861,
[14] = 0x906,
[15] = 0x9AB,
[16] = 0xA50,
[17] = 0xAF5,
[18] = 0xB9A,
[19] = 0xC3F,
[20] = 0xCE4,
[21] = 0xD89,
[22] = 0xE2E,
[23] = 0xED3,
[24] = 0xF78,
[25] = 0x101D,
[26] = 0x10C2,
[27] = 0x1167,
[28] = 0x120C,
[29] = 0x12B1,
[30] = 0x1356,
[31] = 0x13FB,
[32] = 0x14A0,
[33] = 0x1545,
[34] = 0x15EA,
[35] = 0x168F,
[36] = 0x1734,
[37] = 0x17D9,
[38] = 0x187E,
[39] = 0x1923,
[40] = 0x19C8,
[41] = 0x1A6D,
[42] = 0x1B12,
[43] = 0x1BB7,
[44] = 0x1C5C,
[45] = 0x1D01,
[46] = 0x1DA6,
[47] = 0x1E4B,
[48] = 0x1EF0,
[49] = 0x1F95,
--System Bus
[50] = 0xC03A,
[51] = 0xC0DF,
[52] = 0xC184,
[53] = 0xC229,
[54] = 0xC2CE,
[55] = 0xC373,
[56] = 0xC418,
[57] = 0xC4BD,
[58] = 0xC562,
[59] = 0xC607,
[60] = 0xC6AC,
[61] = 0xC751,
[62] = 0xC7F6,
[63] = 0xC89B,
[64] = 0xC940,
[65] = 0xC9E5,
[66] = 0xCA8A,
[67] = 0xCB2F,
[68] = 0xCBD4,
[69] = 0xCC79,
[70] = 0xCD1E,
[71] = 0xCDC3,
[72] = 0xCE68,
[73] = 0xCF0D,
[74] = 0xCFB2,
[75] = 0xD057,
[76] = 0xD0FC,
[77] = 0xD1A1,
[78] = 0xD246,
[79] = 0xD2EB,
[80] = 0xD390,
[81] = 0xD435,
[82] = 0xD4DA,
[83] = 0xD57F,
[84] = 0xD624,
[85] = 0xD6C9,
[86] = 0xD76E,
[87] = 0xD813,
[88] = 0xD8B8,
[89] = 0xD95D,
[90] = 0xDA02,
[91] = 0xDAA7,
[92] = 0xDB4C,
[93] = 0xDBF1,
[94] = 0xDC96,
[95] = 0xDD3B,
[96] = 0xDDE0,
[97] = 0xDE85,
[98] = 0xDF2A,
[99] = 0xDFCF,
[100] = 0xE074,
[101] = 0xE119,
[102] = 0xE1BE,
[103] = 0xE263,
[104] = 0xE308,
[105] = 0xE3AD,
[106] = 0xE452,
[107] = 0xE4F7,
[108] = 0xE59C,
[109] = 0xE641,
[110] = 0xE6E6,
[111] = 0xE78B,
[112] = 0xE830,
[113] = 0xE8D5,
[114] = 0xE97A,
[115] = 0xEA1F,
[116] = 0xEAC4,
[117] = 0xEB69,
[118] = 0xEC0E,
[119] = 0xECB3,
[120] = 0xED58,
[121] = 0xEDFD,
[122] = 0xEEA2,
[123] = 0xEF47,
[124] = 0xEFEC,
[125] = 0xF091,
[126] = 0xF136,
[127] = 0xF1DB,
[128] = 0xF280,
[129] = 0xF325,
[130] = 0xF3CA,
[131] = 0xF46F,
[132] = 0xF514,
[133] = 0xF5B9,
[134] = 0xF65E,
[135] = 0xF703,
[136] = 0xF7A8,
[137] = 0xF84D,
[138] = 0xF8F2,
[139] = 0xF997,
[140] = 0xFA3C,
[141] = 0xFAE1,
[142] = 0xFB86,
[143] = 0xFC2B,
[144] = 0xFCD0,
[145] = 0xFD75,
[146] = 0xFE1A,
[147] = 0xFEBF,
[148] = 0xFF64
}
--Use this when Slime is in battle
dragon_warrior_monsters_2_module.Crit = {
[0]= 0,
[1]= 0,
[2]= 0,
[3]= 0,
[4]= 0,
[5]= 0,
[6]= 0,
[7]= 0,
[8]= 0,
[9]= 0,
[10]= 0,
[11]= 0,
[12]= 0,
[13]= 0,
[14]= 0,
[15]= 0,
[16]= 0,
[17]= 0,
[18]= 0,
[19]= 0,
[20]= 0,
[21]= 0,
[22]= 0,
[23]= 0,
[24]= 0,
[25]= 128,
[26]= 0,
[27]= 0,
[28]= 0,
[29]= 0,
[30]= 0,
[31]= 0,
[32]= 128,
[33]= 0,
[34]= 0,
[35]= 0,
[36]= 0,
[37]= 0,
[38]= 0,
[39]= 0,
[40]= 0,
[41]= 0,
[42]= 0,
[43]= 0,
[44]= 0,
[45]= 0,
[46]= 0,
[47]= 0,
[48]= 0,
[49]= 0,
[50]= 0,
[51]= 0,
[52]= 0,
[53]= 0,
[54]= 0,
[55]= 0,
[56]= 0,
[57]= 0,
[58]= 0,
[59]= 0,
[60]= 0,
[61]= 0,
[62]= 0,
[63]= 0,
[64]= 0,
[65]= 0,
[66]= 0,
[67]= 0,
[68]= 0,
[69]= 0,
[70]= 0,
[71]= 0,
[72]= 0,
[73]= 0,
[74]= 128,
[75]= 0,
[76]= 128,
[77]= 0,
[78]= 0,
[79]= 0,
[80]= 0,
[81]= 0,
[82]= 0,
[83]= 0,
[84]= 0,
[85]= 0,
[86]= 0,
[87]= 0,
[88]= 0,
[89]= 0,
[90]= 0,
[91]= 0,
[92]= 0,
[93]= 0,
[94]= 0,
[95]= 0,
[96]= 0,
[97]= 0,
[98]= 0,
[99]= 0,
[100]= 0,
[101]= 0,
[102]= 0,
[103]= 0,
[104]= 0,
[105]= 0,
[106]= 0,
[107]= 0,
[108]= 0,
[109]= 0,
[110]= 0,
[111]= 0,
[112]= 0,
[113]= 0,
[114]= 0,
[115]= 0,
[116]= 0,
[117]= 0,
[118]= 0,
[119]= 0,
[120]= 0,
[121]= 0,
[122]= 0,
[123]= 0,
[124]= 0,
[125]= 0,
[126]= 0,
[127]= 0,
[128]= 0,
[129]= 0,
[130]= 0,
[131]= 0,
[132]= 0,
[133]= 0,
[134]= 0,
[135]= 0,
[136]= 0,
[137]= 0,
[138]= 0,
[139]= 0,
[140]= 0,
[141]= 0,
[142]= 0,
[143]= 0,
[144]= 0,
[145]= 0,
[146]= 0,
[147]= 0,
[148]= 0,
[149]= 0,
[150]= 0,
[151]= 0,
[152]= 0,
[153]= 128,
[154]= 0,
[155]= 0,
[156]= 0,
[157]= 0,
[158]= 0,
[159]= 0,
[160]= 128,
[161]= 0,
[162]= 0,
[163]= 0,
[164]= 0,
[165]= 0,
[166]= 0,
[167]= 0,
[168]= 0,
[169]= 0,
[170]= 0,
[171]= 0,
[172]= 0,
[173]= 0,
[174]= 0,
[175]= 0,
[176]= 0,
[177]= 0,
[178]= 0,
[179]= 0,
[180]= 0,
[181]= 0,
[182]= 0,
[183]= 0,
[184]= 0,
[185]= 0,
[186]= 0,
[187]= 0,
[188]= 0,
[189]= 0,
[190]= 0,
[191]= 0,
[192]= 0,
[193]= 0,
[194]= 0,
[195]= 0,
[196]= 0,
[197]= 0,
[198]= 0,
[199]= 0,
[200]= 0,
[201]= 0,
[202]= 128,
[203]= 0,
[204]= 128,
[205]= 0,
[206]= 0,
[207]= 0,
[208]= 0,
[209]= 0,
[210]= 0,
[211]= 0,
[212]= 0,
[213]= 0,
[214]= 0,
[215]= 0,
[216]= 0,
[217]= 0,
[218]= 0,
[219]= 0,
[220]= 0,
[221]= 0,
[222]= 0,
[223]= 0,
[224]= 0,
[225]= 0,
[226]= 0,
[227]= 0,
[228]= 0,
[229]= 0,
[230]= 0,
[231]= 0,
[232]= 0,
[233]= 0,
[234]= 0,
[235]= 0,
[236]= 0,
[237]= 0,
[238]= 0,
[239]= 0,
[240]= 0,
[241]= 0,
[242]= 0,
[243]= 0,
[244]= 0,
[245]= 0,
[246]= 0,
[247]= 0,
[248]= 0,
[249]= 0,
[250]= 0,
[251]= 0,
[252]= 0,
[253]= 0,
[254]= 0,
[255]= 0
}
return dragon_warrior_monsters_2_module