VCMI 0.68 - development version

if there’s any other idea of testing post it while i still have some free time :wink:
also “clean all stuff pack"would be useful the only thing that i didn’t deleted was mp3’s and snd.wav … if this is any hint :stuck_out_tongue: but even after deleting all it’s the same…
and now what about experimenting with crossing files from working pack?
after changing only client from 068b to one from pack r651 i got error
i43.tinypic.com/14vmp0w.png
it says something like"cannot find enter of procedure…in vcmi_lib.dll”
and then when i change vcmi_lib it works :exclamation:
it just gives some red things if that’s any hint.
i40.tinypic.com/2zntov4.png
and now putting client from (i didn’t delete vcmi_lib from r651) 0.68b gives another error
of “cannot find enter of procedure ??0CGEvent@@QAE@XZ in vcmi_lib.dl” if that means anything…

now cleaning and back to 0.68b
add client r631 error “cannot find enter of procedure ?alive@CStack@@QAE_NXZ in vcmi_lib.dl”
add vcmi_lib r631 =works
replace client with 0.68b “cannot find enter of procedure ??0CGEvent@@QAE@XZ in vcmi_lib.dl”

now cleaning and back to 0.68b
add client r666 i40.tinypic.com/2zntov4.png
add lib works the same red strings :wink: i40.tinypic.com/2zntov4.png
replace client with 0.68b “cannot find enter of procedure ??0CGVisitableOPW@@AE@XZ in vcmi_lib.dl”

just in case rest of options.
now cleaning and back to 0.68b
add client r631 error: “cannot find enter of procedure ?alive@CStack@@QAE_NXZ in vcmi_lib.dl”
add lib:works!
replace client with 0.68b “cannot find enter of procedure ??0CGEvent@@QAE@XZ in vcmi_lib.dl”

now cleaning and back to 0.68b
add client r679 error “This application…”
add lib:the same
replace client with 0.68b “cannot find enter of procedure ?loadArtifacts@CArtHandler@@AEX_N@Z in VCMI_lib.dll”

now cleaning and set to r679
add client r631 “cannot find enter of procedure ?alive@CStack@@QAE_NXZ in vcmi_lib.dl”
add lib:works
replace client with r679 “cannot find enter of procedure ??0CGEvent@@QAE@XZ in vcmi_lib.dl”

now cleaning and set to r679
add client r651 “cannot find enter of procedure ?getSecSkillLevel@CGHeroInstance@@QBEHABH@Z in vcmi_lib.dl”
add lib:works
replace client with r679 “cannot find enter of procedure ??0CGEvent@@QAE@XZ in vcmi_lib.dl”

now cleaning and set to r679
add client r666 “cannot find enter of procedure ?getSecSkillLevel@CGHeroInstance@@QBEHABH@Z in vcmi_lib.dl”
add lib:works
replace client with r679:“cannot find enter of procedure ??0CGVisitableOPW@@AE@XZ in vcmi_lib.dl”
i hope it’s useful :stuck_out_tongue: and i hope i’ haven’t mistaken anywhere with putting it in the wrong folder xD

also in all cases i didn’t delete files just overwrite so additional files from 0.68b were still here.

And i have something other interesting!
when extracting it to empty folder(068b,r679) it still crashes the same way while others tries to launch with few lines and then "This application " shows.

so after checking all possibilites still can’t run 0.68 :-/

If you say you didn’t delete, I’m a bit confused what you meant by starting all the steps with “now cleaning…”.

What made 0.68 work for me was the following:

  • copy all content of the 0.68 package and pasting it (overwrite all) in the Heroes folder - at this stage it still failed
  • do the same (copy all, paste/overwrite) with the content of the other 4 packages
  • then “repeat first step” : copy all content of 0.68 and pasting in the Heroes folder

Anyway, I suggest you actually wait for more advise on what to do/test next from Tow or Tow dragon, as they’ll prolly know what those errors you mention mean.

if i remember correctly at beginning i tried deleting and then just overwriting which gave the same results. i dunno if it could affect it any way but i tried few times some things so it’s not a possibility… i think… :stuck_out_tongue:
well i will try putting them all together let’s see…

nope crash oh well :stuck_out_tongue:

Sorry, maybe I’m too tired after a long (and rather ugly) day at work; but I still don’t follow your “deleting and then just overwriting”. For me it’s either you delete, and then just write (nothing to OVERwrite, as things got deleted); or it’s overwriting existing (= not deleted) files… :-/

I can’t tell yet if you followed the same steps as I did, as I never deleted anything.

sorry maybe it’s too chaotic:-P
ok another way:
1 at beginning after installing 0.68b i tried by deleting all files from 0.68b and inserting packages from /test
2 but then i saw i the same effect when just overwriting files from 0.68b so…

i think it should be clean now :wink:

i can still try option by reinstalling 0.62 and then add every pack to check.

I have no idea how it could help, especially crossing VCMI_client.exe / VCMI_lib.dll / VCMI_server.dll. These three files (and AIs) are not supppose to work when they are from different versions. Unfortunatley, these 5 files (or 4 in older versions without new AI) is the only difference among binary files. If you want to help, check if there is any other difference between packages posted here and older versions of VCMI (excluding settings folder as it shouldn’t crash so early).

I’ve tried to unpack files from older packages and overwrite with 0.68b and there was no significant difference afterwards.

