A downloadable asset pack

Buy Now$14.99 USD or more

Your recipes already exist. They just look like a list.

Formulary reads the recipes you have written and draws each one as a formulary plate: the reagents set as glyphs in a graduated ring, their proportions as an arc and as notation, the process as the vessel the diagram is built on, and the result struck at the centre.

Nothing is a picture file. 58 hand-authored motifs across four axes combine into 33,600 distinct plate forms, and nine palettes take that to 302,400 plates. No PNG, no atlas, no icon sheet. Your plates look like your recipes because they are drawn from your recipes — a four-ingredient recipe draws four different glyphs, so a plate's information content rises with the recipe's own complexity.


⚠️ 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:

  1. FormularyGlyphs.js — the glyph corpus (data only, draws nothing)
  2. FormularyPlate.js — the renderer
  3. FormularyRecipes.js — the database reader
  4. Formulary.js — parameters, commands, the scene

All four are required and the order is enforced, not requested: Formulary checks its dependencies at Scene_Boot — after every plugin has loaded, so your ordering is judged rather than guessed — and if one is missing or loads too late it disables itself and prints exactly which file is absent to the console (F8), instead of half-working.

Core methods extended — all 4 by saved-original prototype extension, none replaced: Game_Party.prototype.gainItem, Window_MenuCommand.prototype.addOriginalCommands, Scene_Menu.prototype.createCommandWindow, Scene_Boot.prototype.start.

Because nothing is clobbered, Formulary co-exists with other plugins that patch the same seams, including large suites.

You do not need a crafting plugin

Formulary reads your own $dataItems, $dataWeapons, $dataArmors and notetags — the things every MZ project already has. If you already use a crafting plugin, register it as an extra source and its recipes are added to the ones your database declares. An adapter can never replace the database read, so your hand-written recipes cannot disappear because you installed something else.

Declaring a recipe is one notetag on the result:

<Formulary>
in: 3 Iron Ore
in: 1 Pine Resin
process: alembic
tier: exquisite
yield: 2
</Formulary>

Everything except the ingredients is optional. Leave a line out and Formulary derives it — from a material keyword in the item's own name, then from the item's database facts, then from a deterministic hash. The keyword table is built from material families, not item names, so resin matches Pine Sap, Amber Tear and Bog Pitch, none of which contains the word. An item it cannot recognise still gets the same mark on every launch, on every machine, forever.

A recipe you have not earned is a redacted page

The ring still shows how many components a formula takes — so the player knows what they are missing — while the glyphs, the result name and the notation stay sealed. Each component resolves as the party first obtains that ingredient, so the page fills in as they explore. Or drive it yourself from events.

What ships

  • Four raw, readable JavaScript files. Minification is a defect; you are a developer and you must be able to read and extend every line.
  • 24 reagent glyphs by material family · 10 vessels (the process) · 14 seals (what it makes) · 10 borders (the tier) · 9 palettes
  • 6 plugin commands — open, reveal a component, reveal a recipe, reveal all, reset, and query a recipe into a switch
  • A scene containing no Window_Base at all, so it cannot restyle anything in your project and never touches your windowskin
  • Zero core methods clobbered. It extends four and one static, every original saved and called

Verified, not asserted

  • 167/167 tests green — 122 headless plus 45 in the real engine, 16 of them sabotage controls that must fire
  • 2 draw calls per frame against a 60 budget; zero texture uploads, zero bitmap dirties, zero window refreshes, zero stock windows drawn
  • Lossless, versioned save round-trip, proven through both JsonEx.stringify and JsonEx.makeDeepCopy — the route that bypasses the normal save hook
  • The index list is virtualised: only visible rows are drawn, whatever the size of your recipe list

More generated systems for MZ from Core Systems Asset Factory

Sigil Core — every spell generates its own animated seal · Herbarium — a drawn plate for every plant · Hallmark — generated maker's marks for equipment · Asterism — constellations drawn from your data · Armorial · Lineage

Purchase

Buy Now$14.99 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $14.99 USD. You will get access to the following files:

formulary-plugin.zip 48 kB
Version 1.0.0

Leave a comment

Log in with itch.io to leave a comment.