<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mm/include/z64schedule.h, 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>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>A higher level language for schedule scripts (#1462)</title>
<updated>2024-02-01T12:50:32+00:00</updated>
<author>
<name>Anghelo Carvajal</name>
<email>angheloalf95@gmail.com</email>
</author>
<published>2024-02-01T12:50:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=5db52cfd395479fb5aa7a0e236478781904e0c52'/>
<id>5db52cfd395479fb5aa7a0e236478781904e0c52</id>
<content type='text'>
* schedule script

* start something

* tokenize

* make a tree

* start to emit macros

* start to handle args

* handle branch targets

* cleanup a bit

* script to convert the current schedule scripts to the new language

* Add schedule compilation to Makefile

* Fix bug on compiler if the script doesn't have an extra empty line

* Allow to have `else`s without braces

* convert a lot of schedules

* door

* en_tk

* fix some checks being the wrong way around

* borkens

* door borken schedules

* kafei schedule

* postman schedule

* Implement `if_since_time_*` command

* Allow `if`s to not have an `else`

* Implement some debugging options

* fix another one from door

* D_808675D0

* door D_8086775C

* don't print else if there isn't one

* start supporting labels

* rewrite comment handling

* add branch support

* emit debugging information

* postman and one door

* the remaining scripts

* add tokens for the non _s/_l versions

* meh

* Add built schedules

* Remove _s/_l suffixes from almost every command

* TokenProperties

* Move macros and length into TokenProperties

* move short and long to TokenType

* rename member

* some cleanups

* fatalError

* Write various notes on the compiler

* more errors and comments

* debug flags

* Move the built schedules to the build folder

* manually cleanup control flow of many schedule scripts

* cleanup postman schedule

* start write up

* write more stuff

* write a little more

* Start writing about the commands

* 2 more commands

* more

* almost everything, except returns

* hopefully finish documenting the commands

* cleanup

* formal grammar

* Table of contents

* typo

* Rename schc.py

* remove todo

* Warn if a if_before_time/if_since_time is negated

* Add colors to warnings and errors

* delete rebuild schedules script

* version

* Apply suggestions from code review

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;

* suggestions on md file

* compiler review

* invented is invented

* ScheduleScript typedef

* fix

* Convert Anju's schedule to the new format

* simplify anju's schedule

* forgot to remove `_s`/`_l`

* bss

* Rework schc to allow multiple scripts per file

* Migrate all the schedules to the new format

* update language specification

* Update docs/schedule_scripting_language.md

Co-authored-by: engineer124 &lt;47598039+engineer124@users.noreply.github.com&gt;

* Update docs/schedule_scripting_language.md

Co-authored-by: engineer124 &lt;47598039+engineer124@users.noreply.github.com&gt;

---------

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;
Co-authored-by: engineer124 &lt;47598039+engineer124@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* schedule script

* start something

* tokenize

* make a tree

* start to emit macros

* start to handle args

* handle branch targets

* cleanup a bit

* script to convert the current schedule scripts to the new language

* Add schedule compilation to Makefile

* Fix bug on compiler if the script doesn't have an extra empty line

* Allow to have `else`s without braces

* convert a lot of schedules

* door

* en_tk

* fix some checks being the wrong way around

* borkens

* door borken schedules

* kafei schedule

* postman schedule

* Implement `if_since_time_*` command

* Allow `if`s to not have an `else`

* Implement some debugging options

* fix another one from door

* D_808675D0

* door D_8086775C

* don't print else if there isn't one

* start supporting labels

* rewrite comment handling

* add branch support

* emit debugging information

* postman and one door

* the remaining scripts

* add tokens for the non _s/_l versions

* meh

* Add built schedules

* Remove _s/_l suffixes from almost every command

* TokenProperties

* Move macros and length into TokenProperties

* move short and long to TokenType

* rename member

* some cleanups

* fatalError

* Write various notes on the compiler

* more errors and comments

* debug flags

* Move the built schedules to the build folder

* manually cleanup control flow of many schedule scripts

* cleanup postman schedule

* start write up

* write more stuff

* write a little more

* Start writing about the commands

* 2 more commands

* more

* almost everything, except returns

* hopefully finish documenting the commands

* cleanup

* formal grammar

* Table of contents

* typo

* Rename schc.py

* remove todo

* Warn if a if_before_time/if_since_time is negated

* Add colors to warnings and errors

* delete rebuild schedules script

* version

* Apply suggestions from code review

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;

* suggestions on md file

* compiler review

* invented is invented

* ScheduleScript typedef

* fix

* Convert Anju's schedule to the new format

* simplify anju's schedule

* forgot to remove `_s`/`_l`

* bss

* Rework schc to allow multiple scripts per file

* Migrate all the schedules to the new format

* update language specification

* Update docs/schedule_scripting_language.md

Co-authored-by: engineer124 &lt;47598039+engineer124@users.noreply.github.com&gt;

* Update docs/schedule_scripting_language.md

Co-authored-by: engineer124 &lt;47598039+engineer124@users.noreply.github.com&gt;

---------

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;
Co-authored-by: engineer124 &lt;47598039+engineer124@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Use `CURRENT_TIME` Macro (#1514)</title>
<updated>2023-11-27T09:04:54+00:00</updated>
<author>
<name>engineer124</name>
<email>47598039+engineer124@users.noreply.github.com</email>
</author>
<published>2023-11-27T09:04:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=c04aaab6a1d0bdaf6071fadc649385fd3e71e774'/>
<id>c04aaab6a1d0bdaf6071fadc649385fd3e71e774</id>
<content type='text'>
* use CURRENT_TIME macro

* add comment

* cleanup brackets</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* use CURRENT_TIME macro

* add comment

* cleanup brackets</pre>
</div>
</content>
</entry>
<entry>
<title>`SCHEDULE_TIME` (#1438)</title>
<updated>2023-10-22T05:52:40+00:00</updated>
<author>
<name>Anghelo Carvajal</name>
<email>angheloalf95@gmail.com</email>
</author>
<published>2023-10-22T05:52:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=ec86f10b0f933fd848036e149d1ef34f28571c37'/>
<id>ec86f10b0f933fd848036e149d1ef34f28571c37</id>
<content type='text'>
* SCHEDULE_CALC_TIME_ALT

* add s32 cast to avoid f32 -&gt; u16 direct cast

* SCHEDULE_TIME

* remove the alts

* Update explanation about the script</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* SCHEDULE_CALC_TIME_ALT

* add s32 cast to avoid f32 -&gt; u16 direct cast

* SCHEDULE_TIME

* remove the alts

* Update explanation about the script</pre>
</div>
</content>
</entry>
<entry>
<title>Misc Cleanup 3 (#1268)</title>
<updated>2023-06-05T22:57:45+00:00</updated>
<author>
<name>engineer124</name>
<email>47598039+engineer124@users.noreply.github.com</email>
</author>
<published>2023-06-05T22:57:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=f92a61db27ed8ee213072df11169777c6794bc1b'/>
<id>f92a61db27ed8ee213072df11169777c6794bc1b</id>
<content type='text'>
* begin more cleanup

* more enums

* typo

* ==

* fix go.h

* fix RaceDogInfo struct

* PR Review

* PR Suggestions

* missed one

* missed even more

* fix params

* fix number</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* begin more cleanup

* more enums

* typo

* ==

* fix go.h

* fix RaceDogInfo struct

* PR Review

* PR Suggestions

* missed one

* missed even more

* fix params

* fix number</pre>
</div>
</content>
</entry>
<entry>
<title>EnTest3 (Kafei) (#1013)</title>
<updated>2022-11-06T02:38:22+00:00</updated>
<author>
<name>petrie911</name>
<email>69443847+petrie911@users.noreply.github.com</email>
</author>
<published>2022-11-06T02:38:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=fdae305a0a54b93860e1d2def391c1312f2ea09a'/>
<id>fdae305a0a54b93860e1d2def391c1312f2ea09a</id>
<content type='text'>
Co-authored-by: petrie911 &lt;69443847+petrie911@users.noreply.github.com&gt;

Co-authored-by: Angie &lt;angheloalf95@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: petrie911 &lt;69443847+petrie911@users.noreply.github.com&gt;

Co-authored-by: Angie &lt;angheloalf95@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Macros for `weekEventReg` and `eventInf` (#984)</title>
<updated>2022-11-05T18:48:36+00:00</updated>
<author>
<name>Anghelo Carvajal</name>
<email>angheloalf95@gmail.com</email>
</author>
<published>2022-11-05T18:48:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=ba4368d0e8ebaeabf57cd5ae0105afb4f4eee6f8'/>
<id>ba4368d0e8ebaeabf57cd5ae0105afb4f4eee6f8</id>
<content type='text'>
* make macros

* script

* Use the script on the whole codebase

* fix script

* Rename GET to CHECk

* More replacements

* Update weekeventflags on schedule scripts

* eventinf defines

* eventinfconvert

* run the scripts on the codebase

* format

* RACE_FLAGS

* format

* remove redundant parenthesis

* format

* add macros to permuter_settings

* comments on WEEKEVENTREG_

* format

* CHECK_WEEKEVENTREG_ALT

* don't automatically generate the macros on the script to allow naming them

* format D_801C66D0 a bit

* add TODOs

* Update src/overlays/actors/ovl_Boss_03/z_boss_03.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_En_Baisen/z_en_baisen.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_Boss_06/z_boss_06.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_En_Raf/z_en_raf.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* review

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* new files

* format

* weekeventreg

* review

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* review

Co-authored-by: EllipticEllipsis &lt;elliptic.ellipsis@gmail.com&gt;

* update

* format

* review

Co-authored-by: EllipticEllipsis &lt;elliptic.ellipsis@gmail.com&gt;

* flags

* a

* eventinf stuff

* format

* EnGakufu

* flags

* run the script

* format

* whoops

* cleanup

* fix

* update weekeventregs

* format

* format

* review

* format

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;
Co-authored-by: EllipticEllipsis &lt;elliptic.ellipsis@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* make macros

* script

* Use the script on the whole codebase

* fix script

* Rename GET to CHECk

* More replacements

* Update weekeventflags on schedule scripts

* eventinf defines

* eventinfconvert

* run the scripts on the codebase

* format

* RACE_FLAGS

* format

* remove redundant parenthesis

* format

* add macros to permuter_settings

* comments on WEEKEVENTREG_

* format

* CHECK_WEEKEVENTREG_ALT

* don't automatically generate the macros on the script to allow naming them

* format D_801C66D0 a bit

* add TODOs

* Update src/overlays/actors/ovl_Boss_03/z_boss_03.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_En_Baisen/z_en_baisen.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_Boss_06/z_boss_06.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_Elf_Msg6/z_elf_msg6.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* Update src/overlays/actors/ovl_En_Raf/z_en_raf.c

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* review

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* new files

* format

* weekeventreg

* review

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;

* review

Co-authored-by: EllipticEllipsis &lt;elliptic.ellipsis@gmail.com&gt;

* update

* format

* review

Co-authored-by: EllipticEllipsis &lt;elliptic.ellipsis@gmail.com&gt;

* flags

* a

* eventinf stuff

* format

* EnGakufu

* flags

* run the script

* format

* whoops

* cleanup

* fix

* update weekeventregs

* format

* format

* review

* format

Co-authored-by: Derek Hensley &lt;hensley.derek58@gmail.com&gt;
Co-authored-by: EllipticEllipsis &lt;elliptic.ellipsis@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>SceneNum -&gt; SceneId (#1036)</title>
<updated>2022-09-30T02:22:59+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2022-09-30T02:22:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=3a723efb15c4d3e044edda7979b1cde5588c0aeb'/>
<id>3a723efb15c4d3e044edda7979b1cde5588c0aeb</id>
<content type='text'>
* sceneNum -&gt; sceneId

* horse data scene -&gt; sceneId

* Clean up scene table

* format

* PR comments

* Some more

* It helps if you actually save the file

* PR

* Remove comment

* Format

* Conflicts</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* sceneNum -&gt; sceneId

* horse data scene -&gt; sceneId

* Clean up scene table

* format

* PR comments

* Some more

* It helps if you actually save the file

* PR

* Remove comment

* Format

* Conflicts</pre>
</div>
</content>
</entry>
<entry>
<title>General Cleanup 9 (#961)</title>
<updated>2022-08-07T23:43:58+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2022-08-07T23:43:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=9a4319827b474ed2954f1143e21a2afecd2709ed'/>
<id>9a4319827b474ed2954f1143e21a2afecd2709ed</id>
<content type='text'>
* small z64animation cleanup

* z64

* actor

* bgcheck

* collisioncheck

* curve

* cutscene

* effect

* item

* light

* math

* player

* save

* save

* schedule

* skin

* transition

* Remove leading 0s from size = 0x10

* z64schedule enum

* PR

* enums</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* small z64animation cleanup

* z64

* actor

* bgcheck

* collisioncheck

* curve

* cutscene

* effect

* item

* light

* math

* player

* save

* save

* schedule

* skin

* transition

* Remove leading 0s from size = 0x10

* z64schedule enum

* PR

* enums</pre>
</div>
</content>
</entry>
<entry>
<title>EnBjt OK and documented (#912)</title>
<updated>2022-07-22T04:17:06+00:00</updated>
<author>
<name>EllipticEllipsis</name>
<email>elliptic.ellipsis@gmail.com</email>
</author>
<published>2022-07-22T04:17:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/mm/commit/?id=c8c55a15d3acf459615fc54c4b542d7d16555d62'/>
<id>c8c55a15d3acf459615fc54c4b542d7d16555d62</id>
<content type='text'>
* OK, data imported

* Fix some typos

* Start docs

* Struct almost finished

* Start object, add state enum

* undefined_syms

* Finish object, name some more stuff

* Name a few states and another function

* PlayState

* Minor tweaks in z_room and z_sub_s

* Complete documentation

* spec

* Review 1

* functions.txt

* Schedule result enum

* Rename schedule results

* Review

* Remove update comments

* Inventory_DeleteItem

* PLAYER_STATE

* Format

* Review

* Update struct name</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* OK, data imported

* Fix some typos

* Start docs

* Struct almost finished

* Start object, add state enum

* undefined_syms

* Finish object, name some more stuff

* Name a few states and another function

* PlayState

* Minor tweaks in z_room and z_sub_s

* Complete documentation

* spec

* Review 1

* functions.txt

* Schedule result enum

* Rename schedule results

* Review

* Remove update comments

* Inventory_DeleteItem

* PLAYER_STATE

* Format

* Review

* Update struct name</pre>
</div>
</content>
</entry>
</feed>
