• poVoqA
    link
    fedilink
    arrow-up
    3
    ·
    10 months ago

    Convenience for what? If you have a stable API you just always use the latest stable version of the major release version you are targeting.

    • Ategon@programming.devM
      link
      fedilink
      English
      arrow-up
      6
      arrow-down
      1
      ·
      10 months ago
      • Testing pre release versions
      • Editor version to match the game for game mods
      • Godot 3 vs Godot 4
      • GdScript vs C#
      • poVoqA
        link
        fedilink
        arrow-up
        2
        ·
        10 months ago

        Point 1 & 2 shouldn’t need a version manager if the engine has a stable API.

        Point 3 are completely different engines and it is very unlikely that you need to switch between them regularly, and point 4 is similar, but I concede that for that a version switcher might be somewhat useful.

        • Ategon@programming.devM
          link
          fedilink
          English
          arrow-up
          3
          ·
          edit-2
          10 months ago

          Version manager for pre releases since you probably don’t want your main game on a pre release version but you can have a test project to test that version

          Having same editor version for mods so things like bugs are the same

          And when collaborating with others as well normally you stick to a certain version so you can do that while maybe doing latest version for a personal project

        • Faresh@lemmy.ml
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          1
          ·
          edit-2
          10 months ago

          Point 3 are completely different engines and it is very unlikely that you need to switch between them regularly

          That’s not been my experience at all. I have multiple projects, more than half of them in Godot 3, but most of the new ones I create are in Godot 4. I often have to switch between the two versions to work on different projects. Even more switching is needed when porting a project from 3 to 4, where you regularly want to compare the two versions to check for regressions or to understand some code that was messed up by the automatic converter. That’s one of the reasons I use a project manager like Hourglass (aside: for those interested in hourglass, I have to inform you the version on the official website isn’t currently working, but I have submitted some MR/PRs to fix the issues, so you’ll have to wait if you want to use it. we are currently porting it to godot 4: https://gitlab.com/jwestman/hourglass/-/merge_requests/52).

          I don’t disagree that there are often incompatibilities between versions, but they haven’t bothered me much (besides the obvious g3 vs g4). When something breaks on version switch, there are times where you want to withhold changing versions (due to a problem with the engine, or because the user was exploiting a behaviour of the engine that was not desired when originally involved parts were designed, for example), but in the cases where that is not the case (ie. most of the times) the problems are easily fixed (in my personal experience), but I think the changes generally are an improvement, so I think custom project managers are worth it and we can live well in the current state of things.

          Edit: A point that I noticed wasn’t mentioned that I consider significant is that another situation a human may need to juggle versions is when that human has their own custom build of godot (or even multiple of them). A project manager allows to easily manage those different versions. There is a bigger need for version management in this case because unlike official releases one version isn’t “inferior” or “superior” to another and one generally really doesn’t want to change all projects to use those custom versions.