Releases: iika-a/Pong
Releases · iika-a/Pong
v1.2.3 - Update Checker & No Java Install
Pong 1.2.3
I feel like a lot of people ignore the installing Java portion of running the game. Now, you don't have to! Just run the files for your respective OS and play the game! Also, the game automatically checks for updates now.
Changelog
Update Checker
- The game asks GitHub for the latest version. If the version does not match, it prompts the user to update the game.
- 2 buttons are on the update menu.
Exit:
Exits the game.Open GitHub:
Opens GitHub in your browser to the latest release.
No Java Install
README.md
has been updated to reflect the new changes. However, running the game is pretty intuitive so it might not even need to be read.- I tried making a Linux version of the game, but my Linux server, being aarch64 and not x86_64, messed up many ChatGPT responses on making a Linux port. This led to me giving up for this version. However, I will try to add Linux ports in future attempts.
v1.2.2
v1.2.1
v1.2.0 - New Collision System
Pong 1.2.0
I created a new collision system for the game, decoupling it from the rendering logic. I added a few stuff and fixed a few bugs along the way. Hopefully, I can start working on online mode now!
Changelog
Collision System
- Contains all the collision logic rather than combining it with rendering logic
- Allows for easier handling of collisions and creating new collision types
- Implements a newly created interface for collisions
Other
- The game is now 1920x1080 instead of 1280x720
- Removed obstacleList, obstacles are now stored in gameObjectList
- gameObjectList and powerUpList are now CopyOnWriteArrayLists instead of ArrayLists
- Created a package structure for each class
- No more persistent "main ball" in gameObjectList, all balls are treated equally
- Ball angles are now allowed to be in quadrant 3 along with quadrant 1
Bugfixes
- Fixed paddle y-position not being initialized correctly, causing incorrect calculations
- Fixed geometry errors with the ball, causing it to flip randomly
- Fixed index errors when clearing gameObjectList, leaving some objects behind
v1.1.0 - New Game Loop
Pong 1.1.0
I revamped the game loop system to replace the old Swing Timer, which most likely broke the game on Macs as they run differently. A few extra features and bug fixes were also added.
Changelog
Game Loop
- (Basic) proprietary game loop system instead of using a swing timer
- Game frame rate is fixed at 240 FPS instead of inconsistently around 1000
- Ball now continuously accelerates instead of speeding up every second
- Velocity and acceleration are measured in pixels/second instead of arbitrary numbers
Other
- Balls now spawn randomly along the center horizontal line of the screen instead of always at the center.
- Game Loop runs on a separate thread to the rendering thread
- Switched rendering system from Graphics to Graphics2D
- Game object instance variables are now doubles
Bugfixes
- Power Ups now take effect immediately
- Fixed compatibility issues with Macs due to the old timer system
- Fixed choppy gameplay caused by old framerate
- Fixed rounding errors that happened with the game objects due to reliance on rounding Doubles into Ints
- Fixed ConcurrentModificationException when picking up a Power Up at the same time another one spawns
v1.0.0 - Initial Release
The first version of the program submitted as APCS Portfolio Project #1.