Suggestion Improving the bug reporting process


Today I've been thinking a lot about the problems with GM's current issue tracking / bug fixing system. From the user's perspective, the process for requesting bug fixes currently goes like this:

1. Report a bug
2. Wait for a response from helpdesk (could take days/weeks/months...)
3. Helpdesk reports the issue to Mantis
4. Wait for someone from the tech team to look at the issue (could take days/weeks/months...)
5. Someone gets assigned to the issue
6. Wait for that person to fix the issue (could take days/weeks/months/years...)
7. The issue will be marked as rejected or resolved
8. Wait for a new release of GM that contains the fix (could take days/weeks/months...)
9. Test the new release of GM. If the bug is gone, great! Otherwise, go back to step 1.

I think we can all see the problems here. There is often an incredibly lengthy process between reporting the bug and (possibly?) receiving a patch. Now, I understand that YYG is a relatively small team and they're doing their darndest to satisfy their customers. I just think that some improvements could be made to this process that could prove mutually beneficial for YYG and the GameMaker community.

Suggestion 1: Regular patch releases. No new features, just bug fixes. Even if the IDE itself for some reason couldn't be updated, just a slightly updated runtime release to fix in-game bugs would be much appreciated. For instance, the Mac IDE has some frustrating runtime bugs since early December (like show_debug_message() not displaying) that have long been fixed internally, according to Mantis. But as of right now, we still haven't received an update to address this problem because new releases are generally tied to new features.

It doesn't seem like it would be a tremendous burden on YYG to push a slightly improved runtime every month or so, especially if they followed Unity's example and issued patch releases separately from the main release. Users could use the new patch release only if they encountered a particular bug solved by that patch. If the patch release is broken somehow, the user could simply revert to the latest main release and carry on with development.

Suggestion 2: A voting system for the public issue tracker. Right now, to my understanding, every legitimate bug submitted gets thrown into the database, leading to a very tall stack of miscellaneous problems. But not all bugs are created equal. In the current system, crashes and hangs are the highest priority issues (as they should be), but from there it seems a little fuzzy on what will get fixed, and in what order. What if users could vote on the submitted bugs that were most important to them, a la Unity's issue tracker?

For instance, I and many other people (gauging from several GMC threads) are frustrated that on the Mac IDE, there is an unskippable splash screen when testing your game. This impacts our development experience and makes testing simple changes a longer process than it should be. Perhaps if the community at large could cast our votes toward the bugs that impact us the most, then YYG could concentrate their efforts on influential bugs they may have otherwise overlooked.

There are definitely downsides with a voting system, of course. Setting up a public interface to allow for this would take time, unrealistic suggestions would probably be heavily upvoted ("Nintenndo Swich Export PLZ!!"), and important but niche bugs might not receive much attention. That said, I still believe it is an option worth considering, especially since it would give YYG a new avenue for listening to user requests without being explicitly beholden to their demands.

In conclusion, I want to make it clear that I understand there is much that happens behind the scenes at YoYo Towers that the community does not (and cannot) know about. It can't be easy for the team having hundreds of angry programmers yell at them to fix bugs and add features, when they are trying their hardest to make their users (and their parent organization) happy. I've only had positive interactions with the helpdesk, and I appreciate the lead developers being actively involved on the forums. I just wanted to throw out some suggestions for how this aspect of the GM experience could be potentially improved. :)