0.64 Release - Bug reports

#1 - Not a bug per-se, just something which might help figuring out the H3C logic of hero path calculation. I noticed this by accident [size=75](I wanted to test if a 0.63 bug I never got the chance to report - accessing Archer’s Tower from the side - is still there in 0.64; but I see that has been fixed)[/size].

The capture below is from a test map I’m using sometimes to check things which are not easily reproducible. The hero is a the right edge of the Swamp terrain, and only 1 tile away from the upper edge of it. If I try to move him more than 3 tiles up, this is how VCMI calculates the path:

H3C on the other hand behaves quite interesting:

a. If I choose the same destination with the mouse, H3C creates a straight line path, which the hero afterwards follows.

b. If I choose the same straight-line path, but instead of moving the hero, I click “End Turn” - the selected straight path suddenly changes to the curved one from the VCMI shot above :confused: . However, that does not mean the hero follows that curved path. If I give the move command (mouse click, M or Move button), the hero ignores the curved path which appeared after End Turn, and moves up in a straight line.

Now, I don’t know if I didn’t actually just found a H3C bug, but I thought of posting this anyway, in case it would be of any help for figuring out how the path calculator worked in H3C. If you want to double check the behavior reported above, I’m attaching here the map I used for testing.

The map can be easily used also to check another bug, which we have since 0.63 and was not corrected yet:

#2 - VCMI crashes after hero reaches level 15.
just testing.h3m (3.55 KB)

In 0.63b I ran into the following message in the console window, while fighting some Ice Elementals:

I don’t even remember now if the game was crashing after that or not. I took the screenshot but never managed to report it (0.63c was released, and I didn’t have time to retest since). Anyway, I retested it in 0.64 and it seems the problem is solved. However while battling the Ice Elementals, I noticed a couple of other bugs.

#3 - Archers (sometimes) cannot shoot Ice Elementals, as well as some other creatures, from their start position.

I took my test map, moved the hero next to town and put some Ice Elementals in front of it. I attacked them in VCMI, and when my Archer’s turn came, the didn’t shoot (the cursor had the shape of an arrow on top of the Ice E., but when I clicked nothing happened, and then it was next creature’s turn). I wanted to check if it applies to all creatures, and I added on the map a stack of Water Elementals (as I knew there was some issue with those in previous built) and one of Pikemen. Interestingly, my Archers could shoot the Water Elementals, but not the Pikemen. Further testing revealed that if I move Archers closer to the target, or I have some Marksmen shooting before them, then they can shoot the Ice Elementals, so the bug does not have much to do with the enemy creature I guess.

#4 - In 0.63 I reported the bug which was causing game-freeze if we were attempting to attack an enemy from the hex where another of our creatures just attacked. The crash bug has been fixed, but there’s still one issue remaining. In the screenshot below, first my Pikeman attacked, after which I didn’t move my cursor, attempting to “attack” with the next creature in turn - Archers - from the same hex. The game didn’t crash, it was still Archer’s turn as you can see in the shadow area around him - only issue is that the glow surrounding the Archer, indicating its turn, disappeared.

#5 - Archers can only perform melee attacks on the front hex of a 2-hex creature

Once I move the archer in one of the hexes behind the Ice Element, the mouse cursor changes into an arrow again, and they cannot melee anymore:

#6 - Related to the above: if the Archer is on one of the hexes behind the 2-hex creature, although we have an arrow cursor above both hexes, they can only shoot in the front hex of that creature. If we try to shoot the 2nd hex nothing happens (and Archers don’t lose their turn).

#7 - I moved the Archer around the Ice E., attacking from all hexes. At some point, when he was under the Ice E. in the middle, and I gave the order to attack from behind (= move 1 hex right and attack during the same turn), he did attack melee, but I got the following Console Error:

