MegaMek / megamek

MegaMek is a networked Java clone of BattleTech, a turn-based sci-fi boardgame for 2+ players. Fight using giant robots, tanks, and/or infantry on a hex-based map.
http://www.megamek.org
GNU General Public License v2.0
296 stars 286 forks source link

[Nightly] Space Battle Issue: Detection of NULL edges in ConvexBoardArea #5494

Open repligator opened 5 months ago

repligator commented 5 months ago

Environment

2024-05-18T01:12:47.224778336, Linux, Java 17.0.10 (still an issue as of https://github.com/MegaMek/megamek/commit/050762346edc19ae2dc6ec5c088665de612a3cde) Linux Java 17

Description

During a space battle, Princess(es) began acting very strangely. Team 2 Princess had her fighters huddle around one of my ejected pilots, doing nothing, while their were other valid targets. Team 2 and 3 Princess(es) also refused to shoot each other (or me for that matter) despite having the opportunity to do so.

I took a look at the log, and it reads

19:03:08,257 ERROR [megamek.client.bot.princess.BotGeometry.HexLine] {Federated Commonwealth Enemy Dropships Turn 0 Calc Thread} megamek.client.bot.princess.BotGeometry$HexLine.judgeArea(BotGeometry.java:161) - Detection of NULL edges in ConvexBoardArea: Edges:null; null; null; null; null; null

repeated over and over, for about 10,000 lines. Also interesting to note, according the log it didn't start until the fourth turn. MM/MHQ are only using 5 GiB of their allotted 12, so I don't think it's a memory issue.

Files

megamek.log

repligator commented 4 months ago

Another log from a strange behavior game, again with two Princesses. One of them sat huddled around my ejected pilots, until the last combat capable craft exited the map, after which she began shooting them. megamek.log

HammerGS commented 4 months ago

Are you playing with Double Blind on?

repligator commented 4 months ago

Are you playing with Double Blind on?

Yes. I thought it was a moot point in space though?

NickAragua commented 3 months ago

A save would be really helpful here, unless quitting/reloading makes the issue go away.

repligator commented 3 months ago

I don't have the original save, so I had to reproduce. I've attached some MHQ files as well in case they are relevant.

megamek.log mekhq.log Ghost Bear Navy30620404-day-of-mission.cpnx.gz 1st-mission.sav.gz turn2ish.sav.gz

repligator commented 2 months ago

Had another instance of NULL edges, but on a ground map. All of the games in this log were run on a 5x5 hex randomly generated map. I've been unable to replicate the issue on a ground map, outside of this instance. megamek-null-edge.log jumping-into-hidden.sav.gz

repligator commented 2 months ago

Latest Master (https://github.com/MegaMek/megamek/commit/3dbf18d1df372276179edce2e96857c9ac835901) Another instance of the issue on a ground map. Unfortunately I overwrote the save file before checking the log.