1. We have added the ability to collapse/expand forum categories and widgets on forum home.
    Dismiss Notice
  2. All Civ avatars are brought back and available for selection in the Avatar Gallery! There are 945 avatars total.
    Dismiss Notice
  3. To make the site more secure, we have installed SSL certificates and enabled HTTPS for both the main site and forums.
    Dismiss Notice
  4. Civ6 is released! Order now! (Amazon US | Amazon UK | Amazon CA | Amazon DE | Amazon FR)
    Dismiss Notice
  5. Dismiss Notice
  6. Forum account upgrades are available for ad-free browsing.
    Dismiss Notice

Gedemon's Civilization, development thread

Discussion in 'Gedemon's Civilization, a total overhaul project' started by Gedemon, May 7, 2017.

  1. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    New update on GitHub, adding City Center healing (but not Encampment yet)

    Code:
    - add healing to city defenses (center and walls), using materiel, relatively to city size
    - attach "ObsoleteTech" property to some equipment, a Civilization with that Tech will not produce or try to acquire this equipment by trade (it also remove it from stock, this may be changed to still allow exportation to lower tech civilization)
    - UI : group resources by type on City Banner Tooltip
    - balance: add/tweak stock capacity to Granary, Butchery, Fruit Market, Fish Market
    - balance: raise Wooden Spear production ratio for Carpenter
    - balance: "Fort" Improvement available with "Construction" tech
    - bug fix: force a minimum distance between a new goody hut and the one it replaces
    - bug fix: do not add the new organization level promotion to the "to remove" list when updating an unit
    - bug fix: try to better handle equipment with different personnel ratio (like chariot/horses) when upgrading/downgrading an unit
    Clipboard-1.jpg
     
  2. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    New update on gitHub
    Code:
    - buildings can now require different resources for construction
    - units can now require resources specific to their construction (but not for reinforcement), used for naval units
    - add a few icons for the UI
    - balance: forest, jungle produce more wood
    Spoiler :
    Clipboard-1.jpg
     
    Knasp likes this.
  3. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    Update on GitHub
    Code:
    - add new Housing Buildings for Medieval, Industrial and Atomic eras
    - add Catapults, Bombards, Cannons, Howitzer and Rocket Artillery to the Siege equipment line
    - add Muskets, Rifles, Automatic Rifles to the Melee and Skirmisher equipment line
    - add Spears, Lances, Tanks, Modern Armors to the Cavalry equipment line
    - add Foundry Building
    - add limitation to resources traded: Strategic Resources need a Declaration of Friendship, Equipment need an Alliance
    - remove warning for cities not yet initialized when the mod try to update the unlocker buildings after discovering a new technology
    - bug fix: do not use Materiel as an equipment reference for changing an unit's type
    - hide items you can't build from the city production panel
     
    Knasp likes this.
  4. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    119
    I really like the icon update for weapons, and the rest looks promising! Just a question about forum posting:

    Where do you want people to write their experiences after playing, thoughts and feedback? I was thinking a "General discussion" thread or "Feedback on latest release" might be suitable for this. Or maybe a separate thread for Update notes?
    A thread for just questions?

    How about comments like the one I started with?
     
    Last edited: Nov 16, 2017
  5. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    For now this thread is acting as the general discussion thread, release thread and presentation thread. Once we're close to have a new preview version, I may split it.
     
    Knasp likes this.
  6. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    New update
    Code:
    - "Standard" Speed is now set to "Epic" timeline
    - add Catapult, Bombards, Cannon, Howitzer, Slings, Muskets and Tanks fonticons
    - fix Error reported when loading Table.sql
    - add colors to trade routes (orange = limited/denounced, white = neutral, gray = internal, green = strategic/friendly, blue = equipment/allied)
    - trade routes can now exist without open border
    - denounced players will just trade non-luxury food resources
    Spoiler :
    Clipboard-1.jpg
     
    Knasp likes this.
  7. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    Update
    Code:
    - Alliance moved to Early Empire
    - add income from plundered resources when send from an unit to a city
    - visualize income/cost on the map for units
    - bug fix: armors are now transferred to frontline
    - bug fix: ships can now heal in cities
    - add a Debt value, shown on TopPanel. 50% of the net income is used to repay the Debt.
    - repairs, plundering, repay are shown on the TopPanel Gold Tooltip
     
    Knasp likes this.
  8. Xefjord

    Xefjord Chieftain

    Joined:
    Jul 17, 2015
    Messages:
    175
    Gender:
    Male
    Two things, first off I downloaded the mod a couple days ago (I think like two days ago?) and at first I tried to use it in conjunction with the 60+ modern civs mod. I would get anywhere from 5-50 turns then crash. So I removed the 60+ civs mod, played one game, got to like 60 turns, then I crashed. The other thing (Not sure if this is a bug or just the fact I know absolutely nothing about the mod). I was DIRT POOR the entire time. At first I tried to play it like I would normal Civ (Go for a monument first thing) and then everyone seemed to become unhappy and it began to take excessive amounts of turns for me to finish the monument. I realized I needed material to build stuff so I started building the carpenter or stonemasons first (Because it seemed like they make material) and then my 1000 gold beginner stockpile would plummet. God forbid I needed to make housing. Because that would send me from the -50 gold per turn (From making the Carpenter) to -200 gold per turn as I tried to make the housing. After I hit 0 gold. I would never have any gold for the rest of the game because no matter what i seemed to do, making gold was seemingly random. If I built things or people I would dive incredibly indebt. No trade routes, policies, or amount of luxury resources would get me out of debt. Even if I did go up to 3 or 7 gold per turn for a few rare moments. The next turn it would go back to -50 gold and I would lose any tiny amount I had created.

    So none of this factors in to the most recent update (Which I have not played yet) the crashing is obviously some kind of issue. But I worry more about if I am playing the game incredibly wrong because I always end up so hopelessly in debt so quickly.
     
    Knasp likes this.
  9. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    Shortage in materiel can kill your economy in the first turns, as the lack of supply make its price skyrocket and everything needs materiel.

    Trade routes are the best way to make money, city on coast have the longest range for routes without a trader unit.

    Resources plundered by units (Barbarian Camps and Goody Huts) are now a source of income since the last update.

    When implemented, a tax system will be another source of income (but your budget will be another source of expense)
     
    Knasp likes this.
  10. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    Update on GitHub

    Code:
    - add new building "Market Extension" producing/stocking food for medieval/renaissance Eras
    - update Barbarian units to the new promotion classes
    - update Barbarian spawn table
    - update Barbarian Camp loot
    - raise cost of Civics
    - less spamming of the Lua.log, only output the debug print after detecting an error
    - add timers to monitor some heavy functions (output error in game for extreme situations)
    - output warnings to the Lua.log only, still report errors on screen
    - optimization of the cached tables for city export/transfer Routes
    
     
    dunkleosteus and Knasp like this.
  11. Xefjord

    Xefjord Chieftain

    Joined:
    Jul 17, 2015
    Messages:
    175
    Gender:
    Male
    Maybe I don't know exactly how trade routes work. I thought I saw a long time ago in previous posts pictures of trade route stuff. But is it independent of normal trade routes? (I also thought I saw something about some trade routes starting naturally on rivers) but when playing on YNAEMP, few rivers connect with each other. Not totally sure, I made a trade route at one point with another civilization (Like with the trader unit) and I was still miserably poor. How do I get materials so I don't choke on my own debt? (Kind of wish there was like a starters guide for this mod lol)
     
    Knasp likes this.
  12. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    Trade Routes follows rivers, road and coast, try to place cities on the coast or on big rivers, the connection is automatic.

    Diplomatic relation extend the range of traded goods, see this update

    And small but important update
    Code:
    - crash fix : infinite loop in Export cities when checking Route Length
     
    Knasp likes this.
  13. stimprunk

    stimprunk Chieftain

    Joined:
    Oct 30, 2017
    Messages:
    4
    Hello!
    Check last version. Each game have crash since 10 turn.

    Most longer game end at 150 turn by crash. Last 10 turn have next message: ERROR detected: Data inconsistency detected for : Spearman id#2293767 player#2.
    I haven't knowledge about what data you need from my civ6 client to help you with your mod developing.

    Economy system now fully depressive. Have -100 gold per turn average. City can spent gold on the resource production, but still cannt produce gold via resource system.

    As I understant your reply from my idea about separate economy for each class of city population it's impossible to release this system in civ6.

    Hope my feedback is helpful.
     
  14. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    There are some big changes in the code in the current updates, I'm running some autoplay tests to try to find the issue leading to data inconsistency (in clear the equipment and personnel number in frontline for an unit does not match the values it should have at its current HP)

    This could be a problem of synchronization between the "core" (the values in the game's exe and DLL in C++) and what's returned by the Lua when some Events are called.

    It's some kind of blind debugging with the current tools, a lot of my coding time is spent adding/checking my own tools to verify the data and the orders of Events in relation to what the Core returns for some values.

    Could also be a rounding error when calculating the equipment/personnel left, in that case it's my own functions that are causing the issue.

    If possible when you run into an error message when testing the mod, please post a new thread in the bug report section with the error report in the name of the thread and your lua.log (before restarting the game), multiple source can help pinpoint the issue. If there is already a thread with that error name, please add your lua.log to the existing thread.
     
  15. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    New update, you can now plunder resources in cities with melee units when their walls are down (partially or fully)
    Code:
    - remove ranged attack for cities
    - raise outer defense values of Walls (50 to 100), Castle (50 to 200), Star Fort (50 to 300)
    - raise Civil Engineering Urban Defense value (200 to 300)
    - add outer defense value to Palace (50)
    - round average Game Era to floor value, not ceil (to slow down higher loot spawn for Barbarian Camps/ Goody Huts), add in-game message when the average era (based on all civilization) is changing
    - add plundering resources to melee units when attacking a city with less than 100 point of outer defense (relative to the defense left, the resources values and its stock
    Spoiler Sack of Rome :

    Clipboard-1.jpg Clipboard-2.jpg Clipboard-3.jpg Clipboard-4.jpg
     
  16. kris159

    kris159 Kris P Bacon

    Joined:
    Oct 24, 2009
    Messages:
    99
    Gender:
    Male
    Location:
    Sheffield, United Kingdom
    Gedemon, big admirer of your work. I was just thinking, you mentioned a few pages ago how you saw a table storing tons of rows and it was slowing things down, but I have commercial experience with performance tuning SQL databases and I'm pretty sure home computers can be ok with dealing with that amount of data, given the right tuning. Just wondering, do you know many details about how Civ 6 uses SQL? Do you know which SQL dialect it is, and if it allows indexes or not?
     
    Knasp likes this.
  17. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    Thank you, but I'm afraid that we can't use SQL for persistance (edit: yet), AFAIK the civ6 debug database that we can access is deleted and recreated when starting a game, I don't think the game allows to connect to another database (I may be wrong) and so the only way I've found to save my tables with the saved game files is by storing a string in an entry that the game is handling as a configuration value.

    The serializer I'm using is struggling for very big tables, but it's the best I've found for Lua.

    In short I have no issue when using the tables in memory, it's just that serializing/saving them (which occurs 2-3 times per turn) can take a few seconds in late game, freezing the game (and possibly causing crashes on some systems if you try to move the map or click on something at the same time) .
     
  18. DemonEmperor

    DemonEmperor Chieftain

    Joined:
    Jan 17, 2017
    Messages:
    27
    why serialize multiple times every turn? It'd be more efficient to just serialize it once the turn is over (because that means that all the changes are done).
    It'd be even more efficient to serialize only when saving the game (In between games, can assume game is in flux. As such do not care about intermediate data. autosaves included of course)
     
  19. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,519
    Location:
    France
    There is one before the game's autosave, that is sometime corrupted: there is no event to hook on, I'm using a player end turn event (the Barbarian's) which is the closer one happening before autosave AFAIK, but the core may still process some actions at that point and my table data and the core state can be desynchronized in that save...

    So there is another ("safe") autosave made by the mod at the end of the local player turn.

    And another serialization is made at the beginning of the human player turn, just after the mod has finished updating all data for the new turn. That one is a leftover of the time when I wasn't sure to capture all events related to saving the game, I was making a manual quick save at that point when testing the mod. I will get rid of it as I think that the mod is now capturing safely all saving events (except game's autosave) and serialize then.
     
  20. DemonEmperor

    DemonEmperor Chieftain

    Joined:
    Jan 17, 2017
    Messages:
    27
    I see. My train of thought was that you don't care how desynchronized the stuff gets in between game saves (autosaves and manual saves), because synchronization only matters when loading saved games, and if your game crashes in between saves, the serialized string should reflect the last saved state, and so should not be synchronizing unless right before a save
     

Share This Page