Text updates

This commit is contained in:
2026-06-08 21:36:19 -05:00
parent 844db083a6
commit b195069c77
3 changed files with 98 additions and 95 deletions

10
Rom.py
View File

@@ -2912,7 +2912,7 @@ def write_strings(rom, world, player, team, is_mystery=False):
tt['sign_ganon'] = 'Ganon only respects those who have done everything.' tt['sign_ganon'] = 'Ganon only respects those who have done everything.'
tt['ganon_fall_in'] = Ganon1_texts[random.randint(0, len(Ganon1_texts) - 1)] tt['ganon_fall_in'] = Ganon1_texts[random.randint(0, len(Ganon1_texts) - 1)]
tt['ganon_fall_in_alt'] = 'You cannot defeat me until you finish your goal!' tt['ganon_fall_in_alt'] = 'You cannot defeat me until you finish your goal!'
tt['ganon_phase_3_alt'] = 'Got wax in\nyour ears?\nI can not die!' tt['ganon_phase_3_alt'] = 'Got wax in\nyour ears?\nI cannot die!'
def get_custom_goal_text(type): def get_custom_goal_text(type):
goal_text = world.custom_goals[player][type]['goaltext'] goal_text = world.custom_goals[player][type]['goaltext']
@@ -2931,7 +2931,13 @@ def write_strings(rom, world, player, team, is_mystery=False):
if world.custom_goals[player]['murahgoal'] and 'goaltext' in world.custom_goals[player]['murahgoal']: if world.custom_goals[player]['murahgoal'] and 'goaltext' in world.custom_goals[player]['murahgoal']:
tt['murahdahla'] = get_custom_goal_text('murahgoal') tt['murahdahla'] = get_custom_goal_text('murahgoal')
tt['kakariko_tavern_fisherman'] = TavernMan_texts[random.randint(0, len(TavernMan_texts) - 1)] tavern_texts = random.sample(TavernMan_texts, 5)
tt['tavern_old_man_awake'] = tavern_texts.pop()
tt['tavern_old_man_unactivated_flute'] = tavern_texts.pop()
tt['tavern_old_man_know_tree_unactivated_flute'] = tavern_texts.pop()
tt['tavern_old_man_have_flute'] = tavern_texts.pop()
tt['kakariko_tavern_fisherman'] = tavern_texts.pop()
pedestalitem = world.get_location('Master Sword Pedestal', player).item pedestalitem = world.get_location('Master Sword Pedestal', player).item
pedestal_text = 'Some Hot Air' if pedestalitem is None else hint_text(pedestalitem, True) if pedestalitem.pedestal_hint_text is not None else 'Unknown Item' pedestal_text = 'Some Hot Air' if pedestalitem is None else hint_text(pedestalitem, True) if pedestalitem.pedestal_hint_text is not None else 'Unknown Item'

183
Text.py
View File

