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

[BNW] [Bugfixes] [Optimisation] Has it been done before?

Discussion in 'Civ5 - Creation & Customization' started by fertiliser, Nov 24, 2018.

  1. fertiliser

    fertiliser Chieftain

    Joined:
    Nov 24, 2018
    Messages:
    8
    I have a reasonable amount of experience with modding Civ5, but have always avoided the DLL due to compatibility issues.

    This time around. there's an ambitious project on the horizon. It involves bugfixes and QoL, that may or may not have been done in the past. I'd like to make sure before I commit to the upheaval reinventing the wheel, that there aren't any open-source solutions already in circulation. Optimised & playtested solutions definitely exist for at least some of these, and I'm sure there'll be more elegant and efficient than whatever I could produce with my mediocre programming skills. Here are the relevant topics:
    • Scholars in residence AKA science overflow: has anyone in history ever managed to fix this? Seems all you'd need is to reduce these techs' global science cost across all players, but I don't know how. Especially since you need to remove the effect once scholars is repealed.
    • Citadels deal damage to units inside cities: beginning of each turn, every unit checks if it is adjacent to an enemy citadel. There is no clause to check if that unit is inside a friendly city.
    • Same-turn growth & production focus: on the turn that a new citizen is born, that citizen can produce hammers, but cannot produce food (?). This introduces tedious, unnecessary & counterintuitive micromanagement. High level players are forced to set all of their cities to production focus, and manually control all tiles. I would like to remove the necessity for this either via removing the reward (same turn hammers), or by making it automatic (new citizen only works hammers on its' birth turn). Has anyone done this before?
    • Prebuilding units: cheesy players will build 99% of a unit, then switch to something else. They can finish building them in one turn, pay no maintenance on this unit, not have it show up in soldier demographics, and use it as a way to build production overflow. Has anyone managed to introduce prebuild-attrition? Or to charge fractions of maintenance and add fractions of demographics for incomplete units?
    • Production overflow: piety doubles production when building shrines. Once the shrine is finished, the excess of this doubled production is rolled over 1:1 towards normal production on the next turn. This also applies to stables giving +15% production to cavalry, and so on. Gamebreaking, infinite gain, production feedback loop is possible. Has anyone come up with a solution/workaround?
    • Bonus vs mounted: In the mod, ranged horse units become "mounted ranged". Is there an elegant way to making pikemen not get the 50% combat strength when defending against a ranged attack from MOUNTED_RANGED unit type, but still get the bonus if defending against a melee attack from MOUNTED_RANGED unit type?
    • Abombs/nukes destroy marsh - hurts extra bad for William players.
    • Miscellaneous optimisation changes: playtested bits of code that optimise the gameplay/netcode or fix visual glitches. Most interested in stuff at the DLL level, since XML and LUA tend to be plug and play, whereas the DLL needs to be appended manually for compatibility.

    Thanks in advance for anyone willing to share.

    Alternatively, I'd also be grateful if you could point me towards other threads in case the thread itself - had been done before :)
     
    Last edited: Nov 24, 2018
  2. SLGray

    SLGray King

    Joined:
    May 18, 2015
    Messages:
    960
    Gender:
    Male
    Location:
    United Sates
  3. formerdc81

    formerdc81 Chieftain

    Joined:
    Nov 19, 2018
    Messages:
    53
    Gender:
    Male
    All forms of production overflow is easy to fix. Instead of increasing hammers/beakers, decrease the cost of the thing being produced/researched.

    That being said, I think citadels SHOULD damage units in cities and I honestly don't see why Point 3 is even a problem. Or rather, CiV should not be a game where these kinds of marginal one-turn exploits should even matter in the final victory. I'd rather target the dependency between population (and thus, food) with science (which is by far the most broken aspect of BNW); lessening the influence of food necessarily will make "high level" players stop worrying about this odd population bug.
     
    Last edited: Nov 24, 2018
  4. fertiliser

    fertiliser Chieftain

    Joined:
    Nov 24, 2018
    Messages:
    8
    ?

    Point #3 is a pain in the ass because it makes multiplayer turns longer. There's no reason why it should exist. If it can't be fixed then at the very least we should automate it.

    Building overflow seems straightforward.

    What about scholars in residence? Is there a single example of someone delivering a working fix?
     
  5. whoward69

    whoward69 DLL Minion

    Joined:
    May 30, 2011
    Messages:
    8,538
    Location:
    Near Portsmouth, UK
    I fixed the science overflow bug in my DLL
     
    fertiliser likes this.
  6. fertiliser

    fertiliser Chieftain

    Joined:
    Nov 24, 2018
    Messages:
    8
    Is it something you'd be willing to share? I'm in over my head as far as the DLL programming.

    EDIT: Nevermind, found the GitHub. Thanks for opensourcing it!
     
  7. whoward69

    whoward69 DLL Minion

    Joined:
    May 30, 2011
    Messages:
    8,538
    Location:
    Near Portsmouth, UK
    Read my first DLL tutorial to see how I use #if/#else/#endif, then search the code for MOD_BUGFIX_RESEARCH_OVERFLOW
     

Share This Page