Page 1 of 1

[Research] Quick questions for modders (university seminar)

Posted: Tue Oct 07, 2025 8:50 pm
by Sko0owi
Hi! I’m CS master’s student at the University of Wrocław. For a seminar on Game Modding, I’m focusing on Factorio’s modding scene. The Factorio team suggested I should ask the community directly for some of the questions—so I’d be grateful for your insights.

Questions (answer any):

- Most unexpected/surprising mod you’ve seen (or made) and why it stood out.

- When did mod popularity feel like it peaked to you (if ever)? Or has it been steady? Any milestones/releases that changed the curve?

- Did the API/tooling feel approachable for beginners, or better suited to experienced programmers? What helped you get over the initial hump?

- Engine/API limitations you frequently wrestle with (performance/UPS, determinism, UI, rendering, pathing, etc.).

- Dependencies & compatibility: how do you handle breaking changes and inter-mod cooperation?

If you’re okay with being credited in my seminar, please add how I should cite you (forum handle or name).
Thanks so much for your time and for all the amazing work you do!

Re: [Research] Quick questions for modders (university seminar)

Posted: Tue Oct 07, 2025 9:15 pm
by eugenekay
Sko0owi wrote: Tue Oct 07, 2025 8:50 pmMost unexpected/surprising mod you’ve seen (or made) and why it stood out.
Not my work, but I must nominate Verbose Engineering as the most mind-bending Recipe Mod I have tried to play. Using the alphabet is a completely new take on the crafting genre; worthy of its own Game. Even better would be auto-localization or trying to play it in Cyrillic.

Re: [Research] Quick questions for modders (university seminar)

Posted: Tue Oct 07, 2025 9:52 pm
by MrSmoothieHuman
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm Hi! I’m CS master’s student at the University of Wrocław. For a seminar on Game Modding, I’m focusing on Factorio’s modding scene. The Factorio team suggested I should ask the community directly for some of the questions—so I’d be grateful for your insights.

Questions (answer any):

- Most unexpected/surprising mod you’ve seen (or made) and why it stood out.

- When did mod popularity feel like it peaked to you (if ever)? Or has it been steady? Any milestones/releases that changed the curve?

- Did the API/tooling feel approachable for beginners, or better suited to experienced programmers? What helped you get over the initial hump?

- Engine/API limitations you frequently wrestle with (performance/UPS, determinism, UI, rendering, pathing, etc.).

- Dependencies & compatibility: how do you handle breaking changes and inter-mod cooperation?

If you’re okay with being credited in my seminar, please add how I should cite you (forum handle or name).
Thanks so much for your time and for all the amazing work you do!
1. something like elevated pipes stood out to me? because of how well it seemed to work and that it was even made - considering how much jank would be presumably required for faking elevated-ness. I would say my own overhaul does stand out for its premise (every element in factorio), but of course as the person who made it i'd say that
2. honestly in my personal experience and frame of mind, it feels like there and ebbs and flows of popularity - sometimes a bunch of people are talking about mods you made and other times you might as well have made nothing at all :lol:
3. i had no formal experience in coding when i started 2 years ago with the API, and now i've been... modding for 2 years! honestly what helped me the most was having people more experienced then i helping me out and having such a friendly community. and of course, the absolute amazing documentation for modding.
4. as a primarily data-stage modder this doesnt effect me, however there a handful of features i'd very much like that is at the whims of whatever dev looks at my forum request :P
5. i try to limit breaking changes as much as possible, however its an inevitability and its better to rip the bandaid off sooner then later. Inter-mod compatability is not something i do often, so i cant comment on it :D
(use my forum handle to cite me, if you dont mind)

Re: [Research] Quick questions for modders (university seminar)

