this post was submitted on 17 Aug 2023
71 points (100.0% liked)

Godot

5681 readers
6 users here now

Welcome to the programming.dev Godot community!

This is a place where you can discuss about anything relating to the Godot game engine. Feel free to ask questions, post tutorials, show off your godot game, etc.

Make sure to follow the Godot CoC while chatting

We have a matrix room that can be used for chatting with other members of the community here

Links

Other Communities

Rules

We have a four strike system in this community where you get warned the first time you break a rule, then given a week ban, then given a year ban, then a permanent ban. Certain actions may bypass this and go straight to permanent ban if severe enough and done with malicious intent

Wormhole

[email protected]

Credits

founded 1 year ago
MODERATORS
 

Nice app I saw shared

Source: https://github.com/MakovWait/godots

Download Links (Win, Macos, Linux): https://github.com/MakovWait/godots/releases/tag/v1.0.stable

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 4 points 1 year ago (1 children)
  • Testing pre release versions
  • Editor version to match the game for game mods
  • Godot 3 vs Godot 4
  • GdScript vs C#
[–] [email protected] 2 points 1 year ago (2 children)

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.

[–] [email protected] 2 points 1 year ago* (last edited 1 year 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

[–] [email protected] 1 points 1 year ago* (last edited 1 year 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.