Welcome to Keen Software House Forums! Log in or Sign up to interact with the KSH community.
  1. You are currently browsing our forum as a guest. Create your own forum account to access all forum functionality.

Regarding Dev, Stable, and Mods

Discussion in 'General' started by TheDeinonychus, Sep 3, 2016.

Thread Status:
This last post in this thread was made more than 31 days old.
  1. TheDeinonychus Trainee Engineer

    Over on the Steam mods forums.. Well, not actually the forums. This took place in the discussion thread for one particular mod. But regardless, one user was going on about how the Stable branch was 'inferior', and how modders should only make mods for the Dev branch. And, well, it just started to grind my gears. I see people talking about this a lot and I can't help but think that these people are looking at the split game branches completely wrong. So, I went off on a bit of a rant. But I felt what I had to say on the subject might be relevant here as well. So, please enjoy some copy pasta, and maybe consider this perspective a bit before you decide to chew out Keen again for giving you two versions of the game to play with.
    That's.... Actually almost entirely inaccurate on all accounts..

    Firstly, I don't have any data on which branch the majority of players actually use. I'm not even sure if Keen themselves have any way to gather that metric. But I'm gonna go out on a limb and say that the two are more or less equal between the player base all things considered.

    The decission to split the game into two branches, one constanly being worked on and the other only occasionally getting bugfixes outside of major updates, has both good and bad points for both the developers and modders.

    For the developers, it takes a lot of pressure off of them. Remember that the Dev branch, in all honesty, is NOT meant for players to use. It's in the fricking name, 'Development Branch'. This means that this is a testing build of the game. It's going to have things added to it constantly that don't work yet. It's going to be full of bugs. It's going to be a mess even if the typical player doesn't notice it. Under the hood it's going to be like trying to cram a Ford truck engine into a Chevy sedan. This is so the developers can have a 'playable' build of the game they can work on for their improvements, tweeks, and new features without having to worry about bugfixing everything in a very short amount of time to make it ready for the public. The fact that Keen decided to give players access to the Dev branch means that A) they want the players to help them find bugs and give feedback on what they are working on, and B) they expect players to realize that Dev branch is not a finished product and will be a buggy mess a lot of the times. Unfortunately a lot of players just focus on the 'new shinny' and don't stop to think that while it may look good, it's all being held together with bits of string and ticky-tacky.

    Stable, on the other hand, has been bugfixed and gone through to make sure that everything works as well as they can get it currently. When Stable gets a bugfix, it's because something has gone wrong that they didn't manage to catch, and they know it needs to be fixed soon. But it doesn't get content patches very often. Again, this is because it takes pressure off of the developers. New features being pushed out to the public means that, when a bug does show up, it has to be fixed fast or else they risk loosing players, which can damage the game's popularity. But since Stable doesn't get new feature patches too often, major game-breaking bugs shouldn't crop up so often. Instead, they can spend the time trying to hammer out the bugs on new features with Dev branch. Instead of knowing they have to push out a new feature every week, they can take their time to not only fix a bug, but also make sure it's a final fix and not just a quick bandaid that only sorta fixes the problem. Yes, it does suck that we're not always getting new content on the Stable branch, but it's a small price to pay for a more STABLE game.

    For modders, the benefits might not seem as apparent, but they are actually there.

    Because there are no major changes to the game's code in Stable outside of when they push the current Dev build to the Stable branch, mods that depend on certian parts of the game's code won't constantly become broken with every update. I remember when every patch to the game included major changes, and half the mods you were using suddenly stopped working, or caused the game to crash because they hadn't yet been updated. You literally had to either just disable Steam from patching the game to avoid that, or wait sometimes a week or more for the modders to update their mods. With major changed relegated to the Dev branch, and only effecting the Stable branch when a major update rolls out, fewer mods are broken by each update that comes out. Sure, some mods may still break when Stable gets a bugfix, but it's relatively rare. It means that modders don't have to constantly work to keep their mods up to date every week because of major patches.

    Unfortunately it means that when a Dev version is pushed out to Stable, mods will break. Big time. But here's the rub. Part of Keens decission to give players access to the Dev branch of the game was also so the modders had access to it as well. Remember, Dev branch isn't something that came out of nowhere. There has always been a Dev branch of the game. It's just that players have only been able to access it only recently. Just as Keen used Dev to work on major changes to the game, and only pushes those changes to Stable once they're solid and mostly bug free, it was intended for modders to do the same. Dev branch is there for modders to take advantage of.

    However, not every modder does make used of Dev branch the way it was intended. Now, I mean no disrespect to <Insert Really Talented Modder Name Here>, his mod is amazing and it's beyond me how he manages to do what he does, but I must be honest in saying that he's not quite making full use of the tools he's been given. Like many other moddes, he's chosen to focus entirely on the Stable branch of the game. And that's fair, it's his mod, he can do what he wants. But he, and those that use his mod, need to realize and accept that, yes, this mod is going to break every time the Dev build is pushed to Stable. Well, maybe not every time, but more than likely it will break. What he should do, and again this is just the way I see it, he may not have the time or any number of other reasons this isn't viable for him, is once the Stable version of the mod is working, to work on a Dev version. Now, he doesn't have to release a Dev version, he doesn't even have to finish it. In fact, I'd recoment not releasing it. But the point is to keep informed on what's being changed in the Dev branch of the game, to spot early anything that may potentually break the mod once those changes are pushed to Stable.

    With the most recent major changes that came out, we saw that the textures for many mods were broken, but not for others. And this is why some mods were fine when the new lighting system came out and others weren't. Some modders chose to keep up to date with the changes that were being done in the Dev build and planned ahead for when those changes were pushed to Stable, and others chose not to.

    In the end though, it's up to the modders to decide which method suits them best. Working with the Dev build to keep ahead of the changes, or waiting till Dev is pushed to Stable and fixing things as they break. Telling them they should abandon Stable because it's 'inferior' just makes you sound like an elitist and an idiot. Especially when you understand that, not only will Dev eventually be pushed to Stable anyway, but that some things in Dev may never actually make it into the final game. Remember, it's a TESTING build. Some things just will not work regardless of how much Keen tries, and those things have to be cut. Basing your mod in Dev only may mean that something your mod depend on may be cut from the game once Stable updates, and your hard work simply goes away as if it was never there in the first place. Modders that only work on mods for Dev build are taking as big of a risk as, if not a bigger one than, the modders that only work on Stable.
  2. FlakMagnet Senior Engineer

    Personally speaking.... I only play in Develop, so anything I make modwise will get used in that branch. I don;t play on stable so my setup stays in develop. My theory is that the things in develop will end up in stable....so I plan for that.

    Mind you....I am making block mods, not working with the code. This makes things a LOT easier for me, and also means there is a very good chance that my stuff will work in both branches and continue to do so.

    It must be REALLY hard to mod for a game that can change, and change a LOT without prior notice, and where hours and hours of work can just be flushed away because the development team have changed something under the hood. In all honesty, though, modding for stable is a more risky approach as you know it's a redundant build. If new things are being worked on in Dev, then you know it's going to be different sometime soon. You would be putting time in on something already being replaced.

    For best results....design for Dev....test in stable once you know it works in dev. Then release. At least you can tell people what version it will work in. Then re-test in stable when stable updates.
  3. Devon_v Senior Engineer

    I feel like Develop is the only safe branch to mod for. What good is it setting up a mod for Stable if Develop already contains three changes which will break it? At worst you have to wait a few weeks for an important feature to get pushed to Stable. Most mods out there are fairly branch neutral unless they're based on shiny new features.

    Most of the modders I've seen just update weekly - if needed - for Develop and when a push to Stable happens usually the most recent Develop version can just be uploaded as Stable.

    Develop actually is the way Keen intended the Early Access to be played. Stable came about because they started making major changes to the game and it was breaking dedicated servers and leaving them in nearly unplayable states for weeks on end. Stable is basically to allow servers to function better for people who want to try to get that living world experience. Develop gives us new features and bugs to test and report, which is what we're supposed to be doing anyway. :)
    • Agree Agree x 1
Thread Status:
This last post in this thread was made more than 31 days old.