Search titles only
By:
Home
Forums
New posts
Search forums
Articles
New articles
New comments
Search articles
Pinball DB
Pinball Tables
Pinball Games
What's new
New posts
New articles
New profile posts
New article comments
Latest activity
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Welcome Back to Digital Pinball Fans -
please read this first
For latest updates, follow Digital Pinball Fans on
Facebook
and
Twitter
Home
Forums
Imported content
Blogs
The Lust for Results
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="Sean DonCarlos" data-source="post: 297276" data-attributes="member: 152"><p>Or more specifically, commentary on why bugs cannot always be fixed right away when they are first reported. But first we again have need of the obligatory...</p><p></p><p><strong>DISCLAIMER:</strong> I am not employed by FarSight, not representing FarSight, and nothing in this post should be construed as the Official Opinion[SUP]TM[/SUP] of FarSight Studios or its development staff.</p><p></p><p>All software bugs have six traits that together help determine when they get fixed:</p><p></p><ul> <li data-xf-list-type="ul"><em>Severity</em> - How much impact does this bug have on the software? Is it a minor aesthetic issue? A UI mistake but one with a workaround? Does it affect the player's score or does it make it impossible to continue? Does the software itself crash or freeze?</li> <li data-xf-list-type="ul"><em>Frequency</em> - Does the bug occur all the time? Once every few times? Once every few hundred times?</li> <li data-xf-list-type="ul"><em>Reproducibility</em> - Can the bug be demonstrated at will by following a few well-defined steps? Or does it happen at random? Or somewhere in between? Is the bug more likely to occur when certain conditions are met?</li> <li data-xf-list-type="ul"><em>Distribution</em> - Does this bug affect all or nearly all users, or just a tiny fraction? Note this is not the same as frequency, a particular bug may affect everyone but only occasionally, or it make affect a small number of users but make their lives hell.</li> <li data-xf-list-type="ul"><em>Entanglement</em> - Where in the code is this bug occurring? Is it in some isolated section where making the changes to fix it will affect little else? Or is it in code that is heavily accessed by many different functions, such that making changes could have unexpected consequences for the rest of the software?</li> <li data-xf-list-type="ul"><em>Difficulty</em> - Having found the bug, can the fix be made quickly to a few lines of code, or will the fix require overhauling major sections of the software?</li> </ul><p>(Note to developers: Yes, I'm aware this arrangement does not correspond to any of the standard methods. But I'm aiming for clarity to a non-coding audience, not for technical precision.)</p><p></p><p>Let's take two examples from TPA:</p><p></p><p>At one point (and this still happens on the 360, since it hasn't had an update since this bug was fixed) slow-moving shots to the ramp in TOTAN would result in the ball oscillating back and forth several times before falling through the hole in the ramp and feeding to the right inlane. Let's evaluate this bug according to the factors above:</p><p></p><ul> <li data-xf-list-type="ul"><em>Severity</em> - Usually not a huge deal, but if something with a short timer is running (Fireball or Lightning Lamp) is running, the user will get screwed out of the opportunity for good scoring. The worst result possible is that all 4 balls get stuck up there during Genie Battle, which results in the player losing the wizard mode.</li> <li data-xf-list-type="ul"><em>Frequency</em> - This doesn't occur constantly, but it happens pretty often, certainly more than once every few games.</li> <li data-xf-list-type="ul"><em>Reproducibility</em> - It's not 100% reproducible, but eventually making enough slow shots to the ramp will cause the issue.</li> <li data-xf-list-type="ul"><em>Distribution</em> - Pretty much anyone who's played TOTAN has seen this one.</li> <li data-xf-list-type="ul"><em>Entanglement</em> - There is a special-case code section that handles the hole in the ramp for TOTAN. Being special-case, this code is not used by other parts of the software.</li> <li data-xf-list-type="ul"><em>Difficulty</em> - In this case, the fix was able to be made quickly...<a href="http://pinballarcadefans.com/showthread.php/1992-Bug-Compilation?p=29920&viewfull=1#post29920" target="_blank">in 5 minutes</a>, actually.</li> </ul><p>Now let's look at something more interesting - the flipper quantum tunneling phenomenon:</p><p></p><ul> <li data-xf-list-type="ul"><em>Severity</em> - Not game-breaking, but close to it - each time the bug occurs, the player loses the ball.</li> <li data-xf-list-type="ul"><em>Frequency</em> - Some players report this happening all the time, others rarely see it.</li> <li data-xf-list-type="ul"><em>Reproducibility</em> - Not reproducible at will.</li> <li data-xf-list-type="ul"><em>Distribution</em> - Almost everyone's probably seen it at least once, but again, some players only have problems rarely and others seem cursed with Swiss-cheese flippers.</li> <li data-xf-list-type="ul"><em>Entanglement</em> - The flippers are fired hundreds of times per game. Therefore it seems reasonable to assume that the relevant code is heavily accessed.</li> <li data-xf-list-type="ul"><em>Difficulty</em> - I'm not sure, since I don't have TPA's source code. Since the issue was acknowledged several months before a fix was announced, we can assume the fix was not easy.</li> </ul><p>This is all very nice, but what does it mean for TPA users? Let's say that a new table is released - Attack from Neptune or something - and you're playing along in multiball and all of a sudden a ball gets stuck in a kickout and the attendant won't help. Cursing and swearing, you start a new game of AFN and reach multiball again, but the bug does not happen. Three more games and no bug, but during the fourth game the ball gets stuck again. You report the bug, but you wonder how long it will take to get fixed. Let's make an assessment:</p><p></p><ul> <li data-xf-list-type="ul"><em>Severity</em> - It quite clearly prevents the current game from continuing normally.</li> <li data-xf-list-type="ul"><em>Frequency</em> - You've seen it twice now in 6 games, so not 100%, but not at all uncommon.</li> <li data-xf-list-type="ul"><em>Reproducibility</em> - Hmm. You're not sure. So you play a few more games of AFN, and try to pay attention to what's going on immediately before the bug occurs...and also what occurs immediately before situations where the bug does <em>not</em> occur (this is important!). Let's say you still can't reproduce the issue at will, but you notice that the problem seems to happen a lot more often when the ball goes into a kickout while the Jackpot animation is playing, and doesn't seem to be happening during other times.</li> <li data-xf-list-type="ul"><em>Distribution</em> - You browse the relevant sections of these forums and see that some users are reporting similar issues, but others haven't had any problems and are wondering what the fuss is about.</li> <li data-xf-list-type="ul"><em>Entanglement</em> - Not sure. It could be a problem with the kickout which is used by the table in various situations, or it could be a problem with the Jackpot sequence, which is used only in this particular multiball.</li> <li data-xf-list-type="ul"><em>Difficulty</em> - We have no idea, not having source code.</li> </ul><p>We see that we have a relatively severe, relatively common bug - both factors that tend to lead to a high priority for a fix. We are not able to reproduce the bug at will, but we have a general idea of what may be causing it, so that's helpful. But we also see that not everyone seems to be having the problem, it's possible that the bug is in heavily-used code, and we don't really have a good handle on how difficult the fix will be. So we conclude that FarSight will likely start looking at this bug right away, but depending on the cause it might not be a quick fix, so we should not go ballistic if the bug is still present in the next update.</p><p></p><p>Again, this is not the exact procedure FarSight uses. But hopefully this will give players an appreciation for what goes on behind the scenes when bugs are reported, as well as give them some way of estimating when a fix might be available.</p></blockquote><p></p>
[QUOTE="Sean DonCarlos, post: 297276, member: 152"] Or more specifically, commentary on why bugs cannot always be fixed right away when they are first reported. But first we again have need of the obligatory... [B]DISCLAIMER:[/B] I am not employed by FarSight, not representing FarSight, and nothing in this post should be construed as the Official Opinion[SUP]TM[/SUP] of FarSight Studios or its development staff. All software bugs have six traits that together help determine when they get fixed: [LIST] [*][I]Severity[/I] - How much impact does this bug have on the software? Is it a minor aesthetic issue? A UI mistake but one with a workaround? Does it affect the player's score or does it make it impossible to continue? Does the software itself crash or freeze? [*][I]Frequency[/I] - Does the bug occur all the time? Once every few times? Once every few hundred times? [*][I]Reproducibility[/I] - Can the bug be demonstrated at will by following a few well-defined steps? Or does it happen at random? Or somewhere in between? Is the bug more likely to occur when certain conditions are met? [*][I]Distribution[/I] - Does this bug affect all or nearly all users, or just a tiny fraction? Note this is not the same as frequency, a particular bug may affect everyone but only occasionally, or it make affect a small number of users but make their lives hell. [*][I]Entanglement[/I] - Where in the code is this bug occurring? Is it in some isolated section where making the changes to fix it will affect little else? Or is it in code that is heavily accessed by many different functions, such that making changes could have unexpected consequences for the rest of the software? [*][I]Difficulty[/I] - Having found the bug, can the fix be made quickly to a few lines of code, or will the fix require overhauling major sections of the software? [/LIST] (Note to developers: Yes, I'm aware this arrangement does not correspond to any of the standard methods. But I'm aiming for clarity to a non-coding audience, not for technical precision.) Let's take two examples from TPA: At one point (and this still happens on the 360, since it hasn't had an update since this bug was fixed) slow-moving shots to the ramp in TOTAN would result in the ball oscillating back and forth several times before falling through the hole in the ramp and feeding to the right inlane. Let's evaluate this bug according to the factors above: [LIST] [*][I]Severity[/I] - Usually not a huge deal, but if something with a short timer is running (Fireball or Lightning Lamp) is running, the user will get screwed out of the opportunity for good scoring. The worst result possible is that all 4 balls get stuck up there during Genie Battle, which results in the player losing the wizard mode. [*][I]Frequency[/I] - This doesn't occur constantly, but it happens pretty often, certainly more than once every few games. [*][I]Reproducibility[/I] - It's not 100% reproducible, but eventually making enough slow shots to the ramp will cause the issue. [*][I]Distribution[/I] - Pretty much anyone who's played TOTAN has seen this one. [*][I]Entanglement[/I] - There is a special-case code section that handles the hole in the ramp for TOTAN. Being special-case, this code is not used by other parts of the software. [*][I]Difficulty[/I] - In this case, the fix was able to be made quickly...[URL=http://pinballarcadefans.com/showthread.php/1992-Bug-Compilation?p=29920&viewfull=1#post29920]in 5 minutes[/URL], actually. [/LIST] Now let's look at something more interesting - the flipper quantum tunneling phenomenon: [LIST] [*][I]Severity[/I] - Not game-breaking, but close to it - each time the bug occurs, the player loses the ball. [*][I]Frequency[/I] - Some players report this happening all the time, others rarely see it. [*][I]Reproducibility[/I] - Not reproducible at will. [*][I]Distribution[/I] - Almost everyone's probably seen it at least once, but again, some players only have problems rarely and others seem cursed with Swiss-cheese flippers. [*][I]Entanglement[/I] - The flippers are fired hundreds of times per game. Therefore it seems reasonable to assume that the relevant code is heavily accessed. [*][I]Difficulty[/I] - I'm not sure, since I don't have TPA's source code. Since the issue was acknowledged several months before a fix was announced, we can assume the fix was not easy. [/LIST] This is all very nice, but what does it mean for TPA users? Let's say that a new table is released - Attack from Neptune or something - and you're playing along in multiball and all of a sudden a ball gets stuck in a kickout and the attendant won't help. Cursing and swearing, you start a new game of AFN and reach multiball again, but the bug does not happen. Three more games and no bug, but during the fourth game the ball gets stuck again. You report the bug, but you wonder how long it will take to get fixed. Let's make an assessment: [LIST] [*][I]Severity[/I] - It quite clearly prevents the current game from continuing normally. [*][I]Frequency[/I] - You've seen it twice now in 6 games, so not 100%, but not at all uncommon. [*][I]Reproducibility[/I] - Hmm. You're not sure. So you play a few more games of AFN, and try to pay attention to what's going on immediately before the bug occurs...and also what occurs immediately before situations where the bug does [I]not[/I] occur (this is important!). Let's say you still can't reproduce the issue at will, but you notice that the problem seems to happen a lot more often when the ball goes into a kickout while the Jackpot animation is playing, and doesn't seem to be happening during other times. [*][I]Distribution[/I] - You browse the relevant sections of these forums and see that some users are reporting similar issues, but others haven't had any problems and are wondering what the fuss is about. [*][I]Entanglement[/I] - Not sure. It could be a problem with the kickout which is used by the table in various situations, or it could be a problem with the Jackpot sequence, which is used only in this particular multiball. [*][I]Difficulty[/I] - We have no idea, not having source code. [/LIST] We see that we have a relatively severe, relatively common bug - both factors that tend to lead to a high priority for a fix. We are not able to reproduce the bug at will, but we have a general idea of what may be causing it, so that's helpful. But we also see that not everyone seems to be having the problem, it's possible that the bug is in heavily-used code, and we don't really have a good handle on how difficult the fix will be. So we conclude that FarSight will likely start looking at this bug right away, but depending on the cause it might not be a quick fix, so we should not go ballistic if the bug is still present in the next update. Again, this is not the exact procedure FarSight uses. But hopefully this will give players an appreciation for what goes on behind the scenes when bugs are reported, as well as give them some way of estimating when a fix might be available. [/QUOTE]
Verification
Post reply
Members online
No members online now.
Latest posts
Z
Strategies.
Latest: Zaphod77
Apr 18, 2024
WHO dunnit (1995)
Y
AtGames Legends pinball
Latest: yespage
Apr 15, 2024
Digital Pinball Cabinets
Master List of Issues: Pinball FX
Latest: Pinballwiz45b
Apr 13, 2024
Pinball FX (4)
We are back with a new site
Latest: Ian Longstaff
Apr 8, 2024
Other Pinball Games
Home
Forums
Imported content
Blogs
The Lust for Results
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.
Accept
Learn more…
Top