Skip to content

Server only map prevents bot from being added. #3866

@sshagent

Description

@sshagent

Environment

MekHQ's megamek. The recent Snapshot#862. All from the same snapshot#862, all 7zip for extraction.
What operating system are you using? Windows 10 client. Ubuntu server. All same version.

Server(ubuntu)
Java Vendor: Ubuntu
Java Version: 11.0.16
Platform: Linux 5.4.0-121-generic (amd64)
System Locale: en_US

Client(windows)
Java Vendor: Eclipse Adoptium
Java Version: 11.0.15
Platform: Windows 10 10.0 (amd64)
System Locale: en_GB

Description

Connect to a server. That has a valid custom map, in the usual location data/boards/
If you don't have that on the client end this can be an issue.

Connect to server, select the server sided map. Then try and add a bot. You get an Uncaught java.lang.IllegalArgumentException detected.
image

Of note, if you add the bot. Then set the custom server sided map, its all fine.

Files

I monitored both the client and server side logs, as i did this. And this blurb appears on the Client side. Of note, this map is valid...we've played on it several times. Presumably the bot must try and look at the map for some reason, can't find it (cos bot is on the client).

15:07:51,223 ERROR [megamek.common.Board] {AWT-EventQueue-0}
megamek.common.Board.load(Board.java:916) - IO Error opening file to load board! java.io.FileNotFoundException: data\boards\SolarisGrandPrix_1.board (The system cannot find the file specified)

15:07:51,223 ERROR [megamek.MegaMek] {AWT-EventQueue-0}
megamek.MegaMek.lambda$main$0(MegaMek.java:61) - Uncaught Exception Detected
java.lang.IllegalArgumentException: board is the wrong size, expected 44x34, got 0x0
at megamek.common.util.BoardUtilities.combine(BoardUtilities.java:66)
at megamek.client.ui.swing.lobby.ChatLounge.getPossibleGameBoard(ChatLounge.java:1159)
at megamek.client.ui.dialogs.BotConfigDialog$TargetsRenderer.getListCellRendererComponent(BotConfigDialog.java:792)
at java.desktop/javax.swing.JList.updateFixedCellSize(Unknown Source)
at java.desktop/javax.swing.JList.setPrototypeCellValue(Unknown Source)
at megamek.client.ui.dialogs.BotConfigDialog.targetsSection(BotConfigDialog.java:335)
at megamek.client.ui.dialogs.BotConfigDialog.princessPanel(BotConfigDialog.java:179)
at megamek.client.ui.dialogs.BotConfigDialog.settingSection(BotConfigDialog.java:161)
at megamek.client.ui.dialogs.BotConfigDialog.createCenterPane(BotConfigDialog.java:155)
at megamek.client.ui.baseComponents.AbstractButtonDialog.initialize(AbstractButtonDialog.java:102)
at megamek.client.ui.dialogs.BotConfigDialog.initialize(BotConfigDialog.java:147)
at megamek.client.ui.dialogs.BotConfigDialog.(BotConfigDialog.java:130)
at megamek.client.ui.swing.lobby.ChatLounge.configAndCreateBot(ChatLounge.java:1938)
at megamek.client.ui.swing.lobby.ChatLounge$6.actionPerformed(ChatLounge.java:1759)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugAny kind of issue that cannot be fixed without code changesMap and BoardSpecific Issues related to a Map, Board or Tileset

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions