Refectory
A downloadable asset pack
Your cooking system already knows what went in. Nothing draws it.
Every crafting and cooking plugin for MZ ends the same way: the recipe succeeds, and the player is handed a line of text and a 32-pixel icon. The thing they actually cooked is never shown.
Refectory draws it. It reads the ingredients that went into a dish and plates the meal, in code, at run time.
⚠️ Compatibility — the question you actually have
Tested against RPG Maker MZ with the stock scripts unmodified, verified by running the plugin in the real engine rather than only in tests.
Plugin Manager order:
RefectoryRender.js— Refectory [1/4] — drawing primitives. One light, the pantry palette, seeded RNG, lit masses, garnish placement rules, the shipped typefaces. v1.0.0RefectoryDish.js— Refectory [2/4] — the reading. Turns an ingredient list into a dish profile: component, vessel, sauce behaviour, colour, portions, char. v1.0.0RefectoryPlate.js— Refectory [3/4] — the drawing. Sixteen service vessels, twenty principal components, ten finishes, garnish placement, steam and the hand-set menu card.Refectory.js— Refectory [4/4] — the scenes, parameters and commands. Your players see the meal their ingredients actually made: a plated dish on a walnut table with…
This order reads sensibly in the list and nothing depends on it. Every file resolves its siblings the first time it needs them rather than when it loads, so Refectory works in whatever order the Plugin Manager gives you. That is tested rather than hoped for: the headless suites, the store-plate renderer, the capture pipeline and the in-engine verification all load the four files alphabetically — which puts the entry file Refectory.js first, before the reader, the plate and the drawing kit it uses, and that is the order you get by dragging the folder in — and the in-engine run asserts all four resolved anyway, with 4 plugins live in the plate scene. Refectory.js is the only one that touches RPG Maker at all; the other three are a reader that turns an ingredient list into a dish profile, a plate renderer and a drawing kit, and none of them knows the engine exists. Switch Refectory.js off and nothing is patched.
Core methods extended — 5 by saved-original prototype extension, none replaced: Game_System.prototype.initialize, Scene_Boot.prototype.start, Scene_Item.prototype.useItem, Game_Party.prototype.gainItem, Scene_Map.prototype.update.
Because nothing is clobbered, Refectory co-exists with other plugins that patch the same seams, including large suites.
What it draws
- a service vessel chosen from the kind of dish and how grand it is: a board, a trencher, a cauldron, a slate, a pie dish, a leaf wrap, a cloth bundle, a tankard (16 in all)
- a principal component built from those ingredients: a carved joint with the bone showing, a rack of ribs, a whole bird, caramelised roots, a lattice pie whose filling shows between the strips, a stew with the chunks that are really in it (20 forms)
- a finish that behaves like one: a jus pools along the inner rim, a glaze takes a specular, a dusting sits on top, a char eats the gloss (10 finishes)
- garnish placed by rules rather than scattered, steam if it is hot, and a hand-set menu card naming the dish and listing what went in
Change the ingredients and the picture changes. Nothing here is an image file. Every plate is drawn in code at run time, so a dish you invent tomorrow is drawn tomorrow, without anyone opening a paint program and without adding a single asset to your project.
One roast. Four ingredient lists. Four pictures.
That is the one roast gallery image, and it is the whole product in one frame: the same roast component, four different ingredient lists, four different meals. A boar haunch becomes a carved joint. Dragon ribs become a lacquered rack on a slate. A goose becomes a whole bird on a bread trencher. Turnips become caramelised roots.
The three places your players meet food
- Cooking result. One plugin command after your crafting plugin hands over the item, or switch on "Plate dishes as they are gained" and it happens by itself.
- Tavern menu. A menu card of dishes with the selected one plated beside it, priced from your database. It can sell them.
- Item detail. Using a dish from the Item menu plates it, with the item's own description under its name.
Making an item a dish
<refectory ingredients: Boar Haunch, Wild Thyme, Coarse Salt, Honey>
That is the whole minimum. Three optional tags force the kind of dish, the vessel or the quality. An item with the tag and no ingredient list is read from its own name: Woodcutter's Bean Pot is served in a pot, Cellar Cheese Board on a board, Hunter's Pie as a pie.
Ingredient words it has never seen still work. They contribute mass and colour by their own shape instead of being skipped, so a homebrew pantry does not need registering anywhere.
It does not look like RPG Maker
No default windowskin, no default frame, no pause sign, no stock cursor, and not RPG Maker's font: two typefaces ship with it (Cormorant Garamond and Alegreya Sans, both SIL Open Font Licence, both free to ship inside your game). If you skip installing them the card falls back to Georgia and a system sans. It never falls back to the engine's face, and a missing font file can never stop your game booting.
What you get
- Four raw, readable
.jsfiles. No minified build, every public function documented in a header block, all of it yours to read and change. - Two
.woff2typefaces and their OFL licence files. - A Readme that documents every parameter, command, notetag and script call, and every claim in it is exercised by a check that runs against the shipped bytes.
- Tested in the real engine, not only in tests: the package is installed into a blank MZ project and used the way a buyer uses it, before every release.
Also from Core Systems Asset Factory
Formulary draws the recipe; Refectory draws the meal. They are built to sit side by side, the same buyer, the two halves of the same screen.
More generated-art plugins for MZ: Cartouche · Courtcard · Specie · Liturgy
Made with AI assistance. Code: yes. Graphics: yes, the plugin generates every plate procedurally and the cover is a generated illustration. Sounds: no. Text and dialog: no.
| Published | 20 hours ago |
| Status | Released |
| Category | Assets |
| Author | CSAF — Core Systems Asset Factory |
| Made with | RPG Maker |
| Tags | Cooking, Crafting, Food, Generator, javascript, plugin, Procedural Generation, RPG Maker, RPG Maker MZ, User Interface (UI) |
| Languages | English |
| AI Disclosure | AI Assisted, Code, Graphics |
Purchase
In order to download this asset pack you must purchase it at or above the minimum price of $12.99 USD. You will get access to the following files:






Leave a comment
Log in with itch.io to leave a comment.