VCMI 0.68 - development version

Hi!
We’ve prepared new development version of VCMI. It brings many new features but needs testing to be released as recommended update. The most notable change is the posiibility to save and load games (however we don’t support Heroes III save format and as for now following versions of VCMI won’t support saves created by older versions). There is also a new, better AI (that does something during battles) created by new member of VCMI team - abmtrip. We’ve also made many improvements in battles making them more challenging. We’ve also revamped our pathfinder - now it should always find the most optimal path.
To save game you need to write 'save ’ in console (it’s still experimental). Loading through the main menu works as in Heroes III.

Full changelog:

This program is licensed under GPL v2.0 or later. Full text of the license and source code is available here: tools.assembla.com/svn/vcmi/trunk . We’ll make a public announcement about new license soon.
vcmi_068.7z (1.74 MB)

Thanks for the update. I guess 0.65 - 0.67 were tested in-house. :slight_smile:

The list of changes looks promising. However I didn’t manage to test it as I’m getting the following error when I try to launch the client:

Hmm, strange. Try this version (attached to this post). If it won’t work either, tell me if older versions of VCMI still work for you.
vcmi_068a.7z (1.52 MB)

Nope, same error.

0.64 however still works on the other hand.

Really weird. Both builds works fine for me and for TowDragon.

Application seems to crash before it actually starts running (first thing VCMI does is to write “Starting…” on the output). It may be problem with initializing stuff or conflict with the libraries… or something different.
If anyone else tested this build, please say if it’s working! I’m curious if it’s working only on our machines or if it isn’t working only on yours. :wink:

Since I have no idea what can this error be, let’s try to see when it was introduced.
I’ve prepared several builds. Can you please check these packages:
vcmi.antypika.aplus.pl/test/
and tell from which the problem begins to appear (or are they all corrupted)?

Thanks for your help!

Well, none of them behaved the same. 2 of them worked and 2 didn’t (though different crash):

  • r631 & r679 (first and last in the link) are working fine

  • r651 & r666, both behave the same : I can go to the game menu (so further than I get with 0.68), but when I click on start - after the ZoneAlarm approvals (if relevant) - it crashes:

…and after clicking “OK”, the new red line is added in the console, while the Runtime error window pops:

Well, this is interesting.

After posting the above, I thought of trying again 0.68. And now it worked. Both packages: 0.68 & 0.68a. :slight_smile:

Can’t tell what happened. My best guess would be that some file got lost at some point, but now I got it while installing one of the 4 packages from your link. The only way to test this in order to make sure that’s the cause, would be to uninstall everything (H3+WoG+ScriptUpd) and reinstall everything again, with only 0.68 as VCMI package.

'Thing is, tomorrow I won’t have a lot of time for testing. Probably about 1h only, so I’ll have to choose between brief testing in 0.68, or digging further into this issue by doing a clean install. Let me know what you prefer.


[size=75]PS: Which package should I keep for further testing: 0.68 or 0.68a?[/size]

Hi again! Good to have save games. =)

I had a similar problem as Zamolxis. Initially 0.68 and 0.68a crashed on start-up, then after I tried other of the test VCMIs (some worked and some didn’t) I tried 0.68 and 0.68a and they worked.

However I have found some other bugs with 0.68 - if you click choose the Advanced Options screen after it has been selected then unselected (either from changing the map or turning off Advanced Options then back on), causes a repeated crash.

Also when loading a save game, heroes are drawn behind castles. Sending the save game. =)

Best regards,
Steven.

A big bug - the date does is increasing by more than 1 day each time you end turn - is it something to do with the number of players? (Viking We Shall Go! the date increased by 1 week each turn (6 players), Battle of the Sexes increased by 5 days each turn (4 players), Warlords! increased by 1 week + 1 day each turn (8 players).)

Best regards,
Steven.

[size=75] Comment added by : Zamolxis: 22-08-2009, 12:47 ][/size]
test

