Hello everyone, I put together a Merchant Generator tool that builds a fantasy shop inventory without using AI. Version 2 is now ready and live.
This version is CSV and library-driven, so it is consistent, quick, and does not rely on any outside AI calls. It creates merchants based on town size, merchant level, party level, and economic wealth. It then generates an item list with prices in gold, silver, and copper plus stock counts.
What is new in Version 2
Cleaner interface with a cozy default style
Choose one or more shop types (Armorer, Weaponsmith, Magic Shop, etc)
Price slider to adjust the whole shop (10% to 200%)
Colored coin display for Gold, Silver, Copper
Stock counts and expandable notes for each item
Runs entirely without AI, all items come from structured data
Quick Start
Choose the town and context – Set Town Size, Merchant Level, Party Level, and Economic Wealth
Pick shop types – Click "Choose Types," search or browse, select what fits (for example Armorer or Weaponsmith), then Apply Tip: If you do not pick anything, it will default to a General Store
Generate – Click Generate at the top of the right column
Fine tune prices – Use the Price slider (10% to 200%). The display shows a fair market range in colored coins (gold, silver, copper)
Tidy the view – Toggle "Hide descriptions" for a compact list. Click any note to expand
Hey, this is pretty neat! It is a very helpful tool for generating shops/merchants.
A little feedback:
Firstly, I think this is really cool! The interface is very clean and intuitive. The layout is nice! I already bookmarked the page for use later.
I'm guessing this is probably because I have my settings in Chrome to "Dark Mode", but when I click the "Choose Types", everything is very hard to read. It is like a dark blue background with slightly less dark color for the text. Again, I'm guessing it is based on my settings, but if there's anything you can do to make it more readable on Dark Mode, that would be beneficial to me. Everything else is very readable (although the title "Merchant Generator" on the actual tool suffers from the same problem).
It would be nice to have a "Clear All" button in the "Choose Types" menu. That way if I want to start over I don't have to unselect all my selected types. You can just reload the page, but a "Clear All" button might feel better, especially if people are using this on mobile (which I haven't tested yet).
I understand this would probably be a large undertaking, but some items are kind of lacking in their description. For clothing there were several items related to "Glamerweave" and "Wingwear" where the only description is " A useful item for travel and adventure." Also for many of the books it simply says " A bound volume of lore and instructions." Adding some descriptions to these would be useful.
Interesting thing I ran into: When using the selected type "Bookstore" with Intermediate Merchant Level, Party Level 9, Large Town, and Average Economic Wealth, it only generates spell scrolls. However if I add something like a "Blacksmith Shop", then I do get some tomes included in the items. This seems odd to me, as if I only select "Bookstore" I would expect to get mostly books/tomes. Occasionally a type of tome or book will show up (happens more often at "Novice" Merchant Level and a bit more often at "Master" Merchant Level), but I would expect a bookstore to be mostly books, not spell scrolls. That might just be a personal preference.
All in all, this is a really cool tool! I'll definitely be using it to flesh out shops and merchants in town and on the road for my campaigns.
Let me look to see if I can provide a UI button that will help with Dark mode that people can toggle between.
There is a clear button but you need to be in Choose Types popup, unless I am misunderstanding what you wrote. I can possibly add a clear all on the Main UI to clear it so you do not need to go back to Choose Types.
For the item descriptions I completely agree, there are items that have a really broad cost range I want to fine tune as well. Over time I will in face be updating both descriptions and cost balancing.
Good catch on the Book store. I will look at the weights assigned to the books and balance some thing. There are roughly 2300 items, and how it works is it assigns a rarity, and min town rank, merch level, min party level to every item. So I can go in and adjust all of those values to better reflect when they populate. Aside from those variables each item has a list (example below) of what merchant types possibly have each item.
Book example: MANUALOFGOLEMS,Manual of Golems,Bookbinder;Bookstore;General store;Messenger Service;Post Office;School;Scribe;University...
Wonderful incite, thank you for taking an interest and offering valuable feedback!
Also want to throw in a hat as a thank you! PCs will be doing a travel session this week and will help flesh out the random encounter table with less thinking on my end!
There is a clear button but you need to be in Choose Types popup, unless I am misunderstanding what you wrote. I can possibly add a clear all on the Main UI to clear it so you do not need to go back to Choose Types.
You are absolutely right, my apologies! It is right there at the top by "Select all". No idea why my brain decided to skip over it, as it has high contrast and is pretty obvious. My mistake!
This is an amazing tool, and something I can definitely see getting use out of. However, I'm really confused about the 'fair market range'. It lists a longbow as a fair market range of anywhere from 2 gold to 97 gold at 100% price.
This seems like a massive variance in price, and makes this more of a 'guess a value' and less of a tool I can use to quickly generate a market for my players.
Maybe add a toggle for 'price range' to have it generate a range instead of a given price, and then have an adjustment for the 'range variance' to let people adjust how far off of the value of the item the fair range can go? In general, I would say fair market price is +/- 10-20% of the listed book price for example.
Yes there are many items I need to fine tune for a few things. You have a good eye seeing that the Bow ranges from 2-97 gold. For now many of those that seem off you might need to use your own judgment on until I can go through all 2300 items to check their market value range. Because of the way I grabbed the initial data (python script to scrape public data) I was not able to gather the listed information from DnDBeyond as its against ToS to scrape their site. So now the hard part comes having to go in manually and update every general item one-by-one to make sure the pricing is accurately reflected based on DnDBeyond.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hello everyone,
I put together a Merchant Generator tool that builds a fantasy shop inventory without using AI. Version 2 is now ready and live.
This version is CSV and library-driven, so it is consistent, quick, and does not rely on any outside AI calls. It creates merchants based on town size, merchant level, party level, and economic wealth. It then generates an item list with prices in gold, silver, and copper plus stock counts.
What is new in Version 2
Cleaner interface with a cozy default style
Choose one or more shop types (Armorer, Weaponsmith, Magic Shop, etc)
Price slider to adjust the whole shop (10% to 200%)
Colored coin display for Gold, Silver, Copper
Stock counts and expandable notes for each item
Runs entirely without AI, all items come from structured data
Quick Start
Choose the town and context – Set Town Size, Merchant Level, Party Level, and Economic Wealth
Pick shop types – Click "Choose Types," search or browse, select what fits (for example Armorer or Weaponsmith), then Apply
Tip: If you do not pick anything, it will default to a General Store
Generate – Click Generate at the top of the right column
Fine tune prices – Use the Price slider (10% to 200%). The display shows a fair market range in colored coins (gold, silver, copper)
Tidy the view – Toggle "Hide descriptions" for a compact list. Click any note to expand
If you want to try it out, here is the demo page:
👉 https://masterworkstudio.com/merchant
I would love feedback from other DMs and players. Let me know what features, shop types, or improvements would help your table.
Hey, this is pretty neat! It is a very helpful tool for generating shops/merchants.
A little feedback:
Firstly, I think this is really cool! The interface is very clean and intuitive. The layout is nice! I already bookmarked the page for use later.
I'm guessing this is probably because I have my settings in Chrome to "Dark Mode", but when I click the "Choose Types", everything is very hard to read. It is like a dark blue background with slightly less dark color for the text. Again, I'm guessing it is based on my settings, but if there's anything you can do to make it more readable on Dark Mode, that would be beneficial to me. Everything else is very readable (although the title "Merchant Generator" on the actual tool suffers from the same problem).
It would be nice to have a "Clear All" button in the "Choose Types" menu. That way if I want to start over I don't have to unselect all my selected types. You can just reload the page, but a "Clear All" button might feel better, especially if people are using this on mobile (which I haven't tested yet).
I understand this would probably be a large undertaking, but some items are kind of lacking in their description. For clothing there were several items related to "Glamerweave" and "Wingwear" where the only description is " A useful item for travel and adventure." Also for many of the books it simply says " A bound volume of lore and instructions." Adding some descriptions to these would be useful.
Interesting thing I ran into: When using the selected type "Bookstore" with Intermediate Merchant Level, Party Level 9, Large Town, and Average Economic Wealth, it only generates spell scrolls. However if I add something like a "Blacksmith Shop", then I do get some tomes included in the items. This seems odd to me, as if I only select "Bookstore" I would expect to get mostly books/tomes. Occasionally a type of tome or book will show up (happens more often at "Novice" Merchant Level and a bit more often at "Master" Merchant Level), but I would expect a bookstore to be mostly books, not spell scrolls. That might just be a personal preference.
All in all, this is a really cool tool! I'll definitely be using it to flesh out shops and merchants in town and on the road for my campaigns.
Thank you so much for the feedback!
Let me look to see if I can provide a UI button that will help with Dark mode that people can toggle between.
There is a clear button but you need to be in Choose Types popup, unless I am misunderstanding what you wrote. I can possibly add a clear all on the Main UI to clear it so you do not need to go back to Choose Types.
For the item descriptions I completely agree, there are items that have a really broad cost range I want to fine tune as well. Over time I will in face be updating both descriptions and cost balancing.
Good catch on the Book store. I will look at the weights assigned to the books and balance some thing. There are roughly 2300 items, and how it works is it assigns a rarity, and min town rank, merch level, min party level to every item. So I can go in and adjust all of those values to better reflect when they populate. Aside from those variables each item has a list (example below) of what merchant types possibly have each item.
Book example: MANUALOFGOLEMS,Manual of Golems,Bookbinder;Bookstore;General store;Messenger Service;Post Office;School;Scribe;University...
Wonderful incite, thank you for taking an interest and offering valuable feedback!
Also want to throw in a hat as a thank you! PCs will be doing a travel session this week and will help flesh out the random encounter table with less thinking on my end!
You are absolutely right, my apologies! It is right there at the top by "Select all". No idea why my brain decided to skip over it, as it has high contrast and is pretty obvious. My mistake!
This is an amazing tool, and something I can definitely see getting use out of. However, I'm really confused about the 'fair market range'. It lists a longbow as a fair market range of anywhere from 2 gold to 97 gold at 100% price.
This seems like a massive variance in price, and makes this more of a 'guess a value' and less of a tool I can use to quickly generate a market for my players.
Maybe add a toggle for 'price range' to have it generate a range instead of a given price, and then have an adjustment for the 'range variance' to let people adjust how far off of the value of the item the fair range can go? In general, I would say fair market price is +/- 10-20% of the listed book price for example.
Thank you, I appreciate it!
Yes there are many items I need to fine tune for a few things. You have a good eye seeing that the Bow ranges from 2-97 gold. For now many of those that seem off you might need to use your own judgment on until I can go through all 2300 items to check their market value range. Because of the way I grabbed the initial data (python script to scrape public data) I was not able to gather the listed information from DnDBeyond as its against ToS to scrape their site. So now the hard part comes having to go in manually and update every general item one-by-one to make sure the pricing is accurately reflected based on DnDBeyond.