Posted: Tue Oct 07, 2025 11:01 pm
by Honktown
1) I'm not sure if any particularly stood out - I might say Mobile Factory, which I was involved in for a while, which heavily used metatables - an incredibly large amount were running around, nearly everything got one. I think some of the code was inspired from Mining Drones, but there is particular "bad" behavior in how Mining Drones organized the objects, which was worked out in Mobile Factory (ownership, attribution of actions like mining, so they propagate and reflect well back on the owner as well as target). I normally considered metatables (and object-style) just a mess to avoid, but they can work really well when the logic is precisely managed.

2) Probably 1.0. Version 1.0 was released as "non-breaking" version, so all 0.18 mods were carried into 1.0 . It lead to a really long period of stable mods and "tall" development.

3) I did not, and do not, use tooling (other than a lua highlighter). For personal reasons, I never considered it necessary and it added one more interruption / barrier. What got me into modding was spite, to be blunt. I wanted something done, someone had sort-of done it, and the modding interface is right there, nothing special needed. The API is easy to understand, but that took a lot of discussions. The Discord was the most invaluable, and the devs responded on the forums as well. I've contributed to the prototype information on the wiki, before the newer API documentation existed for it, and also contributed to wording and "thoroughness" of some of the API. The API is more complicated now, to fully enable the new features of the DLC, but it can usually be understood why it is the way it is.

4) Personally, I don't think there were many engine / api limitations I ran into, other than 'missing values' or small oddities in behavior (which got documented or changed). The weirdest was how "updating blueprints" existed as a bug for so long, which interfered with a lot of mods which needed to edit a blueprint.

5) Inter-mod dependency is a human problem, not a mod problem, for the majority of it. People trampling things. The mod portal adds a bare-minimum option for modders to contact each-other (the discussions), which helps, as well as the Discord which keeps the community "live". There have been a lot of toxic / narcissistic developers, as it goes, but having a live conversation can really smooth things out. Most of the developers are "agreeable enough."

I'd rather not be credited.

Re: [Research] Quick questions for modders (university seminar)

Posted: Tue Oct 07, 2025 11:21 pm
by Osmo
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm - Most unexpected/surprising mod you’ve seen (or made) and why it stood out.
Probably Blueprint Shotgun, its surprised me with how well made it is and how fun it is to use.
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm - When did mod popularity feel like it peaked to you (if ever)? Or has it been steady? Any milestones/releases that changed the curve?
Haven't noticed anything extraordinary.
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm - Did the API/tooling feel approachable for beginners, or better suited to experienced programmers? What helped you get over the initial hump?
Its is absolutely approachable to beginners. Its also well suited to experienced programmer. Its simple and makes sense, and well documented, including more advanced stuff. There was literally no "initial hump" since i think my first mod was practically a one liner to change something in another mod.
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm - Engine/API limitations you frequently wrestle with (performance/UPS, determinism, UI, rendering, pathing, etc.).
GUI system is overly complicated and decently restrictive. It makes sense why as i think on the engine side its also very complicated and requires a lot of effort to implement stuff. But it is lacking in many common features.
Other things are usually more niche and/or are reasonable limitations. Also the devs implement a lot of API requests.
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm - Dependencies & compatibility: how do you handle breaking changes and inter-mod cooperation?
As i don't have much published content mods, not much experience, but inter-mod compatability is generally easy? If you need to use something from another mod, just depend on that mod. If you need to change some value in another mod, it just takes that, changing a value. Though for runtime scripts sometimes it needs the other mod to have a way to get/set values, but usually just contacting the author is enough. And if you need some more complex interactions, they are also possible.
Sko0owi wrote: Tue Oct 07, 2025 8:50 pm If you’re okay with being credited in my seminar, please add how I should cite you (forum handle or name).
Osmo

Re: [Research] Quick questions for modders (university seminar)

Posted: Wed Oct 08, 2025 12:08 am
by _CodeGreen
Hi, great topic for a seminar! I started writing this before anyone else responded and then went to eat dinner partway through, so I may be repeating a few things from others.

