-
March 16th, 2025, 06:46 #1
Developing Products as a Community Developer
This guide is for content products only; I do not discuss rulesets.
I have been developing products (not rulesets) for Shadowdark and other rulesets for several years now as a community member. Recently, some others have expressed an interest in helping me out or in getting started. I use Python scripts to parse contents, so there is very little that someone else can do to help me out. However, a much better use of that enthusiasm would be to convert something that I am not working on. There are so many great products out there, and my free time is limited. To help that happen, I thought I might share some of what I know. The Developer's Guide is of course very useful, but it is also overwhelming. Over the years I have made countless mistakes and cuased much grief to Smite Works (sorry!), but they have always been very patient and helpful (thank you!). I hope I can share some of the mistakes I made so that others do not do the same, and also create a forum for people who might be interested in starting but feel a bit intimidated by it all. The following description assumes that Python will not be used. Caveat: Obviously, as I am only a community developer and not a Smite Works employee, anything posted here is unofficial. My knowledge is often wrong or outdated. I will do my best to update this thread as I find errors.
Link to the The Devloper's Guide (this covers both rulesets and content products)
https://fantasygroundsunity.atlassia...eveloper+Guide
Step One: Establish yourself
The first step is to contact James Holloway and inform him that you want to be a community developer. Once you are set up, study the interface of the community developer portal and the product dashboard. Also note the list of products that are looking for developers.
Contact: [email protected]
Step Two: Contact content creators
Start looking for content to convert. AS you search, please keep in mind that I already have an established relationship with the following content creators:
Kelsey Dionne (Arcane Library)
Xane Daniel, Bunni Daniel (Dungeon Damsel Creations)
William Murakami-Brundage (Menagerie Press)
Taylor Seely-Wright
Bart Wynants (Bulwark Press)
Robin van de Ven (Fireside Tales)
I approached the following people, but they were NOT interested:
Antidote Games
Black Lodge Games
Chris Powell
Sersa Victory
After you find something that interests you, send a contact creator an inquiry of interest. Here is an example:
Hello,
[Request]
I am writing to inquire about the possibility of converting XXX to an official Fantasy Grounds virtual tabletop product. Fantasy Grounds is produced by Smite Works. I am not an employee of Smite Works. However, they have a procedure for community members to produce and sell official Fantasy Grounds conversions.
[Business details]
The business agreement is with Smite Works. The profits from any sales are split 45% to the original author (you), 40% to Smite Works, and 15% to the community developer. I convert and maintain the product. Your only responsibility is to approve of the price of the products (which is normally the same as the pdf version), You may also choose to suggest changes, etc., but such involvement is not necessary, and normally authors are not involved in the conversion process.
[Caveat and motivation]
Fantasy Grounds is one of several products competing for a niche market. Among the Fantasy Grounds users, the OSR community is not large, so the potential number of purchasers is extremely limited. However, I am motivated to do the work because …
[More about yourself]
Previously, I have converted products for …I became interested in your work through …
Sincerely,
[Your name]
Author
Publishing Company Name
Email address
Request that a contract for independent publishers be sent. You will not be officially informed of the result of the negotiations. If you do not hear back from the content creator, then after a reasonable amount of time has passed, politely request an update.
Step Three: Extract images from the PDF
Having the images ready to go will make embedding them easier, as you will have a good idea of which images need to go where. You need to remove the images from the pdf file. Surprisingly, I have repeatedly had problems extracting images from a pdf file using Adobe Acrobat. I now use PDF XChange Editor. It is a paid product, but well worth the price. You can select images individually, or you can extract every page as a png image. Another option is Inkscape. It can export as webp format.
Step Four: Process the images
For this step, I use the freeware image editor paint.NET. If you download this program, take care to not click on a advertisment instead of the actual download link. The required features are fairly basic, and they should be found in any image editor program. Use whichever program you are most familiar with. You need to understand how to use layers and set the transparency level.
Here is a link to the image file requirements (scroll down to the big table about images):
https://fantasygroundsunity.atlassia...uct+Guidelines
Steps:
- Resize image.
- Adjust quality (normally set when saving).
- Save as webp.
Dealing with Encounter Maps
I always do the following when I prepare an encounter map.
- Resize so that the grid squares are about 50 x 50 (just eyeball it).
- Crop the image to remove unwanted extra space around the edges.
- Add a 50 x 50 grid image (see below for file) on top as a new layer.
- Select the layer of the map image and slowly tug at the sides until the squares in the image perfectly line up with the lines on the 50 x 50 grid layer.
- Delete the 50 x 50 grid layer.
- Save the image.
I do not add a grid direclty onto the map. Instead, I add the grid in FG. This way, another user can adjust the color, etc., of the grid to suit their needs.
A 50 x 50 pixels grid file:
gird black 50x50.png
I almost always prepare a seperate Player & DM versions as follows.
- Prepare the Player version so that the grid is perfect, as explained above.
- Add the GM image as a layer above the Player image.
- Set the transparency of the GM layer to about 75% so that you can see the Player image underneath the GM image.
- Select the entire GM layer, and slowly tug at each side until the GM image perfectly lines up with the Player image.
- Copy the GM layer to its own image, and save it.
You should have two files (GM and Player versions) that are exactly the same size and perfectly line up with each other. This point is important because we will add the images as layers inside FG.
When you are done processing the images, check their sizes. File size restrictions are listed here:
https://fantasygroundsunity.atlassia...uct+Guidelines
If you accidently submit with a file that is too large, the submission will be rejected.The easiest way to do this is to turn on file size in File Explorer (Windows computer), as shown here (I use Japanese Windows, but you get the idea):
Checking_File_Size.jpg
Image Naming
If you have a lot of images (some of my projects have over 300 image files), then file naming is important. I do the following:
- Prefix the image name with a three digit number than matches the pdf file page that the image came from.
- Start map image names with 000.
- Append either Player of GM on to the end of the map image name.
Step Five: Organize your campaigns
A product is divided into three parts, as follows. (If a part does not apply, then it is omitted.)
The player accesible part (locked)
- Preface contents.
- Player story contents.
- Player records.
The GM accesible part (locked)
- Preface contents (repeat).
- GM story contents.
- GM records.
The adventure part (left unlocked)
- Preface contents (repeat).
- GM story contents.
- GM records.
Each of these is a seperate camapign inside Fantasy Grounds. Decide which contents will go into which part. Some content will need to be repeated.
Next, decide the campaign name. If you are developing an official product, then you must follow Smite Work's naming convention, which is the same code as used by the product when entered into the Developer's Portal. Here is the convention:
The product id should be the product id from the publisher, unless it's an indie publisher. Then it should be IPFG<ruleset abbreviation><publisher abbreviation><capitalized first letter of each word of the title>
Finally, you need to install the Conversion Checker for Fantasy Grounds. You can download it from the Forge here:
https://forge.fantasygrounds.com/shop/items/100/viewLast edited by spoofer; March 30th, 2025 at 08:42. Reason: Periodic Updates
-
March 16th, 2025, 06:46 #2
-
March 16th, 2025, 09:24 #3
It would be best to reach out through [email protected] for inquiries at this time.
Dominic Morta
Ruleset Developer
Smiteworks
How to zip up your campaign if the Developers ask for it-How to zip up your campaign if the Developers ask for it
How to provide an Unity Connection issue?-Connection Issues and What to Provide
Unity Updater issue?-Updater Issues
Classic and Unity Port Forwarding?-Fantasy Grounds Connections Explained
Comcast or Cox ISP User?-Comcast XFinity and Cox Users
Have a suggestion?-Feature Request
-
March 17th, 2025, 11:37 #4
Thanks. I updated the first entry with that email address.
-
March 18th, 2025, 15:09 #5
- Join Date
- Nov 2019
- Location
- Tampa Bay
- Posts
- 10
Is the process any different if I just want to add systems not available on the marketplace for my group to play privately?
-
March 18th, 2025, 15:26 #6Private Messages: My inbox is forever filling up with PMs. Please don't send me PMs unless they are actually private/personal messages. General FG questions should be asked in the forums - don't be afraid, the FG community don't bite and you're giving everyone the chance to respond and learn!
-
March 18th, 2025, 15:30 #7
- Join Date
- Nov 2019
- Location
- Tampa Bay
- Posts
- 10
Thank you!
Where do I begin on building a system from scratch (rather than building onto an existing system)?
-
March 18th, 2025, 16:05 #8
This video would help with getting you started
https://youtu.be/NDyFVbMHJ1o?t=4Dominic Morta
Ruleset Developer
Smiteworks
How to zip up your campaign if the Developers ask for it-How to zip up your campaign if the Developers ask for it
How to provide an Unity Connection issue?-Connection Issues and What to Provide
Unity Updater issue?-Updater Issues
Classic and Unity Port Forwarding?-Fantasy Grounds Connections Explained
Comcast or Cox ISP User?-Comcast XFinity and Cox Users
Have a suggestion?-Feature Request
-
March 18th, 2025, 23:31 #9
I am only talking about content products such as splat books (classes, items, spells, etc.) and advnetures. I will make that clearer.
-
March 29th, 2025, 13:01 #10
Seriously considering applying to be a community dev. I converted Trailer Park Shark Attack (SWADE) for my own use. I'm most of the way through a Saga of the Goblin Horde (SWADE) conversion. Again for my own use. I'm almost done with the Shadowdark Monthly Monsters conversion.
I use Inkscape to pull images from PDFs. It can export as WEBP so that seems to be saving a step. Sometimes I have to open an image in gimp to add a layer beneath the image to block the transparency.
Thread Information
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks