Skip to content

Beer Pong: Post-Mortem


Beer Pong

Alright this was sitting in my drafts on my blog for months now, (I’ve actually made a game AND a post-mortem for it, int he time I’ve been putting off posting this.)

So, Beer Pong Post-Mortem! It’s been too long so I’ve probably forgotten things so I’ll just throw some things out.

The hardest part of this game was the ‘bounce’ concept, of having the ball bounce off the table. I’m no math wiz, so I basically calculated an area by using four points on the screen, (the 4 corners of the table…). After a little figuring of stuff out, the ball checks based on it’s position between these four points, as well as how long it’s been flying. Scaling the ball a bit made it look like it was moving away from you. In the end, it worked out for the most part, although sometimes the angles near the back left and right don’t seem to map properly. The ball seems to stay on the table for longer then it should, or it looks like the ball is being held up by some invisible walkway. Think the scene in Indiana Jones, where he’s taking the leap of faith, only less grails.

The first tricky part of the game was creating the ‘throwing’ concept. It got me to look really closely at how we interact with games. We wanted to avoid meters of any kind, that are usually used in these kinds of ’sporty’ games. Meters tend to makes the game more into a strategy and twitch game, about your reaction time against the meter, and not as organic as we wanted. Looking back, it would have made this many, many times easier but such is game design. So, starting out, I figured that I had a few different kinds of control inputs as to how you could launch of the ball: Both axis of the mouse (up-down, and left-right), the speed of how ‘hard’ you drag the mouse down, and then any button clicking.

–The way I set things up, the release speed could determine how fast the ball went across the table, which meant that you had to have the bounce bet set to a static number. This means the ball bounces the same height each bounce, but it goes across the table faster or slower, depending on how ‘hard’ you throw it.

–Or the release speed could determine how high the ball bounces, but that meant that I had to set a constant speed for it traveling across the table. In other words, no matter how fast or lightly you released the ball, it would go across the table at the same speed, but would either bounce high, or not at all.

Without the use of meters or another ‘input’ you only have control of two out of the three elements. This ended up being a frustrating problem as well because it was hard to literally talk about and hard to describe.

We fixed this situation by making the release bar. You drag the ball over the release bar to release it. It assured that the user gets the feeling that the ball is being released in generally the same area, which allowed me to be able to assume more things about how fast and far the ball could go. It also meant that you could drag the mouse over the release bar going rather slowly and the ball would just fall limp-wristed to the table. This technically took care of one of the three variables above, so it then allowed for the bit of control that made things feel ok again.

The decision to make the table move and sway, according to how drunk you were, was made later on into production, and was very tricky to implement. Making a conceptually static area for balls to bounce off of was fairly easy, but having it move around means I had to re-calculate the ‘bouncing surface’ every frame. Huge pain in the butt. It’s just one of those things that you hope you know when you start out, because it’s much easier to implement before the fact then after the fact.

I had hoped to make more and realistic sound effects; I actually went out and bought the red party cups, and a pack or two of ping-pong balls to record that completely tell-tale ‘clucthhh’ sound. It’s so satisfying, when you nail one of the cups and it makes that lovely sound… I figured that kind of thing was the level of polish that would make the game stand out. Alas, deadlines kept that from happening as I wanted.

Play the game here!

In my research, I’ve found that Beer Pong has lots of interpretations and house rules.

Game design aside, I found some fun and funny things while doing research into the specifics of the game.

People have designed programs to help track games:

Nalsoft RuitLeaguer is an innovative and powerful statistics-recording program for Beer Pong or Beirut leagues. Its power, professional quality, and intuitive ease of use ensure that it will remain unrivaled among Pong statistics software.”

These guys even made up a version using Ramen.

Other games like Quarters, where you bounce quarters off a table into cups, and Power Hour, where you take a drink every minute for 60 minutes. Looking around at stuff about Power Hour, I found some innovative programmers have developed several music players that assist you in playing the game. Mainly, they change songs every 60 seconds, to queue you to drink!

Finally, there’s an entire association people have made to facilitate beer pong tournaments. The American Beer Pong Association of America

Related posts:

  1. Beer Tapper Gone Wild: Post Mortem
  2. Gambling: Pong Slot Machine Pays Out More With Pong Prowess
  3. Skate Tokyo! & Post Mortem
  4. Peggle » Fun-Motion
  5. Suburban Hobbyist Puts New Spin On Beer And Pizza
blog comments powered by Disqus