The error did not crash the game. I could play on, and the next time my Archer’s turn came, he couldn’t perform melee attack from there (again bug #6 behavior). So the only way to melee attack a 2-hex creature from the back, would be for our shooter to be adjacent to one of the front hexes of the enemy in the beginning of its turn.
just testing.h3m (3.63 KB)

And here are some town interface bugs, discovered when I was recruiting creatures for the above testing:

#8 - I went in the town with my hero (which already had 1000 Behemoths from the editor). I built the Archers’ Tower but then, before recruiting, I thought of testing to see if a certain H3C functionality works correctly. I wanted to see if VCMI allows me to move hero’s only stack in the Garrison. And here is the first difference between H3C & VCMI. While H3C warns the player in this case with the message: “Cannot move last army to garrison”, VCMI displays the standard “Move Ancient Behemoth”:

What followed was a series of quite funny bugs (all related I guess): :slight_smile:

#9 - In the above caption, if we click in the Garrison to move the Behemoth, nothing happens. BUT - if we open the castle interface to recruit some Pikemen and Archers, when we close it, we get this:

Awesome way to increase your army, isn’t it? :mrgreen:

#10 - As a next step, I tried to see if I can work with both stacks. So with 1000 Behemoths army I seemed to have, I attacked the stack of Pikemen in front of my town. The adventure map still shown 1000 Behemoths in my army, but the battle did not even start - I got directly the “Your forces suffer a bitter defeat.” (Battlefield Casualties: Attacker - None, Defender - None) :slight_smile:

That means VCMI did allow me to move the Behemoths in the Garrison, and what was left in my army was just a ghost image.

#11 - I restarted the map, reproduced the Behemoth duplication bug (happens easily every time), and then I tried to play around with the 2 Behemoths stacks. The one in the Garrison I could move around, but the (ghost) one in hero army not. I tried then to split them. It worked for the Garrison stack (split in 200+800). However when I tried the same with the (ghost) stack in hero army, it suddenly turned into 2 stacks of 800 Pikemen (instead of 200+800):

I could further play with my new stacks of (ghost) Pikemen, managing to get to pretty funny values (even under 0):

http://i4.photobucket.com/albums/y104/Zamolxis/VCMI/081113-1kBsplitto2x880P1Pstacksplit.jpg http://i4.photobucket.com/albums/y104/Zamolxis/VCMI/081113-Minus25Pikemen.jpg

And eventually, when I tried to overlap all the ghost stacks, regardless of their number (positive or negative), I ended up with a 0 unit stack:

#12 - And 1 last bug, not related to the above: The scroll tab in Creature Split window (sometimes also in Castle Recruit) often remains hanged to our mouse position, following it even if we move the mouse away from the scroll bar, away from the split/recruit window.

Great bugreport, thanks. We will try to fix those bugs in next release.

I’ve fixed the bug with levelling up. The status of battle bugs is more complicated because investigating their cause I’ve encountered a few problems with existing algorithms and fixed them, but I’m not sure if they were causing your bugs. We’ll think about releasing development version soon.

The problem with pathfinder is really interesting. I’ve found that the straight path in your case should be considered as suboptimal (Straight path has length of 475 while the curved one 482). This simply means that our pathfinder is bad and we need another one :). I think no further testing of current one is necessary.

Hi Zamolxis, thank you for the report.
I believe I fixed #8 - #12.
We’ll probably make a dev release within a week or two.

#13 - Creature Card differences:

H3C: http://i4.photobucket.com/albums/y104/Zamolxis/VCMI/081113-HitpointsremainingH3C.jpg vs VCMI: http://i4.photobucket.com/albums/y104/Zamolxis/VCMI/081113-HitpointsremainingVCMI.jpg

a. Font color for unit name in the original game is yellow

b. All words in stats name are written with capitals (e.g.: Attack Skill)

c. H3C uses “Health” i/o “Hit Points”

d. H3C uses “Left” i/o “remaining” (which is also too long, covering the actual value)

e. In the picture, the H3C unit is placed lower and more centered than the VCMI one [size=75](I checked it with 3-4 units only, I don’t know if it’s valid for all of them)[/size]

f. The unit special ability is written without quotation marks in H3C.

As a positive remark, I do like though the fact that you made the special ability text fit on 1 row. This will be useful particularly in WoG where new abilities are often added, so I wouldn’t change this.

I’ve also noticed you’re using a different font type, but I think this was already mentioned on the forum somewhere. Anyway, even if I’m just confusing with sth else that was said, I’m still not going to report this as a needed change. In a way it’s kinda refreshing, plus in some cases it could help distinguish between H3C & VCMI screenshots. So even if you’re planning to use the H3C font in the final release, for now I feel it’s even practical to keep this one.

#14 - Castle (recruit) interface differences:

a. In VCMI, the Recruit Creature window opens only when we left click on the creature. In H3C it works for both left and right click.

b. In the Recruit Creature window, if we left or right click on the creature, nothing happens in VCMI. In H3C left click opens the Creature Card window (as the one above, minus the stack number), which remains open after we release the mouse button. Right click on the creature shows the same Creature Card, but now the Card disappears once we release the button.

We were thinking about using original H3C font but we’ve found it too difficult as Heroes III stores its font in its own format which we haven’t broken. Currently VCMI supports all TrueType fonts (you can substitue files in fonts subdirectory and see what happens ;]).