Open asumagic opened 2 years ago
I think short-term it would be great to at least get something happening so people keep playing the game and contributors besides mugg may get some motivation. I'm not going to reply to any specific points directly but I'll just state what I think should happen ASAP.
To start I will state that I am always available to fully fulfill all social needs: promo materials, Steam + Discord announcements/events, etc. You can completely forget about those parts, as merged commits and "being involved" is enough for me to know what to work on.
What I would like to see short-term is the merging of simple commits (that possibly have already been reviewed) that do not change the game balance heavily, as well as more minor bug fixes and QoL changes. This doesn't have to be entirely production-ready, but I do think it's safe to say all commits have at least been tested locally to work, so if we simply merge these into test, even if test breaks we can fix it.
This is far easier than full code reviews & merging commits locally to test them online. Crashes or bugs can be fixed far easier that way; I would open a server on test in a few minutes and people could go to work if anything is broken. I know typically it has been @AsuMagic @eps0003 @Vam-Jam and occasionally me reviewing PRs, but if people can easily "test" 20-30 PRs by just updating the test client I don't doubt we could see fixes from @bunniewormy @mugg91 or @GoldenGuy - people who are willing to contribute and have PRs ready to merge, and could fix issues that may arise on their own PRs or each other's.
Also when it comes to changelogs -- it might be good to mention people who reviewed the PRs.
Release throughput is rather terrible partly because contributors (especially me) have finite motivation and time to help with releases.
Some people have been stepping up recently to help (e.g. Mazey) but the release process is currently way sub-optimal since core contributors are loaded with work that takes away time that could be spent on things others mostly can't do (cough staging release cough).
I think this is at least partly due to rather terrible organization, so this thread is written with the hope of creating a more robust procedure for KAG releases that reduces reliance on the very few "all-powerful" contributors and sparking some discussion on what could be improved. The current procedure is barely documented and was much better suited for a time where the game was not as community-driven and when core developers had usually more time to provide.
Required work on releases
There are a couple things I generally need to do which represents most of the time I need to spend when pushing KAG releases (engine work and debugging aside):
[added]
/[dev]
/etc. convention is not enforced, b. they often don't properly represent all changes and c. they don't attribute the changes to a person, so we have to manually add that.Things that should be done
The first 6 points have a lot of room for optimization. There's a few things we might want to do:
This is mostly a dump of my thoughts so far on how the development process could be improved, so that there is at least a trace of it.