Counter-Strike: Global Offensive is a popular online multiplayer military first person shooter where two teams fight over demolition zones. I have turned this game into a physics based pinball arcade mini-game using melons as the ball. "Why a watermelon?" you ask, well, it's the only prop in the game that is large enough not to pass through walls and round enough to bounce and roll properly (also the squishing sound it makes is really funny!)
The first board shown is the first attempt at a pinball game, the goal is to hit as many circular targets as you can with 3 melons (4 if you get the extra life in the top right corner). Each target can only be hit once, and hitting "target pairs" will give you bonus points at the end of the game when you run out of melons. The scoreboard is currently not working in this version of the source engine (last time I played this was 2014 and it hardly worked then either).
The second board here is the far superior 2 player continuous pinball experience. In this game you have team pumpkin vs team melon, orange and green (I figured red vs blue was too boring). This version plays much more like a pinball arcade, with a timer twist! Your goal is to get as many points as possible within 3 minutes before the game stops and a winner is declared. You have unlimited melons this time and the only penalty for draining down the gutter is a 3 second waiting time. Unlike the first board, here you can hit the same targets as many times as you can hit them. Point values are as follows: the small white dots around the boarder are 5 points each time you pass through it, the twin bumpers near the paddles and the five circular bumpers near the top are worth 10 points each bounce, and the three diamonds at the very top are worth 100 points each.
During the 3 minutes of playtime the board changes in different phases of play. Phase 1: play the game normally with no bonuses. Phase 2: after a minute of play 10 thin pins will emerge from the gray diamonds in the lower area of the board, hitting a pin will give you 100 points once per pin and a glow will indicate it has been hit. Phase 3: those same 10 gray diamonds will change into letters that spell "WIN JACKPOT", each letter you hit once will give you 100 points each, you can only unlock the letter after you hit the corresponding pin. Phase 4: Multi-ball! You only have 30 seconds left to fill in those letters before the game is over and you get two extra melons. Phase 5: Final score! After 3 minutes the board explodes and the game stops. If you unlocked all 10 pins, and then hit all 10 "WIN JACKPOT" letters you will be awards 1,000 extra bonus points on top of your score. This can lead to some very dramatic endings, as the flickering lights make seeing the scores difficult until the end. The bonus points are awarded after a slight delay to further build suspense. "Did I hit that last letter in time? Will 1,000 points be enough to win? Did my opponent miss their jackpot?".
All music and sound effects can be heard in-game using the game's sound effects and music. The layout of the board was changed heavily over a period of time to be as fast and fun as possible, the addition of two smaller top paddles made a big difference in high skill play as those 100 point diamonds can be hit multiple times.
The artwork and textures were made from scratch and the "graffiti" style overlay is an in-game texture and has different art depending on the angle of view. Also, if you don't have a friend to play with locally, you can toggle "auto mode" on either P1, P2, or both sides to let a bot play in their place. The bot works by enabling a melon detector near the paddles and swings after a brief delay. It might miss some of the faster falling melons, but it is very reliable at increased game speed (up to 16 times normal speed making for some very interesting lightning pinball rounds that us humans can't keep up).
The controls for the game are very simple, A & D for player 1's paddles and Left Arrow & Right Arrow keys for player 2's paddles. To run properly you have to input many commands to ensure that cheats are on, the game type is correct and to extend the timer. The way the keyboard inputs work is in the console commands, you simple "bind" a key to the corresponding "activator". The paddles here work as rotating doors that open and close very quickly. So by pressing "A" that means "ent_fire paddle_p1_L open" (entity door: target: paddle: player 1: left paddle: swing then retract).
Lastly, yes, it is completely possible for the four digit score display to roll back to 0000 and start again! (Can you believe it only took me 3 months to make these in source SDK?) It's interesting that I had more fun playing my own melon pinball game than playing Counter-Strike: GO!