Randomize Map System and Chako's Rouge.

This commit is contained in:
shru 2018-12-19 13:03:09 -05:00
parent b706cdd168
commit c5f16ddc2a
2 changed files with 67 additions and 13 deletions

View file

@ -4,12 +4,14 @@ Cave Story Randomizer
Todo Todo
---- ----
- Randomize the rest of the items.
- Randomize the super missiles upgrade. - Randomize the super missiles upgrade.
- Specifically replace first chest in Pole.tsc so that you always get a weapon. - Specifically replace first chest in Pole.tsc so that you always get a weapon.
- Provide modified Cave.pxm. (When Bubbline or Fireball) - Provide modified Cave.pxm. (When Bubbline or Fireball)
- Trade Sequence Step A: Only weapons are acquired through trades. - Trade Sequence Step A: Only weapons are acquired through trades.
- Print Warning/Error Count
- Supress Hell Music Error
- Trade Sequence Step B: Require random obtainable weapon, instead of always polar star and fireball. - Trade Sequence Step B: Require random obtainable weapon, instead of always polar star and fireball.
- Randomize Booster v0.8 / v2.0
Issues Issues
------ ------

View file

@ -46,14 +46,26 @@ function equipment(t)
end end
function item(t) function item(t)
assert(t.name and t.map and t.id and t.getText) assert(t.name and t.map and t.id)
local names = t.name
if type(names) == 'string' then
names = {names}
end
local getText = {}
for _, name in ipairs(names) do
table.insert(getText, ("Got the =%s=!<WAI0160<NOD"):format(name)) -- Replacement
table.insert(getText, ("Got a =%s=!<WAI0160<NOD"):format(name)) -- Life Pot
table.insert(getText, ("Found =%s=.<NOD"):format(name)) -- Curly's Panties
table.insert(getText, ".....") -- Chako's Rouge
end
return { return {
name = t.name, name = names[1],
map = t.map, map = t.map,
getText = t.getText, getText = getText,
command = ("<IT+00%s"):format(t.id), command = ("<IT+00%s"):format(t.id),
displayCmd = ("<GIT10%s"):format(t.id), displayCmd = ("<GIT10%s"):format(t.id),
music = t.music or "<CMU0010" music = t.music or "<CMU0010",
replaceBefore = t.replaceBefore,
} }
end end
@ -162,6 +174,13 @@ return {
--------------- ---------------
-- EQUIPMENT -- -- EQUIPMENT --
--------------- ---------------
eMapSystem = equipment({
name = "Map System",
map = "Mimi",
id = "02",
equipMask = "0002",
label = "0200",
}),
eTurbocharge = equipment({ eTurbocharge = equipment({
name = "Turbocharge", name = "Turbocharge",
map = "MazeA", map = "MazeA",
@ -187,23 +206,35 @@ return {
----------- -----------
-- ITEMS -- -- ITEMS --
----------- -----------
-- - Map System iChakosRouge = item({
-- - Chako's Rouge name = "Chako's Rouge",
name = {
"Chako's Rouge",
"Chaco's Lipstick", -- Probably doesn't matter, since no text?
},
map = "Chako",
id = "37",
music = "",
label = "0211",
replaceBefore = {
-- Display Item.
[".....<IT+0037<NOD"] = "<GIT1037.....<IT+0037",
},
}),
iPanties = item({ iPanties = item({
name = "Curly's Panties", name = "",
name = {
"Curly's Panties",
"Curly's Underwear",
},
map = "CurlyS", map = "CurlyS",
id = "35", id = "35",
getText = {
"Found =Curly's Panties=.",
"Found =Curly's Underwear=.",
},
music = "", music = "",
}), }),
iLifePot = item({ iLifePot = item({
name = "Life Pot", name = "Life Pot",
map = "Cent", map = "Cent",
id = "15", id = "15",
getText = "Got a =Life Pot=!",
label = "0450", label = "0450",
}), }),
@ -391,13 +422,34 @@ gun?<YNJ0201<FL+1372<CLR
<PRI<MSGReally? Too bad.<NOD<END <PRI<MSGReally? Too bad.<NOD<END
-- Equipment -- Equipment
#0200
<PRI<FLJ0322:0201<FL+0322<SOU0022<CNP0200:0021:0000
<MSGOpened the chest.<NOD<GIT1002<IT+0002<EQ+0002<CLR
<CMU0010Got the =Map System=!<WAI0160<NOD<RMU<EVE0201
#0400 #0400
<KEY<FLJ0705:0001<FL+0705<SOU0022<CNP0400:0021:0000 <KEY<FLJ0705:0001<FL+0705<SOU0022<CNP0400:0021:0000
<MSGOpened the treasure chest.<NOD<GIT1019<IT+0019<EQ+0004<CLR <MSGOpened the treasure chest.<NOD<GIT1019<IT+0019<EQ+0004<CLR
<CMU0010Got the =Arms Barrier=!<WAI0160<NOD<RMU<END <CMU0010Got the =Arms Barrier=!<WAI0160<NOD<RMU<END
-- Items
-- Chako's Rouge
#0211
<KEY<MSG
Do you want to rest?<YNJ0000<FAO0004<CMU0000<WAI0020<CLR.....<IT+0037<NOD<CLO
<MNP0300:0012:0006:0000<ANP0300:0010:0000
<WAI0050
<LI+1000<SOU0020<MYD0002<MSG
Health restored.<NOD<CLO<RMU<FAI0004<END
-- Life Capsules -- Life Capsules
<PRI<SOU0022<DNP0400<CMU0016 <PRI<SOU0022<DNP0400<CMU0016