- Most unexpected/surprising mod you’ve seen (or made) and why it stood out.
It's hard to pick a single mod out of the thousands that are out there, especially since I've been an observer of the modding scene for many years. Knowing the capabilities of the Factorio engine, it's hard to be surprised at what people are making since the API can only do what the API has been designed to do. As for being unexpected, one of my own mods comes to mind, which is Blueprint Shotgun. If you don't know what it is, it's a mod similar to nanobots that aims to ease the burden of early game hand building in a silly yet thematic way. It's unexpected to me for a variety of reasons, partially due to how it came to be, the amount of love it's received since release, and the lack of popularity despite that. I've actually made a short video about this on youtube, which you absolutely do not have to watch, it's just there for those who are interested.

I don't remember how I had the idea for it, but I shared the idea on the Factorio discord, where it didn't land particularly well, and was told to prototype the idea by one of the devs. After I did so, people seemed to love the idea, and that fueled me to keep working on it until it reached my goal of doing almost everything bots can do without actually needing bots. I never thought I'd be making that kind of mod, so I surprised myself by doing so. I did not expect it to get the response it did, but I'm glad it's been able to bring both joy and usefulness to people's worlds.

That ties into the second unexpected part; The number of people who have gone out of their way to inform me of how much they love the mod or that it's their favorite mod is astounding. I've never had this kind of response for any of my other mods, and I doubt I will again. This mod seems to have hit the sweet spot for a lot of people, which I am truly grateful for.

That ties into the third unexpected part, if that many people swear by this mod, why was it so low on download count? Now, I'm not one to care about download, I don't make mods to be popular or to rake in the numbers, it's a fun hobby I can do that has a wonderful community surrounding it. That being said, the mod didn't even crack 1000 downloads for many months after release, and it wasn't until I made the aforementioned video that it started to take off. I suppose it's due to not being an overhaul, it only really spreads through word of mouth, but I haven't thought about it too much. Either way, it's surprising how much love it's gotten despite being relatively niche.

- When did mod popularity feel like it peaked to you (if ever)? Or has it been steady? Any milestones/releases that changed the curve?
Mod popularity has always been relatively stable, at least in the community areas I frequent, but I have noticed some trends in what mods people were playing over time. In versions 1.1 and below, Space Age wasn't a thing of course, and the main focus was overhauls, since most qol mods could be added onto any mod set. Bob's/Angel's, Pyanodon's (Py), Industrial Revolution 3, and Krastorio 2 (K2) to name a few were all the rage, and while there was some compatibility between a couple of them, each one was largely their own experience, so people would often do one after the next.

The first big shift came from the ever ambitious Space Exploration (SE) coming into the limelight, especially with a few content creators uploading their experiences. I don't remember exactly how it happened, but with SE being the "biggest" mod, K2 became compatible, along with 248k and Very BZ, so people gravitated towards SE + whatever flavor of overhaul addition they felt like. It was almost suffocating as a mod creator, as any smaller mod "had" to be compatible with SE, since people wouldn't install your mod otherwise. The popular mods got more popular, and the lesser known ones fell by the wayside, especially smaller overhauls. After all, SE takes a few hundred hours to complete, so why abandon it for something else that's smaller, less popular, and more ambiguous? Everyone else is playing SE, so you might as well too. Py had a decent chunk of the modded userbase as well, but Py is so much more complex it's hard for any other overhaul to add anything meaningful to it.

