JRandomNames Mod

Jeckel

Great Reverend
Joined
Nov 16, 2005
Messages
1,637
Location
Peoria, IL
I've always like naming my units, or atleast them having names, but most of the naming mods I've seen fit a small portion of the units and just seem weird on the rest of them.

Take two of the best naming mods out there, Random Civilization Names by TheLopez and NexusNames by Nexus as used in Unit Statistics by Teg Navanis.

The civ specific names in TheLopez's name mod are great for settlers, workers, and most early era land units, but it just seems weird to me to have tank, galleons, and such named Booker and Fredrick.

On the other side, Nexus's naming system works great for later era military units, but it's names don't work well for non military units and early era units. Maybe its just me, but I can't connect with a warrior named 1st army 2nd corp 8th div, just doesn't do it for me.

This is why I have written this mod. It takes all the naming mods I can find and incorporates them together. On top of just throwing these mods together, I have also whipped up a highly configurable ini options that allow you to control what form of naming is used with what units.

Please report any and all errors, bugs, or exceptions that arise.


File: JRandomNames_v0.41.zip
Compatible: Civ4 v1.61 and Warlords
Mod Folder: Mods\JRandomNames
Released: July 20, 2006
Size: 129.4 kb

CivFanatics: JRandomNames Mod v0.41 *Beta* File Updated * September 19, 2006*


Spoiler Version History :
###################################################################################################

v0.1

General Notes:
Started with RandomNameUtils.py by TheLopez.
Reformed the code to fit with Dr Elmer Jiggle's CvCustomEventManager.
Changed code to give Civilization specific names.
Added code to keep a record of what names have been given.


###################################################################################################

v0.2

General Notes:
Got all the code working together and functional.

###################################################################################################

v0.3

General Notes:
Rewrote all the code.
Moved each Name Generation Engine into its own module file.
Added in loadConfig method.

Config INI Notes:
Added in config options to control what units get names.
Added in options to control what Name Engine is used to name units.

###################################################################################################

v0.35

General Notes:
Polished up code.
Fixed exceptions that popuped and got units named ingame.
Pelim tests show new config options to be working.


###################################################################################################

v0.36

General Notes:
Added loadConfigData methods to the Nexus Engines.
Added loadConfigData methods to the TheLopez Engines.


Config.ini Notes:
Broke JRandomNames Mod Config.ini down into two files, one with the basic options and another with advanced options.
Moved the default era options into their own config.ini file.
Moved Nexus Engines' options into their own config.ini file.
Added two options to Nexus Unit Count Names engine.
Made basic Nexus options specific to the Nexus Army Names, Nexus Navy Names, and Nexus Air Names engines.
Created config.ini file for TheLopez Engines.
Added first 6 options for TheLopez's TheLopez Random Civilization Names engine.
Added first 6 options for TheLopez's TheLopez Random Names engine.
Created config.ini file for Rathelon Generic Military Naming engine.
Added first 7 options for Rathelon Generic Military Naming engine.

Error Notes:
Found error, 'Nexus Unit Count Names' is not useing name recycling. Will be fix in next version.

ModComp Notes:
Added in AIAutoPlay by jdog5000.


###################################################################################################

v0.37

General Notes:
Some fine tuning and bug fixing.
Moved barbarian naming to its own file and made it as controlable as Human unit naming.


Python Notes:
Updated INI Parser, CvConfigParser.py and CvPath.py files.
Updated CvCustomEventManager.py file.


Naming Engine Notes:
Added 'sen2000 Roman Numeral Names'
Added 'Jimdigriz City Names Unit Naming'
Added 'Jeckel National Naming'.


Config.ini Notes:
Added config.ini file 'JRandomNames Barb Era Defaults Config.ini'.
Added config.ini file 'JRandomNames Barb Advanced Config.ini'.
Added config.ini file 'Jimdigriz Engine Config.ini'.
Added config.ini file 'sen2000 Engine Config.ini'.
Added config.ini file 'Jeckel Engines Config.ini'.


###################################################################################################

v0.38

