Just wanted to report that I've had a successful early multiplayer test. I logged into the server with my local machine. I then used tethering through my phone to have my other computer logged into my server through my remote IP. Lastly, a friend of mine logged in from his computer.
Lag was very minimal (I actually didn't notice any, but I'm local). We flew around. He deleted 2 blocks and I saw it on my screen. Overall, a successful test :]
One thing I haven't addressed is world syncing. He came into a world that was different than mine. When the player comes onto a server, they'll need to be updated with all the changes/structures before they can start playing.
I'm currently on the 2nd milestone. I've decided that generating the world is going to be left on the client side. I think it would be too much work for the server to constantly generate asteroid locations around every single player connected. Instead, I have several hashing techniques in mind so I can make sure that all the player worlds are similar.
Adding/deleting blocks has been completed. I have the packet builder complete and I've been utilizing it. I've decided that the floatingItems can stay on the client side.
Next thing I have on the list is to sync up the worlds between players. After that, syncing up player inventory and passing in more player information. You currently can see a player standing on a block and the block being slowly eaten, but you can't tell the player is drilling. You can't see the thrust that the player is using. All that needs to be sent to the server.
After all that, I'm going to actually add bullets before the next milestone. That will leave adding structures as the only player interaction left.
Anyway, I'm progressing well :] This is actually more fun than I thought it would be, heh.
Until next time ~
Lag was very minimal (I actually didn't notice any, but I'm local). We flew around. He deleted 2 blocks and I saw it on my screen. Overall, a successful test :]
One thing I haven't addressed is world syncing. He came into a world that was different than mine. When the player comes onto a server, they'll need to be updated with all the changes/structures before they can start playing.
I'm currently on the 2nd milestone. I've decided that generating the world is going to be left on the client side. I think it would be too much work for the server to constantly generate asteroid locations around every single player connected. Instead, I have several hashing techniques in mind so I can make sure that all the player worlds are similar.
Adding/deleting blocks has been completed. I have the packet builder complete and I've been utilizing it. I've decided that the floatingItems can stay on the client side.
Next thing I have on the list is to sync up the worlds between players. After that, syncing up player inventory and passing in more player information. You currently can see a player standing on a block and the block being slowly eaten, but you can't tell the player is drilling. You can't see the thrust that the player is using. All that needs to be sent to the server.
After all that, I'm going to actually add bullets before the next milestone. That will leave adding structures as the only player interaction left.
Anyway, I'm progressing well :] This is actually more fun than I thought it would be, heh.
Until next time ~
No comments:
Post a Comment