
Leveling-Up in Heroes of Might and Magic III (2008) [pdf] - MrJagil
https://www.cs.virginia.edu/diochnos/research/other/heroes/internals/on_skills.pdf
======
SXX
That's exciting someone made a scientific paper on leveling up in H3.

Shameless plug: if anyone with C++ experience want to mess with almost
complete Heroes 3 engine check our project:
[https://github.com/vcmi/vcmi](https://github.com/vcmi/vcmi)

~~~
Darmani
Cool to see a VCMI developer here. I'm the creator of Project Ironfist, the
Heroes 2 mod that works by some seriously cool binary modification tech
(www.ironfi.st).

~~~
SXX
That's neat art on here, but might be you should at least add link to github
on website. Also I unsure whatever one can actually apply free license on
reverse engineered code, but at least some licensing information would be
expected.

One question, why wasn't it built on top of Free Heroes 2? Though I suppose
for the same reasons why some people preferred to work on ERA / WoG / HotA
instead of rewriting engine from scratch.

~~~
Darmani
Exactly as you said. It's a lot easier to make something better than the
original game when you start with the original game, instead of trying to get
a million subtle things right.

Also, developing on fheroes2 is not necessarily easier. Our tech lets us mod
the game almost as easily as if we had the original code.

~~~
SXX
I think it's depend on goals. I started contribute to VCMI because I wanted
seamless maps, more layers than two, simultaneous turns, advanced path finding
and smarter AI. All of it is very hard to implement with reverse engineering
if possible at all.

Of course there are some very talented programmers who able to achieve almost
anything, but it's nearly impossible to get external contributors into project
like that and if main developers lose interest there usually no one to
continue their work.

~~~
Darmani
Totally. Although, I think you underestimate just what you can do with
modding; some of the things you mentioned sound like they would be about as
easy to do in Ironfist as in a rewrite.

Here's one way to put it: the amount of programming work that has gone into
fheroes2 is several times that of Ironfist. Because of our approach as a mod
instead of a rewrite, in a lot of ways, we are far ahead of them.

Everyone wants a rewrite. Sometimes, you have to ask how many resources you
have.

(On a different note, from my last few investigations, there's a lot that I
don't like about the fheroes2 codebase which provide independent reasons for
not using it. Rewrites are not created equal. Apologies to any fheroes2 devs
reading this.)

~~~
SXX
It's not like I underestimate modding, but I just try to not overestimate my
own abilities. Reverse engineering require significantly higher programming
skills or ability to learn and a lot of time.

Even in that case most of attempts to get something to playable state end up
with nothing simply because there are rarely more than one expert who want to
work on the same project.

With code created from scratch there is better chance someone else could
continue the work if it's wasn't completed by original author.

~~~
Darmani
Got it, except.....doing something like VCMI in some ways requires more
reverse engineering. I'm confused. Maybe explain your reasoning in more
detail?

~~~
SXX
Sorry for delayed answer, but hopefully you'll still read it. I do agree that
on some stage VCMI required plenty of reverse engineering, but even in this
case developer who work on clean reimplementation don't really have to
understand how original game worked. Of course you need to know how to read
original assets formats, but that's all about it.

Also any developer who join project after some initial stage could simply
don't care about any limitations original game code had. Like I personally use
H3 a lot as reference, but I never ever needed to go into IDA or check
assembly listing.

I suppose you can have completely different view on that because you're
expert, but for overall person who just starting to do C++ coding it's all
looks extremely scary. Even now when I understand it's just require a lot of
learning and motivation I simply can't justify do such investment.

~~~
Darmani
Yep, it's definitely true that the programmers on the Ironfist team have all
gotten used to browsing through the decompiled listing of the original game's
code, and the ones who have been on the project longer have all learned some
IDA. (Though it's almost never that any of us needs to look at the assembly.)
I'll agree that is a difference. It still seems to be splitting hairs to talk
about the difference being knowing how the original game works, vs. knowing
how your reimplementation works.

~~~
SXX
This is the difference that was important to me since when I started to work
on VCMI my C++ experience was limited to creating tools in Qt. I also made few
attempts to work on number of other projects before that, but never
contributed anything back because code wasn't nearly good enough.

I could be biased too, but for many contributors I knew (in open source games,
not just VCMI) C++ programming is no more than hobby and if barrier to entry
is too high they would likely never start contributing in the first place.

PS: If you ever going to have time and interest in checking VCMI feel free to
jump to our slack! We always benefit from advice or two given.

~~~
Darmani
Well, all I can say is: We have some very junior programmers on the team, who
are managing pretty well.

(Hmmm, it would totally be cool to "visit" VCMI and see how you guys run
things.)

~~~
SXX
I think it's depend on where you stand. I do have plenty of useful skills and
expertise in many areas, but when it comes to C++ development it's likely that
I'm nowhere close to "very junior programmer" with proper education. Might be
I'll try to get a job in future and will know for sure, but at moment I feel
best I could hope for is some QA position.

And a lot of open source contributors are like that especially when it's come
to games since there no one to pay for development. There are number of games
that have very skilled people on team (VCMI has @alexvins), but usually they
started with very basic things and learned along the way. As our project
originator who still around, but no longer contributes said: when programmer
get good enough he get a job and no longer have time for contributing. :-)

Another thing even is that gap in education quality is huge around the world.
We have many people from Poland since H3 is very popular there and sadly even
after computer science course their knowledges are much worse than mine and
skill of practical development is none. Disclaimer: I don't have any education
and situation usually much worse in Russia where I live.

------
leni536
My friend also wrote up a latex paper, it was about digging for the Grail. He
can efficiently aim for the Grail.

~~~
bmh100
Please share. I would definitely be interested in reading it.

------
sizeofchar
Wow! This will be incredibly didactic for use in my classes for writing of
academic papers. Thank you!

------
Zardoz84
I'm the only none that consider the skill system and magic system of Heroes of
M&M IV better ? These game had good and bad points (less castles that a a
fusion of the old castles of H&H 3! ), but the way of levelling and focusing a
hero was very powerful.

------
bitxbitxbitcoin
I wonder how many hours went into this - in both gameplay and writing.

Always great to see a Virginia URL, as well!

------
howscrewedami
Diplomacy all the way.

~~~
Kenji
I'll take Earth Magic, thank you very much.

~~~
bitxbitxbitcoin
Why? Town Portal.

~~~
conanbatt
I think the reason earth is truly broken is slow. Makes no sense that a lvl 5
can cast extreme slow on an entire army and just range-it away.

Town portal was clearly put in there to patch the terrible expeirence of
spending 2 hours to move a heroe across the map. But no reason for slow to be
so imbalanced!

~~~
chrchang523
I find it interesting how later iterations of the game fixed the Mass Slow
problem, but (perhaps with the exception of the King's Bounty reboot)
generally weren't considered as fun to play.