General Notes:
Updated for Warlords compatability.
Fixed naming error in JRandomNames Mod Config.ini file, now reads JRandomeNames Features Enabled.
Fixed CvJRandomNamesEventManager.py file, JRandomeNames Features Enabled no longer static from game start.


###################################################################################################

v0.39

General Notes:
Removed AIAutoPlay Mod until jdog5000 updates it to Warlords.
Fixed serveral issues to make all Naming Engines work with Warlords.


###################################################################################################

v0.4

General Notes:
Fixed a glitch that kept Great People from getting renamed.
Fixed several glitches that were throwing off the build count in certain engines.
Removed seperate barbarian naming code and config.ini files.
Wrote up some info in the Readme.txt file.


###################################################################################################

v0.41

General Notes:
Updated Dr Elmer Jiggle's INIParser to official Warlords compatable version.

###################################################################################################
 
Alright the basics are now done. Couple things...

1) I'm sure there is a small error or two, so if you find them please report them. :)

2) I need more naming engines. If you have an idea for a way to name units, cities, or even buildings, post them and I will see what I can do about integrating it.

3) The next upgrade I am working on for this mod is a better way to name the early era ships, so if you have a favorite ship name let me have it and I'll add it into the list.

4) Lastly, I am also working on a way to name units based on the city they were built at, example 1st Boston Worker or 8th Beijing Warrior. This was suggested by Jimdigriz in the ModComponent request thread.

Thats it for today. :)

EDIT:

I reread and relized I didn't really explain how the various Naming Engines are implemented.

In the various config ini files you are able to set which naming system is used per unit, per unit class, per unit combat, and you can also set a default naming engine per domin for each era. You can declare which era to start naming units and which era to stop naming units. You can set whether or not barbarians get unique names, whether humans get random name, and whether AI units get random names. In the spoiler below is the Mod Config.ini file. I hope this shows the versitility with which unit naming can be controlled. At the moment the only limitation is small number of Naming Engines the mod has, but this will be rectified as I get more naming system ideas. Currently 3 new Naming Engines are in the planning stages. :)

Spoiler JRandomNames Mod Config.ini *Updated v0.37* :
[JRandomNames Mod]
; ###################################################################################
; ## ##
; ## This config.ini file has the main options allowing you to control ##
; ## what units get random names. These switches supercede all other options. ##
; ## ##
; ###################################################################################


; This option allows you to turn the JRamdomNames Mod on or off.
; True - This will activate the JRandom Names Mod.
; False - This will deactivate the JRandom Names Mod.
; Default = True
JRandom Names Features Enabled = True



; This option allows you to set a single Naming Engine to use for all units.
; This will supercede all setting in all other config.ini files for all units.
; You can set the Naming Engine to use in the next option.
; True - Use only one Naming Engine.
; False - Use multiple Naming Engines.
; Default = False
Use Only One Naming Engine = False



; If 'Use Only One Naming Engine = True'
; This setts the single Naming Engine to be used for all unit naming.
; You many choose any of the sample naming engines below.
; For a complete list of all available Naming Engines
; check the 'Valid_Naming_Engines_Readme.txt' file in
; the 'JRandomNames\Assests' directory
; ----------------------------------------------------------------------
; Sample Naming Engines:
;
; -Jeckel National Naming
; -Jimdigriz City Names Unit Naming
; -sen2000 Roman Numeral Names
; -Rathelon Generic Military Naming
; -TheLopez Random Names
; -TheLopez Random Civilization Names
; -Nexus Unit Count Names
; -Nexus Army Names
; -Nexus Navy Names
; -Nexus Air Names
; -----------------------------------------------------------------------
; Default = Jeckel National Naming
Only One Naming Engine = Jeckel National Naming



; This option turns barbarian random naming on and off.
; True - Barbarians get random names
; False - Barbarians do not get random names
; Default = True
Barbarian Units Receive Random Names = True



; This option turns the random naming of AI units on and off.
; True - AI units get random names
; False - AI units do not get random names
; Default = True
AI Units Receive Random Names = True



