Skip to content

MegaMOO 0.10.0-beta

Pre-release
Pre-release

Choose a tag to compare

@MalifaxLax MalifaxLax released this 08 Aug 16:13
· 95 commits to main since this release

MegaMOO 0.10.0-beta

The engine becomes installable, and stops containing a game.

pip install megamoo
megamoo init mygame
cd mygame && megamoo --dev

Breaking: the substitution sigil moved from % to &. An existing world
must be converted with tools/migrate_sigil.py or its message tokens
render as literal text. '%' is Python's formatting operator, so
"%<245>%s" % name raised ValueError -- the commonest formatting idiom
in the language colliding with the commonest display idiom in the
engine. '&' was chosen by counting real game text: across 5,217 output
strings, '%' appeared 1,132 times, '|' 14, and '&' zero.

Breaking: mm.db and 'moo verbs/' are no longer in the repository root.
They are the template 'megamoo init' copies into a game directory that
belongs to the builder. Upgrading is 'pip install --upgrade megamoo'
with nothing to merge.

Also: FileIO builtins (fileread/filewrite/fileappend and nine more);
get_database(); @program and @PORT write the file before the database,
with disk as the source of truth; startup reconciles verb files changed
while the server was down.