Ok so i managed to do what you wanted, will post what i did
1. Edit the ChrRaces.dbc column 1 change the 12 to anything else for the ones you want to disable
2. Find CharacterCreate.lua and change the MAX_RACES = to 4 then find
RACE_ICON_TCOORDS = {
Delete all the icon cords that arnt needed so if the races you want to keep enabled are the Human, Nightelf, Tauren and orc so it would look like this
RACE_ICON_TCOORDS = {
["HUMAN_MALE"] = {0, 0.125, 0, 0.25},
["NIGHTELF_MALE"] = {0.375, 0.5, 0, 0.25},
["TAUREN_MALE"] = {0, 0.125, 0.25, 0.5},
["ORC_MALE"] = {0.375, 0.5, 0.25, 0.5},
["HUMAN_FEMALE"] = {0, 0.125, 0.5, 0.75},
["NIGHTELF_FEMALE"] = {0.375, 0.5, 0.5, 0.75},
["TAUREN_FEMALE"] = {0, 0.125, 0.75, 1.0},
["ORC_FEMALE"] = {0.375, 0.5, 0.75, 1.0},
};
Save it and close it
3. Find CharacterCreate.xml
then find <CheckButton name="CharacterCreateRaceButton1" inherits="CharacterCreateRaceButtonTemplate" id="1">
Replace that with
<CheckButton name="CharacterCreateRaceButton1" inherits="CharacterCreateRaceButtonTemplate" id="1">
<Anchors>
<Anchor point="TOP" relativePoint="TOP" x="-50" y="-61"/>
</Anchors>
</CheckButton>
<CheckButton name="CharacterCreateRaceButton2" inherits="CharacterCreateRaceButtonTemplate" id="2">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="CharacterCreateRaceButton1" relativePoint="BOTTOMLEFT" x="0" y="-21"/>
</Anchors>
</CheckButton>
<CheckButton name="CharacterCreateRaceButton3" inherits="CharacterCreateRaceButtonTemplate" id="3">
<Anchors>
<Anchor point="TOP" relativePoint="TOP" x="50" y="-61"/>
</Anchors>
</CheckButton>
<CheckButton name="CharacterCreateRaceButton4" inherits="CharacterCreateRaceButtonTemplate" id="4">
<Anchors>
<Anchor point="TOPLEFT" relativeTo="CharacterCreateRaceButton3" relativePoint="BOTTOMLEFT" x="0" y="-21"/>
</Anchors>
</CheckButton>
Pack it into a MPQ Then it should work
Anyone had luck getting this to work lately? One thing I noticed is that it looks like columns are different in my 3.3.5a (12340) chrRaces.dbc. Column one is the race ID and column 2 is the one that I can enable and disable races. Other than that, I followed this list verbatim but am getting a LUA error and alll the class buttons are showing the entire BLP instead of their individual class icons (same with the race and class round icons above the descriptions).
The error I'm getting is "InterfaceGlueXMLCharacterCreate.lua: 257: attempt to index a nil value"
Line 257 is the getglobal function for CharacterCreateRaceButton when the id comparison to the for loop iterator is false.
My MAX_RACES is set to 4 (only using human, dwarf, orc, and blood elf initially)
My BLPs have been edited to remove the other races
My RACE_ICON_TCOORDS have been updated to pull from the correct BLP positions (the four races show up correctly on the flags and the gender icons are correct then everything goes to hell lol)
The frame definitions match what is posted verbatim
All races except the four mentioned above have been set to 1 in chrRaces.DBC, the four above set to 12
Updated xml/lua files copied to Interface/GlueXML within my MPQ build folder
Updated BLP files copied into Interface/GLUES/CHARACTERCREATE within my MPQ build folder
Updated usrRaces.dbc file copied into DBFilesClient within my MPQ build folder
Patch-enUS-4.MPQ created within my Client335aNoggit/Data/enUS folder
I have made no changes serverside since I am just removing access to races from the client creation process. I did start setting up my dev environment for serverside today though but am currently using Steff's Trinity compile that comes within the Noggit tutorial download.
Also it appears that the gender buttons have quit working. The only icons that show are female and when I click Male, I get another lua error: "InterfaceGlueXMLCharacterCreate.lua: 413: attempt to index global 'CharacterCreateGenderButtonMaleHighlightSetText ..." (can't read where ... is... close button covers it up).. But that line of code is within the SetCharacterGender function when the female button is pressed.
Thanks in advance for any thoughts and/or suggestions!