; This option turns the random naming of human units on and off.
; True - Human units get random names
; False - Human units do not get random names
; Default = True
Human Units Receive Random Names = True



; This option turns the random naming of land units on and off.
; True - Land units get random names
; False - Land units do not get random names
; Default = True
Land Units Receive Random Names = True



; This option turns the random naming of sea units on and off.
; True - Sea units get random names
; False - Sea units do not get random names
; Default = True
Sea Units Receive Random Names = True



; This option turns the random naming of air units on and off.
; True - Air units get random names
; False - Air units do not get random names
; Default = True
Air Units Receive Random Names = True



; This option allows you to use random naming for Great People or to
; use the normal Great Person naming.
; True - Great People get random names
; False - Great People get normal Civ4 Great People names
; Default = False
Great People Reveive Random Names = False



; This option sets the first era units can receive random names when they are created.
; Units will receive random names in this era but not in eras before this one.
; Default = ERA_ANCIENT
First Random Naming Era = ERA_ANCIENT



; This option sets the last era units can receive random names when they are created.
; Units can receive random names in this era but not in eras after this one.
; Default = ERA_MODERN
Last Random Naming Era = ERA_MODERN



Spoiler JRandomNames Era Defaults Config.ini :

; ###################################################################################################
; ## ##
; ## This config.ini file lets you set the default Naming Engine used in each Era. In each Era you ##
; ## are allowed to define a different Naming Engine for each of the three Unit Domains, Land, ##
; ## Sea, and Air. ##
; ## ##
; ###################################################################################################

; Defualt Naming Engines

; These sections, unless otherwise stated, are set to one of the following valid Naming Engines.
; The sample Naming Engines are as follows (see 'Valid_Naming_Engines_Readme.txt'):
;
; -No Random Name
; -Rathelon Generic Military Naming
; -TheLopez Random Names
; -TheLopez Random Civilization Names
; -Nexus Unit Count Names
; -Nexus Army Names
; -Nexus Navy Names
; -Nexus Air Names



; Below you can set default engines for each domain per era. Below you will find the standard eras
; in inside brackets, example [ERA_ANCIENT] or [ERA_MODERN]. Right below the bracketed era header
; will be three options, one for land units, one for sea units, and one for air units. Each of these
; three options can be set to one of the naming engines list above. If you wish for a domain units to
; not have a new name then set it equal to the first value above, ie No Random Name.

; Note:
; This is done by the Player's current era when the unit is created, not by any prereqs of the unit itself.

; Note:
; Modders, if you add new eras to your game, you can just add them into the list below and they should
; work just find.

[ERA_ANCIENT]

; This is for land units.
; Default = TheLopez Random Names
Default Land Naming = TheLopez Random Names

; This is for sea units.
; Default = Nexus Unit Count Names
Default Sea Naming = Nexus Unit Count Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names


[ERA_CLASSICAL]

; This is for land units.
; Default = TheLopez Random Civilization Names
Default Land Naming = TheLopez Random Civilization Names

; This is for sea units.
; Default = Nexus Unit Count Names
Default Sea Naming = Nexus Unit Count Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names


[ERA_MEDIEVAL]

; This is for land units.
; Default = TheLopez Random Civilization Names
Default Land Naming = TheLopez Random Civilization Names

; This is for sea units.
; Default = Nexus Unit Count Names
Default Sea Naming = Nexus Unit Count Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names


[ERA_RENAISSANCE]

; This is for land units.
; Default = TheLopez Random Civilization Names
Default Land Naming = TheLopez Random Civilization Names

; This is for sea units.
; Default = Nexus Unit Count Names
Default Sea Naming = Nexus Unit Count Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names


[ERA_INDUSTRIAL]

; This is for land units.
; Default = Rathelon Generic Military Naming
Default Land Naming = Rathelon Generic Military Naming

; This is for sea units.
; Default = Nexus Navy Names
Default Sea Naming = Nexus Navy Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names


[ERA_MODERN]

; This is for land units.
; Default = Rathelon Generic Military Naming
Default Land Naming = Rathelon Generic Military Naming

