Open source game engine

Version

Contents

[ hide ]

    Kochol Game Engine use major.minor.release version style.

    For more info click here

    Important notes from above link

    Major

    • All features across the same version should be either 100% compatible or in rare conditions gracefully degrade.
    • File formats should be compatible, all 1.x versions should open, save and edit 1.x versions.
    • For commercial products all updates in the 1.x line should be free
    • Only release a new major version if;
      • the flow of the application has been noticeably changed,
      • there are a significant number of new high-visibility, high-usability features,
      • the user interface has drastically changed.
    • New major versions should always be able to import or open older versions.

    One key point is that only new highly usable features should mark a new major version. New major versions usually mean an upgrade cost and nothing is more annoying than buying a new version only to find the new features are only useful to about 1% of the install base. I’ve seen several products try to push a new version with inflated features that don’t actually offer any benefit.

    Minor

    • New non-breaking small feature, meaning it still works with other version with the same major version.
    • Bug fixes that apply to everyone.
    • You’ll want everyone to be running the latest minor version so be prepared to make this available to everyone.
    • Tech support should usually make sure the end-user is on the latest minor version before going farther.
    • Installing the newest minor version should be painless. All user settings should transfer over seamlessly.

    Release

    This gets a little murky for some and there are a lot of schools of thought on this one, here is mine:

    • Represents the release of the current major.minor version.
    • Increase the release when you do small, infrequently encountered bug fixes.
    • Not everyone needs to be on the latest release, only those affected by certain issues.
    • If you do Betas and Release Candidates this is the place to note that. If you release RC1 as version 2.5.0 and someone finds a bug you update the release to 2.5.1.
    • Resets back to 0 every time the minor version changes.

    That last point is where a lot of people get into knife-fights. Some think release should mean the number of times a product has actually been “released” into the public. If that’s how you think then by all means go for it. Personally I think of it as a version number for the version number, in other words, how many times did I release version 3.1?

    This page is a Wiki! Log in or register an account to edit.

    Leave a comment for: "Version"