Note that this list isn't comprehensive, but it should be enough to cover files a modder would commonly be dealing with.
movement.lua
- handles movement logic with move sources (you
,move
,shift
, etc) and movements that are a direct effect of move sources (push
,pull
,swap
)rules.lua
- main parsing logic is handled hereconditions.lua
- handles all condition texts (on
,near
,lonely
,facing
etc)blocks.lua
- contains what the source code calls "blocks", which are various functions that handle properties/effects that do not have to do with movement or collision-based effectsfeatures.lua
- has functions for looking up objects that have a certain propertyupdate.lua
- containsdoupdate()
and a few other functions.doupdate()
is used to consolidate changes to the game state as a turn progresses.convert.lua
- handles any text effects that involves transforming different objectsletterunits.lua
- handles parsing letter text blocksvision.lua
- functions for handling the visual effects of the3D
propoertymapcursor.lua
- handlesselect
logic
constants.lua
- contains indexes that are used in getting certain properties of objects. (See Units)values.lua
- contains various constant values used in the game logicmodsupport.lua
- defines all the avaliable mod hooksEditor/editor_objectlist.lua
- while this is an editor-related file, it contains definitions of all the objects in the game. (The object list invalues.lua
seems to be a "legacy" version before the editor was implemented)
load.lua
- functions used for initialization of global variables and other stuff (yes, this game uses global variables). You can use this file to see which global variables are defined.clears.lua
- handles clearing global variablesundo.lua
- functions that handle the undo systemmap.lua
- handles overworld logic and levelpack completion data
tools.lua
- contains various helper functions for dealing with the game logicsyntax.lua
- contains more helper functions. (I don't really see what's the difference betweensyntax.lua
andtools.lua
, but meh.)
effects.lua
- functions that handle particles and special effectscolours.lua
- functions for getting/setting various colorsdynamictiling.lua
- handles the "Tiled" animation style that allows walls to update its sprite based on nearby walls
ending.lua
- does the "end" and "done" ending cutscenesdebug.lua
- functions for printing various debug information. (Note: you might have to replace theMF_alert()
's if you want to use these functions sinceMF_alert()
only works when running in MMF)menu.lua
- functions for various GUI elementschanges.lua
- seems to handle updating the level data when modifying it in the level editor