1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

[Development] City Name Suggestions

Discussion in 'Rhye's and Fall - Dawn of Civilization' started by Leoreth, Sep 14, 2019.

  1. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,116
    Gender:
    Male
    Location:
    Leblanc
    This is the thread to suggest city names for tiles on the new map. In general, it should proceed in a similar way to terrain change suggestions for the map itself: limited to a particular region on the map and preferably illustrated with a screenshot and reasoning if necessary.

    As I have mentioned in the map development thread, I have made some changes to the city names module, and all the new code is in CityNames.py (the old CityNameManager.py is still there fore reference, containing all the old maps and renames). Obviously all of that is still in the map branch. This is what you should know about the new implementation:

    1. City names are no longer in the Python file, instead you can find them in Assets/Maps/Cities.csv. I suggest to open this file with a spreadsheet editor like Excel or Calc, who easily support opening and saving CSV files. If you open it as a text file directly, it will look very similar to previously though. I have also added some tooling to edit the file from inside the game, more on that later. Also it's important to know that the file itself has full UTF8 support, so there is no need to escape special characters. However, we are still limited to the usual Latin-1 character set.

    2. Just to be clear, there is now only one map that is used by everyone regardless of language.

    3. Translations of city names are still in CityNames.py, and they are currently empty. Those translations are not in the scope of this thread. I want to develop the city name map first, and after it is complete introduce translations for its city names.

    4. It is possible that the same tile can have multiple valid cities on them that are actually different cities and not just different names for the same city. Examples for this are Babylon and Baghdad or Carthage and Tunis. In this case, the map should contain the oldest of these cities. I have also introduced data.dChangedCities where a change of the city on the tile can be tracked. For example, when Arabia acquires Babylon, something like this would be coded somewhere:
    Code:
    data.dChangedCities[u"Babilû"] = "Baghdad"
    For the purposes of this thread, it means you should include the oldest city on the tile in your suggestion, but make note of any other city to replace it.

    5. Similarly, the game keeps track of city name changes (different from genuine city changes), i.e. when the name of a city changes within the same language. For example Chang'an to Xi'an or Byzantion to Konstantinoupolis. These are tracked in a similar way in data.dChangedNames, but none of this is really relevant for this thread. I have also made some preparations to handle names changed based on era and civics in particular.

    6. I think it's always better when each tile has its unique name. In some deserted areas, that is not really possible. Using the same name for a 2x2 area is valid in such situations, but never more (because it means duplicate names)

    7. Some city names exist multiple times in different locations (e.g. York in England and York in Canada, or Córdoba in Spain and Córdoba in Argentina). We don't have to worry about that just now.

    8. For the name entered into the cities map, it should always be in the language of the oldest native occupant of the city. This may be an "independent" language, for example Yerushalayim for the Jerusalem tile. Note that native means that French language names should still be used for the area of France even though it was occupied by Rome with Roman names for most of its cities. There is of course some degree of judgment here.

    Suggested process for making a suggestion

    The best way to make a suggestion is use the ingame tooling I have recently added. The basic idea is that you can edit the city names map by placing landmark signs on the map. You can do this by opening the Python console by pressing Ctrl + ~. Then once per session you have to enter:
    Code:
    from MapUtils import *
    Afterwards you have two operations available:
    Code:
    loadCityNames()
    This loads all city names in Cities.csv and displays them on the map as landmarks. For example, it looks like this after loading the current file:
    Spoiler :
    Civ4ScreenShot0120.JPG

    This is helpful to see the existing city names for reference.

    Code:
    saveCityNames()
    This conversely saves all landmark signs currently on the map to the Cities.csv file. If a tile is empty on the map but already has a name in Cities.csv, the existing name is preserved. So it basically overwrites only the names that are set on the map.

    There will also be another file written named CitiesDiff.csv. It will only contain the landmark signs currently displayed in your game, without the names already previously existing in Cities.csv.

    Preferred suggestion format

    1. Do not load the city names from Cities.csv beforehand (if you used them for reference, close and restart the game again to clear it)
    2. Include a screenshot of the map with the city name signs
    3. Include the generated CitiesDiff.csv file that includes the names from the landmark signs

    This is more useful to me than displaying all city names on the map, or including the Cities.csv file with all names, because it makes it easier to see the differences in your actual suggestion, and to merge suggestions from different people into each other.


    With that, go ahead with your suggestions!
     
  2. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,116
    Gender:
    Male
    Location:
    Leblanc
    Oh, and @LacsiraxAriscal I'm explicitly tagging you here because I know you've been working on this, and I want you to be aware that suggestions have started.
     
    The 13th Earl likes this.
  3. Steb

    Steb King

    Joined:
    May 20, 2009
    Messages:
    684
    Gender:
    Male
    Location:
    Montréal
    Is there no way to work on this without opening the game? I liked the city name suggestion effort from a while ago that used spreadsheets with colors to represent the land, water, mountains and rivers. Much easier to work with, at least for me.
     
  4. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    Hi, putting this here again. Just in case anyone wants to use this. Feel free to make changes to anything. Sorry if it's already too populated. Thanks.

    Notes:
    • All changes must be done on the Identifiers sheet. No messing up the others.
    • Write -1 if you're explicitly defining the tile as a peak.
    • You can add rivers manually as cell borders. Make it thick so that it can be seen easily.
    • To replace Cities.csv, open the tCityMap sheet, File > Download as > .csv (current sheet), then replace the existing Cities.csv.
    • While this already has suggestions for many places in the map, let us cooperate with Leo and send in suggestions one region at a time, with the proper screenshots and other documentation.
     
    Last edited: Sep 14, 2019
  5. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    Why did you put the changed cities and changed names dictionaries in StoredData.py instead of CityNames.py? Is there anything I may have not realized yet?

    Also, I'm not sure if it's just because my local repo is too dirty, or are there really Python exceptions popping up whenever I open the DoC Maps view in WB.
     
  6. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,116
    Gender:
    Male
    Location:
    Leblanc
    But not for me. It's really helpful to see everything on the full map to take the terrain into account when seeing the city names.

    As I briefly mentioned above, changed city names are added to the dictionary once they happen. This is a more explicit and less tedious way to keep track of city name changes than in the previous implementation, where it was only persisted through the names of the cities themselves. They need to be in stored data so the information is persisted after the game is saved and loaded again.

    I didn't get any, maybe try a clean pull first.
     
    Crimean Lord and h0spitall3rz like this.
  7. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    I guess we'll do away with the spreadsheet altogether, then. I'll give suggestions by region, few at a time. CitiesDiff.csv to follow.

    Spoiler Iberia :

    Civ4ScreenShot0377.png

    Spoiler France :

    Civ4ScreenShot0378.png

    Spoiler Britain :

    Civ4ScreenShot0379.png

    Spoiler Central Europe and Lower Germany :

    Civ4ScreenShot0380.png Civ4ScreenShot0383.png Civ4ScreenShot0382.png

    Spoiler Italy :

    Civ4ScreenShot0384.png
     

    Attached Files:

    Last edited: Sep 15, 2019
  8. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    Spoiler Baltics, Scandinavia :

    Civ4ScreenShot0387.png Civ4ScreenShot0381.png

    Spoiler Ruthenia, Pontic Steppe (western half) :

    Civ4ScreenShot0386.png Civ4ScreenShot0385.png
     
  9. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    Spoiler Balkans, Anatolia :
    Civ4ScreenShot0388.BMP.png Civ4ScreenShot0389.png

    Spoiler Levant, Lower Egypt :
    Civ4ScreenShot0390.png

    Spoiler Maghreb :
    Civ4ScreenShot0391.png Civ4ScreenShot0392.png


    Not sure if there are any other areas I haven't shown, but attached here is the CitiesDiff.csv file of the areas shown. (The site does not allow attaching CSV files directly, so attaching it as a zip file.)

    EDIT:
    • No idea why the special characters are messed up. The CSV's are already in Unicode.
    • That Budweiss in Anatolia is an error. That should be Çorum.
     

    Attached Files:

    Last edited: Sep 15, 2019
    1SDAN and soul-breathing like this.
  10. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,116
    Gender:
    Male
    Location:
    Leblanc
    Your characters look messed up in those screenshots.
     
  11. BaneFire

    BaneFire Chieftain

    Joined:
    Jun 6, 2011
    Messages:
    66
    Location:
    Yorkshire
    I couldn't get the python console to work (did ctrl+~ but no dice), but I didn't want my work to go to waste.
    Here's a Roman (plus technically Greek, since "Rhegion" and "Hipponion" are very Greek names from the old Magna Graecia colonies) map of Roman cities.
    I'll keep trying to get the python console working, I suppose.
     

    Attached Files:

  12. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    Those are already imported as UTF-8 characters. Don't even bother with escaping them as HTML characters; it doesn't work either.
     
  13. DC123456789

    DC123456789 Deity

    Joined:
    Feb 24, 2012
    Messages:
    3,063
    Location:
    Canada
    The Python console commands don't work for me. ("Invalid syntax: command not found"). Is there a particular option I have to enable for them?
     
  14. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,116
    Gender:
    Male
    Location:
    Leblanc
    Can you correct this?

    Have you first run the "from MapUtils import *" line?

    Do you have a different keyboard layout than English QWERTY?
     
  15. DC123456789

    DC123456789 Deity

    Joined:
    Feb 24, 2012
    Messages:
    3,063
    Location:
    Canada
    That's the line that gives the error.
     
  16. need my speed

    need my speed Rex Omnium Imperarium

    Joined:
    Oct 3, 2009
    Messages:
    2,055
    Gender:
    Male
    Location:
    European Union (Magna Batavia)
    I'd do Utrecht instead of Zwolle, not?
     
    h0spitall3rz likes this.
  17. merijn_v1

    merijn_v1 Black Belt

    Joined:
    Dec 29, 2008
    Messages:
    5,602
    Location:
    The city of the original vlaai
    Try Shift + ~, instead of Ctrl + ~ to open the python module. You should see some text in the console when you open it.

    This. And I would also replace Liege/Luik with Maastricht.
     
    h0spitall3rz likes this.
  18. h0spitall3rz

    h0spitall3rz Grand Vizier of Your Mind

    Joined:
    Aug 2, 2015
    Messages:
    412
    Gender:
    Male
    Location:
    Hanseong, Great Korean Empire
    I'll see what I can do. Although I've tried my hand on the MapUtils code, and I can't have the placeSigns() method output UTF-8 text without assigning a new variable, without receiving some kind of TypeError. I haven't tried allotting a new variable for UTF-8 conversion yet, and I'll see if redoing the landmarks manually would output them correctly.

    Noted. I did not zoom in far enough when I did that, so I wasn't able to see the river between Amsterdam and Utrecht even though Utrecht is like, south of it.
     
  19. DC123456789

    DC123456789 Deity

    Joined:
    Feb 24, 2012
    Messages:
    3,063
    Location:
    Canada
    Thanks, that was it.

    Working off of this, I'd suggest the following changes for the British Isles:
    Spoiler :

    Civ4ScreenShot0000.JPG

    - Brighton -> Canterbury. As the capital of Kent since the pre-Roman era and seat of the English church, I don't think I need to justify too much why Canterbury is more important?
    - Exeter -> Bristol. More accurate, Wales is already 2 tiles and doesn't need to be reduced anymore, and Devon doesn't need 2 cities anyway.
    - Nottingham -> Lincoln. Narrowly, since Lincoln was more important in the Classical/Medieval eras, while Nottingham seems to have became more important since the Industrial era. I don't feel particularly strongly about this.
    - Lancaster -> Carlisle. Required for moving Carlisle out of Scotland (see below). I feel like Carlisle was more important than Lancaster, but I'm not totally familiar with the area.

    - Bristol -> Cardiff. Capital of Wales, largest town/city for much of its history, etc.
    - Colwyn Bay -> Carnarvon (Caernarfon). Colwyn Bay was a minor village until quite recently, so it doesn't merit being put on the map; Carnarvon was important in northern Wales from the Medieval Era onwards.

    - Carlisle -> Dumbarton (later Glasgow). This tile is the Strathclyde-Galloway area and should definitely be Scottish, so Carlisle was moved south. Dumbarton was the capital of Alt Clut and an important Scottish royal castle afterwards; nearby Glasgow of course becomes more important in the Colonial and Industrial eras.
    - Portree -> Iona. This tile is kind of hard since the area has never really had any big towns of any sort. Iona was an important religious site at least in the Medieval era, but is little more than a village today. Stornoway would also have been a possibility, but it's on the Outer Hebrides and so is actually on the island tile 1N.

    - Dublin (S) -> Waterford. Since Dublin has 2 tiles, there's room for another name here. However, since there's a cow on the geographically correct location I'm not entirely sure where Dublin is "supposed to be" - if it's supposed to be on this tile then obviously scrap Waterford and make the Dublin (N) tile Armagh (a bit far south, but the most important city between Dublin and Belfast IMO).

    I uploaded the CitiesDiff as a .txt file since the forum doesn't allow .csv files.
     

    Attached Files:

  20. Leoreth

    Leoreth 心の怪盗団 Moderator

    Joined:
    Aug 23, 2009
    Messages:
    33,116
    Gender:
    Male
    Location:
    Leblanc
    I don't think it should be necessary to change the code. Did you edit the CSV file manually? Maybe the encoding is off on your end? The file is Latin-1 encoded, like the game itself.
     

Share This Page