Trouble connection p2p on LAN (VASSAL 3.0 Linux)-Bug:1865688

We were trying to setup a p2p game of wilderness war on a LAN. We are using p2p because this LAN is blocked off from the internet and cannot access the VASSAL server.
Anyway, start up VASSAL. Both players load Wilderness module with same setup (Early War), each giving unique player name and password. When one person starts a local server by pressing the double arrow button, we see 1 in the Main room. Unable to make a new room. Invite a the other player on via ip:port. a new shows up in the Main room. Any attempt to message via server window or move a piece on the board results in a ClassCast exception.
Error log is empty except for version and OS information.

Are we doing something wrong?

I’ll try to reproduce. If I can’t reproduce, it could be something module-specific.

rk

Post generated using Mail2Forum (mail2forum.com)

Just tried this with several different modules and get the same behavior. There are a few differences:

– Tried “Look for a game online”

– Set up behind a firewall here.

Same results as posted above. I’m guessing the exception is on anything put ‘on the wire.’

It may be worth noting that the Invite Players dialog shows the current ip address of the firewall, and not the ‘host’ computer. It’s been a loooong time since I’ve done network programming, but I can see this as being either a symptom or the source of the problem.

Tried at home on a Windows LAN with Twilight Struggle and Wildnerness War. Same result.

I think the IP provided is correct - it’s your routers IP on the internet. Which would be the information if one were trying to connect via the internet. for a LAN connection you have look find your IP on your local network.

Yes, the IP address would be correct for a connection going to an external network. The dialog does show the computer’s correct address without any NAT/masquerading going on. Either way, the field for the address of the initiating/inviting computer can’t be edited. Only the invited computer.

Both server displays show 2 's. No board shows up on the invited computer. Any communication from either computer throws the ClassCastExeption, and the following in errorLog:

java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [LVASSAL.chat.Player;
at VASSAL.chat.peer2peer.P2PClient.sendToOthers(P2PClient.java:88)
at VASSAL.chat.peer2peer.P2PClient.sendToOthers(P2PClient.java:75)
at VASSAL.chat.HybridClient.sendToOthers(HybridClient.java:73)
at VASSAL.build.GameModule.sendAndLog(GameModule.java:642)
at VASSAL.build.module.map.PieceMover.performDrop(PieceMover.java:696)
at VASSAL.build.module.map.PieceMover.mouseReleased(PieceMover.java:687) at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at VASSAL.build.module.Map.mouseReleased(Map.java:1147)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at VASSAL.build.module.Map.drop(Map.java:1198)
at VASSAL.build.module.map.PieceMover$DragHandler.drop(PieceMover.java:1165)
at java.awt.dnd.DropTarget.drop(Unknown Source)
at sun.awt.dnd.SunDropTargetContextPeer.processDropMessage(Unknown Source)
at sun.awt.X11.XDropTargetContextPeer.processDropMessage(Unknown Source) at sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchDropEvent(Unknown Source)
at sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEvent(Unknown Source)
at sun.awt.dnd.SunDropTargetEvent.dispatch(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processDropTargetEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)