; This is for sea units.
; Default = Nexus Navy Names
Default Sea Naming = Nexus Navy Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names


[ERA_FUTURE]

; This is for land units.
; Default = Nexus Army Names
Default Land Naming = Nexus Army Names

; This is for sea units.
; Default = Nexus Navy Names
Default Sea Naming = Nexus Navy Names

; This is for air units.
; Default = Nexus Air Names
Default Air Naming = Nexus Air Names



Spoiler JRandomNames Advanced Config.ini :

; ########################################################################################
; ## ##
; ## This config.ini file lets you have more specific control over what units use which ##
; ## Naming Engine. ##
; ## ##
; ########################################################################################





; The following sections allow finner control over the engine used to name individual unit types.
; There are three types of data that can be entered below.
; The first type of data is a unit type, example UNIT_WARRIOR or UNIT_EXPLORER.
; The second type of data is a unit class, example UNITCLASS_SETTLER or UNITCLASS_WORKER.
; The third type of data is a unit combat, example UNITCOMBAT_GUN or UNITCOMBAT_MELEE

; You then set one of the 3 types of data equal to a valid Naming Engine and you are good to go.
; The Naming Engines declared here override the defaults set above for the whole game.
; The computation order is:
; -Unit Type
; -Unit Class
; -Unit Combat
; -Default Era
; The code starts with Unit Type and only moves to the next declared engine if no name is returned
; on the current one.

; The sample Naming Engines are as follows (see 'Valid_Naming_Engines_Readme.txt'):
;
; -No Random Name
; -sen2000 Roman Numeral Names
; -Rathelon Generic Military Naming
; -TheLopez Random Names
; -TheLopez Random Civilization Names
; -Nexus Unit Count Names
; -Nexus Army Names
; -Nexus Navy Names
; -Nexus Air Names

[JRandomNames Advanced]

; Enter Unit Types and their Naming Engine.
; Examples:
UNIT_WARRIOR = Rathelon Generic Military Naming
; UNIT_SPEARMAN = No Random Name
; UNIT_AXEMAN = Nexus Army Names

UNIT_TANK = Nexus Army Names
UNIT_DESTROYER = Nexus Navy Names
UNIT_FIGHTER = Nexus Air Names

UNIT_SETTLER = TheLopez Random Names
UNIT_WORKER = TheLopez Random Civilization Names
UNIT_SCOUT = Nexus Unit Count Names

; Enter Unit Classes and their Naming Engine.
; Example:
; UNITCLASS_EXPLORER = sen2000 Roman Numeral Names


; Enter Unit Combats and their Naming Engine.
; Example:
; UNITCOMBAT_GUN = Nexus Unit Count Names



In the spoiler below you can find spoilers containing a short description and a screen shot for each of the Naming Engines.

Spoiler Currently Valid Naming Engines :


Spoiler TheLopez Random Names Engine :
TheLopez Random Names

This Naming Engine creates random names. These names tend to have a "Northern Barbarian" sounding names.



Spoiler TheLopez Random Civilization Names Engine :
TheLopez Random Civilization Names

This Naming Engine also creates random names. These names are based on your civilization.
The following example names are for the American Civilization.



Spoiler Rathelon Generic Military Naming Engine :
Rathelon Generic Military Naming

This Naming Engine creates random names. These names are in the form of military designations, but are random and generic.



Spoiler Jeckel National Naming Engine *Added v0.37* :
Jeckel National Naming

This form of naming puts the adjective form of the building Empire's name into the units name.
pictrue to go here



Spoiler Jimdigriz City Names Unit Naming Engine *Added v0.37* :
Jimdigriz City Names Unit Naming

This naming convention puts the name of the city building the unit into the units name.
pictrue to go here



Spoiler sen2000 Roman Numeral Names Engine *Added v0.37* :
sen2000 Roman Numeral Names

This naming engine uses roman numerals instead of numbers.
pictrue to go here



Spoiler Nexus Unit Count Names Engine :
Nexus Unit Count Names

This is a simple Naming Engine that names units based on the number of that type of unit that has been built.



