Greetings Forge community, and welcome to the twenty-third edition of our Stars of the VTT Galaxy series. This regular interview series is meant to shine a light on the already bright stars that make up our community of Bazaar Creators.
His work is highly regarded within the community for its creativity and technical brilliance. From coding groundbreaking tools to shaping the player experience, his influence resonates throughout the Foundry VTT space.
IronMonk, a renowned developer in the TTRPG community, is not only an employee at The Forge but also the mastermind behind numerous popular Foundry VTT modules. In this interview, we delve into his journey, the challenges of module development, and his vision for the future of VTTs.
Our sky consists of many stars. Each of them illuminating our planet. As you can guess, the stars are you. Yes, it's you, the great content creators who, in your own unique way, shine on our worlds. Thank you for being part of our heavenly sky and weaving the fabric of our Community.
Let's meet today's star.
Introduce yourself, for those who don’t know what you do, what would you describe yourself as doing within the Foundry VTT and TTRPG space?
IronMonk: I'm IronMonk, and I code for The Forge, and write modules for Foundry VTT in my spare time. Although that spare time is vanishingly small these days.
What’s one random fact about you?
IronMonk: I was born in a lightning storm. And the hospital roof was leaking. I have, as of yet, not gained any lightning powers from that, but I can keep hoping. (I mean... Technically with programming I control the electricity in the computer... So maybe?🙂). I do like a good lightning storm though.
What’s your history as a developer? How did you end up becoming one?
IronMonk: I started "programming" with the Commodore 64. (Just to date myself with how old I am). And kind of defaulted into programming at one point.
I went into Mechanical Engineering after high school and didn't do so well in that field. But I did do quite well in the Computer Programming course. So I figured that maybe I had an aptitude for that. I switched from Engineering to Computer Systems Technology, and the rest is kind of history from there.
And how did you end up getting into developing modules for Foundry VTT?
IronMonk: Fun fact, at one point I'd started my own VTT. I hosted a bunch of games on that system but it never really went anywhere.
At one point I was looking around for an alternative, and stumbled across Foundry VTT. The fact that you could code your own modules for it sold me on switching over to it. So when I moved over, I started to add things to Foundry that I'd had in my own VTT. It was mostly because I wanted to use that same functionality while running my games. So the modules that I've created are a reflection of my own VTT.
Interesting. Can you tell us more about it?
IronMonk: It was a very similar origin story to how Foundry VTT started. I created it so that me and my friends could play a game easily, mostly because we were using PF1e at the moment, and there's a lot of math involved in that game. I wanted an easy way to show a map of where we were and keep track of what we were doing. It kind of snowballed from there into actually moving tokens around, and handling attacks and playing remotely.
I think it failed because I wasn't good at marketing. No one knew it existed except for the people I played with. That is a lesson learned late, to involve people who know what they're doing in areas where you don't know what you're doing.
How did you get started with TTRPGs? What is/are your favorite TTRPG(s)?
IronMonk: I got started way back with D&D second edition. I used to play it with friends back in high school. I ended up taking a break from it for a while until a friend was talking about it, and decided that it was time to play again, and got a bunch of friends together to play regularly. That would be the aforementioned group that I started writing my VTT with. After that, I went back to D&D with 5e.
Currently, I've moved over to PF2e, which I had misgivings about considering all the math involved with the first edition, but it's turned out better than I thought. So currently that would be my favorite, although I can still appreciate D&D 5e.
For how long have you been working at The Forge? Can you tell the community a bit about your role here?
IronMonk: I just had my 3-year anniversary, which is nice. Other than KaKaRoTo and Destiny, I'm the next-longest employed person here. Working with an amazing group of people has made those three years a serious joy.
Where does the inspiration come from in the work you do? Or perhaps, your “muse”?
IronMonk: I'd like to talk to my muse, because I usually get inspiration as I'm trying to fall asleep. I do get some amazing ideas pop into my head... But it does mean it takes me forever to fall asleep. I like to keep a pen and paper beside me so I can scribble things down without having to get out of bed. Although, trying to interpret some of those notes in the morning can be a challenge, lol.
I think most of my inspiration comes from being a grumpy old man. If I encounter something in a program that irritates me enough, then I'll figure out a way so that it doesn't irritate me anymore.
I think my muse is part rainbows and part spite.
Let’s say IronMonk is deciding to pick up yet another development project for Foundry VTT. How does that happen? How do you end up creating yet another module?
IronMonk: It's usually because something bugs me enough that I need to fix it. Or it is something that people have been asking about on my Discord. Or because it would amuse me to have it in a game. I'd then need to check and make sure that the thing I want doesn't already exist.
At the beginning of Foundry, like v7, there was a lot of room to develop modules because there wasn't much content. But now in v12, there's a lot of code written for Foundry VTT. Some good, some bad, but it does mean you need to watch out that you don't step on anyone else's toes when picking up another project.
Foundry VTT is a rapidly evolving platform. How do you stay updated on the latest changes and ensure your modules remain compatible and up-to-date?
IronMonk: I don't. Unfortunately. I used to, but with the number of modules I maintain, I find that I'm not on top of any of it. And I definitely rely on the community to point out if something is incompatible or needs to be fixed. And honestly, considering the state of the community, I'm not sure you could stay up to date on everything. Between Foundry changes, system changes, and other module developers making their own changes, it's hard to stay up to date on all of it.
My modules can get pretty aggressive with how they modify Foundry and I know that runs afoul of other modules. Unintentionally so. And honestly, I could never hope to be able to test my modules in all the systems and with all the possible configurations. So I do appreciate that Foundry has a great community that is active and vocal in discovering issues.
As for the major Foundry version, I have made the decision to not be backwards compatible, that my modules only support the current version of Foundry, because some of those changes are so massive that it would be nearly impossible to maintain a module that could accommodate everything. Especially since this is still just a hobby.
In the world of module development, compatibility with other popular modules is very important. How do you handle potential conflicts or integration challenges with other modules?
IronMonk: Delicately. It's always an interesting question when a conflict comes up, trying to determine who's responsible for fixing the issue. I think the best part is that the module developer community is very open and collaborative. We all talk with each other and freely communicate ideas.
There have been times where I recognized the issue was mine and got it fixed and patched as soon as possible. And other times, where I'd consider it the other modules' issue and would politely open up a ticket for them. And more often than not, both of us would fix the issue. I.e., whatever the issue was, it exposed a fault in both of our modules.
I think that module development has to be pretty fluid considering how many different ways Foundry VTT is being modified. And we can build upon things that other developers have found. So the code I've written, although it may have made sense to me, doesn't make sense in the broader scheme of things. And I need to be open to code suggestions other developers may have.
You were voted as a winner of the 2022 League of Extraordinary Foundry VTT Developers Package Jam. Congrats, well deserved! What did it mean to you at that moment, and did it influence your approach to future projects?
IronMonk: Thank you! I was trying not to repeatedly check to see what the votes were saying before the results came in. Still had my fingers crossed though.
It was a really nice moment, and a bit of a recognition for the work I'd done and was doing. I think sometimes the module developers can be a bit overshadowed by Foundry VTT so I did appreciate that there was an event that was dedicated to the modules.
As someone who codes modules and works at The Forge, how do you balance your responsibilities between development and your role at The Forge? Have your experiences with The Forge's development influenced the design of some of your modules?
IronMonk: I'd say it was the other way around. I think my Foundry designs have influenced my Forge development. Although there's definitely a bit of sharing of resources.
I think the best part for me is that I can make sure that my modules interface properly with anything Forge-related. I've definitely made modifications to my modules to help support this integration. It has also allowed me to add support for my modules into the modules I've created for The Forge. So there are benefits to having a module developer on staff.🙂
As for balancing my responsibilities, it's not that hard, I just make sure that when I work on my own modules, it's during my own time. And the joy of working from home and with flexible hours means I have control over that. Now, how I balance how much time I spend on coding my own modules, that's the big question.
This is probably a tough question considering you've created so many great modules, but among them, which one are you most proud of? Let's say your favorite one? What did that look like in development? What kind of challenges and issues did you face in creating it?
IronMonk: Oh, I can't just pick one. They're all my favorites, but there are three that are near and dear to me.
The first would be Little Details, mostly because it was one of the original modules I made. It was a collection of all the little things about Foundry that I felt needed to be "tidied" up. Eventually, though it became much larger than it was originally intended, and at one point, I made the decision to split it into multiple smaller modules.
It is a favorite of mine even if it no longer looks the way it started, but I do have a fondness for it.
The second would be Enhanced Journal. That module is an absolute beast. There is a lot of coding that's gone into that one, so it's a favorite just for the fact that I've spent the most amount of time with it. The initial development was complicated, and it remained complicated.
The vision for it was always to be an "interactive" journal sheet. And I think it ended up doing exactly what I set out for it to do. This was something that my VTT included, so I always wanted to bring it over at some point, but I left it for a while because I knew how much coding was involved.
The third would be Active Tiles. This one is a favorite and the quickest-developed module I had. My VTT also included triggers and I'd been missing it for a while, especially considering how awkward it was to have players navigate between scenes.
I woke up one Saturday morning and couldn't get the design out of my head. So... I started coding and spent the entire day coding. And by the end of the weekend, the initial design of Active Tiles was completed.
Now, it's got so many more actions available and a lot more things it can do. It makes me happy because of all the silliness it inspires.
Do you have any small module you've made in particular that you’d recommend people check out? Something not as huge, but still helpful?
IronMonk: BreakTime. People should know about BreakTime.
This is the module that I constantly hear is "The module I didn't know I needed until I started using it". Mostly because I was playing in a game where we were waiting for one person to get back... only to find out, they'd been back for a while and just weren't saying anything.
So BreakTime is there so you know when everyone is back.
Could you share any insights or sneak peeks into the modules you're currently developing or planning for the future?🙂
IronMonk: Currently, I don't have any. I have some thoughts on new ideas, but I also think I've hit the sweet spot with the number of modules I currently have to maintain. Especially when it comes time for a new Foundry release, which keeps me busy for a while.
So as much as I'd like to get into some new modules, I want to make sure that the people who use my modules get the modules they deserve. And that they're as up-to-date as they can be.
I know a couple of my modules have been stable for a long while now, with no new development, so when I feel like I have some space to do it without my current modules suffering, I'll pick one of those new ideas up.
What do you think sets a great module apart from others in terms of user experience and functionality?
IronMonk: That the learning curve to use it is small and that it does what it's supposed to do, without getting in your way. That's been the driving force behind a lot of my module ideas.
I want the module to help me make my game easier. It's one of those weird instances where the best module is one you don't even realize is there. A great module is one you've used without realizing you've used it.
You have a Patreon but aren’t very active there. Why?
IronMonk: It's a good question.
I know other developers have paywalled a lot of their stuff. And I had a long debate with myself about doing something similar, but I do what I do because I want people to have a good experience.
I could be making more money than I am. And I will make a shameless plug for people to go visit my Patreon because... why not. But at the end of the day, I feel good about what I've done. And people are able to play with other people and have an amazing experience.
What’s your favorite feedback you’ve ever received from a user, and how did it shape your work?
IronMonk: I can't remember any specific feedback I received. But I do appreciate the comments I get when people newly "discover" my modules and how amazing they think they are. It makes me feel validated, because they're based on my old VTT.
I spent a lot of time on it for it to go nowhere, so to hear that the ideas I took from that are amazing, is nice to hear. It confirms that I did in fact have good ideas for that VTT.
VTTs have seen significant growth in recent years. What are your thoughts on how digital tools like Foundry VTT are transforming traditional TTRPG gameplay? And how do you see the role of independent creators, like yourself, evolving as VTTs become more mainstream?
IronMonk: I think a VTT is just another tool. It's filling a niche that a TTRPG couldn't fill, but won't replace it. Like, the other night I was playing a game with friends, but we were all from different countries and different time zones. And you couldn't get that with a regular TTRPG.
I also appreciate the convenience of not having to set up the board, that it's been saved and already ready to go. And at the end of a session, I can just crawl into bed rather than worrying about driving home.
At the end of the day, it is about the people you play with, it's about spending time with friends, and I think that a VTT is an amazing resource to facilitate people getting together, even if they aren't physically in the same room. Although, I do miss physically rolling the dice. There will always be something special about that.
As for how creators fit into that, that's an interesting question. I know it's slightly pessimistic but I do believe we will eventually be phased out. And I was aware of this when I started writing modules for Foundry VTT. At some point, some of the things I'm doing will be folded into the main Foundry program itself. We've seen it happen already with a handful of modules.
So I believe the more niche a module is, the longer it will hang around, but the more generic a module, the more it fills a gap in the core Foundry experience, and the greater the chance it will eventually become obsolete.
That being said, I think it also means that there's a great opportunity for adventure designers to make a bigger impact, because it's easier to get digital content in the hands of a VTT than it is to get a printed booklet for regular play. And I think there's a greater need for new adventures to be played.
I also have no experience with adventure development so take what I say with a grain of salt.
As someone with a deep understanding of Foundry VTT, The Forge, and VTTs in general, what emerging trends do you see shaping the future of VTTs?
IronMonk: I see a trend towards too much flash and not enough substance. And it happens in most products at some point in their popularity, not just VTT-specific.
At some point, the developers opt for more animations, and more sound effects, because they look cool and they draw people in. But at the end of the day, people will notice if you're not maintaining the core functionality.
Like it's all good for icing, and you'll enjoy the icing, but after a point you'll start to notice that the cake is dry. And the thing about flash is that it only pulls you into the game a little bit more, and that pull diminishes over time. But if you encounter something that is a pain, it will immediately take you out of the game. On the plus side, this is an easy thing to catch and fix.
I also see a trend towards integrating more technology into the VTT, such as touch screens and Bluetooth dice, and using this technology to incorporate a VTT into regular in-person play, as well as also seeing trends shifting towards live-streaming gameplay.
If you could add one magical feature to Foundry VTT overnight, what would it be?
IronMonk: Consistency. In terms of how to integrate with the code. I think this has been an issue for a while now though. In the beginning, there weren't a lot of modules and you could do whatever you wanted but with the increase in modules, it's hard to not run into a conflict with someone else.
There are a lot of cooks in the kitchen and a lot of different ways that people have done things. And mostly around system development. And I say this as an aspect of module development, it's really difficult to support multiple systems because they all do things slightly differently. And you end up writing a lot of code to determine which system you're currently in.
On the plus side, there's a lot of diversity in ideas and code, so you see lots of different ways to do things and a lot of examples of ways you could improve your own code. But definitely, it would make module development easier if you could expect the same things between systems.
If you could only use three of your own modules for your personal TTRPG campaign, which ones would you choose and why?
IronMonk: That is a really tough decision because my modules are written to remove annoyances. So what are the things that annoy me the most. And as much as I love Little Details, Active Tiles, and Enhanced Journal... They don't bug me the most.
Probably would be TokenBar, because I hate having to chase down multiple roll results. Like, when I'm asking for a group roll... I want them all to be contained in the same message, not scattered in the chat window.
Combat Marker, because I like to know quickly which character is the one currently moving in combat.
And the last one is a hard one. Possibly Combat Details because it just adds a lot of fixes to the flow of combat.
Runners up would be Bloodsplats because it amuses the crap out of me.
Little Details because it fixes a lot of little annoyances.
And BreakTime because you know who you are, turn on your mic and let us know you're back!
If you could create a "dream module" without any constraints on time or resources, what would it look like?
IronMonk: I kind of have created all my dream modules. I think I got in at a wonderful time and was able to write the things I wanted to write. And they've all evolved into the things I wanted them to be. And for that, I feel pretty lucky.
Do you have anything you want to say to the greater TTRPG/VTT community?
IronMonk: I love all your support. You are the reason I do the things I do. The reason none of my modules are paywalled.
Keep being amazing. Keep being inclusive, accepting, and welcoming. And keep gaming.
Do you have any advice for aspiring developers looking to start creating for Foundry VTT or contribute to the broader TTRPG space?
IronMonk: Take the time to see what's already out there. Be polite and don't step on other developers' feet. There's history here, good and bad that you might not be aware of.
Be kind, we're all volunteers here. Start small learn what Foundry VTT does without any other modules involved. libWrapper and Find the Culprit are your friends. Don't be afraid to ask the community questions. And have fun.
What are your plans for the future in general?
IronMonk: Grow a garden. Watch my kids grow up into amazing human beings. Continue to maintain and fix my modules. Learn to play Netrunner. Play some PF2e with friends. You know... the usual.
Thank you IronMonk for this interesting conversation. Keep up the great work.
IronMonk: Thank you for having me.