BC I CANT STAP WORKING ON KAHOOT(they wont let me) so I'm speeding up the lag update stuff and TEMPORARILY moved lag server to main(I can revert easily) even though it's not fully coded.
Technically it's "playable".
Here is what works:
1.) Fast terrain load
2.) Delta Updates
3.) Bandwidth Optimization
4.) Render updates
5.) Chat
Here is what needs work:
1.) Postponed updates
2.) Update fusion
Q: WHy DId thIS TaKe sO lOnG AaRON?
A: Very complicated math and cringe.
C(complaint): iT'Z sTiLL lAgG; U WaSTeD A mOntH 4 NoThInG:
A: This lag update heavily reduces bandwidth per message and the server-side work to send that data. Obviously if the internet is bad enough there is absolutely nothing I can do. I'm trying to do as much as possible to fix lag. The update is only partially implemented. There are 2 more things that will have a big impact on lag so just wait. Here is what we currently have.
The delta updates and bandwidth optimization mentioned earlier reduce the size of messages.
For example:
Instead of sending health and max health variables for invincible blocks sending nothing since their hp can be inferred by type(Bandwidth Optimization)
Don't send any values if they haven't changed(Delta Updates)
Round floating point numbers to prevent 28.00000000001 from causing lag(Bandwidth optimization)
Use the id of entities to infer what they are instead of having a laggy bandwidth
If there is no info of a certain type, send absolutely nothing, not even a blank array []
And here is what the planned updates will do:
If your internet randomly downgrades to my home internet's 8kbps(I have screenshot proof) then instead of overloading your websocket once you get a breath of internet again, it will drop the messages and then send you what data you missed in a new socket. This prevents you from watching a fricking movie when you are lagging and just instantly get you back to real time.
The server will send as fast as your client can handle. For those who have 0 ping gaming PCs, the server will be able to send messages so quick that you can actually react. For those who can only handle 3 messages a second, your PC won't explode, although you will only get 3ups, so 3 fps gameplay :(
Here are the known bugs:
Death effects don't work [need to be recoded]
Death in general is buggy [idk]
Grapple lets you pass through the multiverse and somehow causes client side gui error [idk, lotta debugging]
Entities leaving your render distance don't unload [Have to code new update handler, fairly difficult]
AI doesn't work at all(haven't even edited the file yet lol) [effort required]
Sometimes things just don't load(chunkload overwriting bug) [I have a plan to fix this though]
Sometimes entities just don't unload [same as previous]
Joining the game crashes if some ever disconnects [FIXED]
BC I CANT STAP WORKING ON KAHOOT(they wont let me) so I'm speeding up the lag update stuff and TEMPORARILY moved lag server to main(I can revert easily) even though it's not fully coded.
Technically it's "playable".
Here is what works: 1.) Fast terrain load 2.) Delta Updates 3.) Bandwidth Optimization 4.) Render updates 5.) Chat
Here is what needs work: 1.) Postponed updates 2.) Update fusion
Q: WHy DId thIS TaKe sO lOnG AaRON? A: Very complicated math and cringe.
C(complaint): iT'Z sTiLL lAgG; U WaSTeD A mOntH 4 NoThInG: A: This lag update heavily reduces bandwidth per message and the server-side work to send that data. Obviously if the internet is bad enough there is absolutely nothing I can do. I'm trying to do as much as possible to fix lag. The update is only partially implemented. There are 2 more things that will have a big impact on lag so just wait. Here is what we currently have. The delta updates and bandwidth optimization mentioned earlier reduce the size of messages. For example:
Here are the known bugs: