Bourse - A Living Market That Draws Its Own Goods
A downloadable asset pack
Every shop asset sets a price in a table and reads it back. This one does not have a price table.
Bourse simulates stock and demand, and the price falls out of the two. Buy forty sacks of grain and grain is dearer when you come back. Wait out a blight and you pay for waiting.
And it draws its own stock: forty-eight trade goods, every one built from data by the GML in this package. No sprite, no atlas, no texture page anywhere in it.
The price, in one line
price = base * scarcity ^ (1 / elasticity)
The exponent is the interesting half. A good with low elasticity is one buyers must have at any price, so a shortage of it goes vertical. A good with high elasticity is one buyers simply do without, so the same shortage barely moves it.
Bread is 0.35. Pearls are 2.4. A 65% shortage multiplies bread by about 4 and pearls by about 1.5, out of the same arithmetic, with nothing special-cased. Both figures are asserted in the self-test that ships inside the package.
What is in it
- 48 trade goods across 8 trades, drawn from data and shaded in relief against one fixed lamp
- 14 materials and 6 halls - a good picks two materials, a hall re-skins the whole room, and the goods keep their own materials when it does
- A market screen with no windowskin and no nine-slice - every panel, well, rail and needle is an outline handed to the same bevel that shades a cask
- A price gauge that answers "is this dear?" without arithmetic - the needle reads against the tenth-to-ninetieth percentile of the remembered year, so one caravan cannot flatten the scale
- The merchant's cut, shown - the spread widens as stock runs out, and no shop asset we could find displays it at all
- Four interpolated seasons with production and demand authored separately, and a per-ware phase so two goods in one trade do not move in lockstep
- Eight events - caravan, blight, festival, embargo, shipwreck, bumper season, guild strike, road reopened - each a window of days, not a spike
- Spoilage, sticky prices, partial fills, and save/load including the price history
Compatibility
- Built and tested against GameMaker runtime 2024.14.4.268 (current stable GMS2 runtime)
- 100% GML. No extensions, no DLLs, no shaders, no external tools
- Adds: 11 scripts, 1 demo object, 1 demo room, 2 font resources. Nothing else
- Needs from you: nothing
- Sprites / texture pages: none - there is no
sprites/folder - Namespacing: every function, macro and global is prefixed
brs_/BRS_, so nothing here can collide with your code - Import: Tools > Import Local Package, pick
Bourse.yymps, openrm_bourse_demo, press Play
The demo room is the quickstart
SPACE pause. RIGHT step a day. UP/DOWN speed. H change hall. B buy 5. S sell 5. Click a trade or a good. It drives the same public functions the readme documents - nothing in it reaches into an internal.
How it was verified
- Igor gate: exit 0, 0 errors, 0 warnings, 375 resources compiled.
- 931 in-engine assertions, 0 failures, run against the executable the gate built - determinism, price bounds over 1200 simulated days, the elasticity law, partial fills, save/load round-trip including the history, and every one of the 48 goods checked for its own frame, its footing, its shadow, its roles and its distinctness from all 47 others.
- Every image on this page was rendered by the product itself.
Bourse.exe -bakedraws them with the same code you get.
What that does not cover is whether it looks right, and this page says so on purpose: fourteen real defects were found while building it by opening the rendered images and looking, every one of them past a fully green suite.
Licence
Use it in unlimited games, commercial or free, forever. The goods it draws are yours, including in your marketing. Do not resell the package itself. Full terms in LICENSE.txt. Fonts: Open Sans, Apache-2.0, notices included.
| Published | 4 hours ago |
| Status | Released |
| Category | Assets |
| Author | CSAF — Core Systems Asset Factory |
| Genre | Simulation |
| Tags | Economy, GameMaker, Generator, gml, market, Procedural Generation, shop, Trading, User Interface (UI) |
| AI Disclosure | AI Assisted, Code, Graphics, Text |
Purchase
In order to download this asset pack you must purchase it at or above the minimum price of $19.99 USD. You will get access to the following files:









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