Then 2.0/Space Age hit. Almost every single mod requires actual changes to be compatible, not just a version bump. This was due to 2.0 massively changing certain parts of the API for the better, either removing decade old technical debt, changing things for the better, or making the necessary additions for Space Age to function. The bigger the mod, the harder it was/is to update to 2.0, simply due to the number of changes required to become functional. Because Space Age is effectively the new "biggest overhaul", many modders have made a subset of planet mods that are additions to SA, while the overhaul devs are updating the existing overhauls to 2.0. Quick aside, shoutout to notnotmelon for getting Py updated to 2.0 before it even came out, that was a huge amount of effort and shouldn't go unremembered. I believe we're currently at a big turning point in the modding scene, as SE has just become 2.0 compatible and we have yet to see any "true" cohesive Space Age overhaul. I expect to see a similar thing to <1.1, where people try to make as many mods compatible with SE as possible, however I doubt it will have the same drastic gravitational well of popularity that it did in <1.1, since many people have already already played SE.

- Did the API/tooling feel approachable for beginners, or better suited to experienced programmers? What helped you get over the initial hump?
I hold the stance that modding Factorio is one of the best ways to get into programming in general. You don't have to install a bunch of things, you can use any text editor and just start writing. Factorio's API documentation is, and I'm not joking, the best documentation I've ever experienced using, so hats off to Therenas and Bilka for their efforts. It has only ever improved over time, and there have been several points in time where some big change happens that's immediately useful. That being said, there's still a little bit of a learning curve to modding, since there's a lot of parts that have to be understood before you can really start going off by yourself to do more complicated things, for example the way the data lifecycle works, what a prototype is, how events work, etc. Even for experienced programmers, that is a decent amount to take in all at the start, and that's where the modding community comes in. This group of people, which I am proud to call myself a part of now, was so helpful in my initial journey, and continues to be so for many others that I see (and help) come and go, mainly in the discord. Without the community, it would have taken me longer to get into modding, and I may have given up at some point as well to pursue something else. It's still much more approachable compared to something like Minecraft though. Hell, my first mod was a single line of code, and sometimes that's all you need to do whatever it is you're trying to do in Factorio.

- Engine/API limitations you frequently wrestle with (performance/UPS, determinism, UI, rendering, pathing, etc.).
Since I consider myself to be a bit of a jack-of-all-trades modder, I suppose I've just gotten used to the limitations of the API, so I rarely run into any at all. That being said, there's still a few things occasionally, which usually stem from a specific prototype not being designed to do whatever it is I want to do. For example, containers (any kind of chest) don't support rotation, so if you want to have a 2x4 entity, you either have to accept that it can't be rotated to 4x2, or do some script jank to handle all the edge cases like blueprint rotation, cursor ghosts, etc. which takes a decent amount of work. Other things I can think of are machines not being allowed to produce both items and heat, render layers on a few small but specific things making certain graphics impossible to do, or other marginally inconvenient things that can usually be worked around. The devs are also pretty receptive to reasonable API requests, so occasionally to get feature that doesn't exist yet but very easily could, all you have to do is ask.

- Dependencies & compatibility: how do you handle breaking changes and inter-mod cooperation?
Considering I'm not much of an overhaul dev, I don't have to do compatibility very often. When I do though, it's usually the same process: Either another modder reaches out to me or vice versa about compatibility, we discuss about what would be best for the mods to work together, whoever ends up needing to do something does it, and then the other can add whatever it is they need to add if they need to, and everything works out. Every once in a while a non-modder will ask for compatibility with a different mod, and that's usually enough to get me to look into what it would take to add support, and if it's not too bad I do.

As far as breaking changes go, I try to avoid it as much as I can, which works out pretty well. I don't make many content mods, and the one or two that I do have are pretty static in nature, so I usually don't have to. That being said, I do think breaking changes should be made as early as possible, because it will only ever get more in the way further down the line. It's not going to magically get better unless you make it better, so if there's a clear reason to do it, then do it.

If you’re okay with being credited in my seminar, please add how I should cite you (forum handle or name).
_CodeGreen is fine, that's usually what I go by everywhere.

Re: [Research] Quick questions for modders (university seminar)

Posted: Wed Oct 08, 2025 12:19 am
by meifray
I think we can make a dummy spoiling item using custom trigger, and then use that trigger to know what machine it needs to add heat for.