Spoiler Nexus Army Names Engine :
Nexus Army Names

These names are non random.



Spoiler Nexus Navy Names Engine :
Nexus Navy Names

These names are non random.



Spoiler Nexus Air Names Engine :
Nexus Air Names

These names are non random.


 
Sounds good, downloading now.

Jeckel said:
2) I need more naming engines. If you have an idea for a way to name units, cities, or even buildings, post them and I will see what I can do about integrating it.

This might be difficult to do, but my manual naming convention is to keep the the unit unnamed until it's first victory and then name it using the following model:

If it defeats an enemy within its own (i.e. your) territory, it gets the 'Royal' tag, based on chronological order across all unit types, with the final part being dependent on the unit type. For example, the first unit to win in your own territory could be called 1st Royal Archers, the second could be 2nd Royal Horsemen and the third could be the 3rd Royal Archers.

If it wins its first battle when defending one of your cities, it earns the 'City Guard' tag in place of any unit type tag, along with the city name. This is chronological across units defending that city only. So, two different Axeman units in two different cities could be called '3rd Berlin City Guard' and '3rd Frankfurt City Guard'.

Defeating an enemy unit in open unclaimed or enemy territory (i.e. no city involved), it earns the tag 'Raiders'. I'm toying with having a different tag for each era, e.g. 'Skirmisher' for Ancient, 'Raider' for Medieval, 'Guerilla' for 'Renaissance' and 'Commando' for modern.

If it conquers a city, it acquires that city name. If a group occupy a newly conquered city all in the same turn, they are name in chronological order of when they enter the city. So, a Musketeer created in Paris that captures Stalingrad would be called the 1st Stalingrad Musketeers.

Certain universal naming precedents take place over the unit type method outlined above. For example, if the Musketeer mentioned above captured the city via an amphibious attack, it would be called 1st Stalingrad Marines - even though it wasn't a Marine unit. Similarly, if your MKIV/Tank/Modern Armour unit defeated an enemy within your own territory, it would not be called 23rd Royal Tank (or whatever), but 23rd Royal Armoured. Finally, all artillery units get 'Bombardiers' in place of a specific unit type. Where there is conflict between these protocols, 'Marine' gets lowest priority. For example, if my artillery unit was the 6th Trebuchet unit to have captured Kyoto, but the first to have done so via amphibious attack and 3rd into that city on the turn of conquering, it would be called '6th Kyoto Bombardiers' and not '3rd Kyoto Marines'

Note, that I never change a unit's unique name once it has acquired one.

I find this to be a good 'RPG' way of playing the game and allows me to tell, at a glance, the rough history of a unit. This helps me to emotionally invest in the game.

Jeckel said:
3) The next upgrade I am working on for this mod is a better way to name the early era ships, so if you have a favorite ship name let me have it and I'll add it into the list.

Again per my manual naming models, I use female names for transports and aggressive names for combat units. For example:

Transports (e.g. galleys, caravels, galleons and transports)
'Mary Jane'
'Queen Bess'
'Lady Luck'
etc.

Aggressives (e.g. Frigate, Ship of the Line, Destroyer, Battleship)
'Dauntless'
'Aggressor'
''Dominator'
'Ulysses'
'Juggernaut'
etc.

Jeckel said:
4) Lastly, I am also working on a way to name units based on the city they were built at, example 1st Boston Worker or 8th Beijing Warrior. This was suggested by Jimdigriz in the ModComponent request thread.

I would use this method for 'civilian' units (i.e. scouts, workers, etc.).
 
zulu9812 said:
Jeckel said:
2) I need more naming engines. If you have an idea for a way to name units, cities, or even buildings, post them and I will see what I can do about integrating it.
This might be difficult to do, but my manual naming convention is to keep the the uni unnamed until it's first victory and then name it using the following model:

If it defeats an enemy within its own (i.e. your) territory, it gets the 'Royal' tag, based on chronological order across all unit types, with the final part being dependent on the unit type. For example, the first unit to win in your own territory could be called 1st Royal Archers, the second could be 2nd Royal Horsemen and the third could be the 3rd Royal Archers.

