Pixel Tennis Changelog
Pixel Tennis Changelog
This topic serves as a kind of public changelog.
There was much more text here with me rambling about stuff that was not finished and that everything was work-in-progress. Well, several years later, I finally can get rid of it
There was much more text here with me rambling about stuff that was not finished and that everything was work-in-progress. Well, several years later, I finally can get rid of it
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Database
Verified a way to use the forum account credentials to log into the gameserver.
Networking P2P
Revised player state synchronization to reduce delays on the local client.
Gameplay
Score system implemented which determines points for the certain player. The score is currently handled internally and not visible as there is no UI. Fixed serve-ball-hit-ground-target-position
Verified a way to use the forum account credentials to log into the gameserver.
Networking P2P
Revised player state synchronization to reduce delays on the local client.
Gameplay
Score system implemented which determines points for the certain player. The score is currently handled internally and not visible as there is no UI. Fixed serve-ball-hit-ground-target-position
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Database
Created SQL database model
Gameplay
Added advanced moves and skillshots (see viewtopic.php?f=2&p=162)
Created SQL database model
Gameplay
Added advanced moves and skillshots (see viewtopic.php?f=2&p=162)
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
UI
Menu system for login and character selection added. Lobby and Room system basics implemented.
Menu system for login and character selection added. Lobby and Room system basics implemented.
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Networking P2P
More tests on P2P networking - fails on my system when UPnP is disabled. Error handling and fallback connections required.
Network Gameserver
First test with externally hosted gameserver made. Success!
More tests on P2P networking - fails on my system when UPnP is disabled. Error handling and fallback connections required.
Network Gameserver
First test with externally hosted gameserver made. Success!
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Networking P2P
Revised P2P networking to check connectivity before actually loading the match. Makes sure that all clients successfully loaded the match scene before starting it.
Revised P2P networking to check connectivity before actually loading the match. Makes sure that all clients successfully loaded the match scene before starting it.
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Network Gameserver
Added ingame chat (lobby, room, room team)
UI
Added room team chat
Added ingame chat (lobby, room, room team)
UI
Added room team chat
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
3D Modeling and animation
Added basic (really basic) player animations for running and jumping towards ball
Added basic (really basic) player animations for running and jumping towards ball
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Database
Interface implementation for main functions like reading character data and item handling by BoneD.
Added account verification based on forum login
Interface implementation for main functions like reading character data and item handling by BoneD.
Added account verification based on forum login
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Networking P2P
Improved exception handling on connection loss.
Network Gameserver
Rewriting complete server/client logic to make it independant from Unity core for performance and resource usage reasons on server side.
Improved exception handling on connection loss.
Network Gameserver
Rewriting complete server/client logic to make it independant from Unity core for performance and resource usage reasons on server side.
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
UI
Fixed player states (ready, master) when room changes (player switch slots, room details updated etc).
Return to room after match ends.
Network Gameserver
Rewriting database validation and replaced engine for better performance
Fixed player states (ready, master) when room changes (player switch slots, room details updated etc).
Return to room after match ends.
Network Gameserver
Rewriting database validation and replaced engine for better performance
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Gameplay
Added sound for ball hit and miss
Added music to menu and courts
Added sound for ball hit and miss
Added music to menu and courts
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Network Gameserver
Complete network communication protocol rewritten. All changes lead to a 4x performance increase at about 1/10th of data usage!
The old logic worked still good enough for the game server, but...
Networking P2P
... Pixel Tennis multiplayer will switch from UNet peer to peer to a semi authoritative server. This means, that the server needs to process a lot more data making the mentioned network optimizations mandatory. You can read the reason for the switch here.
Complete network communication protocol rewritten. All changes lead to a 4x performance increase at about 1/10th of data usage!
The old logic worked still good enough for the game server, but...
Networking P2P
... Pixel Tennis multiplayer will switch from UNet peer to peer to a semi authoritative server. This means, that the server needs to process a lot more data making the mentioned network optimizations mandatory. You can read the reason for the switch here.
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Networking P2P
Starting to develop custom replacement methods for UNet's build in functions. This includes, object spawn handling, message handling on object base and smooth player position synchronization across a match hosted on the semi authoritative server.
Although, this does not have any visual effect, it requires a lot work and refactoring (more than 500 lines of code added/changed in the past 2 weeks). Thanks Unity's UNET deprecation...
Starting to develop custom replacement methods for UNet's build in functions. This includes, object spawn handling, message handling on object base and smooth player position synchronization across a match hosted on the semi authoritative server.
Although, this does not have any visual effect, it requires a lot work and refactoring (more than 500 lines of code added/changed in the past 2 weeks). Thanks Unity's UNET deprecation...
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Networking P2P Gameplay
Switch from UNet peer to peer to a custom network implementation is mostly done. Pixel Tennis' match networking logic will now run through a dedicated server located in Germany.
Pros:
- Increased network compatibility as no direct connection (port forwarding + firewall madness) is required anymore
- Better protection against client manipulation
- Restored compatibility to future Unity Engine versions
Cons:
- Increased server load
- Players connecting far away from the server location will experience higher pings as before. However, additional dedicated servers at different countries can be established later if required.
I learned very much about message handling, serialization and networking in general. Although this task required so much work and did not bring new features, it was still a very important step towards Pixel Tennis' future.
Switch from UNet peer to peer to a custom network implementation is mostly done. Pixel Tennis' match networking logic will now run through a dedicated server located in Germany.
Pros:
- Increased network compatibility as no direct connection (port forwarding + firewall madness) is required anymore
- Better protection against client manipulation
- Restored compatibility to future Unity Engine versions
Cons:
- Increased server load
- Players connecting far away from the server location will experience higher pings as before. However, additional dedicated servers at different countries can be established later if required.
I learned very much about message handling, serialization and networking in general. Although this task required so much work and did not bring new features, it was still a very important step towards Pixel Tennis' future.
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Website / Forum
"Secretly" upgraded the hosting contract for pixeltennis.de for more space and performance
Database
Changed database engine back to MySQL for better maintainability and performance
Improved and simplified database layout
Networking Gameplay
Moved more gameplay logic from client to server side to prevent client side manipulation
Fixed all player now return back to their room after finishing a match
Networking Gameserver
Added version validation on client login to notify if there is an update available for the game
Leveling System
Prepared character creation and skill point assignment on server side including validation. Big thanks @BoneD!
Gameplay
Reduced slice speed by 10% as it was to effective on online matches
Fixed smash indicator not disappearing under certain conditions
"Secretly" upgraded the hosting contract for pixeltennis.de for more space and performance
Database
Changed database engine back to MySQL for better maintainability and performance
Improved and simplified database layout
Networking Gameplay
Moved more gameplay logic from client to server side to prevent client side manipulation
Fixed all player now return back to their room after finishing a match
Networking Gameserver
Added version validation on client login to notify if there is an update available for the game
Leveling System
Prepared character creation and skill point assignment on server side including validation. Big thanks @BoneD!
Gameplay
Reduced slice speed by 10% as it was to effective on online matches
Fixed smash indicator not disappearing under certain conditions
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Website / Forum
Added separate Contribute page to honor everyone who contributed to Pixel Tennis.
Added separate Contribute page to honor everyone who contributed to Pixel Tennis.
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Leveling System
Added exp and level distribution after match.
Network Gameserver
Prevent multiple logins with the same account.
Fixed chat messages in a room not reaching the first player
Added logic for sending/managing private messages between characters*
Added logic for creating/deleting characters*
Added logic for distributing skill points to characters*
*Currently only available on server side. Client still needs to provide a UI and the corresponding calls to make them available.
Menu Navigation / UI
Implemented nested prefabs to greatly improve UI structuring as Unity finally supports it in their LTS releases.
UI handling and instantiation rewritten based on a best practices menu system design. In numbers: These UI changes took about 20 hours to complete and resulted into a change of about 30k lines of (mostly generated) source files.
Remember logged in username between sessions
Fixed some UI elements being invisible on certain screen/window resolutions
Again, a big thanks @BoneD for helping out on the gameserver side!
Added exp and level distribution after match.
Network Gameserver
Prevent multiple logins with the same account.
Fixed chat messages in a room not reaching the first player
Added logic for sending/managing private messages between characters*
Added logic for creating/deleting characters*
Added logic for distributing skill points to characters*
*Currently only available on server side. Client still needs to provide a UI and the corresponding calls to make them available.
Menu Navigation / UI
Implemented nested prefabs to greatly improve UI structuring as Unity finally supports it in their LTS releases.
UI handling and instantiation rewritten based on a best practices menu system design. In numbers: These UI changes took about 20 hours to complete and resulted into a change of about 30k lines of (mostly generated) source files.
Remember logged in username between sessions
Fixed some UI elements being invisible on certain screen/window resolutions
Again, a big thanks @BoneD for helping out on the gameserver side!
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Menu Navigation / UI
Added UI to distribute skill points to a character
Added UI to distribute skill points to a character
Somehow related to an online tennis game.
Re: Pixel Tennis Changelog
Menu Navigation / UI
Added character creation UI
Added settings UI for controlling screen resolution, visual quality and audio volume
Gameplay
Adjust framerate based on the screen refresh rate
Added character creation UI
Added settings UI for controlling screen resolution, visual quality and audio volume
Gameplay
Adjust framerate based on the screen refresh rate
Somehow related to an online tennis game.
Who is online
Users browsing this forum: Majestic-12 [Bot] and 1 guest