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
Windows 10 Edition support + whopping stack of inventory/hotbar bug fixes #1621
Before we begin
I would like to ask for the approval of AT LEAST 4 reviewers before this PR is merged. This is a BIG update. I also would like testers from every platform if possible - Android, iOS, Windows, GearVR (If I missed any here, feel free to correct me).
This PR has been a long time coming. But finally, it's here. Windows 10 Edition support, plus a gigantic stack of inventory and hotbar fixes all round.
Credits (apart from myself)
I owe thanks to @extremeheat for his P.O.C. patches for Win10 Edition. The FloatingInventory concept came from there, as did the concept for the Win10 crafting fixes. The original patches can be seen here.
Windows 10 Edition
Things all devs should be aware of
Reason to modify
Support Windows 10 Edition Beta, Gear VR Edition and fix all of the bugs mentioned above.
Tests & Reviews
This update has been in testing for weeks. I've changed a LOT of things for this, and it's impossible for me to test every tiny little thing. I have however done very comprehensive testing and I believe that this update is now ready for production use.
Please review things below
I would like to require the approval of AT LEAST 4 reviewers before this PR is merged. As I said, I've made a LOT of changes, and it's impossible for me to test every device. I have tested primarily on Windows 10 Edition and PE (Android). I'd like to ask for iOS testers and also Gear VR testers.
Let the reviewing begin!
Looking good so far, no major issues I've encountered. The issue where some items don't appear until the client opens the inventory persist from what I've seen. Probably an issue with how W10E handles ContainerSetContentPacket's hotbar mappings.
Still have to look into how vanilla servers send the crafting data but I can imagine the wrong recipe IDs being sent are just client-sided issues.
Looking far good, I can test this if I have free time
On Aug 9, 2016 3:04 AM, "extremeheat" firstname.lastname@example.org wrote:
@extremeheat I've noticed that myself, but only on player join. I have however discovered something else since I made this PR that may fix the issue.
As for crafting, there are a variety of server-side problems with crafting that I believe would cause it. My next job is a total crafting rewrite.
Incidentally, I recommend deleting your
Gave a decent run at it tonight. So far, so good. A real solid piece of work.
However one easily reproducible error, but likely trivial for the time being, has to do with equipping items from the creative menu if they preexist within the inventory. Sometimes, usually within the first few slots, two adjacent slots fill with said item.
Another quick review when my girlfriend's up to help test out another variety of transactions and gameplay between iOS and Android.
@dog194 Lots of improvements all round, not just for Win10. I rewrote various things and the results are rather incredible.
@dktapps I reset the .dats because I saw what you said. I then install the branch and everything was working okay. Then my friend came to test and he was able to join the first time and then he relogged and every time he went to rejoin the server would reboot. I reset his .dat file again and it started working
@dktapps I'll ask you more regarding slots on Mattermost; it's trivial at the moment.
I have thoroughly tested chests, anvils, and enchanting tables, and can only say this is a far-cry better than the present state of master. Just about any errors that come with it are trivial compared to the power at which it functions over the present production model.
I was able to produce a duplication with chest transactions. It can be reproduced but its not necessarily an easy one to do so. Anti-cheat makes no difference.
As for Anvils and Enchantment Tables transactions, I found zero fault in the current function paradigm. Simultaneous transactions caused zero issues with anti-cheat off or on.
Finally, a solution for all our hotbar woes! There's not a lot I can say I haven't already on this note. It functions right. The way it should. It got a fairly good shake down and I can say without a doubt, if merged on the fixes for the hotbar alone, new bugs would be tolerable. (see my comment above)
To summarize, most, if not all, of our transaction issues seem to be fixed with these changes. Functions well on multiple interacting platforms and errors and debugs are at a minimum (sometimes an anvil, not renamed, debug pops up, but most times the item still ends up renamed). I, personally, give this a strong plus one.
Tested. Further testing required for new fixes.
OS and versions