If it wins its first battle when defending one of your cities, it earns the 'City Guard' tag in place of any unit type tag, along with the city name. This is chronological across units defending that city only. So, two different Axeman units in two different cities could be called '3rd Berlin City Guard' and '3rd Frankfurt City Guard'.

Defeating an enemy unit in open unclaimed or enemy territory (i.e. no city involved), it earns the tag 'Raiders'. I'm toying with having a different tag for each era, e.g. 'Skirmisher' for Ancient, 'Raider' for Medieval, 'Guerilla' for 'Renaissance' and 'Commando' for modern.

If it conquers a city, it acquires that city name. If a group occupy a newly conquered city all in the same turn, they are name in chronological order of when they enter the city. So, a Musketeer created in Paris that captures Stalingrad would be called the 1st Stalingrad Musketeers.

Certain universal naming precedents take place over the unit type method outlined above. For example, if the Musketeer mentioned above captured the city via an amphibious attack, it would be called 1st Stalingrad Marines - even though it wasn't a Marine unit. Similarly, if your MKIV/Tank/Modern Armour unit defeated an enemy within your own territory, it would not be called 23rd Royal Tank (or whatever), but 23rd Royal Armoured. Finally, all artillery units get 'Bombardiers' in place of a specific unit type. Where there is conflict between these protocols, 'Marine' gets lowest priority. For example, if my artillery unit was the 6th Trebuchet unit to have captured Kyoto, but the first to have done so via amphibious attack and 3rd into that city on the turn of conquering, it would be called '3rd Kyoto Bombardiers'.

Note, that I never change a unit's unique name once it has acquired one.

I find this to be a good 'RPG' way of playing the game and allows me to tell, at a glance, the rough history of a unit. This helps me to emotionally invest in the game.

This is exactly what I am looking for, good job zulu9812. :D I will do my best to work this into a v0.4x, look for Zulu9812CombatNaming somthing this month.

zulu9812 said:
Again per my manual naming models, I use female names for transports and aggressive names for combat units. For example:

Transports (e.g. galleya, caravels, galleons and transports)
'Mary Jane'
'Queen Bess'
'Lady Luck'
etc.

Aggressives (e.g. Frigate, Ship of the Line, Destroyer, Battleship)
'Dauntless'
'Aggressor'
''Dominator'
'Ulysses'
'Juggernaut'
etc.

This is somwhat how I am doing it. I am going to break it up into a few different Naming Engines.

1) Starts with a big list of real boat names that I got from around the internet and names the boat one of them. I am planning on defaulting this engine to name ships from fishing boats to ironclads except for the privater.

2) This one is much like the first except it pulls from a list of real pirate ship names. It will default to being used for the privateer and pre-modern barbarian ships.

3) This is the one I am really syched about. Based on the idea behind TheLopez's civilization specific naming mod, I am compiling and entering real ship names from the worlds navies. I have America's about half done, but this one will take the longest just because their is so much data to enter. If I could get somebody to help entering the names things would go alot faster. :)

That in mind, I like your idea of male/female naming for the diferent kinds of ships, I will prob make it an option as part of the first naming engine. :cool:

zulu9812 said:
Jeckel said:
4) Lastly, I am also working on a way to name units based on the city they were built at, example 1st Boston Worker or 8th Beijing Warrior. This was suggested by Jimdigriz in the ModComponent request thread.
I would use this method for 'civilian' units (i.e. scouts, workers, etc.).

Just to clarify. Which units use this Naming Engine, or any of the other naming systems, is highly controlable in the config.ini file. Wile I will probly default this system to Industrial Era workers and settlers, it could easyly be used for any unit type, unit class, unit combat type, or unit domain. :D I added a spoiler to the second post. It has the current config.ini file, take a look at it and it will be clearer what I'm talking about. :)
 
Jeckel said:
3) The next upgrade I am working on for this mod is a better way to name the early era ships, so if you have a favorite ship name let me have it and I'll add it into the list.

