well im not going to explain it step by step but general areas you need to look for,
1: create a new Player(race).entity
2: create all the buildings for that race and reference them in Player(race).entity
3: create all ships and then reference them in Player(race).entity (if y ou add new ships make sure they they all have proper dummy points that are named correctly, this can cause a mini dump, also make sure you have added the mesh name in the mesh line of the ship file)
4: make sure you reference the new race in the GalixyScenarioDef.galixyscenariodef file, there is a lot of points that need to be VERRY carefully modifyed, DONT forget to increase the numbers in each catagory as you add in new line.
5: create new research and reference it in Player(race).entity.
6: create new abilities for all buildings/ships you created that need them
7: in GalixyScenarioDef.galixyScenarioDef file make sure you add a new picture group for your race as well as a theme group.
8: Create a new Player(Race).playerPictures and Player(race).playerThemes files referencing any new player portrates/themes you add, or just coppy the location of an existing one if your creating a new race and dont want to add in new pictures (the texture folder contains the pic's themselves).
9: make sure you were consistanct all the way through and make sure you changed numbers as you added items.
10: make sure all your new units/buildings/anything elce you created has names and descriptions in the string.entity files.
11: make sure that when you add new stuf to entrenchment you modify the entity.manifest so that entrenchment will load that specific file. same goes for the other manifest files (like the themes and galixy manifest)
there might be more but im kinda tired and cant really think verry well at this moment in time. so if someone elce does not add something more in i will later on.
on another note, when moding it always helps to turn error messages on in your settings folder (one folder up from your mod folder). in the user.settings file you will find
LogOutput TRUE
ShowErrors TRUE
these are near the bottom, around 5-6 lines up, make sure they read TRUE (default is FALSE)