Author Topic: Foundation 2023's official github and wiki  (Read 415 times)

Dasher

  • Guest
Foundation 2023's official github and wiki
« on: May 25, 2023, 11:51:24 PM »
Since the Foundation framework has supported almost the entirety of Bridge Commander modding since 2002, I'll bring this news here:

I've kicked off an official GitHub repo for the Foundation here:
https://github.com/Dasher42BC/FoundationFramework

We've started a wiki as well.
https://github.com/Dasher42BC/FoundationFramework/wiki

For the moment, it contains a standard circa-2008 reference copy of the Foundation that in most cases, can be copied over an existing installation of Bridge Commander.  While this for now seems like just another way to download a copy of the Foundation, more important is that it enables modern collaborative development of the Foundation, as was intended from the beginning.  I've had to update the documentation a bit as most of it literally came from 2002-vintage TXT and HTML files, but we now have a roadmap for the 2023 updates.  I'd like the BC-Central forum and the Foundation Wiki to complement and support each other in keeping the community knowledge documented, so we don't have to rebuild things simply because we've forgotten how to use them.

Here's what's soon to come in Foundation 2023:
  • A new official launcher and Windows/Linux game installation manager, with git-driven snapshots and updates, and more.
  • New pre-flight checks for mods and modpacks, allowing test-driven development without tedious playtesting, and thus more stable mod releases.
  • A new versioned updates framework, ensuring that the latest version of key components are always retained even when people use outdated installers.
  • Simultaneous support for stable single-player campaign and multiplayer modes, while allowing highly moddable local quickbattle and additional campaigns.
  • All content featuring revisions of Totally Games content falls under the terms found in SDKLicense.txt. All additional code is LGPL: work based on it must include its own source code and abide by the Totally Games license as well.
Having a clear reference implementation is a start.  Let me show you why git and GitHub are a big leap over the way Bridge Commander and the Foundation were developed in 2002.

See the branches? https://github.com/Dasher42BC/FoundationFramework/branches

Many of us have been using mutators - for better but mostly worse - to try to do what git branches do.  A branch splits off a copy of the main branch, is updated separately from main or any other branch, and gets its features developed and tested in isolation.  They can merge and disappear into the main branch, or remain separate.  Your forked copy of my Foundation can have its own branches.  Merges of them get collaboratively reviewed, and we get to decide how this develops.  I'll do my best to bring you up to speed on what this makes possible, far beyond simple .EXE installers and copying files by hand. 

I for one maintain all major mods on my local development machine as branches, and make merged releases from them at will.  I've used this approach very successfully for other games I've modded for, to the point where a single command runs a quick automated playtest, drops me into a text editor to write release notes, and then compiles the .ZIP file.  Bridge Commander modding should become that easy.  This means every major, distinct component is exchangeable, reversible, and easily tested and compared.  It shouldn't be a mutator unless you really think the player will want to turn it on and off.

If you want a Windows GUI tool for all that git and GitHub make possible, you have plenty of options: https://blog.devart.com/best-git-gui-clients-for-windows.html

The Foundation's open-source nature is not for keeping it under glass, away from you.  It's for hands-on collaboration on features and bugfixes in a way that improves it for everyone.  See the "Fork" button on the upper right?  It allows you to make your own copy of the Foundation, one that can be smartly synced and updated and merged to or from my own.  The mod sites can continue to serve up our ships and add-on media; we will give them the most up-to-date Python support on GitHub.  This will allow us to fix and stabilize and integrate a great many features.

Especially important:  git and GitHub keep the history of contributors and their submissions.  We'll have a great reference, even tools and graphs, of who takes credit for what.

What does this all mean for the mainstay ships, bridges, effects, and media?  It means the stage is set for a whole new round of updates and features, without breaking compatibility with your mods.  More sophisticated scripting mods may need updates to be included in new features, but I will aim to preserve compatibility while radically improving our options for debugging, testing, syncs, and updates.

Twenty-one years of Bridge Commander and Foundation, and the possibilities are not tapped out.  For the same reason you all use Foundation plugins and ShipDefs to share your ships, Foundation should encourage up-to-date, naturally collaborative methods for our shared body of work - in practice, making the right way the most convenient and best-supported way.

Enjoy! :)

- Dasher42

Offline starfox1701

  • Posts: 192
  • Cookies: 13
Re: Foundation 2023's official github and wiki
« Reply #1 on: May 28, 2023, 02:36:37 PM »
I think this needs pinned