I have a list of names that I like for each civilization in male/female separation:
America
(f)USS Amanda
(f)USS Helen
(f)USS Myrtle
(f)USS Prestige
(f)USS Utah
(m)USS Wyles
(m)USS Amazon
(m)USS Inflict
(m)USS Solace
(m)USS Xanthus

Arabs
(f)Carthage
(f)Ivory Star
(f)Pasha's Delight
(f)Opium Dream
(f)Queen of the Mediterranean
(m)Great Sultan
(m)Grand Turk
(m)Lord Cyrus
(m)Terror of Gibraltar
(m)Viper's Bite

Aztecs
(f)Tlachinolli
(f)Atl
(f)Icnoyotl
(f)Meztli
(f)Nenetl
(m)Huemac
(m)Mazatl
(m)Achcauhtli
(m)Etalpalli
(m)Tlacaelel

China
(f)Defeng
(f)Haishi
(f)Hai'ou
(f)Hesheng
(f)Jiangli
(m)Dagang
(m)Haitun
(m)Changjiang
(m)Heilongjiang
(m)Gaojiang
(m)Haifeng

Egypt
(m)The Akhenaten
(m)The Imhotep
(m)The Ra
(m)The Kadesh
(m)The Pharaoh
(f)The Yuya
(f)The Ba
(f)The Ka
(f)The Naqada
(f)The Theban

England
(f)HMS Halfmoon
(f)HMS Seaham
(f)HMS Lady of the Sea
(f)HMS Caledonia
(f)HMS Rye
(m)HMS Antelope
(m)HMS Goliath
(m)HMS Algiers
(m)HMS Dreadnought
(m)HMS Sea Lion

France
(f)La Richeliu
(f)La Versailles
(f)L'Afrique
(f)La Danae
(f)La Vengeance
(m)Le Republicain
(m)Le Rochefort
(m)Le Superbe
(m)L'Argus
(m)L'Heros

Germany
(f)Iltis
(f)Komoran
(f)Scheer
(f)Uberhern
(f)Agir
(m)Jaguar
(m)Numberg
(m)Zobel
(m)U2
(m)Bad Rappenau

This is the list I have so far, I hope it is helpful...
Unfortunately in some of the lists, the sources did not specify gender and so I had to guess, if anyone knows different plz post and help Jeckel to better build his mod...
-Dark War Lord
 
Awesome DarkWarLord, thanx for those. These are good to start with and may allow me to update the mod with a simple version of Civ Ship Naming. I'll try to get somthing out this weekend. :)
 
Jeckel said:
Alright the basics are now done. Couple things...

2) I need more naming engines. If you have an idea for a way to name units, cities, or even buildings, post them and I will see what I can do about integrating it.

3) The next upgrade I am working on for this mod is a better way to name the early era ships, so if you have a favorite ship name let me have it and I'll add it into the list.

4) Lastly, I am also working on a way to name units based on the city they were built at, example 1st Boston Worker or 8th Beijing Warrior. This was suggested by Jimdigriz in the ModComponent request thread.

I am surprised you haven't looked at Ruff's combined unit naming mods, buried in my modpack and in his. I'll be posting my latest fixes for it in my mod soon, but take a look. It has what you are looking for in #4, and also Roman Numerals, and a whimsical Borg convention that I suppose might fit in to a scifi mod. I can help merge it into yours if you would like to collaborate, or you can just feel free to grab it yourself.

I'm pretty sure I saw a random city names mod component somewhere around here also.

I'm thinking with your mod could use XML file reading rather than only a single config.ini file, especially for those lists of hardcoded names, so people can mod them easily.

If you decide to switch from Gillmer J. Derge's ini parser to the HOF parser, it is actually possible to create a popup that would allow users to change their naming options in game, with the changes saved back in the ini file.
 
How about a naming convention where the same units get different (but generic) names under different civs like for the tank:

America: Sherman

Russia: T-34

England: Crusader

This method could take up less space than the method used in many scenarios.
 
Gaurav said:
Actually, a search brought up two of them:

Random City Names
AltCityNames


