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]

What do you use Luxury gemstones for in Slipways? What do you use Luxury gemstones for in Slipways?

Posted On: June 24, 2023
Starting a new game, I got a Gemstone Asteroids modifier. I quickly found the a gemstone asteroid and managed to mine it. But I can't figure out what they are good for? Question from user DJ...[More]


Super Mario Bros. Wonder: Jet Run II is impossible Super Mario Bros. Wonder: Jet Run II is impossible

Posted On: November 8, 2023
I don't get this level. I've died like 50 times jumping only once. I've looked at walkthrough videos and they all seem to be jumping in the air somehow like they have double jump or someth...[More]


Did they have to go so overboard with the Hogwarts woke-ness? Did they have to go so overboard with the Hogwarts woke-ness?

Posted On: July 8, 2023
It's a fun game (even though I can't help wishing they could have made it more like a GTA- hogwarts..that would be amazing ), but ffs why did they go sooo over the top making every second char...[More]


Shiny Unicorn in Hogwarts Legacy Shiny Unicorn in Hogwarts Legacy

Posted On: July 18, 2023
I have a shiny unicorn!! Super proud of myself cuz I’ve never found one before. Not sure what to name him? Question from user oogieboujie at HogwartsLegacyGaming at reddit. Answer: I fo...[More]


Anyone know what this is in Hogwarts? Anyone know what this is in Hogwarts?

Posted On: July 4, 2023
Question from user wessel3050 at HogwartsLegacyGaming at reddit. Answer: Woah! This is a rare one. Count the legs (as they are different per occurrence) and then return to deek, 1 to 1200 intera...[More]


What Hogwarts House Did You Pick and Why? What Hogwarts House Did You Pick and Why?

Posted On: June 16, 2023
In the movies, (I didn’t read the books) it only really shows Gryffindor and Slytherin, Ravenclaw and Hufflepuff houses aren’t mentioned that much. . Primarily the ones who picked Huffl...[More]


Most efficient way to tile budding amethyst? Most efficient way to tile budding amethyst?

Posted On: March 5, 2024
While it isn't possible to place, craft, or move budding amethyst in vanilla, many mods allow the player to do one or more of these things. Assuming that the player is able to freely place budding ame...[More]


BG3 is very fun, but exhausting to play. BG3 is very fun, but exhausting to play.

Posted On: November 11, 2023
OK, so I'm a bit late to the BG3 hype, but decided to give it a try and I'm really enjoying the game. My issue is: this game has insane amount of choices that aren't very clear and I en...[More]


In Farmville, Can I make friends with people who arent my social media friends? In Farmville, Can I make friends with people who arent my social media friends?

Posted On: May 25, 2023
I want friends! Friends seem awesome! I have a couple through people I know on Facebook, but not a lot of people I know are playing this game. Can I make friends any other way than connecting my socia...[More]


Miraak is stealing all my dragon souls Miraak is stealing all my dragon souls

Posted On: January 15, 2023
After reading the book Waking Dreams and seeing Miraak, I couldn't absorb a dragon's soul. I killed more than 10 dragons and Miraak took all the souls. Is this supposed to happen? Question ...[More]