What is nation swapping? Unfortunately, EHM does not have the in-born capacity to generate new countries, languages for these countries, specifics and naming conventions. We have to resort to using what's readily available in the database and convert it to our use. As many people have found to their frustration, they are unable to replicate either historical nations (such as the Soviet Union) or invent new ones (like say Quebec). For the most part, I feel nations are something aesthetic to the game; I'd still play EHM if it was all Uzbekistanis (I'd love it more even), but for a few of the ongoing projects here it's something you want to indulge in. It's actually very, very easy to do, looks great in-game and with Archie's new national reputation modifier, is a fruitful enterprise.
So how do we do it? You will need a hex editor. I recommend hxd, as it's reliable, cheap and free.
You are going to need to access three files (make back-ups! always make back-ups!). Firstly, you will need the EHM .exe file, secondly the nation.dat file and thirdly the nat_club.dat I'll walk you through a normal nation swap by text first, and I'll add images/evidence later.
So, there are three ways to swap a nation:
(1) You can change the name of a national unilaterally, without swapping it out for any other nations (i.e., I have changed the name of "Guadeloupe" to "Quebec"). This is the easiest change to make, if you edit reputations the most effective, and will produce the fewest crashes if you get it wrong.
(2) You can change the name of a nation unilterally and replace it with another nation. For instance, replace the United States with Russia, and Russia with say the (since Russia won't fit) U.S.A. I have only managed to do this aesthetically; if you actually swap two nations with their full code, it seems to create a lot of instability in the game and it will crash (often). I feel this has something to do with the rules each nation calls for their various leagues, and it certainly can be done; but we'll probably need to .csv the file and have a more clear picture of its parameters. I'm going to leave this option out for now, and show you how to do (1); but I'll play around with this in future and see if I can't produce some positive effects in the future.
So, "swap" isn't the word we want to use for this nation change, so I'm just going to say edit. Anyway, right to it: open up your hex-editor, whatever it might be, and upload the .exe, nation.dat and nat_club files. Starting with the .exe, control f the nation you want to swap and type in its full-name as it appears in game. Since I mentioned it already, let's go with Guadeloupe. Type it in, and you should come across something that looks like this in text:
Code: Select all
ce..Grenada.Guadeloupe..Guam....Guatemala...Guinea..Guinea-Bissau...Guyana..Haiti...Honduras....
Code: Select all
ce..Grenada.Quebec......Guam....Guatemala...Guinea..Guinea-Bissau...Guyana..Haiti...Honduras....
Code: Select all
63 65 00 00 47 72 65 6E 61 64 61 00 51 75 65 62 65 63 00 00 00 00 00 00 47 75 61 6D 00 00 00 00 47 75 61 74 65 6D 61 6C 61 00 00 00 47 75 69 6E 65 61 00 00 47 75 69 6E 65 61 2D 42 69 73 73 61 75 00 00 00 47 75 79 61 6E 61 00 00 48 61 69 74 69 00 00 00 48 6F 6E 64 75 72 61 73 00 00 00 00
Okay, now you have an idea of how to change the name of a nation. So what's left to edit? Well, in the .exe there's another instance of this, only it's further down in the file. Control-f Guadeloupe again and you should find it; only this time it's in caps. Change the name to Quebec again, make sure you backed up and go ahead and save.
Now if you start the game, you may encounter problems or it may work (I've had both depending on the nation); but what's for sure is even if your changes work for a time, they will be overwritten by the nation.dat and nat_club.dat. Switch over to the nation.dat and you'll see why. Control-f Guadeloupe and you'll notice it did not change to Quebec; in-fact, it has all the major nation information you probably wanted to change in the first place! There are four values for us here to change: the abbreviated name, nation name, nation short name and nation denonym. I'll show you an example of how I've edited it below:
Code: Select all
QUE.....ô.Quebec.....ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ.Quebec.....ÍÍÍÍÍÍÍÍÍÍÍÍÍÍ.Quebecois....ÍÍÍÍÍÍÍÍÍÍÍÍ
Back-up and save your file, then move onto the last and final frontier: the nat_club file. This is a sinch now that you've got a hand on the rest of the editing done. All you have to do is control-f Guadeloupe and change the three parameters (nation abbrev., nation name and nation short-name) to match the changes you made in the nation.dat. Once you've made the first change, control-f Guadeloupe again and down the line you should find a second Guadeloupe national club. Make the same changes, save, exit.
Now if you did this all correct, your changes should take place, and you'll end up with Guadeloupe now having been fully changed to Quebec! Of course if you want any players to show up as this you'll need to edit them to be from Quebec. You'll also need to change any cities to Quebec if you want them to regen with a Quebec nationality and appropriate birthplace. You'll also need to change the clubs to being from Quebec, and then put in logos in a "Quebec" folder and not "National Hockey League" folder, or some such else. And you thought your work was done

Once upon a time ago this was virtually impossible to complete, with 10,000+ players in the database, a clunky editor and cities being a daunting task; but thanks to Archie, not only is this possible, it's downright easy with his EHM Updater. The only part that might seem frustrating is the city nation-swapping; but fear not! I have also figured out how to do this in a quick, easy and painless way; such that I have created an EHM 2005 database where I've constructed nations based on each region of Canada/United States (i.e. New England, The Maritimes, etc.) without physically going through the editor and changing every nation value! Actually it probably only took me like, 20... maybe 30 minutes tops.

I'll post a tutorial on that after I've prettied this one up. If you any questions, concerns or helpful tips how this can have more clarity; feel free to post.