I’ve another questions to people how tested 0.68. Did you have installed anything this: microsoft.com/downloads/deta … laylang=en ? If no, what happens if you install this, unpack VCMI 068b to clear installation of Heroes III and delete msvcp90.dll and msvcr90.dll files from Heroes III directory? I think it’s not necessary to install whole WoG for this test as it’s not necessary in first stage of VCMI starting.

OK. I installed H3C on a different location.

Now just to make sure of the exact steps you want me to perform, is this what I have to do next:

  1. Install vcredist_x86
  2. Unpack 0.68b in the Heroes folder
  3. Delete msvcp90.dll & msvcr90.dll
  4. Check if VCMI starts.

:question:

Yes, this is exactly what I want to check.

I did the above, and I’m getting a Visual C++ Runtime Error. The Console gives:

Starting…
Creating console and logfile: 0
Loading settings: 546
VCMI 0.68b (client)
Initializing screen: 32
Initializing minors: 0
Initializing fonts: 0
Initializing sound: 297
Initializing screen, fonts and sound handling: 875
Cannot find file: ZELP.TXT

Let me know if there’s anything you want me to do next.

Also, let me know when I can uninstall vcredist_x86. It kind of annoys me that it installed in the root of my J drive. I find it strange that it didn’t give me a path choice, and that - of all drives - it picked the J (well, at least I’m happy it didn’t go in the root of my C drive :p).

Mhm, very well, thanks for testing. This log means that installing Microsoft’s dll removes the bug you’ve encountered. If the same thing happens for others, we’ll have to think what to do with this problem.

You can unistall it even now. I hope we’ll find a way of integrating those 2 dlls you’ve deleted into VCMI.

Uhm… but if I’ve understood correctly, that bug on Zamolxis machine had been already gone. So it proves nothing, unless we know that without redists and with original dlls from package VCMI crashes.

amvmichael, please check your PM. :slight_smile:

Tow dragon for me crossing simply says that files from r679 068b are good but instead something “new” causes it?
So without any “file checker” or something like that it’s impossible to find it at least in my case :P(how about building one? :stuck_out_tongue: )

i tried just the case with those dll’s on clean h3 RoE+AB+SoD
(whatever?)
it crashes :wink:

also i don’t know if it could affect it any way some time ago i installed service pack 3 for xp
Tow ok :wink:

also i haven’t tried 0.68/a i wonder if it works :stuck_out_tongue:

Correct. 0.68/a/b - all worked after I installed the ‘unreleased’ versions.

And the error I had now was different than the one I had initially, so I also have the feeling that this test might have led somewhere, but still did not identify the cause of the original issue.

Let me know if there’s anything else you’d like me to test for this bug. Or else, I can try another clean install and then go through all the steps I advised amvmichael earlier to go. Anyway, it’ll be for tomorrow. :wink:

To be precise: the error we are looking for causes crash of VCMI client before it’s able to do anything. There is even no “Starting…” text on the console - only error message.
Presence of WoG (or even H3) shouldn’t matter, cause crash occurs before VCMI starts accessing H3 files. It looks like some conflict with runtime libraries. Really strange issue.

I need to have a sleep. Later I hope to perform more testing with amvmichael. I would like to make 0.7 release on Sunday.

As for the other issues: #b2 (savegame crash). Can you please tell if this is occurring every time you try save the game? What map have you used for testing?

i just checked 0.68/a both crashes.

and i have tried to unpack 0.68b only 1 file per time it asked for:vcmi.dll,sdl.dll,zlib1.dll,sdl_image.dll,SDL_ttf.dll,SDL_mixer.dll
and then crashed.

I tried 0.68b from a pre-existing directory (after re-installing Windows for another reason), and I got the error I had before. So I tried re-installing H3C (without overwriting an existing directory), then WoG 3.58f then VCMI 0.68b and got the error again, so I think it is still a problem. :slight_smile: I have XP SP3. Would you like me to send you the rest of my computer’s specs?

Best regards,
Steven.

This bug cannot be rationally explained so I incorporate some irrational methods. How do you know that the bug is connected with the machine? IMO if the procedure ‘fresh install of Heroes 3 -> installing MS redists -> installing VCMI 0.68b without msvc dlls’ will make VCMI work for everybody then it’s the problem with those dlls. I’m not sure if we can afford rational explanation in this case.
If anybody has a better idea for testing what cuases this bug, please post it here.

well maybe just put here all your dll’s that could affect it? (is there also a possibility that it reads something from /system32 dll’s?)
since it on mine it crashes on sdl_mixer.dll what’s next file?
or what could cause sdl_mixer.dll not to work?
or also i got another error from windows it just says "we are sorry for troubles any unsaved data will be lost"or something like that :mrgreen:

On my machine sdl_mixer.dll is followed by VCMI_lib.dll, msvcp90d.dll and msvcr90d.dll, and then a lot of system dlls. If VCMI_dll.dll is required earlier on your machine, then it’s possible that msvcp90d.dll and msvcr90d.dll are the problem (I don’t think sdl_mixer would make so much truble). Could you install this: microsoft.com/downloads/deta … laylang=en and tell me if it helps?

edit:

Yes, VCMI needs a lot of dlls from /system32 (it’s strange but it even loads a library that belongs to my IM application that is in a completely different directory).

ok it was already tested the same results :wink:

also now as experiment i tried to get rid off msvcr90.dll from system but seems like i can’t delete ones from windows/WinSxS :frowning: