fheroes2: a from-scratch Heroes of Might and Magic II engine that still needs your original game files
fheroes2 is a recreation of Heroes of Might and Magic II game engine
At a glance
- What is it?
- fheroes2 reimplements the Heroes of Might and Magic II engine in C++ under GPL-2.0, with high-resolution graphics, a rewritten AI and its own asset pipeline. Here is how it installs, what it demands from the original game, and where it stops being the right choice.
- Who is it for?
- Adopt fheroes2 if you own Heroes of Might and Magic II from GOG or the Ubisoft Store (or run the free demo) and want high-resolution rendering, a rewritten AI and interface fixes on a desktop, Android, iOS or Switch build. Do not adopt it if you expect the repository to hand you a playable game on its own, or if you need a stable save format across upgrades: the release notes record save-data changes, and the README does not document rollback.
- Can I use it commercially?
- Yes, with conditions. GPL-2.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- Mainly C++, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What fheroes2 replaces, and what it deliberately does not
The original Heroes of Might and Magic II shipped a game engine and a set of data files that were inseparable. fheroes2 rewrites the engine half from scratch in C++ and leaves the data half where it was: on your disk, from a copy of the game you are expected to own. The README states plainly that all rights to the original game and its resources belong to former The 3DO Company and were transferred to Ubisoft, that the project does not encourage or support illegal usage, and that it advises buying the game on GOG or the Ubisoft Store. A free demo version is offered as an alternative path. That split is the whole shape of the project. You are not downloading a game; you are downloading a replacement executable and a set of rules for pointing it at assets you already have. The people this is for are specific: players who still own HoMM II and want it to run at modern resolutions, and C++ developers who want a real, large, CMake-and-Makefile codebase to work in. It is not for anyone looking for a standalone free strategy game, and the licensing section of the README makes no attempt to pretend otherwise.
How the engine, the assets and the AI fit together
The repository is organised around a clean separation. src/ holds the engine; files/ holds data the project ships or generates; maps/ holds map content; docs/ holds the guides; and the platform work lives in android/, ios/, VisualStudio/ and a set of platform-specific makefiles (Makefile.emscripten, Makefile.switch, Makefile.vita). The build system is dual: a CMakeLists.txt for the general case and a hand-written Makefile that exposes its own switches. That Makefile documents FHEROES2_STRICT_COMPILATION, which turns warnings into errors, FHEROES2_WITH_DEBUG, FHEROES2_WITH_ASAN for Address and UB sanitizers, and FHEROES2_WITH_TSAN for Thread sanitizer, with the note that ASAN and TSAN are incompatible with each other. A project that keeps sanitizer targets in its top-level Makefile is a project that expects contributors to hunt memory bugs, which fits a C++ reimplementation of a 1990s engine. On the gameplay side, the README describes the work as reproducing the original with improvements in gameplay, graphics and logic, listing high-resolution graphics, improved AI, numerous fixes and interface improvements, and it points to docs/GAME_IMPROVEMENTS.md for the full list. The AI rewrite matters more than it sounds: in a turn-based strategy game the opponent's decision quality is most of the difficulty curve, so a reimplemented AI changes the game you play, not just the pixels you see it through. The project also maintains a translation guide and a graphical artist guide, which tells you the asset and localisation work is an ongoing, separate track from the engine code.
Installing fheroes2: from the installation guide to a first game
The README does not carry install steps itself. It sends you to docs/INSTALL.md, and the download badges point at the GitHub releases page, where the release history shows 1.1.17 (2026-06-30), 1.1.16 (2026-05-17) and 1.1.15 (2026-04-12). Start by reading that guide for your platform, because the asset step is the part that trips people up. If you would rather build from source, the README points at docs/DEVELOPMENT.md, and the top-level Makefile is the shorter path on Linux and macOS. The Makefile header lists its build options as FHEROES2_STRICT_COMPILATION, FHEROES2_WITH_DEBUG, FHEROES2_WITH_ASAN and FHEROES2_WITH_TSAN, and notes that ASAN and TSAN cannot be used together. Those option names are the ones to pass to a build; the Makefile header is the place to confirm the exact invocation for your platform. Once the engine is built or unpacked, point it at the assets from your copy of the original game as described in docs/INSTALL.md, and the first launch should show the main menu rather than an asset error.
Where fheroes2 stops being the right tool
The hard boundary is the assets. If you do not have a legitimate copy of Heroes of Might and Magic II and do not want to buy one or use the demo, fheroes2 gives you an engine with nothing to render. That is not a bug to be worked around; it is the licence position stated in the README, and it means the project can never be a drop-in free download in the way an original open source game would be. The second boundary is save compatibility. The release history shows a steady cadence of patch releases (1.1.15 through 1.1.17 inside three months), and the README does not document rollback or a save migration policy. Anyone mid-campaign should treat a version bump as something to check against changelog.txt before applying, not as a background update. Third, the platform matrix is broad but uneven: the repository carries android/, ios/, VisualStudio/ and makefiles for Switch and Vita, while the README's own framing is a desktop project with ports attached. Mobile and console builds are the ones most likely to lag the desktop release, and the installation guide is the only place that can tell you the current state. Finally, if what you actually want is a Heroes engine that also plays Heroes of Might and Magic III, fheroes2 is the wrong project by definition. It recreates the second game.
VCMI is the other answer, and it solves a different problem
The comparison people reach for is VCMI, and the difference is architectural rather than a matter of polish. fheroes2 is a reimplementation of one specific engine: the README calls it a recreation of the Heroes of Might and Magic II game engine, written from scratch, with the improvements baked into the engine itself. VCMI takes the other route, building an engine layer that loads the original game's data and extends it, which is why it is associated with modding and with running more than one title in the series. The practical consequence for a reader is about where change happens. In fheroes2, a new behaviour is a code change in src/ plus an entry in docs/GAME_IMPROVEMENTS.md, and the project keeps its own translation and graphical-asset guides because it maintains its own content pipeline. In a data-driven engine, more of that lives in configuration and mod packages instead. Neither approach is strictly better. fheroes2's tighter scope is why it can claim a rewritten AI and a consistent interface across every screen; the wider scope is why the other project attracts mod authors. If your goal is to play HoMM II as faithfully as possible with modern rendering, the narrow engine is the point. If your goal is to modify the game's content, the narrow engine is a constraint.
Licence, maintenance and what an upgrade actually costs
fheroes2 is licensed under the GNU General Public License v2.0, and the LICENSE file sits at the repository root. For anyone embedding or redistributing it, that is the usual GPL-2.0 set of obligations around source availability and derivative works, and the Makefile header carries the standard warranty disclaimer. Nothing in the repository suggests a dual licence, a commercial exception or a contributor licence agreement, so the copyleft terms are the terms. The project asks for contributions through docs/FAQ.md and accepts donations via Patreon, PayPal and Boosty, with the README stating that donations go only to future development and that the project is not a source of income. On maintenance: the repository is not archived, and the last push was on 2026-09-23, so this is a codebase with current activity. The upgrade cost is not in the install; it is in the campaign. Patch releases arrive roughly monthly, and each one can carry logic and balance changes alongside fixes, which is exactly what docs/GAME_IMPROVEMENTS.md and changelog.txt exist to track. Budget the time to read them, and keep a copy of your save directory before you replace a binary mid-game. The repository does not document a downgrade path, so the copy is your rollback.
Editorial conclusion
Adopt fheroes2 if you own Heroes of Might and Magic II from GOG or the Ubisoft Store (or run the free demo) and want high-resolution rendering, a rewritten AI and interface fixes on a desktop, Android, iOS or Switch build. Do not adopt it if you expect the repository to hand you a playable game on its own, or if you need a stable save format across upgrades: the release notes record save-data changes, and the README does not document rollback. Verify first that your copy of the original provides the assets the installation guide expects, then read docs/GAME_IMPROVEMENTS.md and changelog.txt before you commit an existing save directory to a new release.
Frequently asked questions
How do I install fheroes2?
The README does not list install steps directly; it points to docs/INSTALL.md for the download and installation procedure, and the releases page carries the versioned downloads. Building from source is covered separately in docs/DEVELOPMENT.md. Either way you still need assets from a copy of the original game, which the README advises buying on GOG or the Ubisoft Store, or taking from the free demo.
How does fheroes2 compare with the original Heroes of Might and Magic II?
The README describes fheroes2 as reproducing the original game with significant improvements in gameplay, graphics and logic, naming high-resolution graphics, an improved AI, numerous fixes and interface improvements. The complete list of changes lives in docs/GAME_IMPROVEMENTS.md. It is a rewritten engine, not a patch applied to the original executable.
How does fheroes2 compare with VCMI?
The repository only establishes fheroes2's side of this: it is a from-scratch recreation of the Heroes of Might and Magic II engine, with changes made in the engine code and tracked in docs/GAME_IMPROVEMENTS.md. The project does not discuss VCMI or compare the two, so any claim about how the other project differs would go beyond what the source supports.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/ihhub-fheroes2)