Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Enhance Entity Physics Calculation #897
This pull request tries to solve the problem that entity trajectory is glitchy, especially when the player breaks a block and the item drops.
The major problem is, in GlowEntity.pulsePhysics(), only one case of the formula is used. According to Wiki, there are actually two cases used on different entities.
This issue caused the server-side trajectory of many entities differ from the client-side trajectory. The glitchy happens when after the client animated the anticipated trajectory of the second tick, the server sends a different location of the second tick. The difference is significant enough that the client has to "glitch" the entity to the location the server sent. Because for each tick, the anticipated location and the server-calculated location is different, the client has to "glitch" every tick.
You are right. I was thinking about this but did not have a chance to verify. It's looks more obvious when you say they can cancel out like in real life.
added a commit
this pull request
Apr 16, 2018
Actually, I'm not 100% sure I'm right, because the discrete-step nature of the physics model may cause artifacts that I'm not aware of. For example, if terminal velocity is overshot on one tick, then it will be undershot on the next. Hopefully the amount of overshoot or undershoot goes to zero asymptotically, but I'm not 100% sure that's the case; maybe there are period-2 attractors.
Thank you for your valuable contributions to the project so far
In addition, we'd like to invite you to join our Discord server, where you'll be granted the Developer role. Thanks!
Hello, momothereal. After carefully considering your invitation, I decide not to join the Glowstone Project organization. My reason is, as I'm becoming a Junior in Software Engineering with heavy course works in the next semester, I will not have enough time to fulfill my responsibility as an active developer on Github. Therefore, I appreciate you giving me a chance to step up from a contributor, but I just don't want to see the moment I have to step down because I can't do much in this project.
We as a team, Glowminers, chose Glowstone as our project for the
That being said, it is time for the team to say goodbye to Glowstone. The class gave us a chance to do real contribution on GitHub and we are glad to see, at the end of this semester, the difference we made to GitHub and Glowstone. We will make contribution to Glowstone individually but not as a team. In all, we will recommend Glowstone to the students in
As a CompSci student as well I concur about the course load
Membership inside the Glowstone project does not imply any responsibilities when it comes to time spent, activity, contributions, etc. Members of the project are trusted for their own discipline, code quality, and for understanding the core goal of the project. That said, we understand if you prefer not carrying the title for personal reasons. However, we're always open if you decide to change your mind! :)
Again, thank you for your exceptional work, and we're looking forward to hearing from members of your team in the future!