Is Angry Birds deterministic?

[BACK]
Is Angry Birds deterministic?
Posted On: December 21, 2022

While trying to get 3 stars on the more complex levels (the ones with a lot of destructible entities) I noticed that even after playing the same level over 50 times, doing always the same thing, I've never seen the same final result. Something always goes differently.


Does the same input always result in the same output, or is there a random factor in there?


Question from user Andreas Bonini at gaming.stackexchange.com.


Answer:

The algorithm is deterministic, but it's arguable that the overall result of launching a bird is effectively non-deterministic because it relies on (extraordinarily sensitive) user input.


To test the algorithm and the effect user input has on it, I used the following procedure:.


Load the Google Chrome version of Angry Birds.


Load level 1-1.


Pull the mouse back to a specific X-Y coordinate. (This was past the point of "full draw" for the bird.).


Release the bird, and wait for the game to reach a steady state.


To measure my X-Y coordinate, I opened a background Chrome window, and navigated it to this page. I aligned the two windows so that I could see the X and Y positions of the mouse while still able to cause something to happen when I released the bird. I aligned my mouse cursor with the lower left hand corner of the box around these two numbers, and then released. I noted the position of my mouse cursor then (as the display only updates when the mouse is not released and the cursor is over that window) and then noted the resulting score in Angry Birds. If you're having issues with exact mouse positioning, you might try an accessibility option offered by your OS, for instance, Mouse Keys on Windows.


I got the same score, so long as my cursor was in the exact same spot as it was on previous iterations.


Prior to coming up with an enhanced test rig that allowed me to measure my cursor's position to the pixel, I ran this experiment about 10 times, using a reference point in the background image of the game. I got scores by firing the first bird that varied between 8,000 and 11,000 points. Using the enhanced testing strategy, if I was off by a single pixel, I could expect score differences of anywhere between 150 and 500 points. .


I will note that the cursor was beyond the edge of the game area, outside the browser window, far beyond the maximum distance the bird can be drawn back, and I still noticed differences when moving my cursor even a single pixel. .


Further, I took screencaps for an extreme case where my cursor was on a different monitor than the game window, and ran several iterations where I kept my cursor in the same location, or moved it slightly. By my calculations (based on measuring distance from screencaps) the game was able to create a different result (score 32960 vs 31520) based on a one pixel difference in height (544 vs 545 pixels) over a distance of approximately 1,284 pixels of width. This works out to be an angular difference of 0.03 degrees.


I'd say that for any practical purposes, you can expect to employ the same general strategy on the same level repeatedly and expect wildly varying results. The level of sensitivity in the controls is so extreme that there's no practical way to get it to do the same thing twice. This is exacerbated by the fact that if you're playing on a touchscreen, it would be extraordinarily difficult to reproduce the same movements down to the individual pixel.


Answer from user agent86 at gaming.stackexchange.com.



[BACK]
Is Angry Birds deterministic?
Posted On: December 21, 2022

While trying to get 3 stars on the more complex levels (the ones with a lot of destructible entities) I noticed that even after playing the same level over 50 times, doing always the same thing, I've never seen the same final result. Something always goes differently.


Does the same input always result in the same output, or is there a random factor in there?


Question from user Andreas Bonini at gaming.stackexchange.com.


Answer:

The algorithm is deterministic, but it's arguable that the overall result of launching a bird is effectively non-deterministic because it relies on (extraordinarily sensitive) user input.


To test the algorithm and the effect user input has on it, I used the following procedure:.


Load the Google Chrome version of Angry Birds.


Load level 1-1.


Pull the mouse back to a specific X-Y coordinate. (This was past the point of "full draw" for the bird.).


Release the bird, and wait for the game to reach a steady state.


To measure my X-Y coordinate, I opened a background Chrome window, and navigated it to this page. I aligned the two windows so that I could see the X and Y positions of the mouse while still able to cause something to happen when I released the bird. I aligned my mouse cursor with the lower left hand corner of the box around these two numbers, and then released. I noted the position of my mouse cursor then (as the display only updates when the mouse is not released and the cursor is over that window) and then noted the resulting score in Angry Birds. If you're having issues with exact mouse positioning, you might try an accessibility option offered by your OS, for instance, Mouse Keys on Windows.


I got the same score, so long as my cursor was in the exact same spot as it was on previous iterations.


