Angry Birds, Physics, and Random Chance
  • Does your score depend on physics or random chance? Only Rovio knows, but lol with that. Some scores seem to depend entirely on “luck,” but that may not mean random chance. Obviously, there is a lot of skill and experience involved, but we have all tried the “same” shot endless times, with a different result each time. There could be random numbers in the code, or the “random” outcomes could be caused by our inability to control the shot to the precision required for exact duplication.
    I hate random outcomes, so I vote for the outcome being entirely determined by physics, and that Rovio has not perversely added a random numbers. We know that the birds themselves obey the laws of physics, even if they do live on a different planet (Wired series about the physics of Angry Birds: http://www.angrybirdsnest.com/forum/discussion/600). My fingers are blundering behemoths on the Angry Birds’ planet, so it is difficult to make precisely the same shot twice. Sweet spots could be pixel-sized variations in the physical properties of the objects, and they could have a direction to them that requires they be hit at exactly the right angle. Enough difficulty can be introduced into a physics-based game that there is no need for random variables. I sure hope Rovio believes this.
    I will try to send this to Rovio, but I doubt they will answer. Maybe Slim or BL could get an answer from their contact(s)?
    More info:
    AB uses Box2D (http://box2d.org) as its physics engine (in the credits). According to Box2D FAQs, Box2D does not use any random variables, and is deterministic for a given platform. Results may vary for different platforms. Rovio might have added random variables, but why? There is way more than most of us want to know about how Box2D works in the users’ manual. Not clear if my comments above on sweet spots are consistent with how Box2D works.
  • 40 Comments
  • Ultimately it is the skills that differentiate players.
    We're all given the same set of cards when playing.
    The top scores are pretty consistent I would say.
  • A person can get "randomly" lucky and end up with a top score, but in general, the players who have the highest score in a given episode or app got there by determination and skill.
  • I did send this question to Rovio. They answered the previous question, sent mid Jan, last week, early Feb, so it looks like at least a 2 week wait (seemed much longer than that). Slim and BL -- Did either of you ask your contact(s) at Rovio???
  • Ask them about what? If they built "random chance" into the app? Even if they did, no developer would ever admit to it.
  • You may be right. I did ask them if there was random chance involved. Will see if they answer. I also told them some users were frustrated by the seemingly random outcomes (which could be unattainable degrees of precision).
  • Twitter answer from Rovio is "Squawk! A bird never tells" : (
  • I think that there must be some parameter that may make Angry Birds at least *seem* random.

    My proof for this is that some levels experience collapse without ever shooting a bird and those same levels also exhibit stability without ever shooting a bird. We've all seen this... A level that maybe once in 10 tries will exhibit some sort of collapse on its own when the other nine times no collapse happens.

    Because no birds are shot, this necessarily means that either 1. there is some randomness to at least some levels or 2. There is some parameter that can affect a structure before ever shooting a bird, such as wind, or a slight difference in initial block or pig placement.

    If I had to guess, I would assume the latter is the case based on my observation that spontaneous collapse is more common if a level has ice blocks. Because of their lower coefficient of friction (they're slippery), the slightest deviation in the initial placement of the ice blocks can escalate into slippage and collapse. (if you look carefully... Just after starting most levels, you'll notice the pigs "settle" into the structure. Sometimes this causes them to roll left or right and/or nudge a block so that no two starting structures are ever exactly alike... If that block is an ice block, then spontaneous collapse is more likely).

    No matter the reason, the fact that the same level can have slightly different beginning layouts (including spontaneous collapse) before ever shooting a bird means that randomness is a factor, whether actual or perceived via some parameter that affects these levels in a way we are not privy to).
  • The largest randomizer is perhaps the finger controlling the slingshot. Without the ability to measure angle or position with a repeatable and reliable standard, say X/Y coordinates on a pixel scale, every pull of the slingshot is but an approximation of any example given on any level. Thus, as merely rough copies, different users will achieve different results with what SEEMS to be a good replication of the shot.

    I haven't played with the Box2d physics engine yet, but reading some of the documentation has been enlightening. Just about every variable you can think to apply in a 2d space has been accounted for with specific limits, which can be adjusted by the end programmer. Exceeding certain value ranges on certain program sprites can lead to a slight derangement of the program as it calculates destruction levels and point totals.

    Levels that require, or seem to require very specific angles, locations and bird arcs, represent where the programmer has tightened up some of the allowable ranges for specific reasons. Some are strategic in nature, and some are programmatic, to accomplish what the game designer had in mind. And some are simply accidental.

    AB is a case of random elements (i.e., YOU) driving the physics. What the game designer and programmer have done is to set up initial conditions from which all else follows.
  • @Truck Driver -- What is your answer to loox? He seems to have a very valid argument for random variables, maybe not in the physics, but in the initial condition.
  • @AMslimfordy Have you solved the equations yet? lol just kiddin'
  • Not a whole lot there, though it looks confusing a first glance. Most of that you learn in a first-year high school physics class: velocity, acceleration and path of a parabolic projectile, work exerted on/by an object, etc.
  • @loox - I agree that each structure appears to be released from some form of suspension at the time it is started, then settles into starting position. Not sure why this would not result in the same action each time though, unless the programmer has allowed for a number of potential release points (Left to right, right to left, center to edge, edge to center, etc.) or if each block is allowed to move a few pixels in either direction before being released. I have also noted that wood structures tend to bounce more than those made of other substances. These variables would change the overall characteristics of some of the more complex structures more than some of the simpler ones. So the trick is to make the perfect shot for the specific layout that is provided.
  • Why would Rovio not acknowledge whether there was "random chance" programed into the game or not. What difference does it make to us/the players in them not letting us know?
  • @Slim -- Do you want to answer Chicadee? I agree with her / him.
  • I don't think any game programmer would admit to designed randomness (with the exception of obvious circumstances). Programmers pride themselves on logic and consistency.

    That said, I don't believe there is any randomness to Angry Birds (again, with obvious exceptions such as the designed randomness of awards in AB-Facebook).

    In terms of 0-bird levels, or "Rube Goldberg" levels, I think natural variation occurs in all levels of all games. Structures are slightly suspended above the ground, and as they fall that 1 or 2 pixels, blocks must bounce and settle. Variation and randomness are not the same thing: Variation is expected; Randomness would mean a designed "random generator" counter, the result of which would determine what is going to happen.
  • @mvnla2 - Speaking as a former programmer myself, I consider the glitchiness at the beginning of certain levels is more programmatic, than in the physics. Mostly this is due I think, to coded variable and function initialization at the start of every level, including that of the Box2d engine. The physics engine may, or may not mesh well with the rest of the AB code, or it could be that the appearance of program sprites appears onscreen, and tries to take over before initialization is complete.

    The only way to be sure is to run a line by line debugging of the open (uncompiled) code at runtime, to see how the variables are behaving, but it is not likely that I'll get such an opportunity, as programmers, and the companies they work for, consider their open code to be proprietary, or even classified information, so I'm left with speculation.

    Having said that, no programmer worth his salt is going to fiddle with randomizing variable values, not just for the reasons that Slim gives, but mainly because such will cause eventual memory leaks, and destabilize the program, which could lead to freezes or system crashes.

    However, since that doesn't completely slice the prime problem, now we get to the physics. What we have, on those levels where things seem to go haywire on their own, with the characteristic bounce, is primarily a downward motion, resulting in compression of materials, which in their natural resting state would tend to resist such a force. In conservation of motion, energy and angular momentum, this compression would, all other things being equal, tend to dissipate in a direction directly opposite the initial one, which gives us our upward motion.

    There is some tendency towards lateral motion in this dissipation and settling, but generally not enough to overcome both friction and gravity, without some secondary force acting upon our material. It could be possible that, in the bounce, some elements of the pigs structure gets slightly dislocated, causing lateral pressure, thereby acting as our secondary force.

    Occasionally, this raises initial variables above their threshold values which register with the program, which has begun to take the necessary action, begetting slippage, then acceleration as certain structural elements start to move faster, until eventually being ejected. Now, as the load shifts, instability sets in, thereby allowing gravity to bring down the structure and begin the breakage as things start falling.
  • @TruckDriver, the drop observed in most levels is not a glitch, but simply due, imho, to the fact that the physics engine uses the MKS system ( Meters, Kilograms, Seconds ). AB uses pixels. The game code must convert those numbers so that they're useable by the engine using a conversion factor. Like most conversions, the result is never a round figure.
  • @sal9, I used the term glitch as it represents a concept understandable to the non-technical reader. You probably know the type I'm referring to - those with no interest in going "under the hood," so to speak, nor to listen to jargon laced explanations.

    As I stated earlier, I haven't gone completely through the box2d specs, put I plan to at some point, when I have the luxury of time to do so. Of interest here is the MKS/pixels conversion, which has to go both ways, from AB code values to box2d values, then back, as the engine output has to be converted into that which is usable by the game code.

    Given that, an argument can be made that the shakiness of any conversion, specifically one that creates unintended consequences, despite any relative rarity, can indeed be referred to, and considered as a glitch.
  • All the techno talk usually makes my grey matter hurt but I actually think I understand what you said TruckDriver. Basically the randomenss is a result of the old "lost in translation" and putting it that way, it makes sense. Therefore I believe what slim said re Rovio not deliberately putting the randomness in but that it just happens.
  • @Chicadee - I think we can call you correct, in essence.

    @sal9 - Chicadee seems to have demonstrated what I was talking about.

    One more bit of food for thought: Personally, I'd like to think that Rovio still has a programmer hammering away at these minor inconsistencies, but there is a point of diminished returns here. It is more economic, rather than being programmatic or scientific, but when does it become more expensive than it is worth to keep plugging away rather than saying that one has done enough and it's past time to leave well enough alone, and move onto other things?

    Perhaps there still is one programmer doing just that, and will keep at it, so long as Rovio management deems it worthy of the expense. I don't know, I don't work there, or know any of the personnel, other than as names on a credits listing.
  • What causes the variation? If people agree there is some variation in the starting conditions (a finite, non-random selection), don’t you think the choice of the starting conditions is random?
    I have written many programs to solve physics problems (but no game programs), and have a different perspective:
    Perhaps the term random is too technical. Speaking as a game player, not a scientist (which I am), I think having a number of different starting points to a level is what most people would classify as “random”, even if there are only 2 or 3. And what determines which of those 2 or 3 you get? So speaking non-technically, random = variation.
    @loox – I don’t think your basic proof has really been answered. I agree that differences in the starting conditions (pre-settling) would be easier to implement than adding a random variable generator to Box2D. There could be some small coefficient of variation to position / orientation, rather than variation added to physical characteristics. It would, however, help (me at least) understand what is going on in AB if you can remember specific levels where spontaneous collapse “randomly” occurs. I remember seeing these, but can’t remember which.
    @TruckDriver – Agree that the largest random variable is the user. Variation in the outcome of the initial settling is what most users would characterize as random. What causes the variation? Why would a program sprite appear at a different time? If a program sprite affects the outcome of a level, that would mean that timing is critical, and I don’t think most AB players consider that, except in levels where there is obvious motion (e.g. things swinging). Does Box2D have program sprites (I didn’t see them, but may not have looked carefully enough)? What do you mean by “derangement of the program”? I hope we are not at the level of machine error here, and not initializing variables properly is a programming error. I agree that no one would randomize starting variables, but they could add a small amount of randomization (e.g. variable*(1 + (0.01x random number from 1 to 10))).
    @Burbman – Your supposition that there might be a number of release points satisfies most game-players definition of random.
    @Slim – Agree that variation and randomness are not the same, but variation also needs to be programmed in. What determines the variation in the starting position?
    @Sal9 – The conversion might not be a round number, but it should always be the same (and I expect Box2D uses decimal figures).
    BTW Rovio still hasn’t answered my e-mail (they answered my tweet).
  • @mvnla2 - Most of your questions can be answered, in general terms, by the box2d manual. It goes into greater depth regarding such factors as polygons, restitution/friction, tunneling, collisions, edge-chaining, memory management, time-stepping, and several others.

    What I refer to as derangement of the program is when program variables return, for example, false nulls where there should be a real value, unexpected values, and/or those outside the range for proper conversion, among others, which cause the program to respond in an unexpected and/or chaotic fashion whose results lead to destabilization or crash of either the program, or the system as a whole. While we aren't at the level of machine error here, we are skating on mighty thin ice, programmatically.

    There is no randomization, as the box2d process relies on a precise time step equal to the standard video refresh rate of 60Hz, so events are occurring, each sequentially in 1/60th second intervals. Once specific elements come to rest, they are, quite simply, no longer accounted for, to save CPU cycles.

    Regarding sprites, I put them forward as a speculative possibility, as I have no access to the program code, or debugging methodology adopted by Rovio, thus I have no real data. This is also the reason I state above, that your questions can only be answered in general terms. Surely, if a Rovio programmer were to join this forum, he could bring as much specificity to the discussion as you could ever want, but we all can agree to the likelihood of that to happen hovers somewher in the ether between slim and none.

    Lastly, I've completely avoided user perceptions, due to the fact that my comments are along a more technically specific, programmatic framework. Not to be cold-hearted, or impersonal, but within that framework, without having a specific function in the programming, debugging and developmental testing arena, user perceptions decline in relevance.
  • @mvnla2 - all physical data of a level are saved in a finite number of decimals. Let's say one specific block is located at 3.562 meters from the left bound. In physical means, that is any value between 3.5615 and 3.5625 meters, so in the first try that could be 3.5618 meters, next time maybe 3.5624 meters (who knows?). These tiny differences can have big consequenses (the butterfly effect?).

    And BTW, the calculations in that pic are VERY wrong (with an accelleration of 9.8 m/s^2 the bird would fall upward for example)
  • @gfish -- Haven't done any programming on IPhones or IPads, but I have done a LOT of scientific programming. I would be surprised if IPhones, IPads or Box2D (the AB physics engine) are so different from "standard" computers running MatLab or Mathematica. Aren't these devices and the programs they run 32 bits? That's a lot of significant digits (even 16 bits is a lot). If a variable is initialized as 3.562 m, the computer program treats that as 3.562 m exactly to however many significant digits it is using. Unless the program is written so poorly that it looses significant digits and starts running into machine error, the variable should not be 3.5618 one time and3.5624 the next. A well-written scientific program (without any random number generators programmed in) should give precisely the same answer every time it is run with the same set of input variables. Of course, maybe the AB programs aren't that well written??
    I haven't checked the calculations in the pic, or even looked at them for longer than 2 seconds. I just thought it was interesting that the pic existed. The technical articles referenced above on the physics of the angry birds show that the physics of AB uses a different value for g, and has a few other differences compared to the world the rest of us live in.
  • New physics in SaT? Well, not really new physics, but maybe some new boundary / initial conditions that could make some levels even more difficult. SaT series 1 has waves; 2 has a waterfall, a river, and maybe wind; I bet 3 will have rain (maybe even thunder and lightening). Did Rio have waves? Haven't checked, and haven't noticed that the waves affect results so far. However, look at SaT 30 and that swing. Under some circumstances it continues swinging long after the pigs are dead, and even starts making larger motions. Only physics-based explanation I can think of is that there is some wind, possibly influenced by the waterfall. Introduction of weather should make for some very interesting, not to mention frustrating, gameplay.
  • Sorry. Thought the thread had died...

    Here is my answer to @mvnia2 and truckdriver...

    Mvnia mentioned in another forum for me to provide examples...


    Oh gosh, there are a whole bunch…

    From Seasons, Wreck the Halls 1-9 demonstrates the concept well as if you keep restarting sometimes the pigs will roll right and left and sometimes they remain still. It happens nice every 10 tries or so. If they don’t start rolling after like 4 seconds then restart.

    The easiest one to see this on is Seasons, Wreck the Halls 1-5. On this level one out of every 4 or so restarts will have the top tower collapse…. This happens slowly, but you can see whether it is moving and slipping after a few seconds… Then it starts to slip faster and collapse…

    Between Rio Seasons, and AB Original, there must be at least 50-100 levels where this happens.

    Oh and when spontaneous collapse happens, you will notice it is never the same.  Meaning sometimes a small part of the tower will collapse and yield little destruction and little points.  Other times the points from the destruction are astronomical.  A few levels can even be cleared with no birds.  So in support of randomness you also have to take into account how the scores from a spontaneous collapse are always different.

    Because something is different each time the level starts... The initial condirons, as it were.
  • @loox Thanks for the response. I am working on a reply (which I hope you like).
  • I know this was a couple of weeks ago, but @gfish I believe down was considered to be forwards, as if you look at the 'up' part of the projection, there is a - in front of the 9.8! TBH, I'd probably assign the directions the same, as gravity acts down (when considered locally, such as in this example)
  • Much has been said here with regards to random chance and the AB physics engine, but, with respects to all, I ain't buying today. Knowing what I know, I can't.

    User perception of a program at runtime is a metric of extremely limited value, since most of what occurs in AB, or for that matter, any software, is running under the hood, out of sight of any user. The mere appearance of randomness cannot be inferred as true randomness simply because we witness a behavior that we did not expect to see, or lack the ability to measure and quantify.

    Every element within the program is assigned specific values, for specific physical properties, in a simulated two dimensional space. Every interaction within that space occurs under defined constraints, at an exact rate of occurance, which far surpasses our human ability to even see, much less correctly process.

    Theoretically, similar elements on one of the game levels, for example a narrow board, should possess exactly the same set of values attached to it, as every other appearance of that same element. Initially, when each new level is designed, I have no doubt that each iteration of the same element are indeed possessing equal values. That brings us to the testing/debugging phase of the development process.

    Part of the rub is that each individual level is designed to be completed with its own specific method, with a defined range of end score point values to stars earned for that level. However, if testing reveals a problem with the levels as designed, then those values of the problematic element(s) are adjusted until they obtain the objective desired by the game designer.

    Then the levels are meshed with the rest of the game code which is again retested, to look for, then fix, any other problems that might have developed. Also tested is overall crashworthiness across all the end user platforms for which the game is designed/scheduled to be released and run on.

    Another part of the rub is that this process takes place over a span of weeks and/or months, and now, certain elements, despite visual similarities, might now have unequal values. Still another is that no testing regime is going to uncover every interactive flaw that can possibly occur.

    Lastly, the proofreading of program code is a difficult, tedious process, wherein mistakes or errors can be overlooked, especially if no overt problems are detected.

    This leaves us with a set of elements which started out equal, but through the design process, may in fact, no longer be equal by the time the program is released. This may be through design, compromise, or omission, but present nevertheless.

    Could this be the case with AB? Probably. In fact, almost certainly.

    Is it random chance? Unlikely. At least not within any definition of the concept that I've ever come across. It isn't even much of a concept, except as a sort of catch all to explain phenomena that we don't understand, or can't precisely quantify. The concept of random chance is insufficient to explain random chance. The pot cannot hold itself.
  • Thanks all for the useful discussion. Reluctantly I must admit that loox’s examples convinced me that for some levels there is a small variable component (possibly random) added to the initial positions of objects (would be worse if material composition also varies – shudder). Granted, a lot of the “random outcomes” are really skill and user interface limitations in duplicating exactly the same bird trajectories. Conversion between the initial image, defined in pixels, and the MKS coordinate system used by Box2D causes the settling noticed at the beginning of many levels. However, it is the variable component sometimes (?) added to the pixelated starting positions that sometimes causes some degree of variation in outcome. Even if the player could start all birds on exactly the same trajectory every time, the outcome could be noticeably different, depending on the size of the variable starting components and the construction of the level, i.e. placement of objects, engineering of structure, and material composition.

    I think loox’s examples of variable destruction before any birds are fired are conclusive. For Wreck the Halls 1-5:
    Partial collapse occurred ~20% of the time, with scores from 14.7K to 22K (average 18K), and with different pigs killed.
    ~10% of the time there was noticeable motion with no collapse (very small changes to so large I was positive it would collapse, but my patience ran out).
    These numbers do not prove the variation is random, although the distributions of intervals between occurrence and of outcomes would be more consistent IMHO with a random number generator than a fixed set of allowed variations. OK, the evidence is stronger for a random distribution of intervals than for a truly random variation of starting conditions, but…

    @Truck Driver: There are so many different opinions here… I agree with 99.9% of what you say. I for one, am not concerned with differences in material properties between levels, I would almost expect it. I am only talking about differences within a single level that vary from start to start. I really would prefer if there were no variations in starting positions within a given level, but loox’s examples have convinced me otherwise. Hope you agree. We clearly aren't going to know exactly what is going on without access to the AB code, but I think we can make some valid conclusions.



  • Finally! Someone gets what I've been saying!!!

    To make it clear one last time (because I think @truckdriver and probably others are making a subtle misinterpretation of my point): I'm not saying AB has randomness. Rather I am merely saying that because on the levels with spontaneous destruction, like AB: Seasons, Wreck the Halls 10-5, it is impossible to predict my score before throwing any birds (should be zero, but instead, and as @mvnla2 noted, its value changes). This is because the initial conditions differ every time.

    If you read my post carefully, I say that this makes AB *seem* as if there is a random component, when actually it is more likely a parameter (or variable) that we haven't yet perceived.

    Or it could be an actual random number generator, but (and I'm no programmer) I don't consider RNG's as truly random anyway since they have to be coded. Thus, they have to be based in some sort of algorithm with a changing variable, like time... But that's a whole different topic. The point is that if you can't predict the score of a level before throwing a bird, then something is going on that may as well be treated as random, because even though it's not truly "random", to the extent that you can't predict the score on WTH level 5 means that for our intents and purposes it can be argued that random chance is a factor (to name but one of many levels)... The rest is semantics. If this works in my favor, I think of it as good luck... Even though I don't believe in luck, per se. Call it anything you want, but this behavior is present in AB.

    @truckdriver, much has been said about random chance because that's the topic of this thread. In any case, I think we are actually both saying the same thing... You turned to the code to support the notion of a variable we don't perceive. I used the initial conditions of certain levels as proof. But we both seem to agree that something in the code is causing slight variations... Something that, as of right now, we don't understand. Whether its a result of the physics engine or a variable introduced by the programmers is irrelevant to the topic of this post, which is "does your score depend on physics or random chance?"

    I think that has been answered: it's physics, with a touch of what might seem like random chance, but is really a parameter, variable, coding or physics engine glitch that may as well be random because we can't control it or even pin down exactly what it is. Whether or not "random" is the technically correct word tor this behavior is irrelevant.

    Either way the end result is the same: even if one could duplicate the same exact shot, the results may differ because the structure may positioned slightly different (or even a lot different) when one restarts the level.
  • @mvnla2 - I don't know what conclusion we can arrive at which might be considered valid in the absence of data to lend support.

    @ loox - I think I've been arguing point number 2 in your original post. I used the nature of programming code to build an argument from what to me is familiar ground. I have been saying that no randomness exists in an area where multiple properties and actions have an attached variable value that is not null. Even on those levels where spontaneous destruction occurs, something is happening to set the program in motion, and it is a mistake to consider something as random, simply because we cannot identify, measure or quantify the root cause.

    As far as score predictability is concerned, on any given level, I might have a fairly good idea of the shots I wish to make to achieve a specific score, but it does not necessarily follow that I'm going to achieve it. My hand/eye coordination is a rough approximation given a precise x/y pixel coordinate value by the program, and if I fail to get the intended result, it isn't random, its just a mistake.

    That leads us as to whether or not a mistake is random or driven by other factors. I'm not going there, as I've done far more skating on the dangerously thin ice of tautology than I consider healthy.
  • OK, I started to say I may backtrack a little, but half a sentence later (deleted), backtracking doesn't make sense. We all agree that inability to precisely duplicate shots is not a random (or even variable factor in the sense we are discussing). When spontaneous destruction occurs, what starts the program in motion may not be random, but is sometimes variable. The programmed variation may not be random, but it is real.
    As to the absence of data, the statistics I provided above, and which can be added to (an exercise for the student) are real data. Data can be based on quantified observations rather than knowledge and study of computer codes.
  • @mvnla2 - the data you provided is what I consider to be anecdotal. If I were to consider just such a statistical universe, it seems to me that in order to have any conclusion drawn from such data to be meaningful, a few questions need to be asked. Thusly:

    1. How would you provide a control, and under what conditions?
    2. How verifiable is it?
    3. How repeatable is it?
    4. What would be an optimum sample size?
    5. Would it be OS and/or device specific?
    6. What would be the optimum number of levels, and from which version of the game?
    7. What would be the acceptable range of player ability?

    Now, I'm not suggesting dropping everything to launch a statistical study of AB, I'm simply laying out the parameters of just what I would require of such, in order to satisfy myself as to the validity of any such thing. Just as an aside however, it would be kind of cool if we could finagle sponsorship for such a project.

    Lastly, it seems to me that we have a question deserving an answer with as much specificity as we can bring to it, rather than simply building a consensus of opinion that something is happening, even though we don't know what it is, and can't quantify it. It is that measure of exactitude that I've brought to this discussion, as it is my normal practice, acquired over decades, to leave opinion to the realms of theology and politics. Certainly, I do not wish to be seen as sowing discord through intransigence here at ABN. In the final analysis, we all need to be occasionally reminded, myself included, that Angry Birds is a game, regardless of how seriously we tend to take it.
  • @Truck Driver: Like you, I am not looking for a consensus of opinion, just data. Considering a variety of opinions is useful to me in trying to distinguish between opinion and data.
    At the most fundamental level, all I am saying is that for some levels, the starting conditions vary from start to start. Since I personally only accumulated statistics on one level, Wreck the Halls 1-5, all I can claim is that it happens on that level (loox claims it happens on several, and I believe him/her). Why do you consider the data I collected anecdotal? Granted it’s not publishable in a technical journal, but it is real data non-the-less.
    Answers to your questions:
    1. How would you provide a control, and under what conditions? The idea of a control in experiments applies primarily to experiments on nature (where there are many unknown/unknowable variables). From Wickipedia: “The important thing is to try and control variables and attributes in the data so that the conclusions drawn are valid.”
    2. How verifiable is it? If you try to collect the same statistics on Wreck the Halls 1-5, I would expect you to get the same result (within experimental error).
    3. How repeatable is it? The statistical distribution of results should be the same within experimental error. Granted, I haven’t calculated the experimental error. I could, but please don't ask -- this isn't a technical journal after all.
    4. What would be an optimum sample size? Well, the larger the sample size, the more accurate the results, and the closer you would come to proving whether the variation was random or just some finite set of variations. My sample size was 40+, which I think is more than adequate for proving that there really is a variation in starting conditions on WtH 1-5.
    5. Would it be OS and/or device specific? Most likely, because Box2D says the results of their program are device specific. So we could modify my conclusion to apply only to an IPad, which is what I use. However, I would postulate that the existence of variation on WtH 1-5 would still be obvious on other devices.
    6. What would be the optimum number of levels, and from which version of the game? As far as I know, no one is saying that this variation in starting conditions occurs on every level or every version. All we are saying is that there are some levels where this occurs. I have personally only offered proof for 1.
    7. What would be the acceptable range of player ability? If you are looking at starting conditions, with no birds shot (which is what loox and I are talking about), player ability is irrelevant.
  • ABOS 2-3 Sometimes the closest large asteroid is stationary, sometimes it rolls clockwise and sometimes counter-clockwise.
This discussion has been closed. Please check the new forum.
← All Discussions
Post in the New Forum!