1
0
Fork 0
mirror of https://github.com/notwa/mm synced 2024-11-05 02:49:02 -08:00
mm/Lua/README.md

116 lines
3 KiB
Markdown
Raw Normal View History

2015-12-16 02:53:31 -08:00
# Zelda 64 Lua Scripts
These are written for
[the latest revision of Bizhawk,][biz]
but some compatiblity is provided for
[a fork of mupen64plus with Lua support.][m64p-lua]
[biz]: https://github.com/TASVideos/bizhawk/
[m64p-lua]: https://github.com/notwa/mupen64plus-core
Note that some scripts lack full support for Ocarina of Time.
2015-12-16 03:19:34 -08:00
## Scripts
2015-12-16 02:53:31 -08:00
2015-12-16 03:19:34 -08:00
#### cheat menu.lua
2015-12-16 02:53:31 -08:00
Provides an onscreen UI for many features.
Has four different input methods;
refer to the comment near the start of the script.
Generally, it's opened with L and navigated with the D-Pad.
2015-12-16 03:19:34 -08:00
#### count flags.lua
2015-12-16 02:53:31 -08:00
Simply counts the number of scene flags globally set.
#### inject.lua
2016-01-12 16:12:53 -08:00
Assembles and injects code into the game.
#### m64p entry.lua
Ignore this for now.
This is a rough interfacing script for passing to mupen64plus,
and serves no purpose on Bizhawk.
2016-01-12 16:12:53 -08:00
#### setup hundred.lua
2015-12-16 02:53:31 -08:00
Instantly gives you all the items in the game, etc.
Does not set scene/event flags,
except the one required for the Great Spin Attack.
2016-01-12 16:12:53 -08:00
#### setup race file.lua
2015-12-16 02:53:31 -08:00
Sets up a race file.
A race file is a save in which the first cycle has been completed,
the Deku Mask has been acquired,
and some other details.
2016-01-12 16:12:53 -08:00
#### test chests.lua
TODO
2015-12-16 02:53:31 -08:00
2016-01-12 16:12:53 -08:00
#### test movement.lua
Tests the fastest form of basic movement in Majora's Mask.
Run it in the Clock Town Great Fairy's Fountain.
2015-12-17 16:08:33 -08:00
2015-12-16 03:19:34 -08:00
### Monitors
2015-12-16 02:53:31 -08:00
2016-01-12 16:12:53 -08:00
#### monitor actors.lua
Lists actor data onscreen,
and focuses the camera on them.
Actors may be selected using the D-Pad.
#### monitor debug memory editor.lua
(Ocarina of Time) Used for determining which values
listed by the in-game debug memory editor are constant.
2015-12-16 02:53:31 -08:00
2016-01-12 16:12:53 -08:00
#### monitor debug text.lua
TODO
2015-12-16 02:53:31 -08:00
2016-01-12 16:12:53 -08:00
#### monitor epona.lua
2015-12-28 22:04:39 -08:00
used to investigate [this glitch with unloading Epona.][eponaglitch]
[eponaglitch]: https://www.youtube.com/watch?v=kX0ZcIS8P84
2016-01-12 16:12:53 -08:00
#### monitor event flags.lua
2015-12-16 02:53:31 -08:00
Monitors event flags,
and announces which bits are being changed,
and if they have ever been seen changing before.
2016-01-12 16:12:53 -08:00
#### monitor exits.lua
Dumps information on the current exit value;
scene name, entrance, entrance with unused offset;
using human-readable English names.
2015-12-16 02:53:31 -08:00
2016-01-12 16:12:53 -08:00
Provides the function `dump_all_exits(fn)`
which produces [a large csv file.][csv]
[csv]: https://eaguru.guru/t/_exits.csv
#### monitor misc.lua
2015-12-16 02:53:31 -08:00
Monitors unknown regions of memory.
Currently, this region is a chunk of save data, ignoring known addresses.
2016-01-12 16:12:53 -08:00
#### monitor rooms.lua
Parses and dumps the currently loaded room headers.
#### monitor scene flags.lua
Monitors the current scene's flags,
and announces which bits are being changed,
and if they have ever been seen changing before.
2015-12-16 02:53:31 -08:00
2015-12-16 03:19:34 -08:00
#### watch animations.lua
2015-12-16 02:53:31 -08:00
Monitors Link's used animations.
## Libraries
2016-01-12 16:12:53 -08:00
See [the README in the lib directory][libs] for information.
2015-12-16 02:53:31 -08:00
2016-01-12 16:12:53 -08:00
[libs]: /Lua/lib/README.md
2015-12-16 02:53:31 -08:00
## Data
Any data (that isn't provided by the games themselves)
is located in the data directory.
Much of this should be self-explanitory. However,
files beginning with an underscores contain serialized tables
(generally from monitor scripts)
and usually won't make sense out of context.