Awesome, good lookin out Gaurav. :goodjob:

I went to download these mods and found that I already had them in storage, but thanx for reminding me, chances are slim I would have stumbled on them by accident in my zips folder. ;)

I have already combined sen2000's Roman Numeral naming convention to v0.37 of the mod. I am going to add another naming engine or two before I release the next version.

Again, thanx for the reminder on those mods. :cool:
 
TheBladeRoden said:
How about a naming convention where the same units get different (but generic) names under different civs like for the tank:

America: Sherman

Russia: T-34

England: Crusader

This method could take up less space than the method used in many scenarios.

This is an interesting idea. If some one will compile a list of names for each civ for a unit or two I will add this in. To keep it simple, some one get me a list of tank names, one name per vanilla civ4 Civilization. If any one wants to give names for other units aswell, they will also be appriceated. :)
 
Danthor said:
What about city names?
does this mod randomize them too?

Not yet, but that will be coming in the v0.4x series. Prob some time next week. :)
 
I updated the second post with the 3 main v0.36 config.ini files and screenshots for each of the naming engines. :)
 
DarkWarLord said:
I have a list of names that I like for each civilization in male/female separation:
America
(f)USS Amanda
(f)USS Helen
(f)USS Myrtle
(f)USS Prestige
(f)USS Utah
(m)USS Wyles
(m)USS Amazon
(m)USS Inflict
(m)USS Solace
(m)USS Xanthus

<snipped>

This is the list I have so far, I hope it is helpful...
Unfortunately in some of the lists, the sources did not specify gender and so I had to guess, if anyone knows different plz post and help Jeckel to better build his mod...
-Dark War Lord

It occurs to me that ship names could optionally have classes. i.e. an American aircraft carrier named U.S.S. Enterprise, Nimitz class. Classes should be the same for any distinct unit type. I'm not sure if you should go for historical accuracy or more randomness with that, though. More randomness would probably get stale less quickly.

Sorry if I am adding too much to your workload. :)
 
@Gaurav
No need to be sorry. :) Coding these naming engines isn't that hard, to be honest the hard part is to not through a dozen or so ini options with every engine.

As for the classes idea, I like it, and the coding side is pretty straight forward, and I can get classes for american navy easyly, but before I could add in even a beta of the engine I would need some classes for atleast 5 or 6 of the other civs, so again, compile me a list of classes and I'll add the engine in. :)
 
Mod Updated to v0.37
3 New Naming Engines Added
Config.ini options to set default barbarian naming engines per era added.
Config.ini options to give specific naming engines to barbarians by unit type, unit combat type, or unit class added.


The next version should be out in a week or two, just depends on how long it takes me to update my current mods to warlords. The next version will have 1-5 move naming engines (time depending), but the main change will be the inclusion of readme files explaining the different naming engines, their options, and the various ways they can be used. :)
 
Jeckel said:
@Gaurav
No need to be sorry. :) Coding these naming engines isn't that hard, to be honest the hard part is to not through a dozen or so ini options with every engine.

As for the classes idea, I like it, and the coding side is pretty straight forward, and I can get classes for american navy easyly, but before I could add in even a beta of the engine I would need some classes for atleast 5 or 6 of the other civs, so again, compile me a list of classes and I'll add the engine in. :)

Just mine these links:

Germany
Russia
England
France
China
Japan

That's six. ;)

It might be a bit more difficult with civs which don't have a modern navy. I figure you can always fall back on names of provinces, cities, emperors, geographic features, and first names for those.

I think randomly choosing from a list is better than historically accurate, especially after the first few games. And it will cut down on research too.
 
Good job Gaurav, I can deal with click-this-link-read-info kind of research. Its the search-google-for-an-hour-just-to-find-a-lead kind of research that takes up time better spent coding. :eek:

But those links will help alot, with those six and the amerca stuff I've already got, I think I can whip up a decent beta of the Naval Fleet Naming engine. Lets see, I just released v0.37.. look for this engine's beta in about v0.4, say 2 weeks from now, give or take RL time loss. :)
 
Top Bottom