Nice to have sb else testing. You saved me quite some time, as I was really considering reinstalling to check if my assumption was correct. But if you had the same, clearly some file must be missing from 0.68/0.68a. The reason it worked for Tow & Tow dragon being that they of course had the other versions previously installed.

Now, after a bit of testing, here are some bugs/issues:

#1

“Wait” seems to be only partially implemented, in the sense that it’s not yet well coordinated with the Speeds of the creatures. I’ve noticed 2 incorrect behaviors here:

1.1. I used wait on all 3 creatures of my army, which had their turn in the correct order of their speeds: Stone Gargoyle 6, Gremlin 4, Stone Golem 3. After the enemy creature moved, the order of my creatures should have been: Stone Golem, Gremlin, Stone Gargoyle. However the Gremlin got its turn before the Stone Golem.

1.2. With the creatures mentioned above, I attacked some Halberdiers (Speed 5). Theoretically, in the beginning of a turn, my Gargoyles should always have the first move. However, if I use Wait on them during a certain turn, the next turn they lose their priority and Halberdiers move before them.

#2

You’re gonna hate me for this, but Pathfinder still doesn’t find “the most optimal path”. :stuck_out_tongue: Now, I don’t know if installing all these dev. versions messed up your code in any way, but the last version “installed” - as in “overwrite all files” - was 0.68 (let me know if 0.68a should be any different in terms of coding). And I still have that issue with the hero still being able to have a last move in straight line, but not on diagonal. I’ve played around with H3 for half an hour today, and I didn’t encounter the same over there. And I’m pretty sure it never happens in H3, otherwise it wouldn’t strike me so obvious as abnormal behavior when I have it in VCMI.

#3

I’ve also had a one-time crash while trying to put two stacks of 1 Pikeman each together, in the hero screen. I tried a few times but couldn’t reproduce i. I’ll let you know if it happens again.

#4

The F4 toggle is indeed still in experimental phase. :slight_smile: It does trigger full-screen, but if I press it again, it messes my screen resolution. The game goes in window mode again, but my 22" screen goes into very low resolution (800x600 or even less, not sure). The only way to get back my original resolution (other than exiting VCMI) is if I have the standard H3 open and I Alt+Tab between them. If I do that, everything goes back to normal, except the VCMI window, which loses about half a cm at the bottom (ie. resource bar is not visible anymore in Adv.Map). If I Alt+Tab between VCMI & H3 when VCMI is in full-screen, the image is not always centered when I go back to VCMI.

#5

The scroll tab still remains hanged sometimes, though not as often as before (it’s not always reproducible anymore). And I think I’ve noticed it once also when I was splitting a stack in hero’s army in the hero screen (so it’s not only in town interface).

Related to this bug though, would it be possible to implement the Shift key for stack split? I use stack split quite a lot (and maybe even more now that I’m looking for bugs related to it), and it’s a bit tedious having to look with my cursor for an interface button I haven’t used in almost 10 years. :stuck_out_tongue: [size=67]I know I asked this before - but I hope not more than once. I wouldn’t wanna start to annoy you with my repetitive requests. :P[/size]

Very weird problems… I have no idea what could it be.

Possibility to move in straight line but not diagonal is the only issue with pathfinder? If yes, then it’s not the problem with optimality of the path but with different cost of last tile (moving diagonally is more expensive, therefore it’s possible to be able to move striaght but not diagonally). Do we really want to have this feature in VCMI?

And BTW - 0.68 and 0.68a have more or less the same code, the difference is that I’ve built 0.68 and 0.68a has been built by Tow.

We’ll try to fix it in the next dev version.

We’ll put it in our TODO list.

BTW, 0.68 and 0.68a have small bug with slow spell. Speed of creature is decreased by 75% on none and basic earth magic levels and by 50% on adv and expert instead of 25% and 50%.