Prior to coming up with an enhanced test rig that allowed me to measure my cursor's position to the pixel, I ran this experiment about 10 times, using a reference point in the background image of the game. I got scores by firing the first bird that varied between 8,000 and 11,000 points. Using the enhanced testing strategy, if I was off by a single pixel, I could expect score differences of anywhere between 150 and 500 points. .


I will note that the cursor was beyond the edge of the game area, outside the browser window, far beyond the maximum distance the bird can be drawn back, and I still noticed differences when moving my cursor even a single pixel. .


Further, I took screencaps for an extreme case where my cursor was on a different monitor than the game window, and ran several iterations where I kept my cursor in the same location, or moved it slightly. By my calculations (based on measuring distance from screencaps) the game was able to create a different result (score 32960 vs 31520) based on a one pixel difference in height (544 vs 545 pixels) over a distance of approximately 1,284 pixels of width. This works out to be an angular difference of 0.03 degrees.


I'd say that for any practical purposes, you can expect to employ the same general strategy on the same level repeatedly and expect wildly varying results. The level of sensitivity in the controls is so extreme that there's no practical way to get it to do the same thing twice. This is exacerbated by the fact that if you're playing on a touchscreen, it would be extraordinarily difficult to reproduce the same movements down to the individual pixel.


Answer from user agent86 at gaming.stackexchange.com.



[BACK]

I have just discovered the devs gave Scratch his own tent I have just discovered the devs gave Scratch his own tent

Posted On: April 28, 2024
Question from user SmartTransformingAce at BaldursGate3 at reddit.com.Answer:I have well over 1000 hours in this game - and have only just discovered this.Answer from user SmartTransformingAce at Bald...[More]


YO-KAI WATCH 2: Fleshy Souls - What donuts should I pick? YO-KAI WATCH 2: Fleshy Souls - What donuts should I pick?

Posted On: March 19, 2023
Right at the beginning of the game you are asked to choose between Soul Donuts and Spirit Donuts. Does this have any actual affect on the game? Does it matter what you pick? Question from user user...[More]


Can I salvage my Kerbal Space Program career with a single launch? Can I salvage my Kerbal Space Program career with a single launch?

Posted On: April 17, 2023
My KSP career has stagnated. I can't get enough income from contracts to cover my launch costs. My per launch costs to LKO and back are 20-30k depending on payload size. Is there any way to get in...[More]


Today I learned Today I learned

Posted On: August 29, 2023
That you can simply kill a dugbog by slicing its tongue. Question from user BoosterSeat3 at HogwartsLegacyGaming at reddit. Answer: Yeah! If you keep your eye on the dueling feats, they usual...[More]


This happened when giving Karlach a soul coin in Act 3 This happened when giving Karlach a soul coin in Act 3

Posted On: November 13, 2025
I recently posted about a scene that happens if you have Karlach consume a soul coin after transforming into an Illithid. It was requested I provide a video, so after far too much frustration to get t...[More]


Is there a minimum amount of Zen that I should offer to buy on the dilithium exchange? Is there a minimum amount of Zen that I should offer to buy on the dilithium exchange?

Posted On: January 20, 2023
I offered to buy ~20 Zen for 500 dilithium per zen on the exchange, but it hasn't been picked up yet. Is that because the exchange is now "broken" and exchanges take forever, or is it be...[More]


Why do I need at least 30 Splatoon3 wins to earn the relative special weapon badge? Why do I need at least 30 Splatoon3 wins to earn the relative special weapon badge?

Posted On: April 16, 2023
According to Splatoon wiki:. If a player wins a match with a special weapon a certain number of times, they obtain normal, silver and gold badges. The number of required wins are 30, 180 and 120...[More]


lost my honour mode run in the most embarrassing way ever lost my honour mode run in the most embarrassing way ever

Posted On: January 17, 2025
So, here I am. .I have just defeated the emerald grove or whatever it's called and am now looting the empty goblin camp. It's really dark so I walk with a torch equipped in my hand and see some crate...[More]


Lost connection in clan war attack Lost connection in clan war attack

Posted On: July 3, 2023
I just finished deploying dragons in a clan war attack when the connection was lost. Looking at the replay, I see that the server only registered deploying the first few dragons, which resulted in ...[More]


Lae'Zel death Lae'Zel death

Posted On: March 15, 2026
Acabei de eliminar os membros da Absolute na ponte, aqueles com o dragão e que matam mercenários com o Punho Flamejante, mas quando fui verificar os corpos, Lae'zel estava morta entre eles, e eu nem...[More]