<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mm/tools/weekeventregconvert.py, branch main</title>
<subtitle>Decompilation of The Legend of Zelda: Majora’s Mask</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/'/>
<entry>
<title>Document a few symbols regarding the Ikana Canyon guard (#1868)</title>
<updated>2026-07-19T14:59:01+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-07-19T14:59:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=a6850d214927aafa2635177510a5029ab7e989ea'/>
<id>a6850d214927aafa2635177510a5029ab7e989ea</id>
<content type='text'>
* Document a few symbols regarding the Ikana Canyon guard

* Use switch-case in lieu of temp

* Reformat switch-case

* Re-format switch-case, fix braces</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Document a few symbols regarding the Ikana Canyon guard

* Use switch-case in lieu of temp

* Reformat switch-case

* Re-format switch-case, fix braces</pre>
</div>
</content>
</entry>
<entry>
<title>Document `EnTest3` (#1881)</title>
<updated>2026-07-18T19:20:31+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-07-18T19:20:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=5fd95d51f9ca06194a88c37362461e661c2e9ab6'/>
<id>5fd95d51f9ca06194a88c37362461e661c2e9ab6</id>
<content type='text'>
* Document `EnTest3`

* Add comments for enum-type fields

* Add scheduled action index comments

Co-authored-by: Copilot &lt;copilot@github.com&gt;

* Use enums in comparisons

* Rename `sp3C`

* Rewrite comments on speak data

Co-authored-by: Copilot &lt;copilot@github.com&gt;

* Reformat

* Missed a text comment

* Missed another text comment

---------

Co-authored-by: Copilot &lt;copilot@github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Document `EnTest3`

* Add comments for enum-type fields

* Add scheduled action index comments

Co-authored-by: Copilot &lt;copilot@github.com&gt;

* Use enums in comparisons

* Rename `sp3C`

* Rewrite comments on speak data

Co-authored-by: Copilot &lt;copilot@github.com&gt;

* Reformat

* Missed a text comment

* Missed another text comment

---------

Co-authored-by: Copilot &lt;copilot@github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Bombers Part 3: `EnBombers` (#1849)</title>
<updated>2026-07-18T17:52:47+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-07-18T17:52:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=29425bb7cfa5a074d73994b23e0144d6f070c6f6'/>
<id>29425bb7cfa5a074d73994b23e0144d6f070c6f6</id>
<content type='text'>
* Bombers Part 3: Wandering NPCs and caught players

* Rename WEEKEVENTREG flags

* Fix missing rename of `unk_2A0`</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Bombers Part 3: Wandering NPCs and caught players

* Rename WEEKEVENTREG flags

* Fix missing rename of `unk_2A0`</pre>
</div>
</content>
</entry>
<entry>
<title>Bombers Part 2: Guard (#1848)</title>
<updated>2026-04-26T13:59:30+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-04-26T13:59:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=354a8637e1f0eba371ec39b135e1e09f7b7bfb93'/>
<id>354a8637e1f0eba371ec39b135e1e09f7b7bfb93</id>
<content type='text'>
* Bombers Part 2: Guard

* Fix errors

* Re-rename functions</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Bombers Part 2: Guard

* Fix errors

* Re-rename functions</pre>
</div>
</content>
</entry>
<entry>
<title>Document `WEEKEVENTREG` enabling peephole in Curiosity Shop (#1870)</title>
<updated>2026-04-17T11:26:40+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-04-17T11:26:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=9eb9f6f9786bef851871630e2009c01ea11cbff8'/>
<id>9eb9f6f9786bef851871630e2009c01ea11cbff8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Document `EnKendoJs` (#1838)</title>
<updated>2026-04-08T11:34:59+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-04-08T11:34:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=33f8d3c62b483c05e5d1bc9ccbc3f862141a2a00'/>
<id>33f8d3c62b483c05e5d1bc9ccbc3f862141a2a00</id>
<content type='text'>
* Document `EnKendoJs`

* Fix typedefs

* Fix isSlashingLog reference

* Found out what that unused animation was

* Rename animation constants

* Rename WEEKEVENTREG flag

* Remove trailing whitespaces

* Fix uses of isSlashingLog

* Rename Skel object

* Deciphered FF part of params

* Dismantle message enum

* Remove mask message macro

* Refactor message start macro

* Rename text ID arrays

* Use boolean values for isRetracting

* Remove statement added by faulty merge

* Rename message handler functions

* Minigame round union for clarity</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Document `EnKendoJs`

* Fix typedefs

* Fix isSlashingLog reference

* Found out what that unused animation was

* Rename animation constants

* Rename WEEKEVENTREG flag

* Remove trailing whitespaces

* Fix uses of isSlashingLog

* Rename Skel object

* Deciphered FF part of params

* Dismantle message enum

* Remove mask message macro

* Refactor message start macro

* Rename text ID arrays

* Use boolean values for isRetracting

* Remove statement added by faulty merge

* Rename message handler functions

* Minigame round union for clarity</pre>
</div>
</content>
</entry>
<entry>
<title>Rename `WEEKEVENTREG_73_80` (#1842)</title>
<updated>2025-12-09T11:22:23+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2025-12-09T11:22:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=18a8a1bea7dcbcfba58da59391deb770f19a6090'/>
<id>18a8a1bea7dcbcfba58da59391deb770f19a6090</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>`EnPoComposer` and `object_po_composer` further documented (#1833)</title>
<updated>2025-12-06T20:03:15+00:00</updated>
<author>
<name>Isghj</name>
<email>42048411+isghj5@users.noreply.github.com</email>
</author>
<published>2025-12-06T20:03:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=5898c3e2b0603acfb0cb55f7d1226853f9dfefaf'/>
<id>5898c3e2b0603acfb0cb55f7d1226853f9dfefaf</id>
<content type='text'>
* PoComposer: some docs

* PoComposer: the rest of the object documented

* PoComposer: docs tweaked

* PoComposer: missing weekevent reg in a schedule file wasnt found by rename script

* PoComposer: document tweaks

* PoComposer: forgot the texture name</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* PoComposer: some docs

* PoComposer: the rest of the object documented

* PoComposer: docs tweaked

* PoComposer: missing weekevent reg in a schedule file wasnt found by rename script

* PoComposer: document tweaks

* PoComposer: forgot the texture name</pre>
</div>
</content>
</entry>
<entry>
<title>Msgevent OK (#1637)</title>
<updated>2024-06-15T04:35:22+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2024-06-15T04:35:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=0b375cadb0af6f2d95844cc674f84be0b148ae10'/>
<id>0b375cadb0af6f2d95844cc674f84be0b148ae10</id>
<content type='text'>
* Decompiled, some commands still unnamed

* Use full weekevent reg names

* Fix func_8094E69C

* Fix Player_GetMask

* Eventinf, mask worn, and item action argument formatting

* decimal rupees

* Times (day, hours, minutes) as decimal

* msgEventScriptPos

* Callbacks

* Name final commands

* Enum

* Arrays

* functions

* Small cleanups

* Clean up actors

* Remove event from some variable names to make them shorter

* Some more function renames

* newline

* Missed a few unks in commands

* Update functions.txt

* PlayerMask

* MSGMODE_PAUSED

* Script time macros

* EnSob1_GetWelcome default

* Whole bunch of renames

* Format

* Add CMD to commands

* Update code_functions

* structs for size

* z64scripts.h

* MsgEventCallback -&gt; MsgScriptCallback

* format

* MsgEvent_RunScript stop

* Remove cmd handler comment

* cmd -&gt; script in MsgEvent_RunScript

---------

Co-authored-by: Thar0 &lt;17233964+Thar0@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Decompiled, some commands still unnamed

* Use full weekevent reg names

* Fix func_8094E69C

* Fix Player_GetMask

* Eventinf, mask worn, and item action argument formatting

* decimal rupees

* Times (day, hours, minutes) as decimal

* msgEventScriptPos

* Callbacks

* Name final commands

* Enum

* Arrays

* functions

* Small cleanups

* Clean up actors

* Remove event from some variable names to make them shorter

* Some more function renames

* newline

* Missed a few unks in commands

* Update functions.txt

* PlayerMask

* MSGMODE_PAUSED

* Script time macros

* EnSob1_GetWelcome default

* Whole bunch of renames

* Format

* Add CMD to commands

* Update code_functions

* structs for size

* z64scripts.h

* MsgEventCallback -&gt; MsgScriptCallback

* format

* MsgEvent_RunScript stop

* Remove cmd handler comment

* cmd -&gt; script in MsgEvent_RunScript

---------

Co-authored-by: Thar0 &lt;17233964+Thar0@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>EnInvadepoh (Aliens, UFO, Invasion Handler, etc.) OK and documented (#1614)</title>
<updated>2024-04-29T15:19:55+00:00</updated>
<author>
<name>Tom Overton</name>
<email>tom-overton@users.noreply.github.com</email>
</author>
<published>2024-04-29T15:19:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=7c93d5e1253bb631cba185918ad2f0957da1c437'/>
<id>7c93d5e1253bb631cba185918ad2f0957da1c437</id>
<content type='text'>
* deimplementation complete

* newlines

* match

* data import

* back port cleanup changes

* stuff

* naming and such

* all funcs provisionally named

* more stuff

* merge

* Fix merge issues

* begin cleanup

* Use constants for all face animation data

* Use THIS like almost every actor does

* Change "Light Ball" to "UFO"

* Rename the alien types

* EnInvadePoh -&gt; EnInvadepoh

* Rename the types

* Rename some Twinmold stuff

* ConfusedRomani -&gt; SilentRomani

* Fix stack size issues with EnInvadepoh_Cremia_Init

* Move a struct out of the header to where it belongs

* Some header cleanup and struct names

* Name remaining struct vars

* Some more struct var renames

* Finish reviewing the struct var names

* Rename most of the interactInfo stuff

* Consistency

* Remove unused union

* Define EN_INVADEPOH_LIMB_MAX like EndingHero6 does

* Fix header

* Update functions.txt and variables.txt

* Create macros for accessing spawn time and kill count

* Some defines

* Some minor comments and cleanup

* Rename some functions

* Comments for those three functions

* Draw function cleanups

* Some damaged and dead cleanup

* Death scale stuff

* Good chunk of alien functions

* Invasion state naming

* Weekeventreg naming

* Happy with &gt;20% of functions now

* A couple more functions

* More consistent names for BSS variables

* Some Init cleanup

* Happy with 30% of the functions now

* Finish the abductors

* Some random functions to get the functions I'm happy with &gt;1/3rd

* Use `InitPath` for everything

* UFO functions done, &gt;40% functions I'm happy with

* Do a lot of work on InvasionHandler action funcs

* Finish invasion handler code

* InitVars

* Rename the "closest alien" stuff to "closest alien threat"

* Finish most of the dog functions

* Lots of small stuff here and there

* Finish documenting the dog bug

* Document `EnInvadepoh_Dog_IsCloseToPath`

* `EnInvadepoh_Dog_MoveAlongPath` and other fixes

* Simple comment for `EnInvadepoh_Dog_Move`

* Various path functions, finish dog

* Consistently use "SetMatrixTranslation"

* Change all the angleToPlayer stuff to pitch/yaw

* Some RewardRomani functions

* Finish RewardRomani

* Finish Night1Romani and BarnRomani, &gt;75% of functions done

* Some minor stuff

* Document bug

* Finish all of SilentRomani minus the Idle functions

* Finish EnInvadepoh_SilentRomani_Idle

* Finish Night3Cremia

* Finish Night3Romani

* Finish `EnInvadepoh_Ufo_SpawnSparkles`

* Finish some library functions

* Finish the alien pathing stuff

* Finish Romani path stuff

* Finish all non-InteractInfo stuff

* InteractInfo -&gt; ModelInfo

* Create a `EnInvadepohFaceAnimBase` struct

* Name some of the animation data

* Switch to `Chained`/`ChainedDelay` and do some other cleanup

* Name all of the animation data

* Finish documenting and cleaning up the face animation functions

* Some comments at the top of the file

* Clean up forward declarations

* Clean some stuff up to the ModelInfo functions

* Fix build

* Move the animation data around so all the ModelInfo functions are adjacent

* Review

* Use `CLOCK_TIME_MINUTE` in `EnInvadepoh_Alien_PathComputeProgress`

* Respond to some of Anghelo's review

* Update comment on spawn time macros explaining what indices are usable

* Create a `DEATH_SCALE` define

* `WEEKEVENTREG_RECEIVED_MILK_BOTTLE` -&gt; `WEEKEVENTREG_RECEIVED_ALIENS_BOTTLE`

* Forgot to do the bomber's notebook stuff too

* parallelogram -&gt; rectangle

* Respond to engineer's review

* Slight spacing fix

---------

Co-authored-by: petrie911 &lt;petrie911@users.noreply.github.com&gt;
Co-authored-by: petrie911 &lt;pmontag@Monday.localdomain&gt;
Co-authored-by: angie &lt;angheloalf95@gmail.com&gt;
Co-authored-by: engineer124 &lt;engineer124engineer124@gmail.com&gt;
Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* deimplementation complete

* newlines

* match

* data import

* back port cleanup changes

* stuff

* naming and such

* all funcs provisionally named

* more stuff

* merge

* Fix merge issues

* begin cleanup

* Use constants for all face animation data

* Use THIS like almost every actor does

* Change "Light Ball" to "UFO"

* Rename the alien types

* EnInvadePoh -&gt; EnInvadepoh

* Rename the types

* Rename some Twinmold stuff

* ConfusedRomani -&gt; SilentRomani

* Fix stack size issues with EnInvadepoh_Cremia_Init

* Move a struct out of the header to where it belongs

* Some header cleanup and struct names

* Name remaining struct vars

* Some more struct var renames

* Finish reviewing the struct var names

* Rename most of the interactInfo stuff

* Consistency

* Remove unused union

* Define EN_INVADEPOH_LIMB_MAX like EndingHero6 does

* Fix header

* Update functions.txt and variables.txt

* Create macros for accessing spawn time and kill count

* Some defines

* Some minor comments and cleanup

* Rename some functions

* Comments for those three functions

* Draw function cleanups

* Some damaged and dead cleanup

* Death scale stuff

* Good chunk of alien functions

* Invasion state naming

* Weekeventreg naming

* Happy with &gt;20% of functions now

* A couple more functions

* More consistent names for BSS variables

* Some Init cleanup

* Happy with 30% of the functions now

* Finish the abductors

* Some random functions to get the functions I'm happy with &gt;1/3rd

* Use `InitPath` for everything

* UFO functions done, &gt;40% functions I'm happy with

* Do a lot of work on InvasionHandler action funcs

* Finish invasion handler code

* InitVars

* Rename the "closest alien" stuff to "closest alien threat"

* Finish most of the dog functions

* Lots of small stuff here and there

* Finish documenting the dog bug

* Document `EnInvadepoh_Dog_IsCloseToPath`

* `EnInvadepoh_Dog_MoveAlongPath` and other fixes

* Simple comment for `EnInvadepoh_Dog_Move`

* Various path functions, finish dog

* Consistently use "SetMatrixTranslation"

* Change all the angleToPlayer stuff to pitch/yaw

* Some RewardRomani functions

* Finish RewardRomani

* Finish Night1Romani and BarnRomani, &gt;75% of functions done

* Some minor stuff

* Document bug

* Finish all of SilentRomani minus the Idle functions

* Finish EnInvadepoh_SilentRomani_Idle

* Finish Night3Cremia

* Finish Night3Romani

* Finish `EnInvadepoh_Ufo_SpawnSparkles`

* Finish some library functions

* Finish the alien pathing stuff

* Finish Romani path stuff

* Finish all non-InteractInfo stuff

* InteractInfo -&gt; ModelInfo

* Create a `EnInvadepohFaceAnimBase` struct

* Name some of the animation data

* Switch to `Chained`/`ChainedDelay` and do some other cleanup

* Name all of the animation data

* Finish documenting and cleaning up the face animation functions

* Some comments at the top of the file

* Clean up forward declarations

* Clean some stuff up to the ModelInfo functions

* Fix build

* Move the animation data around so all the ModelInfo functions are adjacent

* Review

* Use `CLOCK_TIME_MINUTE` in `EnInvadepoh_Alien_PathComputeProgress`

* Respond to some of Anghelo's review

* Update comment on spawn time macros explaining what indices are usable

* Create a `DEATH_SCALE` define

* `WEEKEVENTREG_RECEIVED_MILK_BOTTLE` -&gt; `WEEKEVENTREG_RECEIVED_ALIENS_BOTTLE`

* Forgot to do the bomber's notebook stuff too

* parallelogram -&gt; rectangle

* Respond to engineer's review

* Slight spacing fix

---------

Co-authored-by: petrie911 &lt;petrie911@users.noreply.github.com&gt;
Co-authored-by: petrie911 &lt;pmontag@Monday.localdomain&gt;
Co-authored-by: angie &lt;angheloalf95@gmail.com&gt;
Co-authored-by: engineer124 &lt;engineer124engineer124@gmail.com&gt;
Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;</pre>
</div>
</content>
</entry>
</feed>