@@ -50,18 +50,18 @@ Uncle_texts = [
"Don't worry.\nI got this\ncovered.", "Don't worry.\nI got this\ncovered.",
"Race you to\nthe castle!", "Race you to\nthe castle!",
"\n Hi", "\n Hi",
"I'M JUST GOING\nOUT FOR A\nPACK OF SMOKES", "I'm just going\nout for a\npack of smokes.",
"It's dangerous\nto go alone.\nSee ya!", "It's dangerous\nto go alone.\nSee ya!",
"ARE YOU A BAD\nENOUGH DUDE TO\nRESCUE ZELDA?", "Are you a bad\nenough dude to\nrescue Zelda?",
"\n\n I AM ERROR", "\n\n I AM ERROR",
"This seed is\nsub 2 hours,\nguaranteed.", "This seed is\nsub 2 hours,\nguaranteed.",
"The chest is\na secret to\neverybody.", "The chest is\na secret to\neverybody.",
"I'm off to\nfind the\nwind fish.", "I'm off to\nfind the\nwind fish.",
"The shortcut\nto Ganon\nis this way!", "The shortcut\nto Ganon\nis this way!",
"THE MOON IS\nCRASHING! RUN\nFOR YOUR LIFE!", "The moon is\ncrashing! Run\nfor your life!",
"Time to fight\nhe who must\nnot be named.", "Time to fight\nhe who must\nnot be named.",
"RED MAIL\nIS FOR\nCOWARDS.", "Red mail\nis for\ncowards.",
"HEY!\n\nLISTEN!", "Hey!\n\nListen!",
"Well\nexcuuuuuse me,\nprincess!", "Well\nexcuuuuuse me,\nprincess!",
"5,000 Rupee\nreward for >\nYou're boned.", "5,000 Rupee\nreward for >\nYou're boned.",
"Welcome to\nStoops Lonk's\nHoose", "Welcome to\nStoops Lonk's\nHoose",
@@ -230,97 +230,92 @@ Ganon1_texts = [
] ]
Ganon_Phase_3_No_Silvers_texts = [ Ganon_Phase_3_No_Silvers_texts = [
"Did you find\nthe arrows on\nPlanet Zebes?", "Did you find\nthe arrows\non Planet Zebes?",
"Did you find\nthe arrows?\nI think not.", "Did you find\nthe arrows?\nI think not.",
"Silver arrows?\nI have never\nheard of them", "Silver arrows?\nI have never\nheard of them.",
"Did you find\nthe arrows on\nThe Moon?", "Did you find\nthe arrows on\nThe Moon?",
"Did you find\nthe arrows\nIn dev null?", "Did you find\nthe arrows\nin /dev/null?",
"I have sold\nthe arrows for\na green big 20", "I have sold\nthe arrows for\na green big 20.",
"Did you find\nthe arrows in\nCount Dracula?", "Did you find\nthe arrows in\nCount Dracula?",
"Error 404\nSilver arrows\nnot found.", " Error 404\nSilver Arrows\n Not Found",
"No arrows for\nyou today.\nSorry.", "No arrows\nfor you today.\nSorry.",
"No arrows?\nCheck your\njunk mail." "No arrows?\nCheck your\njunk mail."
"Did you find\nthe arrows in\nJabu's belly?", "Did you find\nthe arrows\nin Jabu's belly?",
"Silver is not\nan appropriate\narrow material", "Silver is not\nan appropriate\narrow material.",
"Did you find\nthe arrows in\nNarnia?", "Did you find\nthe arrows\nin nNarnia?",
"DID YOU FIND\nTHE ARROWS IN\nKEFKA'S TOWER", "Did you find\nthe arrows\nin nKefka's Tower.",
"Did you find\nthe arrows in\nyour Recycle Bin?", "Did you find\nthe arrows\nin nyour Recycle Bin?",
"Silver Arrows?\n\nLUL", "Silver Arrows?\n\nLUL",
"Imagine\nfinding the\narrows", "\nImagine finding\nthe arrows.",
"Did you find\nsilvers in\nscenic Ohio?", "Did you find\nthe arrows\nin scenic Ohio?",
"Did you find\nthe arrows in\n*mumblemumble*", "Did you find\nthe arrows\nin •mumblemumble",
"Did you find\nthe arrows in\nthe hourglass?", "Did you find\nthe arrows\nin the hourglass?",
"Silver Arrows\nare so v30", "\nSilver Arrows\nare so main branch.",
"OH, NO, THEY\nACTUALLY SAID\nSILVER MARROW", "Did you find\nthe arrows\nin World 4-2?",
"SURELY THE\nLEFTMOST TILES\nWILL STAY UP", "Did you find\nthe arrows\nin Ghanti's ears?",
"Did you find\nthe arrows in\nWorld 4-2?",
"SILLY HERO,\nSILVER IS FOR\nWEREWOLVES!",
"Did you find\nthe silvers in\nGanti's ears",
] ]
Ganon_Phase_3_No_Weakness_texts = [ Ganon_Phase_3_No_Weakness_texts = [
"Error 404\nWeakness\nnot found.", "\n Error 404\nWeakness Not Found",
"No weakness\nfor you today.\nSorry", "No weakness\nfor you today.\nSorry.",
"Careful, all\nthat spinning\nmakes me dizzy", "Careful, all\nthat spinning\nmakes me dizzy.",
"Are you ready\nTo spin\nTo win?", "Are you ready\nto spin\nto win?",
"\nSpin To Win!\n", "\n Spin To Win!\n",
"SURELY THE\nLEFTMOST TILES\nWILL STAY UP", "Surely the\nleftmost tiles\nwill stay up!",
"You Spin Me\nRight Round\nLike A Record", "You spin me\nright round\nlike a record.",
"SILLY HERO,\nSILVER IS FOR\nWEREWOLVES!", "Oh, no, they\nactually said\nsilver •marrow•.",
"Silly hero,\nsilver is for\nwerewolves!",
] ]
TavernMan_texts = [ TavernMan_texts = [
"What do you\ncall a blind\ndinosaur?\na doyouthink-\nhesaurus.", "What do you call a blind dinosaur?\n\nA doyouthink-\nhesaurus.",
"A blind man\nwalks into\na bar.\nAnd a table.\nAnd a chair.", "What do ducks like to eat?\n\nQuackers!",
"What do ducks\nlike to eat?\n\nQuackers!", "How do you set up a party in space?\n\nYou planet!",
"How do you\nset up a party\nin space?\n\nYou planet!", "I'm glad I know sign language.\nIt's pretty handy.",
"I'm glad I\nknow sign\nlanguage.\nIt's pretty\nhandy.", "What did Zelda say to Link at a secure door?\n\nTriforce!",
"What did Zelda\nsay to Link at\na secure door?\n\nTRIFORCE!", "I am on a seafood diet.\n\nEvery time I see food, I eat it.",
"I am on a\nseafood diet.\n\nEvery time\nI see food,\nI eat it.", "I've decided to sell my vacuum.\n\nIt was just gathering dust.",
"I've decided\nto sell my\nvacuum.\nIt was just\ngathering\ndust.", "What's the best time to go to the dentist?\n\nTooth-hurtie!",
"What's the best\ntime to go to\nthe dentist?\n\nTooth-hurtie!", "Why can't a bike stand on its own?\n\nIt's two-tired!",
"Why can't a\nbike stand on\nits own?\n\nIt's two-tired!", "If you haven't found Quake yet…\n\nit's not your fault.",
"If you haven't\nfound Quake\nyet…\nit's not your\nfault.", "Why is Peter Pan always flying?\n\nBecause he Neverlands!",
"Why is Peter\nPan always\nflying?\nBecause he\nNeverlands!", "I once told a joke to Armos.\n\nBut he remained stone-faced!",
"I once told a\njoke to Armos.\n\nBut he\nremained\nstone-faced!", "Lanmola was late to our dinner party.\n\nHe just came for the desert",
"Lanmola was\nlate to our\ndinner party.\nHe just came\nfor the desert", "Moldorm is such a prankster.\n\nAnd I fall for it every time!",
"Moldorm is\nsuch a\nprankster.\nAnd I fall for\nit every time!", "Helmasaur is throwing a party.\n\nI hope it's a masquerade!",
"Helmasaur is\nthrowing a\nparty.\nI hope it's\na masquerade!", "I'd like to know Arrghus better.\n\nBut he won't come out of his shell!",
"I'd like to\nknow Arrghus\nbetter.\nBut he won't\ncome out of\nhis shell!", "Mothula didn't have much fun at the party.\n\nHe's immune to spiked punch!",
"Mothula didn't\nhave much fun\nat the party.\nHe's immune to\nspiked punch!", "Kholdstare is afraid to go to the circus.\n\nHungry kids thought he was cotton candy!",
"Don't set me\nup with that\nchick from\nSteve's Town.\n\n\nI'm not\ninterested in\na Blind date!", "I asked who Vitreous' best friends are.\n\nHe said, \"Me, Myself, and Eye!\"",
"Kholdstare is\nafraid to go\nto the circus.\nHungry kids\nthought he was\ncotton candy!", "Trinexx can be a hothead or he can be an ice guy. In the end, he's a solid individual!",
"I asked who\nVitreous' best\nfriends are.\nHe said,\n'Me, Myself,\nand Eye!'", "Bari thought I had moved out of town.\n\nHe was shocked to see me!",
"Trinexx can be\na hothead or\nhe can be an\nice guy. In\nthe end, he's\na solid\nindividual!", "Don't argue with a frozen Deadrock.\n\nHe'll never change his position!",
"Bari thought I\nhad moved out\nof town.\nHe was shocked\nto see me!", "I offered a drink to a self-loathing Ghini.\n\nHe said he didn't like spirits!",
"I can only get\nWeetabix\naround here.\nI have to go\nto Steve's\nTown for Count\nChocula!", "I was supposed to meet Gibdo for lunch.\n\nBut he got wrapped up in something!",
"Don't argue\nwith a frozen\nDeadrock.\nHe'll never\nchange his\nposition!", "Goriya sure has changed in this game.\n\nI hope he comes back around!",
"I offered a\ndrink to a\nself-loathing\nGhini.\nHe said he\ndidn't like\nspirits!", "Hinox actually wants to be a lawyer.\n\nToo bad he bombed the bar exam!",
"I was supposed\nto meet Gibdo\nfor lunch.\nBut he got\nwrapped up in\nsomething!", "I'm surprised Moblin's tusks are so gross.\n\nHe always has his Trident with him!",
"Goriya sure\nhas changed\nin this game.\nI hope he\ncomes back\naround!", "Don't tell Stalfos I'm here.\n\nHe has a bone to pick with me!",
"Hinox actually\nwants to be a\nlawyer.\nToo bad he\nbombed the\nBar exam!", "I got Wallmaster to help me move furniture.\n\nHe was really handy!",
"I'm surprised\nMoblin's tusks\nare so gross.\nHe always has\nhis Trident\nwith him!", "Wizzrobe was just here.\n\nHe always vanishes right before we get the check!",
"Don't tell\nStalfos I'm\nhere.\nHe has a bone\nto pick with\nme!", "I shouldn't have picked up Zora's tab.\n\nThat guy drinks like a fish!",
"I got\nWallmaster to\nhelp me move\nfurniture.\nHe was really\nhandy!", "I was sharing a drink with Poe.\n\nFor no reason, he left in a heartbeat!",
"Wizzrobe was\njust here.\nHe always\nvanishes right\nbefore we get\nthe check!", "Don't trust horsemen on Death Mountain.\n\nThey're Lynel the time!",
"I shouldn't\nhave picked up\nZora's tab.\nThat guy\ndrinks like\na fish!", "Today's special is battered bat.\n\nGot slapped for offering a lady a Keese!",
"I was sharing\na drink with\nPoe.\nFor no reason,\nhe left in a\nheartbeat!", "Don't walk under propellered pineapples.\n\nYou may end up wearing a pee hat!",
"Don't trust\nhorsemen on\nDeath Mountain.\nThey're Lynel\nthe time!", "My girlfriend burrowed under the sand.\n\nSo I decided to Leever!",
"Today's\nspecial is\nbattered bat.\nGot slapped\nfor offering a\nlady a Keese!", "Geldman wants to be a Broadway star.\n\nHe's always practicing Jazz Hands!",
"Don't walk\nunder\npropellered\npineapples.\nYou may end up\nwearing\na pee hat!", "Octoballoon must be mad at me.\n\nHe blows up at the sight of me!",
"My girlfriend\nburrowed under\nthe sand.\nSo I decided\nto Leever!", "Toppo is a total pothead.\n\nHe hates it when you take away his grass",
"Geldman wants\nto be a\nBroadway star.\nHe's always\npracticing\nJazz Hands!", "I lost my shield by that house.\n\nWhy did they put up a Pikit fence?!",
"Octoballoon\nmust be mad\nat me.\nHe blows up\nat the sight\nof me!", "Know that fox in Steve's Town?\n\nHe'll Pikku pockets if you aren't careful",
"Toppo is a\ntotal pothead.\n\nHe hates it\nwhen you take\naway his grass", "Dash through Dark World bushes.\n\nYou'll see Ganon is tryin to Stal you!",
"I lost my\nshield by\nthat house.\nWhy did they\nput up a\nPikit fence?!", "Eyegore!\n\nYou gore!\n\nWe all gore those jerks with arrows!",
"Know that fox\nin Steve's\nTown?\nHe'll Pikku\npockets if you\naren't careful", "I like my whiskey neat.\n\nSome prefer it Octoroks!",
"Dash through\nDark World\nbushes.\nYou'll see\nGanon is tryin\nto Stal you!", "I consoled Freezor over a cup of coffee.\n\nHis problems just seemed to melt away!",
"Eyegore!\n\nYou gore!\nWe all gore\nthose jerks\nwith arrows!", "Magic droplets of water don't shut up.\n\nThey just Kyameron!",
"I like my\nwhiskey neat.\n\nSome prefer it\nOctoroks!", "I bought hot wings for Sluggula.\n\nThey gave him explosive diarrhea!",
"I consoled\nFreezor over a\ncup of coffee.\nHis problems\njust seemed to\nmelt away!", "Hardhat Beatle won't Let It Be?\n\nTell it to Get Back or give it a Ticket to Ride down a hole!",
"Magic droplets\nof water don't\nshut up.\nThey just\nKyameron!",
"I bought hot\nwings for\nSluggula.\nThey gave him\nexplosive\ndiarrhea!",
"Hardhat Beetle\nwon't\nLet It Be?\nTell it to Get\nBack or give\nit a Ticket to\nRide down\na hole!",
] ]
junk_texts = [ junk_texts = [
@@ -349,16 +344,15 @@ junk_texts = [
] ]
KingsReturn_texts = [ KingsReturn_texts = [
'Who is this even', "Who is this even",
'When did he get here', 'When did he get here',
'The Harem'
] * 2 + [ ] * 2 + [
"the return of the king", "The Return of the King",
"fellowship of the ring", "Fellowship of the Ring",
"the two towers", "The Two Towers",
] ]
Sanctuary_texts = [ Sanctuary_texts = [
'A Priest\'s love' "a priest's love"
] * 2 + [ ] * 2 + [
"the loyal priest", "the loyal priest",
"read a book", "read a book",
@@ -488,7 +482,7 @@ class Credits(object):
], ],
'pedestal': [ 'pedestal': [
SceneSmallCreditLine(19, 'and the master sword'), SceneSmallCreditLine(19, 'and the master sword'),
SceneSmallAltCreditLine(21, 'sleeps again···'), SceneSmallAltCreditLine(21, 'sleeps again'),
SceneLargeCreditLine(23, 'Forever!'), SceneLargeCreditLine(23, 'Forever!'),
], ],
} }
@@ -832,6 +826,8 @@ class CharTextMapper(object):
class RawMBTextMapper(CharTextMapper): class RawMBTextMapper(CharTextMapper):
char_map = {' ': 0xFF, char_map = {' ': 0xFF,
'/': 0x97,
'': 0x98,
'': 0x99, # Cursor '': 0x99, # Cursor
'': 0xC4, '': 0xC4,
'': 0xC5, '': 0xC5,
@@ -1315,7 +1311,8 @@ class GoldCreditMapper(CharTextMapper):
class GreenCreditMapper(CharTextMapper): class GreenCreditMapper(CharTextMapper):
char_map = {' ': 0x9F, char_map = {' ': 0x9F,
'.': 0x52, '': 0xFD,
'.': 0xFE,
'·': 0x52} '·': 0x52}
alpha_offset = -0x29 alpha_offset = -0x29
alpha_lower_offset = -0x29 alpha_lower_offset = -0x29

Binary file not shown.