- 37
- Posts
- 1
- Years
- Seen Apr 6, 2025
This is a simple method to add scripts, add an object to a map, and apply a script to add a free (doesn't require mushrooms) Move Maniac (aka Move Relearner or Move Rememberer) to any map.
This is mostly an edit of the scripts.inc and text.inc files found in
Go to
Now go to
Now open
Open Porymap and open a map where you want to add a Move Maniac (I used the Pokémon Centers). Above the map image select the Events tab. On the right is a button with a green circle and a white plus sign on it. It should say "New Object", but if it doesn't, click on the arrow to the right of the button and select New Object. You'll notice a character sprite appear on the screen (Agatha's, to be precise). Click and drag the sprite to where you want it on the map (or manipulate the x/y numbers on the right). In the Sprite drop-down list, select the sprite you want for your Move Maniac (the game's version is "FAT_MAN"). In the Movement drop-down list you can select to have the character move or choose a direction for the character to face (it faces down by default). In the Script box type
This is mostly an edit of the scripts.inc and text.inc files found in
data\map\TwoIsland_House
, which is where the original Move Maniac is located. This guide assumes you have Porymap installed. If you don't, you really should because it makes adding map objects so much easier than trying to type it.Go to
data\scripts
and add the file move_relearner_pc.inc (or whatever you want to name it). Open the file in a text editor and add this following:
Spoiler:
Code:
Common_EventScript_MoveRelearner::
goto_if_questlog EventScript_ReleaseEnd
special QuestLog_CutRecording
lock
faceplayer
msgbox gText_WantMeToTeachMove, MSGBOX_YESNO
goto_if_eq VAR_RESULT, NO, EventScript_EndTutorMove
goto EventScript_ChooseMonToTutor
end
EventScript_ChooseMonToTutor::
msgbox gText_TutorWhichMon
special ChooseMonForMoveRelearner
waitstate
goto_if_ge VAR_0x8004, PARTY_SIZE, EventScript_EndTutorMove
special IsSelectedMonEgg
goto_if_eq VAR_RESULT, TRUE, EventScript_CantTutorEgg
goto_if_eq VAR_0x8005, 0, EventScript_NoMoveToTutorMon
goto EventScript_ChooseMoveToTeach
end
EventScript_ChooseMoveToTeach::
msgbox gText_TeachWhichMove
special TeachMoveRelearnerMove
waitstate
goto_if_eq VAR_0x8004, 0, EventScript_ChooseMonToTutor
goto EventScript_EndTutorMove
end
EventScript_NoMoveToTutorMon::
msgbox gText_NoMoveICanTeachThatMon
goto EventScript_ChooseMonToTutor
end
EventScript_CantTutorEgg::
msgbox gText_CantTeachAnEgg
goto EventScript_ChooseMonToTutor
end
EventScript_EndTutorMove::
msgbox gText_ComeBackAgain
release
end
Now go to
data\text
and create a file with the same name and extension ("move_relearner_pc.inc"). Open this file in a text editor and add the following:
Spoiler:
Code:
gText_WantMeToTeachMove::
.string "I'm a POKÉMON MOVE RELEARNER.\p"
.string "I know every single move that\n"
.string "POKÉMON learn as they grow.\p"
.string "Do you want me to teach a move to\n"
.string "a POKÉMON of yours?$"
gText_TutorWhichMon::
.string "Which POKÉMON needs tutoring?$"
gText_TeachWhichMove::
.string "Which move should I teach?$"
gText_NoMoveICanTeachThatMon::
.string "Sorry…\p"
.string "It doesn't appear as if I have a\n"
.string "move I can teach that POKÉMON.$"
gText_CantTeachAnEgg::
.string "Hunh? There isn't a single move\n"
.string "that I can teach an EGG.$"
gText_ComeBackAgain::
.string "Come see me again if you need\n"
.string "another move taught to a POKÉMON.$"
Now open
data\event_scripts.s
in a text editor. Look for a line beginning with ".include" and below it add .include "data/scripts/move_relearner_pc.inc"
and .include "data/text/move_relearner_pc.inc"
. I honestly don't know if the precise location matters, this is just where I put those lines and it's been working for me.Open Porymap and open a map where you want to add a Move Maniac (I used the Pokémon Centers). Above the map image select the Events tab. On the right is a button with a green circle and a white plus sign on it. It should say "New Object", but if it doesn't, click on the arrow to the right of the button and select New Object. You'll notice a character sprite appear on the screen (Agatha's, to be precise). Click and drag the sprite to where you want it on the map (or manipulate the x/y numbers on the right). In the Sprite drop-down list, select the sprite you want for your Move Maniac (the game's version is "FAT_MAN"). In the Movement drop-down list you can select to have the character move or choose a direction for the character to face (it faces down by default). In the Script box type
Common_EventScript_MoveRelearner
, save the map, and you're done. Compile, run the game, and the character should be there ready to teach a Pokémon a forgotten move.
Last edited: