White Shining Rock Logo
White Shining Rock Logo

Development Continues...

July 8, 2014 | Dukus | 67 Comments

The last few weeks I've been devoting my time to working on adding mod support to the game. It's been nice to stretch my coding legs by doing something other than bug fixing.

When initially writing the game engine for Banished, allowing users to modify the game wasn't something I thought about. It just wasn't in scope - I was more interested in finishing the project in a reasonable amount of time. Hence mods, multiplayer, and a few other features that could have been great additions were off the feature list before it was even written.

Luckily, the toolset I wrote for the game to help speed development is suited fairly well for mods - it just needs a few more features.

modimage

There's a single tool that compiles all resources into the binary format that Banished uses. There's a version of the game that has extra debugging features in it, and it can compile resources as the game loads, and additionally it detects resources file changes at runtime, so textures, models, and other resources can be reloaded without shutting down the game (most of the time). The tool also can pack all the resources into a single package for easy distribution.

That sounds good so far.

What's missing is the ability to have multiple people make additions to the game without having to patch each others raw data to combine them. I think it will be typical that many users will use more than one mod at a time - such as a translation mod, a mod that adds some pretty objects, like trees, shrubs, statues, and fences, and other mods that add buildings and professions to the game.

So what I've been mostly working on is support for multiple mods at once. The game can now load multiple packed data files, and new resources can be overridden or added. Mods can be loaded and unloaded at anytime, so if you've started a game without mods and want to load one, it's possible (although slightly dangerous if the mod drastically changes things...)

I've still got some details to attend to before mod support is complete. The major one is that I built all the game data thinking that if it was expanded, it would be by me. So there are a few static lists in the data, such as professions, inventory, and the toolbar that need to become dynamic. If two different mods change the toolbar and profession list to add new placable objects, then there's a conflict - since both mods modify the same resources. Only one will take effect.

The mod interface lets you know when this happens (all the red in the image above), but once I finish, this problem should be minimal if mods are built properly. But clearly you can't load two translations or two UI changes at the same time without conflicts.

Save games also need to record which mods are in use, and reload them - this way you can have multiple save games using different mods if you're wanting to try out different mods while playing different towns.

I've also got to decide what to do about achievements. Some mods, like translations shouldn't change the difficulty in getting achievements, but other mods can allow placing buildings for free and adding resources and citizens with the press of a button. That clearly nullifies the achievement process.

There's also Steam workshop support, but the mods will be the same regardless of where they come from. They're just dumped in the data directory and the game will find them.

The mod kit will ship with most of the original game data, to show how things are put together, and to allow game rebalances or full texture and model changes. I guess I also need to make some example mods and write some basic documentation.

Lots to think about... so I'm going to get back to it!

Leave a Reply

Your email address will not be published.

