<feed xmlns='http://www.w3.org/2005/Atom'>
<title>2ship2harkinian/mm/src/code/z_kankyo.c, branch develop-mion</title>
<subtitle>2Ship2Harkinian: Majora’s Mask PC port</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/'/>
<entry>
<title>Bump LUS and OTRExporter, add null audio backend (#1289)</title>
<updated>2025-10-29T16:56:57+00:00</updated>
<author>
<name>Eblo</name>
<email>7004497+Eblo@users.noreply.github.com</email>
</author>
<published>2025-10-29T16:56:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=83921dc012588c520efe0ed8c7ac1406806543c7'/>
<id>83921dc012588c520efe0ed8c7ac1406806543c7</id>
<content type='text'>
* Bump LUS and OTRExporter, add null audio backend

* Missed an include change

* And again

* Thanks macOS

* Another one

* Bump LUS again, fixing SDL audio backend bug

* Sync LUS bump changes to merged PRs

* Bump LUS again

* Update CMakeLists.txt includes</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Bump LUS and OTRExporter, add null audio backend

* Missed an include change

* And again

* Thanks macOS

* Another one

* Bump LUS again, fixing SDL audio backend bug

* Sync LUS bump changes to merged PRs

* Bump LUS again

* Update CMakeLists.txt includes</pre>
</div>
</content>
</entry>
<entry>
<title>Apply MATRIX_FINALIZE_AND_LOAD to port files</title>
<updated>2025-09-17T01:35:45+00:00</updated>
<author>
<name>Eblo</name>
<email>7004497+Eblo@users.noreply.github.com</email>
</author>
<published>2025-09-17T01:35:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=f95441e91529ce2e5b8f58df01c4d5c007764e3d'/>
<id>f95441e91529ce2e5b8f58df01c4d5c007764e3d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Document Room Type (#1740)</title>
<updated>2025-09-16T17:15:50+00:00</updated>
<author>
<name>engineer124</name>
<email>47598039+engineer124@users.noreply.github.com</email>
</author>
<published>2024-11-12T00:46:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=b28f8e090ab756d27cbd93dba006adf43a66fbbf'/>
<id>b28f8e090ab756d27cbd93dba006adf43a66fbbf</id>
<content type='text'>
* roomType

* cleanup
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* roomType

* cleanup
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup gSPMatrix, rename `Matrix_New` -&gt; `Matrix_Finalize`, add MATRIX_FINALIZE_AND_LOAD (#1729)</title>
<updated>2025-09-16T15:16:58+00:00</updated>
<author>
<name>engineer124</name>
<email>47598039+engineer124@users.noreply.github.com</email>
</author>
<published>2024-10-23T00:51:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=111979112a633e03cb65c00899501073fd8a3f16'/>
<id>111979112a633e03cb65c00899501073fd8a3f16</id>
<content type='text'>
* mtx-finalize

* cleanup gSPMatrix
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* mtx-finalize

* cleanup gSPMatrix
</pre>
</div>
</content>
</entry>
<entry>
<title>Animation Cleanup: En_V* and En_W* (#1713)</title>
<updated>2025-09-16T14:19:17+00:00</updated>
<author>
<name>engineer124</name>
<email>47598039+engineer124@users.noreply.github.com</email>
</author>
<published>2024-10-16T13:13:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=eaa39054ab2cbcd2c2ea8b28acb75111b39d8c5b'/>
<id>eaa39054ab2cbcd2c2ea8b28acb75111b39d8c5b</id>
<content type='text'>
* begin anim v and w

* structs

* bgId

* cleanup

* space

* more cleanup

* spacing

* Unsigned
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* begin anim v and w

* structs

* bgId

* cleanup

* space

* more cleanup

* spacing

* Unsigned
</pre>
</div>
</content>
</entry>
<entry>
<title>Another round of port cleanup and fixes</title>
<updated>2025-09-15T02:41:37+00:00</updated>
<author>
<name>Eblo</name>
<email>7004497+Eblo@users.noreply.github.com</email>
</author>
<published>2025-09-15T02:41:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=96b4d9a6bf2ab864feda94d5f5d4be984f48fe51'/>
<id>96b4d9a6bf2ab864feda94d5f5d4be984f48fe51</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a `z64play.h` header (#1646)</title>
<updated>2025-09-14T20:09:03+00:00</updated>
<author>
<name>Anghelo Carvajal</name>
<email>angheloalf95@gmail.com</email>
</author>
<published>2024-06-25T19:17:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=11638bab73c6f56a26111c79f5421cb428e80df7'/>
<id>11638bab73c6f56a26111c79f5421cb428e80df7</id>
<content type='text'>
* z64play.h

* Move macros, functions and variables to header

* cleanup

* Reduce needed headers on z_collision_check

* Change play functions to take PlayState

* Move `Actor_ProcessInitChain` to `ichain.h`

* format

* Update src/code/z_play.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Add macros.h to sys_math3d.c

* Rename SequenceContext to SceneSequences

---------

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* z64play.h

* Move macros, functions and variables to header

* cleanup

* Reduce needed headers on z_collision_check

* Change play functions to take PlayState

* Move `Actor_ProcessInitChain` to `ichain.h`

* format

* Update src/code/z_play.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Add macros.h to sys_math3d.c

* Rename SequenceContext to SceneSequences

---------

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Animation Cleanup: En_T* (#1522)</title>
<updated>2025-09-14T19:55:35+00:00</updated>
<author>
<name>engineer124</name>
<email>47598039+engineer124@users.noreply.github.com</email>
</author>
<published>2024-06-25T00:54:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/2ship2harkinian/commit/?id=b627ff5423d0bd563b602f4611fb4bdcd5b866b4'/>
<id>b627ff5423d0bd563b602f4611fb4bdcd5b866b4</id>
<content type='text'>
* anim T cleanup

* more cleanup

* brackets and floats

* small thing

* more floats

* fix name

* fix

* format

---------

Co-authored-by: angie &lt;angheloalf95@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* anim T cleanup

* more cleanup

* brackets and floats

* small thing

* more floats

* fix name

* fix

* format

---------

Co-authored-by: angie &lt;angheloalf95@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Msgevent OK (#1637)</title>
<updated>2025-09-14T15:39:12+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/2ship2harkinian/commit/?id=933d074b54224e64001552cdf269225599d9d0df'/>
<id>933d074b54224e64001552cdf269225599d9d0df</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>2025-09-14T13:03:08+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/2ship2harkinian/commit/?id=eff7826d5c389e149cb6851d0ad96aaebdef007c'/>
<id>eff7826d5c389e149cb6851d0ad96aaebdef007c</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>
