mojira.dev

Tres Finocchiaro

Assigned

No issues.

Reported

MC-183779 NPE Bootstrap Exception 20w19a -> 20w20a Duplicate

Comments

Finally, give this information to your sister, have her choose Multiplayer >> Direct Connection on her minecraft client. Type in the IP and Port in this format: ip:port  So for example if your IP was 192.168.1.50 and the port the LAN world is hosted on is 3187, you'd have her type 192.168.1.50:3187

Very true.  My kids (5, 8, 12) are shouting port numbers daily to each other.  We have to issue static IP addresses and place labels on the PCs so they know the IP addresses to connect to.   I guess the upside is that Mojang is helping my children learn IPv4 networking.  Thanks for that at least. 😉

Just wanted to put it in writing that this bug was marked resolved 10 hours ago.  I don't see it specifically mentioned in the comments so I wanted to mention it.  I see a lot of people asking if it'll be fixed in the next release and since there are a lot of people running the snapshot, I think it's a fair question to ask.  Adrian, is it safe to assume this fix will land on the next snapshot?  I was going to offer up some specific details about the various machines (some brand new Macs) that this occurs on but I'd rather hold off if it's purported as fixed.

 

To keep this bug report on topic, can I ask that issues related to Two-Zero-Bee GitHub please be placed in the Two-Zero-Bee bug tracker. This is a Mojang tracker and should be treated as such.

To that point, 20w20b is now released (under previous URL) and available for immediate download https://www.minecraft.net/en-us/article/minecraft-snapshot-20w20a.

Note the comment at the top...

Edit: We've now released 20w20b to fix a bug.

 

For what it's worth, I've tried to figure it out on mac-- messing with interface priority, etc, but there doesn't seem to be a consistent correlation where I can this working. I believe there is a logic, I just can't figure it out experimentally.

 

I'm a Java developer, and finding the primary interface 99% of the time is as simple as reaching to an internet endpoint and binding to that NetworkInterface instance.

The fact that this is a regression is particularly frustrating as the Mojang team already has the working code available. 

Thanks. Yeah the problem as I understand it is the touchbar has it's own active network interface which increases the chances of the problem occuring.

> There are tools to change interface priorities

Can you provide some information on this? MacBook Pro with touchbar can't see lan about 50% of the time.

Gábor,

I tried your solution to add the default route for multicast, and it didn't seem to help.  For Mac the commands were:

sudo route delete 224.0.0/4
sudo route add -net 224.0.0.0 -netmask 240.0.0.0 -device en0

But it does not fix the problem for the one client – MacBook Pro – that fails to see the Minecraft LAN server.  The MacBook Air (with IPv4 workaround) and Windows 10 Dell XPS can connect but the MacBook pro cannot unless it is using the direct connect option. 

I have three Macs and none of them can play a LAN game out of the box.

For each computer and for each Minecraft version (e.g. snapshot versus latest) we must go into the launch options and configure -Djava.net.preferIPv4Stack=true

I've outlined my struggles with this process here: https://gaming.stackexchange.com/a/320864/199492

At the time of writing this, it has 10 upvotes, so this fix is very important for the Java Edition on Mac to be usable.

But that's the good news.  The bad news is that I've recently purchased a 2017 MacBook and the above workaround has stopped functioning.  I believe it's due to this bug MC-98598.

In all cases I've seen where the multicast traffic is actually getting to the client, the only time the game doesn't show up is when there's other network interfaces (or ipv6 interfaces) involved. True you could disable them, but people have legitimate needs for multiple interfaces (Wifi/wired docking stations, VPN interfaces, etc). So maybe the best way is to just listen for 224.0.2.60:4445 announcements on all available (or up) interfaces.

This is my fear... The MacBook pro appears to ship with iBridge interface (en5 on my machine) and I have a feeling it's conflicting as I've done all of the standard troubleshooting that's worked on the other Macs.  Interestingly enough, this en5 has no option to disable.  A reddit forum states it's used for the touch-bar and keyboard, so forcing it off may be a bad idea anyway.  https://www.reddit.com/r/MacOS/comments/8bzk6k

I determined iBridge using the following command:

cat /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist | grep en5

Which returns (scroll to the far right to see iBridge)

<string>en5</string>
			<string>IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/XHC1@14/XHC1@14000000/HS03@14100000/iBridge@14100000/NCM Data@5/AppleUSBNCMData/en5</string>

Direct connection technically works as a viable workaround but it's not a practical workaround since the server port changes each time we fire up a LAN game.

Perhaps some logic could be added to try to locate the "internet" interface?  https://stackoverflow.com/questions/8462498

I'm very interested in seeing this bug to completion and if needed, offering testing and debug logs to the developers.