67 comments on “Development Continues...”

  1. Multiple mod support...now that's I've been looking forward to.
    Thanks and good luck.

  2. Adding mod support is huge. It will increase the popularity and lifespan of the game x100

  3. You had me at miller-baker
    πŸ™‚
    I guess my addiction to that game is far from over yet...

  4. Well, holy butts. The one and first time I decide to see if anything interesting was coming to Banished, this pops up. I'm glad you're working on resource conflict detection built into the UI. Lord knows how many times I've had to turn off mods one by one in Skyrim to find out the culprit.

    By the way, are the mods going to be available/browse-able through a Steam workshop? If not, that's fine. Not a stranger to manual installation anyway.

  5. Hello, I hope keep your code platform independent so you can easily port it to GNU + Linux later.

  6. VERY excited about this - and also thrilled to see two new professions added. Looking forward to trying it. Thanks so much for a great game and great after-support too.

  7. Since translations don't affect gameplay, they should be kept separate from mods, for several reasons:
    - Their use should not be recorded with the savegame. For example, when you load savegame you got from another player, you wouldn't want the game to switch to the language that player used.
    - They should not prevent you from getting achievements, while other mods should. Therefore, translations should not be allowed to modify any game aspects other than text.
    - Most users would probably expect to find a language selection in the options menu, and not look into mods for that.

  8. D'oh. I totally glazed over the steam workshop tidbit in the post. I need to visit my optometrist.

  9. YYYEEAAAHHHHH!!! It's coming along GREAT!! I so can't wait to see what people will add into the game!!! <3 this game =)

  10. Great! Good work. I'm not a big fan of mods although I do use them from time to time == on some games. But I know this will please a lot of users. Keep up the good work!

  11. Many thanks for this welcome addition to Banished; it will definitely add a lot of interest and lifespan to the game!

  12. hey!

    I want that baker on my city! xD

    The only way to have him is being a developer? That sucks πŸ™

  13. Wow, you really thought about this one Luke. I'm surprised you're building mod management all adding support for loading multiple mods at once. You are the first developer I know to build these things in the first mod-capable release! :O πŸ˜€

    And the conflicting system seems promising too. I'm really stunned that you make saves able to reload mods so you can use different mods for different saves. That's just brilliant! Amazing I can't wait for this.

    One little suggestion for the saves (you probably already thought about this)... What will happen when some mods have been removed and you try to load a save that uses a removed mod? Maybe a dialogue could appear which would state which files are missing.
    Which also makes me think of mod makers that keep updating their mods which might lead to changes that make saves 'non-compatible'. But that's probably more a thing for mod makers them-self to add a disclaimer that the new version might break game saves.

    Anyhow thanks for the blog update. I'm really amazed by what you made. Good luck Luke! πŸ˜€

  14. I love the text change idea. I would love to also be able to change the size of the text as I have trouble seeing it. I have a little bit of a sight problem and I'm sure I'm not the only person with difficulty seeing the small print. This I would prefer to see in the options and not as a mod though.

  15. This is a nice update, thanks. If you have an extra 5 minutes, could you give a couple people moderator access on the forums? The forums are filled with spam and the current moderator has disappeared. Thanks.

  16. I told myself a long time ago that Banished was going to be the first game I'd seriously commit to modding.

    This makes me really excited.

  17. Wow.

    You know there was a german-language review when the game was released, along the lines of "Banished does everything right that EA have done wrong"? Right on.

    Looking very forward! I'm pretty sure modding (let alone well supported modding) will give the game a much longer life.

  18. Forgot to say: regarding file formats, it would be awesome if you could try to ensure compatibility with free software like blender, Gimp and so on .. most modders don't have (legal) access to high-end studio tools, particularly when it comes to 3D modelling.

  19. Woohoo, can't wait to get my hands on it!
    Will we be able to create new items as well?
    For example: Pie-ville's most delicious pie's?
    +1 food, +1 warmth, +1 happy?

  20. Please don't prioritize Steam Workshop, The Nexusmods.com site is a great spot for hosting mods and the mod manager (if supported) can automatically download. Think of the game as everyone having the Gog version (DRM free version) and no access to any services connected directly. I think the Nexus is a much better choice for Skyrim mods and the like, Workshop has it's place but like DirectX, is limited to the platform it comes on.

  21. AWESOME! πŸ˜€

    And yes. So-- with modding support added, is it time to do some DLCs?

    Ehhh?

    Ehhhhhh?

  22. Awesome πŸ™‚ So great!
    Mod Kit + Workshop on Steam <3 O.O The Community foundet a new game for modding <3

  23. @Eric @Luke
    Completely agree about forum moderators.
    I was one of the most active posters there, but I've not visited there for almost a month due to the inherent problems of not having an active mod(s).. see the striking irony there? Heh.

  24. Can disasters (famine/farm) be increased?
    Can food spoilage be introduced?

    Just some things I would love, since I find the game too easy

  25. Mod tools are the single most important part to the longevity of a game. Too bad so many games are forgoing them for the 'production line sequel' model. For a game like this though, i cant think of a better way to promote it. The game is 'finished' in that it plays well and functions on its own, but the potential is right there for so much more given the system created. Letting the community take the load off you to flesh out the game should really benefit gameplay (and therefore sales).

  26. This is great news. Have played over 100hr hours and ready for another 100hrs.

  27. Ohhhhh man. I wish I was good at modeling/texturing.

    I'd add tons of late-game stuff to keep interest high. Great works like castles and cathedrals that would take years to complete, for example.

    Any chance of adding a map editor?

  28. I'm also afraid about the release of Linux/SteamOs & Mac version. Will it's come to us ? I hope, theses version will come in next weeks...

  29. Running a large mod group turned development company in the Racing genre, I am very glad to hear you are adding modding support. Have you thought about allowing mods to have their own directory within the data folder? This way each mod's files are separate from all others (especially the main game assets), and when you want to delete the mod, you just delete it's specific directory. As for the duplicate items in the UI such as duplicate buildings from two different mods, that is going to be your toughest challenge indeed, and that will be interesting on how the game works where two things do the same thing. But quite interested to see what you do there.

    What were your thoughts on multiplayer? The players playing on the same map? or playing on their own maps and being able to trade with one another? Will be interesting to see what you plan there or what your ideas are.

  30. Notifying the player of mod conflicts...detecting and reloading mods used by a savegame

    These are some really great features that I wish other moddable games had! Looking forward to this.

    I hope that any modder who uses the steam workshop will also post them elsewhere so that non-steam users can also see them... (hint hint steam user/modders πŸ™‚ )

  31. If one can only load one mod per mod category (i.e. only one font mod), why not divide the mod list by category and let the user choose one by radio buttons? That would avoid allowing conflicts.

    That would also prevent mods from having more than one functionality, but I don't think it would be a bad thing. One should be able to pick and choose between mods (although I can imagine a mod that modifies how workers look would not support another mod that adds new types of workers).

  32. Dividing mods up into categories would also make it easier to handle achievements, since you can choose to disable achievements when certain categories of mods are enabled.

  33. Great work, I love the game. I can't wait for the next release. Hopefully it will include sample working mods such as those shown in the mod dialogue box. I'm not sure why Language and Fonts need to be mods when logically I think they should be configuration settings. Thanks for giving us such a great game. Keep up the good work.

  34. I haven't played any computer games to speak of since I left school over thirty years ago (when the TRS-80 was the computer of choice), until a good friend who is an avid gamer intro'd me to "Banished." She said I HAD to play this game, and so I gave it a whirl.

    To say that I am impressed would be the understatement of the century. In all honesty, I have not had so much FUN and relaxation in a very long time. I play the game in 1x mode, and I can see what one reviewer said when he/she said it was almost like Zen. I don't know anything about Zen, but if this is what Zen is like, I'm going to have to learn, LOL...

    Thanks so much for providing such a superb, enjoyable, user-friendly game. I intro'd another good friend of mine (an avid gamer and computer person who has played many Steam games) to "Banished," and now she's as hooked as me and my first friend are. Best luck in your future endeavors--I can hardly wait to see what you do next!

  35. Can't wait for it. Whats about map generator ? you didnt talk about map, will we able to add some new map like plains, archipelagos, big islands, or desert, kind of map generation ??

  36. @MerryWidow: Are you aware that you can set the size of the User Interface with a nice little slider? It's in the 'Options'...

    Kinda agree - why would language settings and fonts be a 'Mod'? I normally set those once and never look at it again...

    Anyway, I'm super excited about the Mod Kit coming our way soon (?)... I'm so much in love with this gem of a game, I want it to go a really loooong way!

    Thanks again for all the work (and love) you put in there πŸ™‚

  37. Being able to add new professions, resources and buildings like the screenshot suggests will really open up the game.

    It would also be cool if you could tinker with the actual map/world generation algorithms to create more variety such as islands, larger lakes, true seas/coasts etc.

  38. @Roman

    With a Ukrainian Mod I suppose about half way through 20% of your Town is annexed πŸ™‚

  39. @paeng Yes thank you. I already have it set to 75 and I still have trouble seeing the text.

  40. Like said before: Please don't prioritise Steam Workshop. Especially there are many people that also play this game NOT over steam. The best solution would be NEXUSMODS; it works on all Plattforms AND maybe with support it is even Possible to add support for Banished within NMM (Nexus Mod Manager)

    Also there are many limitations with Steam Workshop. Removing Mods with Steam Workshop is as horrible as nothing else, uploading big mods too. So as long as it is possible to upload mods elsewhere, there's no Problem. And i really hope that mod authors upload the mods on the Nexus too; especially for people who plays DRM-Free!

  41. Good news!
    If we get the choice to upload mods to Nexus and not only to the steam workshop would be great and the best solution!

  42. Hahaha, got some Green Mile references over here :p

    Good to see this and I'm anxious to see how it will pan out. And maybe I can make a Dutch translation alltough I would probably still use normal English myself πŸ™‚ The only struggle with that would be the enormous help window that need translations as well πŸ˜€

  43. This looks awesome! As the rest of the comments here mention, I don't see any need to prioritize Steam Workshop. One of the reasons I bought the game was to support the developer (you) directly, and that you released the game without any DRM, online activation, or other bullshit. Keep up the good work!

  44. Great job! I also noticed that you could add a Miller and a Baker profession. Can you please add these professions/ buildings to the game πŸ™‚

  45. If talking professions, it would be great also if some professionals were living in their building. May not be possible for all of them, but some should, or at least two of them when four is the max. And the tavern keeper should definitely, like the tailor and the doctor, live in her-his workplace ! Hey, we want the tavern to be open early and closed late, the doctor to be always In and the tailor ready for these last minute modifications…:-)))

  46. If your modding tools are powerful enough for a team of modders to, say, replicate many of the features of ->Dwarf Fortress<- for example, your sales will go THROUGH THE ROOF.
    ...Just saying...

    With the inclusion of these modding tools I can see a bright future for this beautiful game. It's a solid game in itself. But with the ability to add advanced features... wow.

  47. please, tell me that the miller will be a WINDmill to be placed along a river!
    please....!!!

  48. I really hope you had some sort of multiplayer, i know its only you and you have a lot of work to do. But if you added multiplay the amount of people playing this game would increase, being able to build together with your friends, trading resources with people or watch others fall as you prevail would be amazing, plus all the YouTuber would play this! think of the opportunities

  49. I cannot express how much this game fills my city/town building needs. Especially after I played Simcity 5, to have it overtaken by such a simple concept but executed so well it outshines even the AAA studio that used to be a master in field.

    damm i love this game. thank you!

    Greatly looking forward to the steamworks implementations!

  50. I am really looking forward to a difficulty mod of some kind. Perhaps make it so winters can last years or something...I am not sure. I just know it needs to be harder.

More Posts

Code Rot

April 17, 2022
1 2 3 47
Back to devlog
Back to devlog
Β© Copyright 2021 Shining Rock Software
Website Design & Branding by Carrboro Creative
menu-circlecross-circle linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram