This repository holds the source text and tooling for a public tutorial site. The goal is to give community composers a clear, repeatable path to contribute music to Night of the Meteor in a meaningful way—something the project has not formally opened before (unlike collaborative graphics and animation).
The published site is built from Markdown in docs/ using MkDocs and the Material for MkDocs theme. You can edit these files locally or with the Cursor editor and its AI features; nothing here is Cursor-specific beyond that workflow.
Canonical URL: https://selloa.github.io/nm-tutorials/
The site is built and deployed by GitHub Actions on every push to main.
- Night of the Meteor project site
- Maniac Mansion Mania community website
- Maniac Mansion Mania forum
- German Night of the Meteor developer forum
- English Night of the Meteor thread
- Composers and arrangers who want to help with the game’s music.
- Forum readers (e.g. Maniac Mansion Mania) who need a single place to read setup, formats, and process.
- Maintainers extending or translating the tutorials.
| Topic | Description |
|---|---|
| Introduction | Scope of collaboration, how to get in touch, what “done” means. |
| Technical setup | Lead composer workflow: DAW habits, export mindset, references. |
| Alternatives | Other tools that can still meet the same deliverables. |
| File formats & specs | What to hand off (extensions, rates, naming)—with engine notes where verified. |
| Production pipeline | From idea → review → final files → integration. |
| Glossary | Terms that come up in SCUMM-style adventure audio discussion. |
| Path | Purpose |
|---|---|
docs/ |
Tutorial Markdown (index.md, setup.md, …). |
docs/assets/ |
Small images or diagrams referenced from pages. |
mkdocs.yml |
Site name, theme, navigation, plugins. |
requirements.txt |
Python dependencies to build the site. |
.github/workflows/deploy.yml |
Builds and deploys to GitHub Pages on push to main. |
This repo is documentation and static-site source only. It is not the game repository and does not ship game binaries or full music masters unless you deliberately add small examples under docs/assets/.
Requires Python 3.10+ (recommended).
cd nm-tutorials
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
python -m mkdocs serveOpen the URL shown in the terminal (usually http://127.0.0.1:8000/). On Windows, if mkdocs is not on your PATH, use python -m mkdocs as shown.
python -m mkdocs buildOutput is written to site/.
- Small fixes (typos, clarity): pull requests to this repo are welcome if you use GitHub; otherwise follow whatever process the project announces on the forums.
- Substantive pipeline or format changes should be agreed with the music lead so the docs stay aligned with the real import/build path.
English Markdown files in docs/ are the source of truth. Localized pages live next to them with a locale suffix such as docs/index.de.md.
Each localized page carries a hidden translation-sync comment near the top that stores the hash of the English source file it currently matches. This comment does not render on the public site.
When you update an English page:
- Update the corresponding localized page if a translation exists.
- Refresh its sync metadata:
python scripts/check_translations.py --write docs/index.de.mdTo check all translations locally:
python scripts/check_translations.pyThe GitHub Actions build runs this check before mkdocs build --strict, so the deploy will fail if a translated page is out of sync with its English source.
Hosting uses GitHub Actions (.github/workflows/deploy.yml): each push to main runs mkdocs build --strict and publishes to Pages. In the repo, Settings → Pages should use Source: GitHub Actions.
A forum-ready announcement draft lives in docs/forum-post-draft.md (also included in the site nav).
Unless you add a LICENSE file, clarify ownership with the Night of the Meteor team. Tutorial text is meant for the community; do not assume a particular license until one is chosen.