The Cost Of Moddability

แชร์
ฝัง
  • เผยแพร่เมื่อ 13 ม.ค. 2025

ความคิดเห็น • 539

  • @PaintsAreOp
    @PaintsAreOp 18 วันที่ผ่านมา +1002

    Making a game moddable is hard and costly. But you know what's even more expensive? Creating anti-tamper systems that make sure the game is not moddable under any circumstances.

    • @JediMB
      @JediMB 18 วันที่ผ่านมา +143

      Yeah, that's easily the most annoying obstruction. It's understandable if a developer doesn't want to actively support modding, but for single player games the least they can do is to not actively make things difficult for no reason.

    • @irAbyssion
      @irAbyssion 18 วันที่ผ่านมา +34

      My mind went straight to Styg the creator of Underrail.
      Although to my understanding the anti-modding stems more from how insane his game is coded.
      Which I personally admire with how spiteful, entrenched and stubborn he is with his community and games.

    • @gobogoo2329
      @gobogoo2329 18 วันที่ผ่านมา +9

      do devs normally make their own anti-tamper systems though?

    • @old_scaly
      @old_scaly 18 วันที่ผ่านมา

      ⁠@@irAbyssiontoo bad he’s also a homophobic, racist bigot. Though I guess that explains why one of his guiding principles is spite.

    • @PaintsAreOp
      @PaintsAreOp 18 วันที่ผ่านมา

      @@gobogoo2329 No, but even when you use something like Denuvo, you still need your own dev time to put it into your game.

  • @pelicano1987
    @pelicano1987 17 วันที่ผ่านมา +236

    I'm in heaven to see a video from Tim about a question by me. I grew up with Fallout and many other IPs by or worked by you. Thank you very much.

  • @MrJekken
    @MrJekken 18 วันที่ผ่านมา +201

    Another reason a lot of companies don't do mod tools, or do it far less than they used to, is they often view mods as competition. Rockstar is a good example, where even though they never purposefully made their games moddable, the games had extensive modding communities and with the old GTA trilogy, they DMCA'd the work of modders and de listed the original versions of their games. Bethesda and Valve have the right approach and it benefits them long term even with the cost of adding those features because their games can have longer tails and relevance, they can monetize and even publish certain mods in collaboration with mod authors and it allows them to have a high aggregate talent pool for their in house engine that they can hire for without needing to do too much on the job training or tank the cost of switching to an OTS engine.

    • @Verchiel_
      @Verchiel_ 16 วันที่ผ่านมา +5

      Agreed
      High priced as the mods may be that are published on BGS games, i think that's a small con relative to how much, i believe, good, it brings.
      Providing a monetary incentive to developers, possibly allowing them to learn modding further to the point they're actually viable candidates for hiring, which Bethesda has openly done.
      My really only concern is whether or not it devolves to stolen mods being put up behind a paywall, which is the issue that happened (almost certainly still is) with minecraft marketplace.
      At the end of the day, so long as the company behind the game isn't actively fighting the community building the game obtusely for purpose of limiting modding potential, or straight up taking down mods directly purely out of any perceived threat as dumb as that may sound.

    • @SlizenDize
      @SlizenDize 15 วันที่ผ่านมา +5

      I know I'm a minority in this but I would honestly never had played GTA if it wasn't for mods. Being able to play that in VR was the reason I bought the game in the first place.

    • @lamikal2515
      @lamikal2515 15 วันที่ผ่านมา +18

      I agree, but you can't use Bethesda in that example : modders aren't competitors to Bethesda's work, their are their litteral workforce. The very day Bethesda cut modding support, they will go down in flames.

    • @jeckek9936
      @jeckek9936 14 วันที่ผ่านมา

      @@Verchiel_ Thats irrelevant when modding platforms allow for donations and websites like patreon exist.

    • @derekskelton4187
      @derekskelton4187 12 วันที่ผ่านมา +6

      @@lamikal2515 You have no idea how much work goes into building a game. The modders obviously make their games better, but those modders would have lot more trouble actually making a game themselves. Especially one as massive as a Bethesda game. Turn off the Reddit brain rot, and think for yourself.

  • @BubbleoniaRising
    @BubbleoniaRising 18 วันที่ผ่านมา +118

    As I’ve gotten older I’ve found that I spend about 80% of my time engaging with games that support modding because I enjoy that aspect of gaming far more than the alternative. I still play a handful of new games each year, but the majority of my interest is in the maker community.

    • @frankmckenneth9254
      @frankmckenneth9254 13 วันที่ผ่านมา +8

      Exactly this. I no longer buy games that aren't moddable. It's not really worth my money if not.

    • @OpenGL4ever
      @OpenGL4ever 12 วันที่ผ่านมา +3

      @@frankmckenneth9254 So you buy games to mod them, not to play them. Interesting.
      There's a saying here that says computers were invented to solve problems we didn't have before.
      It's similar with your decision.
      For me, the ability to mod is not the deciding factor in whether I buy a game or not. It's a bonus of course because it increases playability in the long run and allows to change the game to my needs, but basically I buy games to play them and not to do the work of modding.

    •  11 วันที่ผ่านมา +1

      Right, I actually enjoy troubleshooting mods and figuring out how to get them to play nice with the game and each other. There are some very talented modders out there.

    • @lucasLSD
      @lucasLSD 8 วันที่ผ่านมา

      Same, I thought I would engage less with mods as I got older, but I end up just using more and more and playing the same games but with new mods.

    • @kvproductions2581
      @kvproductions2581 4 วันที่ผ่านมา +2

      @@OpenGL4ever I'm on the same boat as frank here, and the reason is, if i buy a game that is moddable
      >I can make or get new content if I run out
      >I can change aspects I don't like
      >I can spice up my experience when i'm bored or tweak it however I want
      If I buy a game that's not moddable, i only get the game as-is. If i run out of stuff to do, don't like something, or i get bored, that's it, the end.

  • @saffral
    @saffral 18 วันที่ผ่านมา +105

    One thing I appreciate about Bethesda's engine is that while you have no access to code, the entire game is set up like a database with the executable reading what the game will be from it. The plugins (ESP files) are treated as database queries that update, add, or remove entries in the master database (ESM files).
    It does limit the true potential of how far mods could go; though I'd say that's been less of a problem than some might assume. And with the script extenders making code modifications to add in new script functions there's a lot of freedom. The database approach also means that dozens or even hundreds of mods can all be loaded simultaneously without the end user ever needing to do anything beyond copying and pasting the mod files into their data folder.

    • @grungehog
      @grungehog 16 วันที่ผ่านมา

      Well the plugins still need to be sorted and enabled in the form of a loadorder.txt
      The plugin limit is the typical 254, but through new plugin types Bethesda managed to circumvent that limit, I've read load orders exceeding 1k plugins this way before.

    • @NovaFinch
      @NovaFinch 16 วันที่ผ่านมา +29

      It's why most Bethesda modders hope that Bethesda never changes to something like Unreal. The ability to have hundreds of mods installed without having to patch together every single one is massive for allowing players to customise their game however they want.

    • @saffral
      @saffral 16 วันที่ผ่านมา +4

      @@NovaFinch I'd expect that they could still make it work with enough time and money put into recreating that system or creating a new one (they already created it on top of NetImmerse/Gamebryo after all). But it's one more cost to switching and one more thing they'd still be maintaining instead of using the new engine's data structure.

    • @JackWse
      @JackWse 15 วันที่ผ่านมา +1

      It was just absolutely miserable when Valve switched to dynamic libraries with the '06 pipeline update, not just the things it broke at the time that would require a whole different mindset to fix.. But from then on it was a compilers game instead of a plug and play game,.. or it would have been without Garry's mod which is basically that in a nutshell, but with some restrictions for sure sadly but I don't know I think you get a little bit more than you lose with how cool that system is set up. But that is code, it's not compiled code but anyhow.. I'm speaking a little above my pay grade here and generalizing so I'll stop.

    • @lomborg4876
      @lomborg4876 14 วันที่ผ่านมา

      I would like to mod Bethesda games, but they’re too limited and complex to mod.
      And by that I mean engine limitations and too many different 3rd party software.

  • @FatherAlduin
    @FatherAlduin 20 วันที่ผ่านมา +119

    Hey Tim!
    Very insightful video, and I wanna stress how helpful it is as a modder when a dev includes a proper error log and exception handling.
    There are games out there that have absolutely no form of error logging accessible to modders and it makes debugging them an extremely painful experience, and when you contrast the modding community of those games with the community of games that have much more in-depth logging and better accessibility in general it really shows!
    Have a good Christmas Tim!

    • @JackWse
      @JackWse 15 วันที่ผ่านมา +2

      You know what's really useful as a player sometimes... A proper error log and exception handling.. we some basic developer tools like profiling etc.. for my calendar for my locker, you know and then and while you're at it I don't know any number of the cvars that you have access to cuz, (thank God unity is almost dead) you know.. they're already there All you have to do is not lock them out, so maybe we could get some basic separation of the graphics options without having to guesstimate and lock a readme file.. or whatever else we're going to have to do in the future as they keep making that worse with unreal.
      I can think of more than a few situations where I keep in my head imagining having the options I have in valve and their developers console features for so many different games to solve so many different stupid things... Many of which have nothing to do with CVRs, although they probably could be solved in a lot of cases, but just knowing what actually is happening instead of having it wrapped up in a proprietary nonsense file... Like come on.. come on?
      Honestly brother, the combination of the disconnect between the modern gaming community and the modern development community and what is prioritized and what is even considered or practices therefore, or kind of conspired against any of this being a thing going forward sadly...
      Or at least it will continue that way as long as we participate and support it, or forget our past.. often the past that got us where we were.. looking at you black Mesa devs clover collective or whatever... Way to pull the ladder up behind you.

  • @darthryking
    @darthryking 18 วันที่ผ่านมา +92

    Although the Source Engine has tons of problems, being inherently moddable is one of its core strengths, IMO. The way the engine is designed, pretty much all Source games (even the official Valve games) are considered by the engine to be "mods" (usually of HL2), which means that with a few exceptions, for the most part every Source game is automatically moddable just by creating a new "HL2 mod" and changing its mounting configurations to point to whatever content/script/config/asset files you want.

    • @SuperFranzs
      @SuperFranzs 17 วันที่ผ่านมา +9

      Is that inherited from the Quake engine?

    • @mryellow6918
      @mryellow6918 17 วันที่ผ่านมา +5

      this is the reason half life 2 with raytracing exists, because portal rtx, is just half life.

    • @LeadHeadBOD
      @LeadHeadBOD 17 วันที่ผ่านมา +11

      ​​@@SuperFranzs mostly yes, idTech 2 followed a very similar workflow, although Source of course comes with nearly a decade worth of tech advancements.

    • @OpenGL4ever
      @OpenGL4ever 12 วันที่ผ่านมา

      With this approach you only have to pay one price, and that is less security. For this reason, I hesitate to install such mods. And mods that are not used are also inaccessible. Practically nobody does a security audit of mods.

    • @darthryking
      @darthryking 12 วันที่ผ่านมา +6

      @OpenGL4ever security in this situation is generally only a concern if the mod mounts a modified game binary, uses some kind of inherent engine security exploit, or is a multiplayer game mod and mounts content that allows for unauthorized cheating.
      The first category is a legitimate concern for sure, and everyone should make sure they absolutely trust the source of a binary before mounting it (and if the mod is open source, that's even better since you can look at its source code yourself). The second category is not unique to Source, and is inherent to basically every game in existence, whether it officially allows for mods or not. The third category is usually dealt with by the engine using various integrity checks and file encryption, which, while not foolproof, usually is enough to deter most direct tampering (and again, is not unique to Source).

  • @Steelion69
    @Steelion69 18 วันที่ผ่านมา +45

    The funny thing is. Moddability is generally viable as a result of game development. Designers want to tweak and balance things within their games - especially if they lack a whole lot of Programming knowledge, and programmers will want to fix things broken in the soft code quickly. You don't need to mess around taking hours to compile a game; just edit a value, save the file, restart the game, and hey presto! now you can check if your fix or balance change is viable. Honestly, XML really was a game changer and pretty much is a key reason why modding has become accessible in the last 20 years for many games, whilst still having minimal performance overhead. Of course there are limitations since XML still depends in pre-defined data generally located in the compiled source code...and that's generally where modding ends. New items, and entities, etc - maybe limited to a hard cap for the sake of optimization. But that new content must still strictly adhere to the compiled code's behaviors and functionalities. It's very rare to find games that have scripts available in a soft-code environment (IIRC the Stalker XRAY engine is one of the few, which is part of the reason modding is so common for that game) so if a modding community is successful enough, or the right, crazy talented people show up, and if there are certain exploits that can be utilized (i.e the game uses Miles Sound System, unless disabled by a programmer it will load any .ASI file located in the game's main file dictionary)
    The reason why Bethesda games have been so moddable the years since Morrowind is different however, I suspect that the ESPs and ESMs came about because Bethesda back in the day compartmentalized areas, and aspects of the game until they were finished to prevent unnecessary data conflicts between different area designers. Then when all the necessary content was done (or they needed to push out a demo), they would merge the ESMs/ESPs (into say Fallout3.esm) But such a system would also be handy for future expansion packs, and patches; so they kept it. Then when support for Morrowind finished, they released a stripped down version of their in-house tools because they realized that the simplicity of the ESM/ESP data structure lended itself very well to mods.

    • @Dirty_Dumb_NAFO_Scum
      @Dirty_Dumb_NAFO_Scum 17 วันที่ผ่านมา

      This is exactly why Operation flashpoint/Arma was so moddable.

    • @Chris-lc3wi
      @Chris-lc3wi 16 วันที่ผ่านมา +5

      If you've been through the deep end with their modding tools, you start to see traces of this ESM/ESP approach just being a byproduct of a custom source control system. Collateral functionality, so to speak.

  • @Laceon1
    @Laceon1 15 วันที่ผ่านมา +7

    9 out of 10 games i play, i play because i can mod them. I get so much more value and satisfaction from my time spent with the game. I learned on Tribes 1! I made maps, ai, gametypes, items, models, code and eventually made an overhaul for shits and giggles. It was messy but it was how i REALLY got into gaming. And I've been modding ever since. I appreciate any dev that leaves the files open and easy to mod. Thanks for your work in the industry! Youve made some gold.

  • @gargamellenoir8460
    @gargamellenoir8460 18 วันที่ผ่านมา +106

    "Is making a game moddable easy/costless" isn't the real question, of course it's not. The real question is, what are the benefits. Most publishers seem to treat it as nice to have/courtesy to the players, assuming they're not actively hostile to the concept. But modding can be a multiplying force for a game's life and therefore sales. It turned vampire bloodlines, fallout new vegas and KOTOR 2 from crippled games to the true legends they were meant to be. It made Doom, Baldur's Gate 1&2 and Skyrim virtually immortal. Modding is so good for games that it created a vicious effect on Bethesda when they released crappier and crappier games just so the community can fix it in their stead. And then trying to monetize the mods and get a piece of that action!
    Making a game moddable isn't a courtesy, depending on the genre it can be a huge investment.

    • @darmok3420
      @darmok3420 18 วันที่ผ่านมา +5

      skyrim is in no way the only moddable TES game, it's also made Morrowind and Daggerfall immortal and Oblivion to a lesser extent.

    • @blueskull7898
      @blueskull7898 18 วันที่ผ่านมา +3

      Just think about what that game “Gary’s” would be like if there were no mods

    • @paulie-g
      @paulie-g 17 วันที่ผ่านมา +8

      Now imagine you're not an AAA studio that knows for a fact they'll sell enough copies to create a modding scene. Because AAA devs don't need to watch a video eli5ing mod support. It is *very* challenging for indies to do and far from certain that it is actually worthwhile vs creating more content or paying for more marketing. If a game sells 10k copies (and, for a first-time indy, that's often a raging success), there likely won't be enough modders to create enough added value simply because modders like to have at least a bit of an audience.

    • @gargamellenoir8460
      @gargamellenoir8460 17 วันที่ผ่านมา +6

      @@paulie-g And yet a lot of indie games ar emoddable as frak. Look at Minecraft, made by one dude. Or Project Zomboid by a tiny studio. "Moddable" isn't a binary proposition, a lot of creators just open the methods and let the community figure it out. Or simply take some time to document how the scripting files they use work (which is good to do even internally) and let the fans do the rest. Modability is a spectrum.

    • @jorge69696
      @jorge69696 17 วันที่ผ่านมา

      Another example is gun skins for counter-strike. The previous games had community made skins that were free to download. Valve then took that away to replace it with their own paid skins.

  • @torginus
    @torginus 18 วันที่ผ่านมา +128

    I kinda miss 90s and early 2000s games with their interpreted scripting languages, and in-house level editors, where moddability was a given - since the scripts were interpreted, you could easily just replace any piece of game logic with your own. Nowadays, everything seems to be compiled and sealed in a black box. Modding in those days had another amazing advantage - it gave amateurs exposure to the complexity of real AAA-games. These games often had million-line code bases, and learning to wade through them, and understand how a project of such complexity can be built up incrementally was a huge eye-opener for me.
    Something that's certainly very difficult to learn if you start game dev by yourself from Unity tutorials and work your way up from there.

    • @gargamellenoir8460
      @gargamellenoir8460 18 วันที่ผ่านมา +19

      You know that there are more moddable games than ever right? You need to stop looking only at AAA games.

    • @UlissesSampaio
      @UlissesSampaio 18 วันที่ผ่านมา +30

      @@gargamellenoir8460 Maybe so, but at that time, the biggest AAA multiplayer games were highly moddable. It was glorious.

    • @__-fi6xg
      @__-fi6xg 18 วันที่ผ่านมา

      the fuck are you on about, there is more mods than ever before, just use the internet dude

    • @nairocamilo
      @nairocamilo 18 วันที่ผ่านมา

      ​@@gargamellenoir8460Not the point, I think

    • @MrSnivvel
      @MrSnivvel 18 วันที่ผ่านมา +2

      Idk, I've seen more games use Lua as a scripting language, and expose it to modders, than compared to using their own in-house created or compiled binary-only language.

  • @finesseandstyle
    @finesseandstyle 18 วันที่ผ่านมา +82

    There's another hidden cost of moddability when you do have it in your game. You must be a lot more deliberate with updates and how you decide to do reworks. Updates frequently break many mods that rely on a specific implementation of that version or they just need to match the new version number in the config. Bethesda did this many times when they released like 4 different definitive editions and many random pointless updates (like adding creation club into main menu) years later that broke many mods.
    If this becomes frequent, you're at risk of alienating modders, which is the last thing you want for all the effort you put into making modding possible

    • @Dirty_Dumb_NAFO_Scum
      @Dirty_Dumb_NAFO_Scum 17 วันที่ผ่านมา

      Do single player games really need that many updates?
      No, they don't.
      Maybe a few updates past 1.0, but after that and it's literally corporate vindictiveness.

    • @markustambet4098
      @markustambet4098 17 วันที่ผ่านมา +5

      if youre playing on steam, you can literally just roll back the game to the version the mod worked on

    • @finesseandstyle
      @finesseandstyle 17 วันที่ผ่านมา +5

      @@markustambet4098 Good, seems like it works for many games that use mods but it's not universal.

    • @JMww2
      @JMww2 16 วันที่ผ่านมา +2

      @@finesseandstyle yeah warno is a good exemple the dev change the game files every or so update... because it maybe just table for the dev but for the modders it's text files and it isn't as easy as renaming a column you need to fix files with python script that does gatekeep modding somewhat otherwise it's a time sink

    • @wintermute5974
      @wintermute5974 14 วันที่ผ่านมา

      Prison Architect is a good example of this. The relatively small community and extremely buggy updates led to a lot of modders abandoning their projects, especially the more ambitious projects.

  • @spudd86
    @spudd86 18 วันที่ผ่านมา +30

    I've seen a lot of indie devs say mod support has saved them work in the long run by making developing DLC easier.
    I would also expect making item definitions mainly data driven would have benefits outside moddablity. For example letting non-coder designers tweak things.
    To me it makes sense to design for modability even if you don't intend to deliver it. At least at the base design level, since as you said adding it later is very hard and it also let's you use the mod system yourself for DLC or expansions.

    • @HeinerGunnar
      @HeinerGunnar 18 วันที่ผ่านมา +8

      It's kinda unrelated to your comment, but your last sentence reminded me of how modding works in Mass Effect 2 and 3 inverted to that: modders hijacked the system the game uses to read DLC, so as far as the game is concerned, all your mods are simply DLCs not made by Bioware

    • @MagicGonads
      @MagicGonads วันที่ผ่านมา

      @@HeinerGunnar it's the same with borderlands 2, modders hijacked the 'hotfix' mechanism.

  • @UlissesSampaio
    @UlissesSampaio 18 วันที่ผ่านมา +61

    As a gamer of the late 90s and early 2000s, many of my favorite "games" were mods. So, I'd love it if AA and AAA made modding a thing again. However, a big issue nowadays is that mods often decrease earnings: multiplayer games tend to sell skins, which conflict with mods. Man, there were so many great Half-life mods back in the day. All free of charge.

    • @UlissesSampaio
      @UlissesSampaio 18 วันที่ผ่านมา +10

      Hell, Counter-Strike's "The Dust" map, one of the most popular ever, was made by a teenager (there is an interesting No Clip documentary about it). Nowadays, I see fewer options for players to participate in making the games themselves, which is a bummer: nothing beats the "player hivemind" in creativity. Just see Skyrim and now BG3.

    • @LDiCesare
      @LDiCesare 18 วันที่ผ่านมา +3

      Very correct. Compare Civilization IV mods and Civ VI DLCs for example.

    • @Helperbot-2000
      @Helperbot-2000 18 วันที่ผ่านมา +2

      @@UlissesSampaio well counter strike as a whole was as half life mod too

    • @stuartmorley6894
      @stuartmorley6894 18 วันที่ผ่านมา +4

      A lot of AAA games these days are moddable. Look at stuff like Cyberpunk, Elden Ring etc. A lot of developers don't even seem to be setting up the games to be modded and yet people are still using external tools to inject code.
      Look at Nintendo games. They are now modded to death but Nintendo spends an insane amount of effort striking down modded content, tools to mod games. Capcom games are heavily modded too but they spend a fortune trying to squash the modding scenes for their games.
      The issue nowadays seems less like games aren't moddable than it is that certain publishers institutionally hate modding because they can't control the end product. You only have to look at a game like Skyrim where they let you mod anything but retain the right to get rid of mods that would break terms of service. All that's happened is that the huge amount of sex mods are all on LoversLab instead of Nexus or the Bethesda mod platform. Just any kind of odd thing you can imagine. A bunch of publishers look at stuff like that and just nope out.

    • @dylananhorn1
      @dylananhorn1 18 วันที่ผ่านมา +3

      I agree with you all. Many large companies definitely dont want to allow modding. Blizzard intentionally blocks modding after the whole Dota things. They fought for the rights to Dota because it was initially on war craft 3mod but lost so now valve owns it. You can look into it more. I am not typing out the whole story. Buy these companies don't want to lose their "propperty" to mods. Plus, people will install a mod and may mess up their game then they leave reviews like it's the companies fault the mods broke their game.

  • @PetrifiedPenguin
    @PetrifiedPenguin 13 วันที่ผ่านมา +3

    I can't count the amount of times I've seen one of Tim's titles and thought this video isn't for me just to be absolutely enthralled. Great video.

  • @TheAlison1456
    @TheAlison1456 16 วันที่ผ่านมา +7

    I love whenever Tim speaks about programming and management together.

  • @Chris-lc3wi
    @Chris-lc3wi 17 วันที่ผ่านมา +32

    Hey Tim, Fallout mod author here. From my (and the larger BGS Fallout modding communities) experience, documentation is not critical as long as you expose your game data to modders and, if your game has scripting, an API ref chart for your script environment. If your players are dedicated enough they'll figure out how things are done simply by looking at what you and your team made and how they made it.
    Bonus thought re: data validation and fault tolerance: Modding on Creation Engine is weird in that way. In some subsystems you can feed it complete nonsense and it'll happily chug along, just gracefully handling all the problems the dev introduced. You can make the scripting VM completely nonfunctional by punching holes into the base class structure and the general "run around and shoot stuff" gameplay still completely works. This goes to the point where actual mod users become unaware of the game logic level problems they're introducing by combining badly made or conflicting mods because there's no "hard" problems like crashes or ingame error messages that make them aware.
    Working on Unreal these days it's almost comforting that when I do something stupid to the engine, it'll make me aware with a crash.

    • @kvproductions2581
      @kvproductions2581 4 วันที่ผ่านมา +2

      Yeah, when I was watching the video (as a modder, although not fallout) I was thinking the same thing, that it feels like it was made from the perspective of someone who isn't really into mods. Modders are dedicated enough where, as long as you don't ACTIVELY try and stop them, they will probably find a way

  • @jaedavas3050
    @jaedavas3050 18 วันที่ผ่านมา +20

    I'm a big fan of Lua which makes it easy to just expose engine functionality. You can statically compile LuaJIT which is tunable and runs incredibly fast.
    Another thing ive been experimenting with is data oriented design, where it is common to use existence in a table as an alternative to if statements. Then, you have system functions run queries on tables, often in parallel when possible.
    This has its pain points, but the flexibility and ease of modding is wonderful.
    Id be curious to hear your thoughts on these kinds of approaches, and the pros/cons of making your own engine in general.
    As always, love the video! Thanks!

    • @Me__Myself__and__I
      @Me__Myself__and__I 18 วันที่ผ่านมา +5

      LUA is a nice and handy scripting system. Haven't had occasion to use it for quite a few years though. Think I'm going to reacquaint myself.
      I've built a game engine from scratch in the past. My suggestion is don't do it. I had no choice when I did it, now there are quite a few very good and inexpensive engines to choose from. Building an engine requires massive time and a lot of skill & knowledge. Time spent reinventing the wheel that you could instead acquire and then invest that time into the actual game itself.
      Plus, and many don't consider this, the existing engines are tested, supported and known to work! A custom engine would need to be extensively tested on a wide range of different hardware and OS combinations. Do you have time and money to build out at least dozens if not hundreds of different computers and test the system on all those? Doubtful. Existing engines are already tested and known to work on many different co binations.

    • @faintsmile3279
      @faintsmile3279 17 วันที่ผ่านมา +1

      @@Me__Myself__and__I what about the learning experience you get from making an engine if making a game is not a goal for you and you are purely focused on learning? is it worth the time to make an engine from scratch or its better to focus on learning how to make a game instead of an engine? reason i ask this i always thought knowing how an engine is made is going to speed up your development because you know how the tool you are working with is functioning underneath.

    • @Me__Myself__and__I
      @Me__Myself__and__I 17 วันที่ผ่านมา

      @@faintsmile3279 If your goal is to play around with tech and learn stuff, then do anything you find interesting. Because the goal isn't to produce something good & profitable, its just to play around with tech.
      Now if you want advice, it depends on your skill, experience, knowledge and what your goals are. If you want to be a game developer - don't waste time building an engine. Might sound impressive, but a potential employer will be more interested if you built a few small games as a learning experience in the same engine they use.
      Engine development is hard. It requires a lot of skill and knowledge to do. Are you REALLY GOOD at software development? I'd say less than 1% of professional software developers have what it takes to build a game engine from scratch. And most won't ever land the kind of jobs where they would use the knowledge and skill learned even attempting it. Most game engineers do their work on existing engines (even if those engines are custom). For companies that have custom engines its usually a very small team of the very best engineers that actually build the engine.
      FYI when I built my engine it was challenging and I already had tens of thousands of hours of software development experience. Newer engines are even more complicated than they were then...

    • @jaedavas3050
      @jaedavas3050 15 วันที่ผ่านมา +3

      @@faintsmile3279 Learning is always valuable. I would only recommend against making a general purpose or a modern style game engine. I've successfully made point and click, 2D arcade, dungeon crawl, and MUD mini-engines from scratch. Its fun and definitely valuable!
      Keep it simple and focused. If you have a game in mind, try building from scratch. Dont be afraid to use libraries and tools to make life easier.
      But if your goal is to seriously ship to multiple platforms, thats a whole different story. Use an established engine unless you have a really good reason not to.

  • @prplfleur
    @prplfleur 18 วันที่ผ่านมา +239

    ok Tim but.... why dont you just do this??
    IF(not moddable)
    THEN (is moddable = TRUE)

    • @Cheesyonmytoasty
      @Cheesyonmytoasty 18 วันที่ผ่านมา +15

      might as well be `is moddable = true`

    • @bam_bino__
      @bam_bino__ 18 วันที่ผ่านมา +8

      this is an infinite loop

    • @virionspiral
      @virionspiral 18 วันที่ผ่านมา +7

      ​@bam_bino__ not a loop since it's just a one time conditional, but if it was like a while loop then yeah it would be infinite since the condition keeps being reset back to a negative.

    • @buriedbones-nh9xr
      @buriedbones-nh9xr 18 วันที่ผ่านมา +2

      @@virionspiral It is an infinite loop, granted if its inside a while or Update method
      And i dont know any language that could compile this
      In c# for example this if statement would look like
      if(!moddable)
      {
      moddable = true;
      }

    • @virionspiral
      @virionspiral 18 วันที่ผ่านมา +3

      @@buriedbones-nh9xr that's what I had said that it would be if it was in an actual loop but it's not. And any compiler would compile that code. It's a logical error not a runtime an error

  • @skootz24
    @skootz24 13 วันที่ผ่านมา +3

    This channel is as close as I'll likely ever get to a mentorship and I am so grateful to you for spreading all this wisdom for free.

  • @sarahshroom
    @sarahshroom 18 วันที่ผ่านมา +32

    Oh wow. I was in the "surely making a game moddable has gotta be somewhat easy, so many of my favourite games do it" camp. I had _no_ clue it was such a thing. Very thankful for this video topic, thanks Tim!

    • @Me__Myself__and__I
      @Me__Myself__and__I 18 วันที่ผ่านมา +13

      Depends on the skill of the dev(s) making it moddable and it being done from the very start. It doesn't have to be all that much effort, but I get the impression many games try to bolt-on moddability later which is excruciatingly expensive and time consuming, see my top level comment for details.

  • @davidjellofox
    @davidjellofox 15 วันที่ผ่านมา +2

    I was working on building my own engine (Procedural Open World Sandbox Platformer) in Godot 4 that would allow modders to add in new planet and biome types by dropping files into folders and the game would scan the mod folders for any new content at startup to add it to an internal collection of all planets, biomes, etc which then are used to randomly generate the world and galaxy around the player based off a seed.
    This was a core concept of the engine and led to so much scope creep that I had to stop working on the project while I reworked the test engine which I was using to generate terrain. I still havent made progress on the game cause the scale of what I was trying to accomplish was just so maddening.

  • @penvzila
    @penvzila 18 วันที่ผ่านมา +18

    "just". Lol. That's always what a good idea fairy leads with. "Why don't you just". There have been times however, when we had somebody who didn't really know what they're talking about ask a question like that and it ended up being a really good point and we made the change.

    • @nairocamilo
      @nairocamilo 18 วันที่ผ่านมา

      Like Mythbusters!

    • @metarenegade
      @metarenegade 18 วันที่ผ่านมา

      “Just” might be the most harmful word in the English language.

    • @Rodhern
      @Rodhern 18 วันที่ผ่านมา +2

      Indeed, most times when I encounter "just" it has a particular meaning. It means, "This thing would logically require a lot of implied offshoot work. 'Just' do the change in complete isolation (for now). Please don't worry about the stuff that breaks! I will be back asking for the entire rewrite soon enough. And that rewrite will be quick because I used the magic word 'just' in my initial work item request."

    •  17 วันที่ผ่านมา +3

      There is an exception to every rule of course. In general though (and in my experience as well), Mr. Cain was absolutely right here.

  • @picblick
    @picblick 17 วันที่ผ่านมา +2

    I'm so very happy you share your thoughts and experience! It's a mystery to me how you have not way more views.

  • @Kenionatus
    @Kenionatus 18 วันที่ผ่านมา +6

    In my very limited experience of programming a little bit for an open source game, the _can_do() -> do()_ pipeline isn't just nice to connect external code to the game, it's also nice to make the code internally more extensible in a very clean fashion. It's an over 10 year old code base by now with probably thousands of contributors and I'd say that's one of the pilars that keeps the code readable.

  • @Dullahan3470
    @Dullahan3470 18 วันที่ผ่านมา +9

    I always figured that game data was often exposed and modifiable for development purposes moreso than explicit modding support.
    It felt like most games were accidentally moddable and when PC gaming waned in the mid 2000s they started to deliberately lock down and prevent modding for DLC reasons. (Prevent pirating of DLC and/or player made skins competing with paid cosmetics). A lot of times back then the DLC would be specially encrypted even if the base game wasn’t.
    I know some games like Company of Heroes where they added more explicit modding tools and support but actually made the game much harder to mod - instead of being able to override everything you can only modifiable a shrinking list of explicitly allowed things.

    • @iokuu
      @iokuu 18 วันที่ผ่านมา +3

      On some level, modding is about being able to make changes to the game without recompiling it. The more the game exists in purely compiled code, the less modifiable it is. And there are definitely advantages to being mostly compiled! It's faster, after all. Computationally, and conceptually. Conversely, being moddable also means being able to iterate without compiling, which is useful for game development as well as modding. There's a push and pull.

    • @Me__Myself__and__I
      @Me__Myself__and__I 18 วันที่ผ่านมา +1

      Isn't PC gaming larger than it has ever been?
      Modding competing with DLC is almost certainly a factor. I imagine quite a few games intentionally do not support modding for this reason. It is a legit consideration from a business perspective, though personally I'd probably always choose to include modding support.
      I do expect a lot of games are in fact "accidentally" moddable. I think a lot of game teams find it a lot easier to have configuration data read in from text files somthat non-programmers can work on it. Which (probably unintentionally) then lends itself to moddability. Such games often don't directly allow for custom scripting and other more advanced modding. But somemetimes there are kinda standardized ways for modders to add that capability for reusabile engines like Unity.

    • @Dullahan3470
      @Dullahan3470 18 วันที่ผ่านมา +5

      @ It is today - it wasn’t in 2005-2010 when modding started to really disappear. There was a significant resurgence when Steam started to reach critical mass in 2010-2012 and developers had to respect the market again.

    • @MorbidEel
      @MorbidEel 17 วันที่ผ่านมา +3

      There should be a distinction made between moddable and "supports modding". Anything on PC that isn't doing DRM stuff should be moddable but only some supports modding.

  • @FlawedFabrications
    @FlawedFabrications 18 วันที่ผ่านมา +12

    Easy moddability was always a key goal for the little games I used to make because I assumed that the easier it was for someone else to change it, the easier it would be for me to make it. For instance, JSON files made it incredibly quick and easy to add or test things. Sure from a technical standpoint it might have been more performance-friendly to have all those statistics and so-on directly in the code instead of being read into the program, but I didn't need to worry about performance and being able to make pretty significant changes by opening a plain text file is really nice.

    • @trucid2
      @trucid2 18 วันที่ผ่านมา +1

      Being able to configure things without modifying code is just good design.

    • @chrisdistant9040
      @chrisdistant9040 17 วันที่ผ่านมา +2

      @@trucid2doesn’t always work though. Eg you usually can’t implement via JSON new logic or ai behavior that isn’t already supported by the game, etc

    • @trucid2
      @trucid2 17 วันที่ผ่านมา +1

      @@chrisdistant9040 Sure you can. Code is just data, and you can load it through JSON or XML. Some games like Space Engineers even allow you to write programs in-game.
      Though whether you want to allow this is a different question. I was talking about tweaking game variables and such through a config file rather than having them hardcoded. That's what I was calling good design.

    • @chrisdistant9040
      @chrisdistant9040 17 วันที่ผ่านมา +3

      @ lol you have to do a lot to make something like that happen though. If “it’s possible “ is your standard then every game is already moddable, just hack the binary bro

  • @Tom-f4d6l
    @Tom-f4d6l 18 วันที่ผ่านมา +5

    I was under the impression that making things moddable was generally a good thing since it required tools to be better (more data driven, scriptable, more useable, built to higher standards, etc). Even if developers didn't want to license the engine; having a bunch of brittle tools reliant on other systems seems like it would be an issue. Like if a team stops or has to pivot because 'Dave' is taking a long weekend (or worse yet he can not take a long weekend) or the whole studio stops because jira went down; that seems like it would be a long term liability. I know large teams do work like this but it makes me wonder; Are developers making games because of their tools or despite their tools?

  • @Spiderboydk
    @Spiderboydk 18 วันที่ผ่านมา +2

    Great video. There are so many misconceptions about moddability out there.

  • @Abrakadabro666
    @Abrakadabro666 3 วันที่ผ่านมา

    I could listen to Tim talk about this stuff all day. I grew up idolizing him and his work. How cool is it that in the future he's a real talking head spitting knowledge and experience?

  • @murdurmuffin7872
    @murdurmuffin7872 4 วันที่ผ่านมา +1

    What I learned: Everything = Time = Money
    I've lost money playing games, watching videos, and pooping. Now I feel sad.
    Seriously though, great explanation and thank you for your time. Er... money. You know what I mean.

  • @ebhaenger8246
    @ebhaenger8246 5 วันที่ผ่านมา +2

    Well, if you're on an in-house engine, adding modability is quite a lot of work.
    If you're on an engine like Unreal Engine, it by default allows you to read some files (depending on what you try to change) in your game directory by placing pak files that override.
    If you define modability by changing values in a text editor, it's easy; if not, some devs even go out of their way to encrypt those files.
    Also, I've never seen someone modding their own game and blame the game if the performance tanks after changes. It's always been the mod at fault, no matter how much optimization got undone.

  • @evanjellydonut9461
    @evanjellydonut9461 17 วันที่ผ่านมา +2

    been modding games for 20+ years (including bumbling through reverse engineering audio formats). Nice to see this topic from a developers standpoint.

  • @sieda666
    @sieda666 18 วันที่ผ่านมา

    Thanks for the insight as always! Modding is such an important feature to me in games, I'm thankful when devs go out of their way to facilitate end-user modability. All of my favorite games are moddable to some extent, from Bethesda titles like Skyrim, Fallout 4, Starfield, to Paradox Strategy games like Europa Universalis and Crusader Kings, and then other moddable sandboxy games like Dwarf Fortress, Rimworld, or X4:Foundations. I've put hundredss if not thousands of hours into each and its thanks to mods.

  • @nordgaren2358
    @nordgaren2358 16 วันที่ผ่านมา +4

    Hmmm. Well, from the perspective of someone who has made tools for a game engine that definitely wasn't made to be moddable. In fact, it was made for PlayStation, afaict. I'm talking about FromSoftwares Dantelion 2 engine.
    That engine is actually highly moddable, but the tools were built by fans, not the devs. I won't ld assume, like with most engines, there are highly moddable portions of the engine. Stuff that can be changed by just changing values in some game files.
    The biggest issue usually lies with proprietary formats that are hard to reverse engineer. Usually it's formats like Havok collision and navmesh formats, but it can be literally any file format at all. These are some recent pain points for souls modders. Especially with newer games that use Havok after Microsoft acquired it.
    I don't know if there's a good solution to this, because then the game dev has to make a tool or release information on formats they don't own the rights to.

    • @nordgaren2358
      @nordgaren2358 16 วันที่ผ่านมา +1

      Also, if you give me a PDB, I can "expose" any of those functions, myself. All I need, after that, is probably just tools to convert from game format to a common format.

    • @nordgaren2358
      @nordgaren2358 16 วันที่ผ่านมา +1

      Honestly, I would love to see a big game, who's developers work closely with the modding community, in a way that allows the modding community to develop it's own tools, too.
      Minecraft is kinda like that.
      You would be surprised what we, as modders, can come up with, and what we can do.
      In some situations, modders can do things that you would never consider to do, in your engine, because you would have to do a lot of stuff to make it work with the code base (like global variables and functions, etc.).
      In a way, those variables and data are already "exposed" to us, when writing something like a 3rd party patch, to the game. We just have to figure out what they are and find the ones we want, which we can do in various ways, even with updates to the exe, itself.

  • @HenrikoMagnifico
    @HenrikoMagnifico 18 วันที่ผ่านมา +14

    My cousin is a huge fallout 1 fan, it's so cool you made it!

  • @Anubis1101
    @Anubis1101 2 วันที่ผ่านมา

    I'm so glad you made Arcanum easily moddable. I'm not sure I would be in the same place today if it weren't for Arcanum and Freelancer's moddability.

  • @BetweenTheBorders
    @BetweenTheBorders 18 วันที่ผ่านมา +3

    Example: I was the only one working on our engine in MonoGame, and I did want to make it moddable from the ground up. The ability for a script to call for a map file name was easy enough to do, but the error handling wasn't trivial. Every level, every script, every image was a potential point of either failure or abuse. But since this was data driven, the maps and events were moddable, but only to do the things that had op codes.
    Loading assets, on the other hand, was a huge pain. MonoGame expected certain data structures, so I had to load each and every file, process it, and store it in a data structure. I fixed the huge issues in this by saving the structure as an archive and loading the archive if available, but otherwise would rebuild and save the structure at runtime.
    But all of this was only available because I designed in a rather bloated way from the ground up so we were focusing on modding versatility (string names rather than enums, for example).
    Of course my way also opened the door to casual theft of assets, which wasn't optimal. We may have used an override system in the end, but the team falling apart is another story altogether. At the end of the day, it would've been pretty moddable, with the asset loading and Harmony to edit C#, but we'll never really know.

    • @lennysmileyface
      @lennysmileyface 18 วันที่ผ่านมา +3

      Theft of graphics assets is pretty much unavoidable anyway since there are programs to rip all of it straight from memory.

    • @BetweenTheBorders
      @BetweenTheBorders 18 วันที่ผ่านมา

      @@lennysmileyface Hundred percent correct. Unpackers and even AES decryption of assets are very common. I mean, you're letting code run on their machine, and it needs to decode whatever you've done. But no point making it as easy as looking in a directory.

  • @tamathacampbell4985
    @tamathacampbell4985 18 วันที่ผ่านมา

    Thanks for all the useful and actionable game dev and design information you share... these videos are stuffed full of great stuff.

  • @torb-no
    @torb-no 14 วันที่ผ่านมา +16

    As a developer I really dislike when people say ”can't you just”, because it's usually more complicated than people think (though, not always).

    • @GhostofTheWoke
      @GhostofTheWoke 11 วันที่ผ่านมา

      It should be moddable

    • @Bassalicious
      @Bassalicious 19 ชั่วโมงที่ผ่านมา +1

      I've got a good one for you: "Can't you just not implement anti-tamper systems and obfuscate systems and mechanics in your single player game to prevent modding?"

    • @torb-no
      @torb-no 17 ชั่วโมงที่ผ่านมา +1

      @@Bassalicious Neither going out of your way to support (or not break) modding, not going out of your way to stop it is exactly what I think is probably a fairly reasonable approach.
      Modders will have to understand and accept they might break their game, and it can't be in contexts where it creates problems.
      AFAIK this is exactly the approach for example Minecraft took. It was never espescially designed to be moddable, but people found a way.

    • @Bassalicious
      @Bassalicious 17 ชั่วโมงที่ผ่านมา +1

      @@torb-no Yup exactly. If your game is good enough, people will move mountains to add stuff they like and they will find a way to make their own mod tools.
      If you want to make mod support a key feature of the game, that's awesome but not necessary if the audience is big enough and the program isn't held hostage in DRM jail for no apparent reason.

    • @torb-no
      @torb-no 17 ชั่วโมงที่ผ่านมา

      @@Bassalicious I think it should be said though that sometimes even if the dev take no steps to stop modding it will still be essentially impossible.
      Minecraft took no concious steps to avoid it, but since it was built on Java and the JVM them it was easy for modders to decompile and poke and extend things. If Minecraft had been written in a different system it might not have been som moddable, so there's a random element of luck involved.

  • @erikfjeldstrom8779
    @erikfjeldstrom8779 17 วันที่ผ่านมา

    My first experience with modding was with the Command and Conquer (and Red Alert) games. I was amazed at what could be done with simply changing a few data points. I was also learning programming at the time in high school and started realizing the immense complexity of making a game, and how my brain doesn't work that way. My hat's off to all you game devs!

  • @Random-qo6br
    @Random-qo6br 16 วันที่ผ่านมา +3

    Well, Paradox did it both profitable and modable. And it is a success. Many gamers start Crusader Kings because of Game of thrones mod, and continue playing it because of gameplay. So there is a way to win in this.

  • @mikeryan1043
    @mikeryan1043 7 วันที่ผ่านมา

    Great video! I'm happy you talked about that

  • @HzrdHaze
    @HzrdHaze 7 วันที่ผ่านมา +1

    Watched the ads bcs its you Tim Cain. And I almost never do btw. And like the video my doggydog G

  • @MakotoIchinose
    @MakotoIchinose 14 วันที่ผ่านมา +1

    I'm an indie solo dev, and as someone with modding roots, I approach making systems to be modular from the get go, so that modders could work on top of it. Sure, there is a cost of making those systems, and since I'm using Unreal Engine 5, there is a bit of guessing and "in theory" with it (not to mention dealing with the editor licensing later), but I think it's worth it in the long term for reusability too.

  • @RoraxPlays
    @RoraxPlays 4 วันที่ผ่านมา +1

    Something I see happening a lot in the indy scene these days is that their base game content IS a mod ontop of their games suite. Rimworld and Vintage Story are two good examples of this.
    This leans all the way into what you point out as making modding a part of the games identity right from the start - I just feel its even the next level of that altogether. Almost like the game is a modding platform first and game second.
    I know that an AAA would never get away with this because both of the examples given above are passion projects with unset time investment windows. BUT its cool.

    • @MagicGonads
      @MagicGonads วันที่ผ่านมา

      It is a decent way to develop because you can separate the capabilities from the design, where each leverage different skills from your team, and you can re-use those capabilities in other projects that have different designs.
      The issue is that the design constrains the capabilities, so it's a risk that can easily grow out of control if you don't limit what capabilities you implement to only what your design requires at that time (or can be reasonably expected to need in the near future by experience), as implementing too much can run into conflicts with design decisions made further down the line, requiring refactoring that wastes a lot of resources.
      When it comes to modding support (not moddability- which is just allowing mods to exist) you have to decide how much wider the scope of supported design is, and be careful to keep it relatively stable. I think 99% of the time, modding support is actively worse than mere moddability due to forcing a narrow design on modders that otherwise would have taken the hatchet to the game already to do anything they wanted, all the while suffering a reduced quality of the actual base game due to the distributed budget of the first-party devs and the increased complexity of the systems.

  • @robertdeckard2136
    @robertdeckard2136 11 วันที่ผ่านมา

    Good video. As for tooling requirements, I think the more accessible the better. So my extremely wip game engine reads heightmap terrain data from a 16 bit grayscale png image. I still need to tweak the code to allow for other png formats since more software can deal with 8 bit per channel rgb and rgba png's for example. Certain game settings and item attributes are defined via csv files since it's almost as fast as protobuf for serialization and can be edited using almost any spreadsheet software or a text editor. If Rimworld can get away with using xml for it's item definitions and game saves, I think csv should work too. Finally the game engine is modular and the different processes communicate via text arguments when the main process fork/exec's the other modules and via shared memory afterward. So it should be possible to replace just the the image loader executable to also support jpeg or tif, etc. without recompiling the rest of the executables/modules.
    On the todo list:
    Windows port
    Add a module for handling lua scripts
    make a small game showcasing the engine
    uefi support? probably not
    kitty and/or sixel graphics for playing in feature rich terminals? maybe
    It's gonna be great if I can actually finish it. Please pray for my sanity. Also, the game engine isn't too far along yet, so if anyone has advice, don't be afraid to share.

  • @BobBigWheels
    @BobBigWheels 13 วันที่ผ่านมา

    Appreciate you explaining this topic so well.

  • @bradandsarahibbard1831
    @bradandsarahibbard1831 16 วันที่ผ่านมา

    Wonderful video, Tim! Thank you!

  • @disky01
    @disky01 18 วันที่ผ่านมา +18

    It can be extremely worthwhile though. So many of my favorite games lean into modding, and if they didn't, I might not even be playing them. I've put almost 1,200 hours into Mechwarrior 5 and I've purchased every DLC for the game, but I cannot imagine a reality in which I would play it without the mods I'm running. It just wouldn't be the same game. Same with Skyrim, Cyberpunk, Baldur's Gate 3, Doom and the Bethesda-era Fallout games.
    No disrespect to the devs, but without mods, to me those games feel incomplete.

    • @zhulikkulik
      @zhulikkulik 18 วันที่ผ่านมา +4

      Imo, Bethesda just relies on modders at this point and Starfield showed that people aren't okay with that anymore.
      I've never been a fan of their games in general, but I've tried and failed to understand how can people play something like Fallout 3, 4 or Skyrim without major mods. And it's especially bad in 4 because the vanilla game is literally unplayable by my "standards" - bad story, bad writing, bad roleplay variety, bad gameplay. Just a bad game start to finish (didn't actually finish it, never got past killing Kellogg). Throw in some breakable doors, ammo and stimpak weight fixes, item weight and inventory capacity fixes (i'm yet to find a "system level" fix for infinite containers), lockpicking and hacking skips (iirc they allowed to try to silently roll and open/unlock if your perk matches the requirement instead of that minigame that gets boring when you unlock your third lock), XDI with silent protagonist, prkf, damage rebalance, mod that brings back criticals - and you still need to fix story and writing. So far the only mod that does it is FoLon and even that has issues.
      I am surprised that it's the same studio that made Daggerfall which ONLY requires compatibility and stability patches (basically just Unity version with some options turned off) to become an enjoyable game.

    • @Solus749
      @Solus749 18 วันที่ผ่านมา

      Depends on what the game wants to be, if the game wants specific story/char beats they lock those to be unomoddable. If they want a specific combat experience they lock those parts of the combat to be unalterable. At that point you as a modder is actually breaking down what the dev intended the game to be. That is before we get to potential mods breaking engine data flow causing softlocks or memmory leaks. As Tim said those checks for mods slow down gameplay and gamedata reading. Baldurs gate for example don't need mods it is complex enough as it is and a mod attempt done wrong can break a long chain of code.
      Bethesta games or BUGthesta games as I like to call them don't really care if you mod the shit out of them as their code is spaggetti code allready. DOOM games, especially the first ones have map editor and even cheatcode structures built into the game base so the data flow don't get broken anyway. That means that you can add a whole act and rebalance enemies, ammo etc to your pleasure without breaking the engine.
      I say rpgs in general don't need mods ( no I don't count skyrim/fallout 4 as rpgs btw ) but shooters, racing games and a few more genres can have room for them. Why I don't count skyrim as a rpg is simple....you can be part of the thiefs guild and the assassin guild inner circle and they are in a invisible bloody war. You shouldn't be able to be a member of both to be frank and that isn't the only situation where rpg aspects break ( your choice SHOULD carry weight ..aka some decisions will lock you out of other ones). As for why fallout 4 is a horrible rpg is simple, you only get yes, dickish yes, no or ignore and your choices don't have hard checks until the endscenes really...which makes it fail as a rpg.
      Jrpgs are different in that they allow choice sbut of a different kind while preserving story. Also a reason you VERY seldom make your own char in jrpgs as your char is intervowen in the story they want to tell. Japanese devs also resist modding for another reason, why buy a game if you have no intention of playing it unmodded, is their work worth that little? Basicly put your desire to mod something can be seen as critique of their ability to make a quality product.

    • @theobell2002
      @theobell2002 18 วันที่ผ่านมา +3

      I can definitely see myself playing Cyberpunk without mods because the game is actually good. Unlike Skyrim.

    • @Solus749
      @Solus749 18 วันที่ผ่านมา +1

      @@theobell2002 Baldurs gate 3 don't need it either if I am honest, it is deep enough as it is. RPGs in general don't need modding as it tend to fuck up story and combat balance....again exeption for BUGTHESTA fallout series and skyrim who I don't consider rpgs.

    • @PedroGomes-cx7ku
      @PedroGomes-cx7ku 18 วันที่ผ่านมา +6

      @@zhulikkulik This idea that "Bethesda just relies on modders" for their games to be successfull just isn't true. Skyrim's golden age was from 2011 - 2016, and most of the player base was on console and back then there wasn't mod support on consoles. There were entire websites dedicated to talking about Skyrim (and early Fallout 4), like The Skyrim Blog/The Tamriel Vault, where people shared character build, discussed lore and story, shared stories etc. TH-cam channels grew to their first millions sharing character builds and talking about lore too.
      Even Starfield is by far their most stable game - its issues are elsewhere, and there's no mod available that has been abe to do what I wanted from that game

  • @doublejesusful
    @doublejesusful 18 วันที่ผ่านมา +1

    I'd like to add that if a community wants to, they will find a way to mod your game whether you support them to or not.

  • @Ratstail91
    @Ratstail91 15 วันที่ผ่านมา +2

    The funny part is, I'm writing a scripting language as I type this, which will hopefully allow easy modding in my future game engine. It's been.. almost 5 months since I started on this stint of coding - and this isn't my first attempt on this project. I'm hoping to start on the engine itself by March, where I can finally take this lang for a test drive.
    Crazy? Yes. Worth it? I think so.

    • @LordOfCake
      @LordOfCake 4 วันที่ผ่านมา

      Did you consider using Lua instead?

    • @Ratstail91
      @Ratstail91 4 วันที่ผ่านมา +1

      @LordOfCake I have actually used lua for this exact purpose, many years ago. While it's *fine*, I chose to make my own for fun and learning.

  • @txdmsk
    @txdmsk 13 วันที่ผ่านมา +1

    I've been in various modding scenes for 20 years. Some of my mods are literally tens of thousands of lines of code. If your game is already completed or well into development, adding moddability needs your to rewrite your whole game. Making a game moddable requires a lot of forward planning from the developers and also more time, thus making the game more costly. But where would Skyrim be without modding (or any Bethesda game)? Minecraft? Rimworld? Warcraft 3?
    Starcraft and Warcraft modding spawned tens of billions dollars large genres.

  • @Me__Myself__and__I
    @Me__Myself__and__I 18 วันที่ผ่านมา +15

    This is easier than most software engineers make it for a simple reason. Being good at writing reusable code, frameworks and making systems modular and configurable is a SKILL. Sadly that skill is rarely taught to developers and most don't put any real effort into getting good at it. Which is why doing this for most devs is hard and time consuming, substantially more so than it needs to be.
    This is probably my #1 area of expertise. I've written more reusable code and put at least 10x more time into making software modular and configurable than any other dev I know of. So, from my perspective, this really isn't so difficult or time consuming. But sadly that is not typicaal.
    Example. Once upon a time I wrote a game engine from scratch for a startup game company. I built that engine from the ground up to be modular, extensible and configurable. Sadly it never made it to release because they ran out of money to pay the 3D modelers and art staff. But modding that game would have effectively been the exact same as what we were doing to build the game. The extensibility would have been exposed and I actually consider that as having taken ZERO time or money to accomplish because I built these capabilities for the dev team but in a way that they could have also have been used by modders. So moddability was basically free as a result of my designing the engine to be modular and extensible for our own use.
    Tim is 100% correct about doing this EARLY! The engine and/or game must be designed to enable this from the very beginning. Trying to make an existing software system (game or anything else) modular and configurable later on is EXTREMELY costly and time consuming. There is no way around that.
    But building systems to be modular, extensible and configuration driven does not need to be time consuming or costly if done from day 1 by someone skilled at it. I have so much experien e in reusable software that writing anything to be reusable/modular is effectively free for me now. It is how I think. It would literally take me longer to build something that wasn't because I don't even know how to think about code as non-reusable. The vast majority of all code I have written for many years is reusable. Its a skill and IMHO the most valuable skill for a software dev to have. It is a skill and a mindset, similar to how being good at OOP requires a different perspective. [Side note, OOP often makes reusability and modularity easier]
    Once you get good at writing reusable code it will multiply your productivity as you build up a library of modular, efficient and known good code. It can also mu,tiply the productivity of entire teams. My libraries and frameworks have been credited for saving teams many man years of time and effort. Its a VERY useful skill that I recommend all developers invest in.

    • @Kenshkrix
      @Kenshkrix 17 วันที่ผ่านมา +3

      Yeah if it's the plan from the start then the work is straightforward.
      If I had to guess, many teams avoid this approach because they probably aren't experts at these skills on top of how this approach starts up more slowly and takes awhile to get to the more visible/fun parts of development (where you can actually see the progress happening and play a prototype).
      Slowing down the startup but saving time/effort in the middle and late stages of development doesn't spark enthusiasm or passion the same way early prototypes and hacking stuff together asap does, while the pain of the 'move fast and break things' approach doesn't happen until later when it would also be a giant pain to go back and refactor everything.
      I see a lot of devs/teams post something like "we'll look into modding after EA/1.0", which is sort of like saying "We'll look at the foundation after we've built the house".

    • @Me__Myself__and__I
      @Me__Myself__and__I 17 วันที่ผ่านมา +3

      @@Kenshkrix Agree 100%. I've seen that first hand many times. I know better due to experience but the majority of developers & managers don't want to put in the up front effort because they don't realize who much difference it makes. Because most don't have the specialized skills and experience...

    • @txdmsk
      @txdmsk 13 วันที่ผ่านมา +2

      Yeah, if you want to make an existing software moddable you pretty much need to rewrite the whole thing.

  • @johnmcconnell7052
    @johnmcconnell7052 18 วันที่ผ่านมา +36

    I tend to go look at tf2 it originally was a mod now look at frostpunk. Some games are designed for mod support. Then you bring up halo 2 dear god that game is held together by ducktape and prayers.

    • @Pepperham04
      @Pepperham04 18 วันที่ผ่านมา +1

      Then you have a game like STALKER, which is also held together with tape and prayers, yet people still mod the hell out of it.

    • @thisorthat629
      @thisorthat629 18 วันที่ผ่านมา +4

      ​@@Pepperham04 tbf duct tape and prayer games generally fare better ir long lasting/in depth modding.
      personal theory 1. casuals enticed into modding due to needibg fan patches, then trying modding visuals, then quests, then gameplay 2. a lot of successfull duct tape and prayers/cult successes are tjode for reason ie they have that "special" sauce, which entices mof creators eg compare fallout 3 and fallout nv. fallout 3 has it's fans, but nv is another lvl

    • @Luckmann
      @Luckmann 18 วันที่ผ่านมา

      Duct tape.

  • @Sabrina-e6y
    @Sabrina-e6y 2 วันที่ผ่านมา

    Modding in borderlands pre sanity checks was amazing. Rocket shooting infinite pistols and all other kinds of clownery. Some of the best game sessions of my life.

  • @MFKitten
    @MFKitten 18 วันที่ผ่านมา +2

    It all depends on what you count as "moddable". Sometimes the game just has all the assets accessible and you can replace them yourself. If you want "intentionally moddable" like the Source engine where the tools all were released with decent documentation etc, then obviously that's more work!

  • @romanshatalin7077
    @romanshatalin7077 18 วันที่ผ่านมา +8

    Merry Christmas, Tim! As a software engineer, I completely agree with your points.
    I will only add that there is a trend of indie games designed specifically to be moddable at the expense of other aspects. Many of them go with 2D or isometric mode which also makes it way easier for modding compared to full blown 3D. Quite popular examples of that are Factorio, RimWorld, Project Zomboid which are all quite different genres. Less known game, Vintage Story, actually started as a mod to Minecraft but they got tired of dealing with updates breaking everything and built their own similar game which has amazing mod support.
    Still, far more popular AAA games have other goals but after enjoying the ability to overhaul a game as I want they are less and less interesting to me.

  • @DEGModsDotCom
    @DEGModsDotCom 13 วันที่ผ่านมา

    There's also the cost of what comes after, for the developer to potentially dedicated resources to fix user issues that might be caused as a result of having a mod installed, or in a marketing/PR sense where the studio/publisher needs to deal with potential negative backlash because of mods and know how to respond to it.

  • @wesp5
    @wesp5 18 วันที่ผ่านมา +10

    Great video! So did Troika intend Bloodlines to be moddable? Because you exposed all the items and disciplines in normal text files that could be edited at will, but at the same time, some things were hard-coded, like the actual weapon or discipline code. Still all the Python scripts and all the dialogue files were exposed too, and without this, things like the Unofficial Patch would never have been possible! You also included a lot of cut content in the game files that shipped. Was this for us modders or did you hope you could use them yourself in future expansions and patches?

    • @CainOnGames
      @CainOnGames  18 วันที่ผ่านมา +10

      I wasn’t involved in those decisions for Bloodlines, as I came onboard two years after it started. I don’t remember, but aren’t those exposed files just how the Source Engine worked?

    • @wesp5
      @wesp5 17 วันที่ผ่านมา +1

      @@CainOnGames I don't think so. Everything is packed in the HL2 games as far as I remember...

    • @rkrams1989
      @rkrams1989 15 วันที่ผ่านมา +1

      ​@@CainOnGamesya pretty much the same sdk's are used as the old hl2 ones.
      Nowadays people are working hard to make unreal engine games unmoddable 😂

  • @veraxiana9993
    @veraxiana9993 18 วันที่ผ่านมา +2

    Normalizing my sleep schedule finally paid off, I got to a new tim video within the first half hour of its upload! Lol

  • @slBrelaz
    @slBrelaz 18 วันที่ผ่านมา

    Yup!
    I've been working on a project outside of work (custom engine) and it's taken me 3 years to add an intricate modding API that can reliably replicate itself over the network.
    Still need to update all the documentation for it though.

  • @deptusmechanikus7362
    @deptusmechanikus7362 3 วันที่ผ่านมา

    Mod support is extension of good will and a show of trust and support for your player base. It's not as easy as it's made out to be, but it's worth it.

  • @balaurizburatori8607
    @balaurizburatori8607 12 วันที่ผ่านมา

    I think there are many, many approaches to this. As a solo dev, I'm spending a lot of my time making sure that my "game" is basically an API that the base game I'd ship is essentially a mod (or multiple). It certainly has slowed me down significantly, though that could be a problem of me lacking experience, but it should result in a very easy to mod game.
    However, certain games are moddable by virtue of the engine they use. Unity games for example can be decompiled trivially, and mods could hijack parts of the game code, even if the game was not designed to be moddable in the first place. Certainly painful, but I've seen it done.

  • @mopugnothee
    @mopugnothee 16 วันที่ผ่านมา

    I have never seen anything friendly moddable like the Aurora Engine, nwn was a treasure for modding, I also think it's easier to make moddable an engine developed by the studio itself instead of adopted by.

  • @635574
    @635574 18 วันที่ผ่านมา +2

    Even things like reading values from a text file need specific code to process all that. GTA has a lot of text files, and one huge handling file for all vehicles(everiting is explained there), but not as much modability for gun values (just XML file nothing is explained), it had the same system since gta3.
    Finding why sonething crashed was not happening last time I was a dumbass GTA moder, before GTA5 came out and I wasn't able to run it.

  • @MartinWoad
    @MartinWoad 18 วันที่ผ่านมา +2

    When I choose what game to play, I instinctively select good ecosystem over good baseline game. Don't get me wrong, I really like Minecraft, especially the Beta era versions, but it's not like I would play it if there was absolutely no way to modify anything about it. And even if I don't install any mods, I just get a lot of enjoyment from the fact that I am playing something that I can rather easily modify. Same thing with Skyrim, Fallout NV, Witcher 3 or any other. I cannot imagine myself playing something with a hard expiration date on the amount of content it provides, even if I feel like I would enjoy the core gameplay loop. I need to feel like I am purchasing a tool and not a commodity. That is also why I don't play console games at all. No modding is a no-go for me.

  • @kvproductions2581
    @kvproductions2581 4 วันที่ผ่านมา +17

    "Adding moddability means you won't be adding other features"
    It also means an indefinite amount of people will be able to add an indefinite amount of features for an indefinite amount of time. You're exchanging a bit of the game's content on your side for potential for infinite content on the end user's side
    Worth it

    • @Captain_Shiba
      @Captain_Shiba 2 วันที่ผ่านมา +7

      Kinda. if the game isn't worthwhile on it's own, it may never pick up to begin with.

    • @toxdz_quack8466
      @toxdz_quack8466 วันที่ผ่านมา +1

      ​@@Captain_Shibato be fair, starbound exists, which is very much so not worth the money, but still gets mods that slowly dig dipped into the games core so that one day it would become actually fun and not a laggy mess that cant handle chunk loading in a 2d game

    • @Captain_Shiba
      @Captain_Shiba วันที่ผ่านมา

      @@toxdz_quack8466 It happens, but not often or consistently enough to use as good dev advice. But it does happen, used to love modded starbound.

  • @nihren2406
    @nihren2406 18 วันที่ผ่านมา

    The timing on this video is incredibly perfect with the rumors about the Elder Scrolls IV: Oblivion Remake. I've seen a lot of people concerned about the moddability of the game as it's either a vertical integration with Gamebryo on the bottom providing code, physics, etc. with Unreal Engine 5 on top for graphics, or it's entirely rebuilt in UE5. Both of which have their concerns. How does modding work when you have two incredibly different engines impacting the game? And by that same token, how deep can that modding really be? The same applies if it's exclusively Unreal Engine 5, just how much can the developers open that up to modding? How easy would that be to do on the level that the Creation Engine offers? An Elder Scrolls game without in depth modding on the face of it sounds like a failure waiting to happen because Bethesda games are associated with basically being able to make a new game within the mod tools.

  • @avramlevitter6150
    @avramlevitter6150 12 วันที่ผ่านมา

    Something truly spectacular is how XCOM: Enemy Unknown/Within didn't expose all that much, but the developers of Long War did a bunch of digging into the files and code and manages to effectively make a whole new version of the game.

  • @drew_echo
    @drew_echo 20 วันที่ผ่านมา +16

    Another issue with tools is licensing. Either the company may have to pay per seat which means they can't distribute it to modders, or you can have poisonous licenses where you can't even release an Autodesk / Blender / Adobe plugin because it would contain _knowledge_ of some proprietary architecture (like Havok or some licensed file format) even though it doesn't contain any of the licensed code. And then you have to deal with maintenance: Bethesda released a 3DS Max plugin for working with their mesh files for Skyrim, but it was built for 3DS Max 2008 or some other old version which no one can acquire / uses anymore (and also has the same problem as before where modders have to go buy 3DS Max).
    One way to make modding a lot easier for games is to distribute the header files (but not the implementation) for your game like you will get for Console and other proprietary SDKs. It makes it a lot easier for modders to mod games without that much cost to the company, though lawyers and pencil pushers who don't understand source code will usually object. CDPR did something similar for Cyberpunk 2077 and released the memory addresses of key functions that are useful for modding for each game version, but it wasn't as comprehensive as modders would have liked. There is _some_ work though like making sure you're careful not to include anything sensitive in your headers and separating out any licensed code you're using that you can't distribute. That said, like Tim mentioned at some point you're just being nice. Bethesda didn't give modders anything for C++ mods with direct access to the engine, and the modding community reverse engineered a lot of it on their own. But, given the difficulty, you're not going to see that happen for games that aren't very popular / using routine engines. However, not providing modders enough tooling can also hurt the company: Bethesda added a bunch of mod monetization to capitalize on their modding community, but that changed the binaries just enough to break a ton of mods, so a large amount of players have been downgrading their game to keep playing with their mods. If Bethesda had put a bit more into what they exposed to mods, they might have been better able to get people onto their new changes + monetize mods better.

    • @realizewave1513
      @realizewave1513 18 วันที่ผ่านมา +3

      This sounds so ridiculous as someone who mods non-Bethesda games. The difference between what Bethesda simply exposes and what most companies do is night and day.

    • @Prorock23Rus
      @Prorock23Rus 18 วันที่ผ่านมา +2

      @@realizewave1513 May you list examples of other "most companies" that do that "night and day" difference, just my curiousity

  • @monkian
    @monkian 18 วันที่ผ่านมา +1

    By the way you replied to the fictional manager about "just" doing something we can tell you have had that conversation more times than is funny. :)

  • @VraccasVII
    @VraccasVII 14 วันที่ผ่านมา

    "See Dave" has got to be my favourite error message in a loooong time

  • @HzrdHaze
    @HzrdHaze 7 วันที่ผ่านมา

    Good stuff and all for the price of one small ad, thank you

    • @nurgle-j5n
      @nurgle-j5n 4 วันที่ผ่านมา +1

      >he still watches ads on youtube

  • @en7622
    @en7622 16 วันที่ผ่านมา

    Great timing considering all the drama about halo mcc and infinite mod community drama.

  • @misterbrady100
    @misterbrady100 16 วันที่ผ่านมา +2

    I'm apparently the oddball here. I prefer the 'original vision' of a game. That doesn't mean I don't ever use mods. Particularly in mmo's, I will use UI mods because it often helps me organize the information the way I like. So, I'm roughly 80/20 against me using mods. I've never had a problem with others using them though.

    • @77Arcturus
      @77Arcturus 15 วันที่ผ่านมา

      I used to be a mod fanatic back in the day but also find myself loving the original game as well especially these days where they feel so complete and feature rich. Its nice to play SKYRIM and get DAGGERFALL vibes because of its sense of feature and world completeness yet playing the FALLOUT games its always great to use a bunch of mods to give that 1980's Italian doomsday science fiction character to the game with all sorts of insane stuff the Devs could never put in because of ratings and not wanting to end up in court like they did in the days of DAGGERFALL. So for me its 40% to use mods mainly due to a bug sneaking in many times leading to a reinstall/restart to be on the safe side and 60% to stick to vanilla because of the richness of the original game and the comfort of knowing any bugs that pop up will be due to the game and not some mod(s) which may need tracking down and reported to the Modder who may or may not still be supporting it.

    • @misterbrady100
      @misterbrady100 15 วันที่ผ่านมา

      @@77Arcturus Sounds like fun. Another game that I play is Vampire the Masquerade: Bloodlines, and that game is amazing with the unofficial patch mod. I can't imagine playing the game without it due to the game's problems due to being rushed out at the time of release.

  •  11 วันที่ผ่านมา

    Modding has kept Fallout, The Elder Scrolls, GTA and others going for decades. So much that publishers rerelease the game multiple times to update graphics and gameplay to keep up. I like to complete a game as released before I start modding the heck out of it. It is a good way to stretch the dollar per hour of entertainment, especially in today's economy. The ability to mod a game is a huge plus in getting my hard earned cash.

  • @ANlevant
    @ANlevant 16 วันที่ผ่านมา

    I was thinking doing this in my game. Thi sis very helpful video, thank you!

  • @77Arcturus
    @77Arcturus 18 วันที่ผ่านมา

    I love mods especially the incredible system created by Bethesda for their open world games. Its dreamlike how they have made it possible since MORROWIND to jump right into the guts of the game and change everything from world behavior to audio/graphics. I still remember taking the sound files from Bradley's rpg WIZARDS & WARRIORS and creating a talking demon sword in MORROWIND even changing things like the look of the sword while doing it. Probably the easiest editor to use alongside the old UnrealED for the fps shooter UNREAL TOURNAMENT. WadED was also pretty good but was a bit more like a CAD design program. All these editors especially the one by Bethesda taught me so much of the what, where, why and how of game structure where i found myself not even using editors years later because of knowing where everything is and what it does. This is another great thing of when Bethesda games first come out there is no editor out yet so everything has to be done on a manual level til Bethesda releases the modding tools/editor so its one more way of learning how things work. Pretty exciting and magical. Who would have thought way back in the 1990's playing THE ELDER SCROLLS II DAGGERFALL one day i would be able to transform my favorite games with aspects of my favorite books, movies etc etc.
    Thanks for the great video with information i had never taken into account making me appreciate even more both the base game and mods along with those who make such technical miracles possible. Cheers and happy holidays ☕

  • @AntonQvarfordt
    @AntonQvarfordt 16 วันที่ผ่านมา +1

    Every thing that you do is something else that you DON'T do.
    Ultimately there's a finite amount of time and effort that goes into any game no matter how much money and people you have, really.
    So this is always true.
    What's important to the experience that you're trying to deliver?
    A developer ought spend their time on things that reinforce that - and pass on as much as possible of anything else.
    "Why did the developers do that?"
    Because they did THIS :P

  • @klausklebstoff8240
    @klausklebstoff8240 18 วันที่ผ่านมา

    That's a good video! I always wondered why not every games comes with a modding tool

  • @bobfunk5055
    @bobfunk5055 17 วันที่ผ่านมา +2

    “Just” should be a punishable offence, it’s so obvious when you speak that you have years of coding and leading devs under your belt.

  • @Injazz1
    @Injazz1 2 วันที่ผ่านมา

    mods = future trendy genres of games
    modders = your future employees
    preferring composition over inheritance, using interfaces makes moddability a trivial task
    it's actually time-proven

  • @kmg9763
    @kmg9763 18 วันที่ผ่านมา +3

    Tim, Great video as always. Do you have a Good "I told you so" story?

  • @SethStoker
    @SethStoker 20 วันที่ผ่านมา +5

    Hey Tim, I don't know if you have any experience with this, but what are your thoughts on in-game items with real money? Team Fortress 2 has skins you buy from other players, the infamous Counter-Strike gambling stores, or some of the Fallout 76 item stores. Basically, player stores are from players, not player stores from the company. I don't know if I explained it well enough, but what are your thoughts?
    Also Merry Christmas! :)

  • @roberteltze4850
    @roberteltze4850 18 วันที่ผ่านมา +2

    And there are secondary costs particularly in multiplayer games. In World of Warcraft mods give players a lot of customization but they also allow gold farming bots. It also makes it harder for devs to balance raid bosses. I'm convinced it would be a better game without mods.

    • @635574
      @635574 18 วันที่ผ่านมา

      How the fuck did that game not die, they allowed modding in MMO?

    • @MartinWoad
      @MartinWoad 18 วันที่ผ่านมา

      That is why I hate MMOs and instead prefer an ecosystem of private dedicated servers with the server software released for public use. This way players can choose whether to play in smaller communities which are much more lenient about the use of addons or to play on more restrictive bigger servers which can restrict the API use or even come with some anticheat.

    • @LordOfCake
      @LordOfCake 4 วันที่ผ่านมา

      The WOW AddOn API doesn't allow automation and it's built on a relatively sophisticated "sandbox" (taint vs. secure execution) model. Of course anything can be broken, but their background spyware may detect it and ban you. Also, it's generally much easier just to use regular botting software, keyboard input broadcasting software or spend real money on ingame currency to get what you want.
      From a game design POV addons do pose a challenge, but other games had the same issue even without an officially-sanctioned modding system. On the other hand, their UI was abhorrent and they managed to outsource a LOT of technical work to the playerbase. Without its modding system, WOW would a far worse experience for anyone who doesn't completely avoid using addons.

  • @ferna2294
    @ferna2294 5 วันที่ผ่านมา

    I am happy as long as devs don´t go AGAINST modding. I´m a huge fan of games that online will offer a consistent experience, but offline you can do whatever you want.
    Even when the devs don´t release the tools I don´t even care. There´s always talented people who can mod the game without them to certain degree.

  • @PASTRAMIKick
    @PASTRAMIKick 12 วันที่ผ่านมา

    I really like how Paradox Grand Strategy games do moddability, it's so thorough and not that hard to do.

  • @EnneaIsInterested
    @EnneaIsInterested 17 วันที่ผ่านมา

    OpenMW's LUA-dehardcoding is a fascinating example of a written-from scratch game engine replacement gradually switching from data-based moddability to method-based moddability, in essence, this is something an actual capitalist firm would NEVER DO, but OpenMW may well become the go-to open-source cRPG game engine of the late 2020's because of this shift.

  • @thepunisherxxx6804
    @thepunisherxxx6804 8 วันที่ผ่านมา

    Most AAA games should consider modding a core requirement. Modding can drive sales, MASSIVELY. Its well known people bought Warcraft just to play DOTA. People bought Arma to play DayZ mod, which became bigger than the Arma player base itself, which became its own MASSIVE game. Same with Counter-Strike, and so many other games. Then you have increased player retention for people playing and getting cosmetic mods, or guns, or whatever (Left 4 Dead 2 is heavily modded by most). I think even when there is a direct cosmetics store it still doesn't hurt sales there. Gamers are appreciative of free mod support and often will purchase DLC and other store items. Gamers like supporting good games that cater to them.
    You don't necessarily need to have modding in mind from the beginning, you just need priority on good internal tools standardization, a solid development pipeline, and good documentation. Those are sound principles for normal development outside of catering to modders already.
    There are so many massive examples of mods blowing up beyond the games normal release, or revitalizing a game and blowing up sales later on. It doesn't fit for all use cases (indie games, certain types of bog standard games), but most of the time its a no brainer to offer support. Even better if its integrated into the client and consoles can enjoy them too.

  • @yellingintothewind
    @yellingintothewind 17 วันที่ผ่านมา

    The answer is heavily engine/language dependent. If it uses an intermediate language (C#, Java), it is sufficient to not actively obstruct modders (or do so, and then publish the obfuscation map, which is how Minecraft works). If the game does _not_ use one of those languages, then it mostly comes down to if your internal tools are suitable for public release. A good example of this is the original Evil Genius game, where for fast iteration internally, they gave the game the ability to read overrides at runtime, and then at community request, published those. The problem is the low level modding you get in Java or C# simply by not obstructing depends on the symbol names still existing. This is the default in those languages, but not the case in C/++, where code gets inlined, optimized, stripped, and ultimately cannot be trivially turned back into the original form. C# and java games are de-facto pseudo open source, as you can get something closely resembling the original source code with off-the-shelf tools (at least assuming no intentional obfuscation is in play).
    Which brings up the simplest way to support modding. Provide the source code under a suitable license. This can be like Turning Wheel and some other companies do, where the engine is copyleft, and the game _content_ has a standard game license. Or it can be under incredibly restrictive licenses, so long as they don't interfere with unrelated projects and work. This _does_ require some additional effort, on the part of your community managers, in order to leverage the community into a beneficial form. Ideally you want this to result in suggestions and PRs that _reduce_ the workload on your core team, but that requires skills that many closed shops don't really have.

  • @NinaadDas
    @NinaadDas 14 วันที่ผ่านมา +1

    8:36 If you would please elaborate only on this part.

    • @avramlevitter6150
      @avramlevitter6150 12 วันที่ผ่านมา +1

      My guess from my experience is "if you're writing with this in mind, it's easy to make a change, but if you've used it thousands of times, changing each use is tedious especially if they have slight variations".

    • @CainOnGames
      @CainOnGames  12 วันที่ผ่านมา +3

      Imagine an RPG code base where moving an item from one place to another is as simple as changing its parent pointer. So when a player pulls an item from a chest, there is a line of code that changes item.parent (which was set to chest) to the player, like this:
      item.parent = player
      Now imagine that one line of code is in many places in your game, e.g. when the player takes an item from a chest, from a dead creature, from the ground...or gains an item from a quest, an NPC in dialog, solving a puzzle, or crafting an item. All those different places in code just have that one line, changing the parent.
      Now you want to make the game moddable, so you need to let a script override that line. You need to find every place in code that does that parent setting and change it to a method that is called, so that a mod can override it. And when you do that, after finding that line in HUNDREDS of places (remember, scripts can do it), you then discover that many of those places can see the item data but do not have access to your new method because of code scope reasons. So now you need to add headers to lots of code modules, possibly making private methods into public ones, and don't forget to expose your new method to the scripting system, which you might not have even created or know how to do.
      BTW, switching that one line of code to a method call just added overhead to your game, and maybe it was done in places that were highly optimized and now use too much time or memory or stack overhead because that one line of code is now a method call. You need to fix that now.
      And that was one thing you wanted to allow modders to change. There are probably hundreds more. What would have been nearly trivial to do at the start of development (make the method and tell the programmers to call that method to move an item) is now a lot of time and work and money.

    • @NinaadDas
      @NinaadDas 12 วันที่ผ่านมา +1

      @@CainOnGames Yes, now the picture is quite clear, thank you.

  • @Steve1821
    @Steve1821 16 ชั่วโมงที่ผ่านมา

    Just goes to show how difficult it must have been for Larian to implement official mod support for BG3. If making a game moddable is hard enough, that must have been exponentially more costly and difficult. When you think about it this way, them winning best community support in hindsight was absolutely no contest. No other nominee came close to what Larian did for their community.

  • @michaelbolland9212
    @michaelbolland9212 11 วันที่ผ่านมา

    Aspect orientated programming was used to inject hooks into Minecraft to create mods without the studio providing mobility and look how popular that ended up being for modding

  • @kvproductions2581
    @kvproductions2581 4 วันที่ผ่านมา

    I feel like it should be mentioned that lots of modern engines do a lot of this for you. For example, Unreal Engine. It does the bullet-proofing for you, Any tidy code already matches (or should match) most of those early requirements, and I am almost certain the engine already accounts for making it changeable easily, to the degree that even UE games without mod support often get modded.
    Regardless, I feel like the biggest reason for lack of modding is corporate greed. Sure, making a game moddable is hard, but so is making an always online DRM and shit like that

  • @avramlevitter6150
    @avramlevitter6150 12 วันที่ผ่านมา

    A lot of time, games ship with specialized model formats that are exactly what the engine needs, and use internal tooling to convert the models into that format. Allowing external models makes that complicated.

  • @Razumen
    @Razumen 12 วันที่ผ่านมา

    Part of it is engines, some engines are inherently more moddable than others. UE for the longest time was hard to impossible to mod because they put everything into huge archive files that was very hard to unpack and mess with. Of course, developers probably could have made it more accessible, but as you said, time and money.

  • @ashuggtube
    @ashuggtube 17 วันที่ผ่านมา

    “Illegal script code. See Dave.” Goddamnit Dave 😂

  • @avramlevitter6150
    @avramlevitter6150 12 วันที่ผ่านมา

    This reminds me of your "code vs scripting" video but from a different perspective

  • @MarcusWatkiss
    @MarcusWatkiss วันที่ผ่านมา

    It's frustrating to see many people in the comments just saying "nah just make it moddable tho" like they didn't just listen to his clear explanation.