Thomas Jentzsch Posted February 1 Share Posted February 1 (edited) Paddlefield - The eternal battle between day and night, good and bad Following the cool suggestion in this thread, I started developing my own Atari 2600 version of Pong Wars. Which should not only become a screensaver but also a game. Developing the main kernel provided some challenge and fun. It is a space optimized (ROM has to stay within 4K, so no large tables!) 1LK, which has one single cycle free. I like it. To have more control (editing) and feedback, I decided to create my own topic in this forum. Features and instructions: Fire button ends and starts game, enters select mode and the next select option ("Platinum Couch Compliant" ) ~553,000 game variations (NTSC), displayed using icons. To enter the selection mode, turn the paddle to the very right and then press fire . By moving the paddle left or right and back to center, you can select/change an option. Press fire to continue. If the selected option has multiple choices, the background color of the selected option changes. You can now change the choice for the option. Fire returns back to the main selection. Options: Continue (works like exiting a pause mode; note: changing the board option resets the game) Restart (resets and starts a new game) Players (CPU vs. CPU, Human vs. CPU or Human vs. Human) Controls ( ball steering only, paddles without ball steering, paddles with ball steering, paddles with ball stopping). To steer the ball, move the paddle significantly up or down after the ball has hit your own border (w/o paddles) or your paddle. The steering lasts until the ball hits a border or is returning. In mode, press and hold fire to stop the ball at your paddle and move the ball with it. Speeds (15 combinations), left (bright) player's speed <= right (dark) player's speed, a slower left speed can act as handicap. Board (12 variants) Bright color (16 (NTSC) or 13 (PAL) bright colors) Dark color (16 (NTSC) or 13 (PAL) dark colors) When using a PlusCart (or an supporting emulator), the selected game variation is saved. It will be used as default when loading the ROM the next time. Goals: Reach opposite border or xx (xx = 30..60, depends on selected ball speeds) extra cells. xx is reduced by 1 every 4.25 seconds, so the game will have a winner after a limited time. The number of cells missing for winning is displayed at the bottom. An arrow pointing left (bright side) or right (dark side) indicates which player is leading. Game over tunes and color brightness changed depending of which side won Slight randomness, each run is different Note: By default the game starts in screensaver mode (CPU vs. CPU) and at maximum ball speed. Make sure to reduce the speed when you start playing the game. As always: Feedback welcome! Paddlefield (NTSC) V0.95.binPaddlefield (PAL60) V0.95.bin Spoiler PongWars_V0_1.bin PongWars_V0_2.bin PongWars_V0_3.bin PongWars_V0_41.bin PongWars_V0_5.bin PongWars_V0_6.bin PongWars_V0_61.bin PongWars (NTSC) V0.7.bin PongWars (PAL60) VPaddlefield (PAL60) V0.95.binPaddlefield (NTSC) V0.95.binPaddlefield (NTSC) V0.95.binPaddlefield (NTSC) V0.95.binPaddlefield (PAL60) V0.95.bin0.7.bin PongWars (NTSC) V0.8.bin PongWars (PAL60) V0.8.bin PongWars (NTSC) V0.81.bin PongWars (PAL60) V0.81.bin PongWars (NTSC) V0.82.bin PongWars (PAL60) V0.82.bin PongWars (NTSC) V0.83.bin PongWars (PAL60) V0.83.bin PongWars (NTSC) V0.84.bin PongWars (PAL60) V0.84.bin PongWars (NTSC) V0.85.bin PongWars (PAL60) V0.85.bin Paddlefield (NTSC) V0.90a.bin Paddlefield (PAL60) V0.90a.bin Paddlefield (NTSC) V0.91.bin Paddlefield (PAL60) V0.91.binPaddlefield (NTSC) V0.92.bin Paddlefield (PAL60) V0.92.binPaddlefield (NTSC) V0.93.bin Paddlefield (PAL60) V0.93.binPaddlefield (PAL60) V0.94.binPaddlefield (NTSC) V0.94.bin Edited 16 hours ago by Thomas Jentzsch 22 Quote Link to comment Share on other sites More sharing options...
Albert Posted February 1 Share Posted February 1 This is such a cool idea for a game, and it's also just interesting to watch as it is right now. I really love the simplicity and challenge. Another thing you could do is periodically change the color palette? I'm sure there are many interesting pairs of colors that would work well. ..Al 3 Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted February 1 Share Posted February 1 Reminds me of my game Upp where if an enemy projectile breaks a bonus the walls re-grow. You've taken that general concept further here. I really like it! 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 1 Author Share Posted February 1 48 minutes ago, Albert said: Another thing you could do is periodically change the color palette? For a reason, or just for the show? 48 minutes ago, Albert said: I'm sure there are many interesting pairs of colors that would work well. Sure. Quote Link to comment Share on other sites More sharing options...
Silvio Mogno Posted February 1 Share Posted February 1 Cool! Just one question: I was expecting a symmetrical work because balls start from symmetrical points, but they go asymmetrical very soon. Why? Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 1 Author Share Posted February 1 (edited) 23 hours ago, Silvio Mogno said: Cool! Just one question: I was expecting a symmetrical work because balls start from symmetrical points, but they go asymmetrical very soon. Why? I suppose that's the result of the processing order. Also the right ball usually covers more space on average. Maybe I should experiment... Yup, that's it. Nope! It depends on the horizontal crossover point between adjacent cells. We are working with even numbers (cells, ball), so there is a point, where the ball overlaps two cells by exactly 50% each. Whether the left or right cell is swapped determines which side receives an advantage. Edited February 2 by Thomas Jentzsch 1 Quote Link to comment Share on other sites More sharing options...
Albert Posted February 1 Share Posted February 1 19 minutes ago, Thomas Jentzsch said: For a reason, or just for the show? Just for show to make it more interesting visually. ..Al Quote Link to comment Share on other sites More sharing options...
+littaum Posted February 1 Share Posted February 1 I really like how you can somewhat influence the trajectory of the ball - it reminds me a lot of Video Pinball (where I thought nudging the ball around the field was the best part of the game). 1 Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted February 1 Share Posted February 1 I would suggest going more in the direction of "Pong". Using the missiles (variable height?) as bats controlled by the joystick. If you loose your ball it starts from the bat after a time penalty, so it is an advantage for the opponent. 2 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 2 Author Share Posted February 2 (edited) 8 hours ago, Al_Nafuur said: I would suggest going more in the direction of "Pong". Using the missiles (variable height?) as bats controlled by the joystick. If you loose your ball it starts from the bat after a time penalty, so it is an advantage for the opponent. That would require a kernel which supports: 1LK asymmetrical playfield two sprites two missiles reading two paddles Even with massive use of space (padding 0 bytes) this is beyond what a stock 2600 can handle. Cycles: playfield (4 * 7 = 28) sprites (2 * 8 = 16; lda(),y + sta ZP) missiles (2 * 8 = 16; lda(),y + sta ZP) paddles (2 * 8 = 16) loop (9; dey; ldx BlockIdx,y; bne .loop) That's best case (without unrolling) and requires 28 + 16 * 3 + 9 = 85 cycles. And even unrolling will not help here. Turning the display 90° would hep, but then the block area would become vertically very small. Edited February 2 by Thomas Jentzsch 1 Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted February 2 Share Posted February 2 3 hours ago, Thomas Jentzsch said: That would require a kernel which supports: 1LK asymmetrical playfield two sprites two missiles reading two paddles Joystick? Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 2 Author Share Posted February 2 22 minutes ago, Al_Nafuur said: Joystick? I don't think that would work. You would need fast and precise reaction. Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted February 2 Share Posted February 2 23 minutes ago, Thomas Jentzsch said: I don't think that would work. You would need fast and precise reaction. it depends on how big the bats are and how fast they move. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 2 Author Share Posted February 2 Just now, Al_Nafuur said: it depends on how big the bats are and how fast they move. You can make them larger and fast, which will allow you to hit the ball easy enough. But for targeting, you would have to be able to hit the ball at a certain area of the paddle. With a joystick and fast movement, this is not possible. 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 2 Author Share Posted February 2 Next update (V0.4, see 1st post). This one has quite some differences: added game variations (8) and display them using icons: computer vs computer (endless, no sound) human vs computer (multiple speed combinations) human vs human (two speeds) added randomness, now each run is different defined goals (opposite border, +/- xx cells) added a game over display (screen turns brighter or darker, depending on which side won) added multiple color combinations (as requested by @Albert) removed controls of the horizontal speeds There are quite some parameters (speeds, required cells for winning, colors...) which will need tweaking. Some testing and feedback is definitely required. Notes: I removed the horizontal speed controls to make the game more Pong/Breakout like. Also I found this option quite stressful. There is no AI for the computer opponent. To be able to match a human player, the computer simply gets more speed. At least for now a human can also control the computer 4 Quote Link to comment Share on other sites More sharing options...
Albert Posted February 2 Share Posted February 2 Excellent, I will try this new version out. ..Al 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 2 Author Share Posted February 2 (edited) Another update: V0.4 had a severe bug with the controls. V0.41 fixes it. Edited February 2 by Thomas Jentzsch Quote Link to comment Share on other sites More sharing options...
CapitanClassic Posted February 2 Share Posted February 2 11 hours ago, Thomas Jentzsch said: You can make them larger and fast, which will allow you to hit the ball easy enough. But for targeting, you would have to be able to hit the ball at a certain area of the paddle. With a joystick and fast movement, this is not possible. The way it is handled in games like Air Hockey (GBA e-reader) is that pressing the button moves you at turbo speed. Normal movement is more precise. 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 3 Author Share Posted February 3 (edited) Next update (V0.5, see 1st post) Differences: changed the score display, it now shows the remaining gap of the leading side to the game's goal increased player control effect added multiple initial board layouts (see screenshots below) mode selection now used joystick (left/right: game variation; up/down: board layout) fire button starts game or enters select mode ("Platinum Couch Compliant" ) fullscreen display - I did some research regarding the VBLANK length and it seems that it is neither required by digital displays nor by modern CRTs. So I keep the screen always enabled. Please let me know if you experience any problems nevertheless (e.g. screen rolls). Edited February 3 by Thomas Jentzsch 7 Quote Link to comment Share on other sites More sharing options...
+ZeroPage Homebrew Posted February 3 Share Posted February 3 9 hours ago, Thomas Jentzsch said: fire button starts game or enters select mode ("Platinum Couch Compliant" ) Your Platinum Couch Compliant TM certification has been approved by the board. - James 5 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 4 Author Share Posted February 4 V0.6 is only a minor update which adds tunes (one for good and one for bad) when a game is won. Currently the game is still 2K. I need some feedback about its current gameplay to know into which direction I should continue. 1 Quote Link to comment Share on other sites More sharing options...
Albert Posted February 4 Share Posted February 4 18 hours ago, ZeroPage Homebrew said: Your Platinum Couch Compliant TM certification has been approved by the board. This is definitely something I will be paying attention to going forward with games. Most especially being able to start a game using a button on the controller, versus having to hit the Reset switch. But being able to select game options as well from the controller is ideal where possible to do so. ..Al 3 Quote Link to comment Share on other sites More sharing options...
Zoyx Posted February 4 Share Posted February 4 I like the idea of this becoming a paddle game. Assuming I am interpreting earlier posts correctly, that may not be possible? Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted February 4 Author Share Posted February 4 3 minutes ago, Zoyx said: I like the idea of this becoming a paddle game. Assuming I am interpreting earlier posts correctly, that may not be possible? Only with compromises like flicker. Which I would like to avoid. Also, the game would probably need a neutral area, where both balls can pass through. Which means it would need a third color here. Or the opponents ball only needs to reach a border, which is between both player paddles. This would have to be made visible somehow. As of now, I do not see a good solution for paddles. Quote Link to comment Share on other sites More sharing options...
+sramirez2008 Posted February 4 Share Posted February 4 20 hours ago, ZeroPage Homebrew said: Your Platinum Couch Compliant TM certification has been approved by the board. - James This needs to go on the box. 😉 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.