edit:
I’ve taken a look at all these packages and the only significant difference I saw is that some of VCMI_rxxx have file VCMI_client_log.txt while 0.68 and 0.68a do not. However 0.68 can create this file if it does not exist. What happens when you delete it and then try to run VCMI 0.68/0.68a ? If it doesn’t work, what happens when you put it back?

Thanks for answering so fast. :slight_smile:

It wasn’t that. If I delete it, 0.68 creates the file automatically just as you said and the game starts out fine. It must be something else. This is not urgent, but when you will have some time, I would suggest a clean install of H3 on a different location, then installing 0.68 directly. As both me & Steven had this, it must be reproducible somehow.

I would say yes. And I’m not sure if it’s really a feature, rather than a formula (which we didn’t manage to decipher yet). :stuck_out_tongue:

Again, this does not need to be the main priority before 0.7. But I feel it should be corrected eventually, and here is why::

[size=84]For the record, in my argumentation below, by “movement unit” I’m referring to the last move a hero can apparently still make, according to the movement bar next to hero’s icon. So when the green bar is at its smallest hight, but not completely gone. This may translate as in 100 movement points as you mentioned on another thread, but in practice it should still allow the hero to move on diagonal somehow.[/size]

  1. It would feel more realist/intuitive, even for new players: In case hero has only 1 movement unit left, it would feel strange for the player to be able to make a step ahead or on the side, but not on the diagonal. Gamers don’t expect mathematical accuracy at its best when the play a game. They are more interested to see that their in-game movements feel natural. For them a step ahead, on the side, or on diagonal it’s the same. And if the green bar tells them they still have 1 more step, they would like to do it in whatever direction.

  2. For hardcore H3 fans, on top of the above, comes the experience. They would notice immediately that they won’t be able to do sth they used to, e.g.: picking an artifact placed on the diagonal, with their last movement unit. They will surely remember in H3 they never had the case of being able to step ahead or on the side “around” the artifact, but not be able to just “grab” it with that last movement unit (as shown by the green bar). Some very experienced/technical players, might even spot the difference on longer distances than just 1 tile.

  3. And last argument, maybe not that important - but still - would be that we’re just not accurate yet with the NWC formula. I take it as a general principle in my testing that it would be nice to have VCMI behave exactly like (or else better than) the original H3. NWC must have had exactly that “realistic feel” purpose in mind when they came up with the formula.

I hope I’m not making your life too difficult with this issue. I didn’t have the time for a thorough test, but except for the “last movement unit” issue, so far your path calculator seems perfect (I noticed some paths which were wrong before, are now correct). But I’m pretty sure that if we leave it as it is, there will be more in the future who will complain about this detail.

Thank you very much for testing and helpful suggestions!
A new development version is ready and attached to this post.
[Savegames are not compatible, format still remains unstable!]

I’ve probably resolved these issues :slight_smile:
Please, check them, I have hardly even tested them.

I’ve found a bug in saving system that makes saves from release version incompatible with debug version client. I’ve hopefully fixed it. Can you please reproduce this bug (if possible) and send me save again?

#3 and #5, since not reproducible, will have to wait.

I’ve extracted 0.68a onto my clean H3:WoG copy and it has started fine. This is really strange issue. I’ve looked into packages and I am not able to find any differences that could cause this problem…
vcmi_068b.7z (1.53 MB)

Thanks also for fixing so fast some of the above. [size=75]Should we feel guilty that our reports made you do that i/o focusing on your last exams?[/size] :stuck_out_tongue:

Wait & F4 are working great now. Also Shift-split. Many thanks!

There are however still issues with the “Advanced Options” window in the Menu. I’m not sure if this is exactly what Steven experienced, but if I change some options in the “Advanced Options” window, then go and change the scenario, when I click on “Begin” I get a MS Visual C++ Runtime error. If you cannot reproduce it at your side, I’ll see what exactly I changed in the options, that triggered later the crash when trying to load a different map.

