VCMI 0.73 - Bug reports

I understood: i need to run about 3-5 battles for each terrain in VCMI (and to make result more accurate, in H3 as well). That will take a time :slight_smile:

Can you give me a link? At the moment, I have only actual pics from resources and obstacles.txt from VCMI.

As far as I know, I will need to run some battle in VCMI (and make screens),then do same in H3, and compare positions of the same obstacles. Yes?

not only position of obstackles but hex mapping of locked/unlocked tiles also

AFAIK this is already present. In obstacles.txt we already have:
[id] [Def name] [blockmap] [allowed terrains]
This info looks to be correct. But I’ll check it as well :wink:

I ve seen the wrong creature turn order ater wait - if we have creatures with same speed: i had some stacks of 1 imp and after wait they got turn ascending(on battlefield lower creatures first then upper) but in H3 creatures with same speed get turn the same way like before wait - in descending oreder(upper first)

the similar principle is wrong with the turn order of allies and enemies with the same speed - in H3 in first round of battle first goes attacker’s upper unit then defender’s upper unit then second attacker’s unit and so on(in the second turn defenders upper unit goes first then first attackers unit then second defenders and so on)
in VCMI we have ALL our (attackers) units going before any defender’s unit.

I’m sorry for duplicating issues (i have read quite carefully all of bug threads, maybe missed some issues), however only the 2nd part of post is a dupe, the 1st one is NEW (i hope) - that is about wrong creatures order after wait (but they both probably related to one coded model and will be fixed together) - pHOMM

#75 - Minor issue: we can exit the client interface w/o scrolling the map if CTRL is pressed, but if we access any application while we are out (e.g.: open a screen capture tool), when we come back, even if CTRL is still pressed, the map scrolls when we pass over the Client edge (thus we lose focus on the exact image we wanted to capture for example).

Same bug as #40 ver. 0.72c

[size=75]*It did seem somewhat familiar. Thanks for pointing that out. I removed back the log #. :wink:


Fixed, thanks for examples.


This (and several other random, not reproducible crashes) problem may be caused by buggy mp3 player.
(at least it’s the only possibility I found)

I use foobar2000. Maybe it is somehow connected. I’ll try to observe it in future.

No, it’s not that. I meant libraries used by VCMI for playing mp3 music (SDL_mixer / SMPEG). I had been observing crashes and hangups too but since I disabled music support they seem to be gone.
We’ll have to look for another mp3 playing library.

I can think of fmod and OpenAL. fmod might be easiest.

Oh. I’m silly boy :wink: I’ve got it. Thx for “brightening” my mind!

But I have recently music and effects turned off. So i.e. crash #73 shouldn’t happened because it was caused by smpeg.dll. Am I wright? Or this is still my poor knowledge about VCMI and programing.

FMOD is not compatible with GPL. (no source code, free only for non-commercial use)
OpenAL doesn’t handle mp3, it needs to be decoded first.

The only fitting library I found is Audiere. I’ll try it.

Effects are working fine, only music causes problems. But I fear that disabling it in VCMI options won’t help. It only makes the music mute but I guess it’s still played silently in background. (so restoring volume can work)

in GPL is fragment about "common used libraries"
it says those can be used with GPL code even if they’re not opensource

(is FMOD common used library by terms of GPL?)

if there’s nothing better we can use directx (no doubt it classifies as common used library)

DirectX is not portable.

So I said “if there’s nothing better”

I think if we can we should get MP3 decompression library not the MP3 playing library (so after decompression we can play it with something that stick the current code - SDL_mixer OpenAL or whatever)

there almost no open source library on MP3 because of licences AND patents. So if we use OpenSource library which haven’t the patent VCMI will become illegal in countries that respect this pattent. And if we use patented library - it’s almost sure that it will be closed on the source. So we rather have to use something which gets under “common used library” (or whatever close code freeware library which applies the minor part of licence about exceptions in licensing of parts)

what about ffdshow? it uses libmad/mp3lib/libavcodec

I don’t know how it works in VCMI, but I know that in HoMM3 probably it disable music at all, because with music everything takes more time i.e. entering the town, starting battle etc.
So if you turn music off battle start immediately the battle screen appears.
But of course this is not important in this case. You know better what to do I can only guess.

Why don’t you convert the mp3 to something else that dosn’t have problems?

Sounds troublesome. (btw does ffdshow work for Linux?)
I’ll try with Audiere first. It seems to be light and simple. If I fail to get it working, then we’ll worry about another choice.

The problem is not with any music we distribute (then indeed it would be best to convert to to ogg or sth), it’s with original game music that is already present in MP3. Converting it would be much more trouble.
Finding a portable library for mp3 conversion is probably much harder than for simply playing. And I can’t force all people downloading VCMI to look for the converters and using them on their own.

What about GStreamer - it’s LGPL, crossplatform and very powerfull?