ABCDEFGHIJKLMNO
1
Command IDBeaterScript Names
(EndScr/End/FCall/FJump/Move)
Parameters
(orange = ushort, turquoise = const ushort, green = ref ushort, magenta/purple = returnable (int/bool)
red = byte, blue = int, light cyan/dark cyan = fx16/fx32). Names must be valid C-style identifiers.
ExplanationPokéScript Package/ClassPokéScript Name
2
0x0VMNopDoes nothing.pokescript.vm.VMNop
3
0x1VMNop2Does nothing.pokescript.vm.VMNop2
4
0x2VMHaltEnds a script.pokescript.vm.VMHalt
5
0x3VMSleepnumPauses execution for num frames. (30 frames in the overworld = 1 second).system.RuntimeSleep
6
0x4VMCalladdrJumps to a relative script branch and transfers the program counter to it.pokescript.vm.VM_Call
7
0x5VMReturnEnds the current script branch and returns the program counter to the original script (?).pokescript.vm.VM_Return
8
0x6DebugPrintunusedTODOpokescript.vm.VMDebugPrint
9
0x7DebugStackunusedTODOpokescript.vm.StackCtrlDebugStack
10
0x8StackPushConstvaluePushes a variable onto the stack.pokescript.vm.StackCtrlPushConst
11
0x9StackPushvarPushes a variable's value onto the stack.pokescript.vm.StackCtrlPush
12
0xaStackPopdestRemoves a variable from the stack.pokescript.vm.StackCtrlPopTo
13
0xbStackDiscardClears the stack (?).pokescript.vm.StackCtrlPop
14
0xcStackAddAdds two variables on the stack.pokescript.vm.StackCtrlStackAdd
15
0xdStackSubSubtracts two variables on the stack.pokescript.vm.StackCtrlStackSub
16
0xeStackMulMultiplies two variables on the stack.pokescript.vm.StackCtrlStackMul
17
0xfStackDivDivides two variables on the stack.pokescript.vm.StackCtrlStackDiv
18
0x10StackPushFlagflagStores the flag on the stack(?).pokescript.vm.StackCtrlPushFlag
19
0x11StackCmpcondCompares the two topmost elements of the stack based on a condition and pushes the result back onto the stack.pokescript.vm.StackCtrlStackCmp
20
0x12WorkAndvaroperandvar &= operandpokescript.vm.MathAnd
21
0x13WorkOrvaroperandvar |= operandpokescript.vm.MathOr
22
0x14VMRegSet8dstRegvalStores an 8-bit integer in a global variable (referenced by id).pokescript.vm.VMRegSet8
23
0x15VMRegSet32dstRegvalStores a 32-bit integer in a global variable (referenced by id).pokescript.vm.VMRegSet32
24
0x16VMRegMovdstRegsrcRegTODOpokescript.vm.VMRegMov
25
0x17VMRegCmp8lhsRegrhsRegCompares the values of two global variables (referenced by id).pokescript.vm.VMRegCmp8
26
0x18VMRegCmpConst8regvalueCompares the values of a global variable and a user supplied variable.pokescript.vm.VMRegCmpConst8
27
0x19WorkCmpConstvarvalueCompares the values of a variable and a user supplied number.pokescript.vm.MathCmpVarConst
28
0x1aWorkCmpWorklhsVarrhsVarCompares the values of two variables.pokescript.vm.MathCmpVarVar
29
0x1bRTCallGlobalAsyncscrIdCalls a common script alongside the currently running script.system.RuntimeGlobalCallAsync
30
0x1cRTCallGlobalscrIdCalls a common script and waits until it completes.system.RuntimeGlobalCall
31
0x1dRTEndGlobalStops the standard function.system.RuntimeGlobalEnd
32
0x1eVMJumpaddrJumps to and sets the program counter to a relative script branch (whose distance is specified in addr).pokescript.vm.VM_Jump
33
0x1fVMJumpIfcondaddrJumps to and sets the program counter to a relative script branch (whose distance is specified in addr), if the given condition is true.pokescript.vm.VM_JumpIf
34
0x20VMCallIfcondaddrJumps to but doesn't set the program counter to a relative script branch (whose distance is specified in addr), if the given condition is true.pokescript.vm.VM_CallIf
35
0x21RTReserveScriptscrIdReserves the next executed SCRID to a constant value. Can be used across a warp as well to start another script automatically.system.RuntimeReserveScript
36
0x22FieldGetContinueFlagdestTODO
37
0x23FlagSetflagSets a given system flag to TRUE (1).system.EventFlagsSet
38
0x24FlagResetflagClears the state of a given system flag.system.EventFlagsClear
39
0x25FlagGetflagdestReads the value of a flag, and stores it in var.system.EventFlagsGet
40
0x26WorkAddvaroperandAccesses the second variable, grabs the value of the variable, then adds it to the value in the first variable.pokescript.vm.MathAdd
41
0x27WorkSubvaroperandAccesses the second variable, grabs the value of the variable, then subtracts it from the value in the first variable.pokescript.vm.MathSub
42
0x28WorkSetConstvarvalueStores val in the specified variable.pokescript.vm.MathSetConst
43
0x29WorkGetdestsrcCopies the value in src to the variable dest. Also known as: var.value = src.valuesystem.EventWorksGet
44
0x2aWorkSetdstsrcCopies the value in src to the variable dest. Also known as: var.value = src.value (?)system.EventWorksSet
45
0x2bWorkMulvaroperandMultiplies the value of var by val. Also known as: var.value *= valpokescript.vm.MathMul
46
0x2cWorkDivvaroperandDivides the value of var by val. Also known as: var.value /= valpokescript.vm.MathDiv
47
0x2dWorkModvaroperandDivides the value of var by val and returns the remainder of the operation. Also known as: var.value %= valpokescript.vm.MathMod
48
0x2eActorPauseAllFreezes all NPCs.event.actors.ActorPauseAll
49
0x2fActorUnlockAllUnfreezes all NPCs.event.actors.ActorUnpauseAll
50
0x30RTFinishSubEventsFinished all script sub-events that certain commands may have invoked.system.RuntimeFinishSubEvents
51
0x31InputWaitABWaits until "A" or "B" is pressed.system.InputABKeyWait
52
0x32InputWaitLastWaits until any of A/B/Up/Down/Left/Right is pressed.system.InputLastKeyWait
53
0x33MsgSetAutoscrollsenabledEnables/disabled message box auto-scrolling.event.dialogs.MessageSetAutoscrolls
54
0x34MsgSystemmsgIdposOpens a system message box.event.dialogs.MessageSystem
55
0x35MsgSystemAsyncmsgIdposOpens a system message box, but allows additional code to run while it's up.event.dialogs.MessageSystemAsync
56
0x36MsgSystemCloseCloses the system message box.event.dialogs.MessageCloseSystem
57
0x37MsgSetLoadingSpinnerhideShows/hides a loading spinner at the system message box.event.dialogs.MessageSetLoadingSpinner
58
0x38MsgInfomsgIdposOpens a message which isn't associated with an NPC.event.dialogs.MessageInfo
59
0x39MsgInfoCloseCloses the message which isn't associated with an NPC.event.dialogs.MessageCloseInfo
60
0x3aMsgMultimsgIdxyhandleOpens a message at position (x, y). The coordinates are based on screen hardware tiles (8 pixels).event.dialogs.MessageMulti
61
0x3bMsgWinCloseNohandleCloses a message window handle.event.dialogs.MessageCloseWin
62
0x3cMsgActorExtextFilemsgIdactorIdpostypeOpen a message window bound to an actor. The actor is specified manually.event.dialogs.MessageActorEx
63
0x3dMsgActortextFilemsgIdpostypeOpen a message window bound to an actor. The actor is automatically determined.event.dialogs.MessageActor
64
0x3eMsgActorCloseCloses the actor message.event.dialogs.MessageCloseActor
65
0x3fMsgWinCloseAllCloses all message windows.event.dialogs.MessageCloseAll
66
0x40MoneyWinDispxyShows the money box at coords (x, y).event.dialogs.MoneyWinShow
67
0x41MoneyWinCloseCloses the money box.event.dialogs.MoneyWinClose
68
0x42MoneyWinUpdateUpdates the values in the money box.event.dialogs.MoneyWinUpdate
69
0x43MsgPlaceSignmsgIdtypeOpens a place sign message window.event.dialogs.MessagePlaceSign
70
0x44MsgPlaceSignCloseCloses the place sign message window.event.dialogs.MessageClosePlaceSign
71
0x45MsgCheckerBGmsgIdposXposYunusedOpens a message with a checkerboard background.event.dialogs.MessageCheckerMsg
72
0x46MsgCheckerBGCloseCloses the checkerboard message.event.dialogs.MessageCloseCheckerMsg
73
0x47YesNoWindestOpens a box with two options, yes or no. The result of the choice made by the player is stored in dest.event.dialogs.YesNoWinShow
74
0x48MsgActorGenderedtextFilemsgIdMmsgIdFactorIdpostypeA message which changes depending on the player's gender.event.dialogs.MessageActorGendered
75
0x49MsgActorVersionedtextFilemsgIdWmsgIdBactorIdpostypeA message which changes depending on whether the game is Black or White.event.dialogs.MessageActorVersioned
76
0x4aMsgScreamidposOpens a message with a spiked border. Known as the angry message by some.event.dialogs.MessageSpiked
77
0x4bMsgWaitAdvanceWaits until all messages have finished scrolling.event.dialogs.MessageWaitAdvance
78
0x4cWordSetPlayerNamestrbufIdxStores the name of the player to a string buffer.system.text.WordSetLoadPlayerName
79
0x4dWordSetItemNamestrbufIdxitemIdTODOsystem.text.WordSetLoadItemName
80
0x4eWordSetItemNameExstrbufIdxitemIdamountarticleTODOsystem.text.WordSetLoadItemNameEx
81
0x4fWordSetItemNameWithArticlestrbufIdxitemIdTODOsystem.text.WordSetLoadItemNameWithArticle
82
0x50WordSetTMMoveNamestrbufIdxitemIdTODOsystem.text.WordSetLoadTMMoveName
83
0x51WordSetMoveNamestrbufIdxmoveIdTODOsystem.text.WordSetLoadMoveName
84
0x52WordSetItemPocketNamestrbufIdxitemIdTODOsystem.text.WordSetLoadItemPocketName
85
0x53WordSetPartyPokeSpeciesstrbufIdxpartyIdxTODOsystem.text.WordSetLoadPartyPokeSpecies
86
0x54WordSetPartyPokeNamestrbufIdxpartyIdxTODOsystem.text.WordSetLoadPartyPokeName
87
0x55WordSetDaycarePokeSpeciesstrbufIdxdaycareSlotTODOsystem.text.WordSetLoadDaycarePokeSpecies
88
0x56WordSetPokeTypeNamestrbufIdxtypeIdTODOsystem.text.WordSetLoadPokeTypeName
89
0x57WordSetPokeSpeciesstrbufIdxspeciesTODOsystem.text.WordSetLoadPokeSpecies
90
0x58WordSetPokeSpeciesWithArticlestrbufIdxspeciesTODOsystem.text.WordSetLoadPokeSpeciesWithArticle
91
0x59WordSetPlaceNamestrbufIdxzoneIdTODOsystem.text.WordSetLoadPlaceName
92
0x5aWordSetTrendNamestrbufIdxtrendIdTODOsystem.text.WordSetLoadTrendName
93
0x5bWordSetDaycarePokeNamestrbufIdxspeciesTODOsystem.text.WordSetLoadDaycarePokeName
94
0x5cWordSetNumberstrbufIdxvaluemagnitudeTODOsystem.text.WordSetLoadNumber
95
0x5dWordSetMusicalInfostrbufIdxtypeindexTODOsystem.text.WordSetLoadMusicalInfo
96
0x5eWordSetCountrystrbufIdxcountryIdTODOsystem.text.WordSetLoadCountry
97
0x5fWordSetHobbyNamestrbufIdxhobbyIdTODOsystem.text.WordSetLoadHobbyName
98
0x60WordSetPassPowerNamestrbufIdxpassPowerIdTODOsystem.text.WordSetLoadPassPowerName
99
0x61WordSetTrainerClassNamestrbufIdxclassIdTODOsystem.text.WordSetLoadTrainerClassName
100
0x62WordSetTrainerClassNameWithArticlestrbufIdxclassIdTODOsystem.text.WordSetLoadTrainerClassWithArticle