EDIT: Actually you don’t necessarily have to change sth in the Adv.Options window. I had it that the game crashed also by just being in Adv.Options, w/o changing anything, and then selecting another scenario to play.

Also, now that we are busy with a bug related to the “Advanced Options” window, maybe it’s a good time to also fix the open/close functionality by mouse click. It works correctly for “Show Available Scenarios”, but not yet for “Show Advanced Options” (we can only open it, not close it).

Actually #5 is still easily reproducible. It does not happen always now, but more than 50% of the time when I split a stack, if I click with the mouse on the scroll bar i/o using the arrows, the scroll tab gets hanged. I’ve noticed it works “better” with larger stacks (it was hard to reproduce it when I split a stack of 2 Golems, but very easy when I split a stack of 39 Gremlins).

Strange indeed. Digging further into this issue (if necessary) would mean looking into what else me & Steven could have had in common to have this happening only on our side:

  • I have an AMD-platform system, with Windows XP SP2
  • I use Zone Alarm Suite (which is asking authorizations for VCMI client/server every time I install a different version - even when it’s a version I had previously used). But I am sure I gave the authorization when I had the reported error.
  • The game is not installed on the C drive (where Windows is). In fact, it’s installed on my only remaining FAT32 partition (2nd partition of my old parallel drive).
  • At the time when I installed 0.68 & 0.68a, my PC had been on (and heavily used) for a couple of days already w/o restart, and there were quite a number of applications running.
  • My WoG was installed on top of a Heroes III Complete version of the game
  • Aside from the basic WoG 3.58f, I had there also the Script Update (released a couple of years ago), plus I think a certain test script which I installed too long ago to remember what was exactly doing (some minor fix I believe)
  • Last VCMI version installed before 0.68 was 0.64 (and had mainly used 0.6x versions previously - didn’t do much testing back in the days of 0.5x)

So the only better way of reproducing this exactly, would be to reinstall H3 on a different location on the same FAT32 drive, install WoG+ScriptUpdate, then install 0.64 (and who knows, maybe even some of the previous 0.6x… no idea). And on that to come again with 0.68. My question is though: do you think it’s necessary to really identify what caused this? If it doesn’t happen again, considering the fact that you’ll anyway build new packages - sometimes maybe even from scratch - would it still be relevant to identify what caused this issue?

Here are some bugs noticed in 0.68b:

#b1 - Unstable interface when hero stops moving (reproducible)

When hero stops moving, in the change from the moving animation to the static position, for like a fraction of a second, the interface hangs a bit (or very shortly trembles, like an unstable focus or sth). If at the end of the movement there is an object which trigges a message window (e.g.: treasure chest), we can see this very short tremble behind the message window. This was introduced now with 0.68b. I’m pretty sure it wasn’t in 0.68.

#b2 - Save game crash (reproducible)

I’m not sure what you meant by “when no savegames were available” and actually I haven’t tested the save game functionality in 0.68 to know how it behaved before. But this is the error I’m getting now in 0.68b:

i4.photobucket.com/albums/y104/Zamolxis/VCMI%202009/th_90126-savegamecrash.jpg

Here is the detailed behavior:
1 - I clicked on the console and typed 'save test’
2 - Next I got a Windows error similar to the one in the screenshot, only indicating ‘VCMI_server.exe’ in the title bar
3 - After closing the Windows error, the game does not (apparently) crash, and it looks like I am able to continue playing
4 - However if I start playing (trying to move the hero, or open an interface), the game crashes again. And now I get what you see in the screenshot:
> “End of file” line appears in console
> Windows error screen, now indicating ‘VCMI_client.exe’ in title bar
> And simultaneously I get in the console the same text that me & Steven used to get when we couldn’t launch 0.68 few days ago: “This application has requested the Runtime to terminate it in an unusual way. Please contact…”

i just go the same error from installing it 0.68b ofc … seems like my last version was 0.62 i checked it but there is NO difference in files so dunno?:stuck_out_tongue:
i reinstalled old and it works… Funny :stuck_out_tongue: seems like i have reinstall it P:

add my old build?

rapidshare.com/files/190236382/vcmi_062.zip.html

also i tried to delete all files from pack (old too) and unpack it again the same effect…

Hi amvmichael,

If I understand well your post, your 0.68b does not start at all. If yes, does your console give the same error I had with 0.68(a): “This application has requested the Runtime to terminate it in an unusual way. Please contact…:question:

If that is the case, then it’s great (sort of speak), as this might help Tow/Tow dragon to come closer to figuring out where the issue is. I’m not sure if this is the best idea, but my suggestion for you would be to try the following:

  1. Go to this link: vcmi.antypika.aplus.pl/test/

  2. Download ONLY vcmi_r631.7z and install it in your Heroes folder. This should allow you to run VCMI just fine (it worked for me at least). If it fails, you can already come here and tell what error you had.

  3. Then install 0.68b again. So BEFORE you try any of the other packages in that link. And now see if you can open it. If 0.68b opens, it means there was something in vcmi_r631.7z which got lost afterwards.

  4. If 0.68b does not open yet, go ahead and install the second package in that link - vcmi_r651.7z - and see if that one works (I had a Runtime error)

  5. Then install 0.68b again. And check again if works. If yes, the devs will need to check what was in vcmi_r651.7z that got lost afterwards.

  6. If it still doesn’t work, take the 3rd - vcmi_r666.7z (this also didn’t work on my PC).

  7. And then put 0.68b again. If now it works, then vcmi_r666.7z has what we’re looking for.

  8. If not, take the last package - vcmi_r679.7z (this worked for me)

  9. And finally install 0.68b for the last time. After this it worked (for me & Steven) so it should work for you as well…

Hope you have the patience to try all the above. Do not install more than 1 of those 4 packages at a time. It’s what me & Steven did, trying to see which works, and in the end we didn’t know anymore thanks to which of them 0.68 worked.

In case you won’t have time for the above (or if it’s already too late and 0.68 works now for you), this is what I can only assume that could be the cause:

  • Some previous VCMI version (0.64 - mine & Steven’s ; 0.62 - amvmichael’s if he’s sure about it ; or even an older version) overwrites at some point a certain file, without causing that version to fail.
  • However that file is creating a conflict in 0.68.
  • One of the files in the unreleased versions (631-679) overwrites that file again, thus allowing a 0.68 to work next time is it installed
  • Maybe we should bare in mind that it doesn’t have to be a “missing” file. Could be a file that just changed at some point, which 0.68 does not overwrite, but one of the unreleased version does
  • And it does not have to be 1 single file, but could be a combination of files overwritten (or not) at a certain moment, which somehow depend/relate to each other

Yes that’s the same error.
now it gives error on map and crashes :slight_smile: (it’s broken map Civil War) it was fixed already huh P:

rest if needed i will edit here add later :slight_smile: must go shopping :stuck_out_tongue:

ok…

now it crashes the same way "This application …"
2nd try:the same

works fine for me no errors ok with second try i got crash on map
2nd try:the same

crash again :wink:
2nd try:the same

crash on map=works
2nd try:works.

crash
2nd try:crash

crash
2nd try:crash

crash
2try:crash

Well, we’ll see when the results are available. :wink: But don’t worry, I’m sure I would have found some reason to pospone learning anyway.

Great suggestion, thanks for help!
I would really like to have this bug fixed before 0.7, since it seems to affect everyone except of us.

Versions from /test/ folder on server were not supposed to properly run any maps, they were only for testing that startup issue. If it isn’t crashing immediately after start, consider its as “working” and try again installing 0.68a.

I’ll take look at your reports later (Thursday/Friday). Thanks for patience :slight_smile:

I smell a 0.69. :stuck_out_tongue: