One of the objectives I have for a tactical RPG I'm making is moddability. My hope is that anything can be replaced with custom code.

For example: you can replace the combat system I did with, say, rules from other systems, like the combat system in tabeltop RPGs like d20 or Pathfinder (with enough perseverance, coding the whole thing), and just let the game use that, even though I'm not really sure how to go about designing my game to support that.

I don't have much experience with mods, save for trying out a few in Oblivion and Skyrim (*ahem* caliente, ENB mods, etc.).

So, to modders out there, what are the features that's there in easy-to-mod games that you like, that make you think "wow if this didn't exist, making my mod would have been almost impossible". Stuff that just isn't there in games where you have a bad modding experience?

To start off, here are my initial thoughts:

  1. I'm thinking of adding a Lua interpreter in my game, giving various objects in the game script access.
  2. Resources will be saved in text format (in JSON). For example, behaviour trees will be serialized in JSON text files that can be edited. An in-game visual editor will also be provided.
  3. A mod manager for the game will likely be good also (like BOSS in Oblivion).
  4. The idea of "mod packages" for easy distribution.
  • 1
    \$\begingroup\$ I don't think that you should be worried about players hacking things, if you want your game to be modded. If you think about it, hacking is a flip side of a modding when it comes to games. \$\endgroup\$ – David Sergey Apr 5 '13 at 11:22
  • \$\begingroup\$ Thanks for sharing your thoughts but I moved that into a different question as it's off-topic on my initial question, over here: gamedev.stackexchange.com/questions/53344/… \$\endgroup\$ – Anomalous Underdog Apr 5 '13 at 11:24
  • 1
    \$\begingroup\$ I'll be honest, it looks like a very subjective question - it's asking for opinions, and whilst that typically doesn't cause much argument here, as a point of principle, it should probably be closed. \$\endgroup\$ – Polar Apr 5 '13 at 12:12
  • \$\begingroup\$ I think you're right. I'm not sure how I can reword my question better. Nevertheless I'm appreciating the answers I get. They wouldn't have crossed my mind. In any case, if this needs to be closed, then please do. I'll try to get answers elsewhere. \$\endgroup\$ – Anomalous Underdog Apr 5 '13 at 13:00

There are many factors that improve modding abilities in a game. Nevertheless, most games don't allow you to replace core programmings. But if your "hope is that anything can be replaced with custom code", there are two key features you should provide to the community.

  • Your programming style must be clean and legit so that other people can easily understand and dive into it. So they can modify existing code, which is basically what modding is. Most mod won't replace the whole combat system, but make some adjustments and tweaks, add new features, and so on.
  • The must be a documentation that describes the background information about your game for programmers. A structured and easy to understand documentation is key to let other people work with your stuff. You may also consider writing beginner tutorials to let others get started easily.
  • Provide and make extense use of scripting. Making changes to a game by scripting is much easier then by programming, because you have a given api for higher level game functions and you don't have to set up a complete development environment to recompile the whole code. By good scripting support your game becomes very easy to extend. And if you hope that others "can replace the combat system", you should also consider more or less scripting that.

There might be other useful features to raise the ability and easiness to mod a game, but programming style, documentation and scripting might be the most important factors.

| improve this answer | |

A "Return to factory defaults in case I screw up button". It makes it easier/safer for everyone to experiment, then there is no need to back up saves and struggle to revive them after game reinstallation. In TES Skyrim you can load complete mods. They shouldn't break the core and if something happens you can always trigger them off.

If you make anything YOU ARE CONDEMNED to make a solid reference so the players can move around your code. Like have all custom classes and functions explained so the programmers wont have to spend ages on learning how stuff works.

NPC/character editor and anything you have created to make the game. Read about the TESV Nexus.

| improve this answer | |
  • \$\begingroup\$ If his game would expect mods to be in packages, people could just remove the packages. Of course a mod should never touch the original core but may overwrite it. \$\endgroup\$ – danijar Apr 5 '13 at 12:55
  • \$\begingroup\$ Not really, some people mess with the core to create some cool effects... If you use cheats too much, your game could get bugged and you might need to start a new game, mods as plugins can also mess things up in the core. PS. The best mods are pre-made cheats :) \$\endgroup\$ – Mikolaj Marcisz Apr 5 '13 at 21:06

Not the answer you're looking for? Browse other questions tagged or ask your own question.