nicupavel / openpanzer

Javascript/HTML5 rewrite of Panzer General 2 game
http://panzermarshal.com
156 stars 39 forks source link

Missing map information in some scenarios #138

Closed salexgit closed 6 years ago

salexgit commented 6 years ago

Hi

This is not a bug in the game engine, but rather incomplete map information...

So, in the "Prokhorovka" scenario from the "Das Reich" campaign, the corresponding map description file does not contain hex information for the 2-3 bottom rows. As can be seen from the attached file, it is simple not possible to move units into those tiles because the game engine does not know anything about them. I checked drprok21.xml file, and indeed it contains hex information only till row 26.

prokhorovka

I did not check yet whether the problem comes from the fact that the original .MAP file does not contain that data, or there is some bug preventing tile information to be converted into the .XML format. Anyway, even if the original .MAP information is flawed, it seems quite straightforward to add missing tiles into the .XML file.

salexgit commented 6 years ago

I did some minor fixing of the map information .xml file and now the two bottom rows can be used properly. I attached the screenshot showing that now a unit can be moved into the bottom hexes.

prokhorovka_fixed

I am attaching here the fixed drprok21.xml file and the patch file so that developers can see actual changes. Note that I spotted several minor errors in existing hex information, so that was fixed as well.

drprok21.xml.zip openpanzer-2.9.7-drprok21.patch.zip

Since the same map is used another Soviet campaign scenario, same changes are also applied in the corresponding scenario file. ruscam04.xml.zip openpanzer-2.9.7-ruscam04.patch.zip

So, developers just need to copy/paste fixed .xml files (or apply the patches) to fix these inconsistencies.

nicupavel commented 6 years ago

I appreciate your fixes, I would prefer these to be made directly in the PG2 filess so I can easily export them for all platform builds. Please send me a private message so I can add you to the repository.

salexgit commented 6 years ago

Hi

Yes, it seems that fixing the .MAP file is the right way to do it especially if the same map is used in different scenarios and we still use .MAP files to port the game into different platforms.

I will send the private message a bit later...

salexgit commented 6 years ago

Hi again

I am not sure I got the point where and how I should send the private message :) It seems that Github does not support it.

nicupavel commented 6 years ago

npavel@linuxconsulting.ro should be fine.

salexgit commented 6 years ago

Hi

I checked the scenario map file, PROK.MAP, and indeed terrain information was missing for last two rows. In fact, it seems that there is coincidence of two bugs/problems:

Anyway, I am attaching fixed .MAP file. However, I have not tested yet whether it works properly after conversion into the OpenPanzer .XML file.

PROK.map.zip

salexgit commented 6 years ago

Hi again

So, here is the latest version of the PROK.map file with fixes that enable tiles at two bottom rows. PROK.map.zip

I cross-checked that it works correctly by re-generating .XML file. As you can see from the attached figure, now units could be moved into two bottom rows. prokhorovka_fixed

Some comments to changes I did for the PROK.map file (just for information):

salexgit commented 6 years ago

Hi again

The same problem exists also for "Operation Zitadelle" scenario from the same campaign. As one can see from the attached file, there are two bottom rows which are not utilized by the game engine because they are out of range.

zitadelle_wrong_tiles

The corresponding .MAP file can be fixed in the same way by applying correct map size. Then, all the bottom rows can be used properly.

zitadelle_full_tiles

I am attaching below fixed .MAP file.

DRPROK2.MAP.zip

nicupavel commented 6 years ago

Fixed in 2,9.8