Announcement

Collapse
No announcement yet.

Making Cradle 3+ fully compatible with the Apolyton Edition

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #76
    The fishing boats and trawlers are nice, but don't they add to much visual clutter once half of the map is paved with them?
    Indifference is Bliss

    Comment


    • #77
      Originally posted by N35t0r View Post
      The fishing boats and trawlers are nice, but don't they add to much visual clutter once half of the map is paved with them?
      Well, that's always been an issue with CtP2. The new system at least provides visual differentiation. The "old system" (see middle of attachment) paved the seas as well, but it was a uniform appearance. Now that same space has 3 different looks - and after "Trawlers", that increases to SIX. So, yes, a lot of "busyness" in the oceans but at least there's a large mix of graphics, and the TYPE of graphic (Net vs. Boats) actually means something (i.e.pillage-proof or not) AND "amount of food each provides increases with vessel size".
      Click image for larger version  Name:	OceanFarms.JPG Views:	1 Size:	92.1 KB ID:	9442622
      Last edited by Kull; August 9, 2022, 13:52.
      To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

      From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

      Comment


      • #78
        Hagia Sophia: The original graphic in Cradle3 was a somewhat modified version of the one in the Apolyton pack (left side of attachment). But it simply didn't do justice to a building that was the Wonder of it's era. I was planning to insert revised versions of more Wonders, but it's a LOT of work, even with the availability of good 3D models. It's not the matter of having great art to use as a starting point, it's the process of shrinking it down to fit a 90x72 pixel frame and still retaining the detail (and then identifying and changing all the individual pixels which are reserved for "see-through" alphas or shadows). Anyway, there may be more like this, but....we'll see.
        Click image for larger version

Name:	Hagia Sophia.JPG
Views:	143
Size:	29.9 KB
ID:	9442624
        To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

        From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

        Comment


        • #79
          Ancient-Era Artillery: Cradle3 started with three ancient-era artillery units (Belfroi, Onager, & Trebuchet) but all of them had "catapult-type" sprites. As described in an earlier post, the Belfroi was replaced by the Ballista from Cradle4, but that still left two catapults. The third was called a "Trebuchet" - except it wasn't - and the only existing Trebuchet sprite (from AOM) was a valiant attempt but the actions were jumpy and not up to par with the other units in Cradle. Eventually I found a good 3D model at Sketchfab and took screen shots of the unit facing in each of the required 5 directions.

          I played around with shadows but couldn't get them to look natural, and ultimately built a sprite with 5 Move images and a single Idle (using the #4 Move). Accordingly it has proper facing in all 8 directions and looks EXACTLY like a trebuchet (see attached). Although it has no actual motion, that is also true of the new Ballista unit and is (I think) an acceptable compromise. I also created the necessary 2D art (using the same unit), recorded a "trebuchet firing" sound for the attack, and made all the required text file changes to put the new unit in game.

          As part of this activity, the Cradle "Onager" was removed from the game (a blue catapult from "Age of Empires" with an attack animation but no movement) while the CtP2 "gold catapult" (with a full set of attack, movement, and Idle animations) was changed from Trebuchet to Onager (which is exactly what it is). In short, the three major forms of ancient artillery are now properly represented in Cradle 3+
          Click image for larger version

Name:	New Trebuchet.JPG
Views:	143
Size:	5.2 KB
ID:	9442628
          To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

          From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

          Comment


          • #80
            Cradle3\default\aidata folder: There's no eye candy in this next project - reviewing (and usually altering) all 11 text files in the aidata folder. Not sexy and really more of a slog than anything else, but it was essential to make sure Cradle takes advantage of all the new Source Code Team AI improvements. A brief note on terminology. All files that were specifically edited as part of the Source Code project have a new heading section which explains what was done, and these I will designate as "SC" files. Others do not have the heading section, but were updated as part of the "Apolyton Edition" project, and these are referred to as the "AE" files. The last group are those that come with the Cradle download ("Cradle" files), and the goal of this task is to integrate those with the others.

            1) "Goals.txt" - Defines the various goals that the AI can pursue, which are then implemented in "Strategies.txt". This was a beast. There are so many changes between the SC file and Cradle that it was impossible to do a line-for-line determination of what to keep or change. Accordingly I'm going to utilize the SC file as-is, and let playtesting determine the result.

            2) "Strategies.txt" - Takes the various Goals and gives them priority ratings and other attributes. The SC team made a HUGE number of changes to this file, and there are many comments about how the AI has been optimized to do things like "maintain proper happiness" level, and thus you don't need to drive that behaviour with this file (as an example, Hex sets most "EntertainerPercent" to 0.6, but the SC team sets them all to 0 because "the AI knows how to do this". Once again, the Cradle file was replaced by the SC, but in this case a number of changes were brought over from Cradle, in particular the new Governments along with a large section devoted to the strategic elements of BureauBert's "settling.slc" file (see Post #7 for details).

            3) "Personalities.txt" - Defines attributes for the various personalities, which are then executed in "Strategies.txt". The SC project pulled a lot of personality settings out of the executable and placed them in this file so that modders can adjust them, if desired. As a result, there are MANY more lines in the SC file, so it will replace the Cradle file entirely "as-is". I did review those lines which are "common" between the two files, and the only change is that Hex set Expansion to "Maximum" for ALL personality types, whereas the SC file Varies between Max and Average. Given the SC attention to improving the AI, I will keep their settings.

            4) "DiplomacyProposal.txt" - Lists the various diplomatic proposals that can be made to/from the human player and the AI and probably the AI-AI interactions as well. There is almost no difference between the AE and Cradle file (nothing from SC). Cradle disables the "Research Pact" (that won't change) while the AE file adds conditions to a few of the others, mostly by requiring embassies. That seems like a reasonable requirement, so I'll add that to the Cradle file, thus getting a mix of both. To clarify, 99% of each file is identical, so these are tiny changes.

            5) "Diplomacy.txt" - This file has the "hard numbers" associated with player actions that impact the "Diplomatic Regard" level with each AI civ. With one notable exception, there is little difference between the Cradle file and the AE file (aside from a few changes in the Regard bonus/malus values from certain actions), and in those cases I'll keep the Cradle values. The lone exception is that while the bottom half of the Cradle file is devoted to costs associated with AI-AI interactions, that section is COMPLETELY MISSING in the AE file. My initial assumption was that it's simply no longer needed, as per the comment in the Apolyton_README file that "AI-AI-Diplomacy actually happens now". However, the MoT mod - specifically designed to use many of the SC Team improvements - still retains all the AI-AI text in its file. Given the conundrum, I'm going to retain it in the Cradle file as well, and other than a few small tweaks to some of the regard costs, will keep the Cradle file largely as-is.

            6) "AdvanceLists.txt" - Lists every advance, in the sequence the AI should research them. In addition to "Default", there are lists for "Scientist", "Militarist", "Economic", "Ecotopian", & "Diplomatic". Cradle & AE have the same groupings (but different advances and order of advances). There isn't an SC file, so we'll use the Cradle file as it has all the MANY Cradle-specific Advances. It has been updated with the new Cradle 3+ Advances (Combined Arms, Legal System, etc)

            7) "UnitBuildLists.txt" - Groups the Units into a number of "build list" categories. There isn't an SC specific file, but the AE file is focused on properly categorizing the units into each "build list", whereas the Cradle file tends to put the same unit in a lot of different lists, plus some of the listings don't make sense (f/e why is "Slaver" in the "Special_Peaceful" list?) In addition, the Cradle file had 15 build lists, but AE has 21. For this file we'll follow the AE model and will use their 21 lists and less sharing across categories, but will add all the Cradle units to each list.

            8) "WonderBuildLists.txt" - Groups the Wonders into 7 "build list" categories. Again, there's no SC specific file and many of the Wonders are Cradle-specific. When compared to AE, each file has the same seven categories, and while there's a lot more sharing across categories in the Cradle file, I think it was done in order to make the AI more aggressive at building Wonders. At least for now, we'll continue to use the Cradle file "as-is" (no changes), but may revisit this later.

            9) "ImprovementLists.txt" - This file is for the terrain improvements (Roads, Farms, Nets, etc) and oddly enough the AE file is extremely minimal. The 4 categories only have 5 improvements, with the majority not listed at all. Once again there isn't an SC file, and I half suspect that the AI improvement covers this without the need for a reference-and-prioritization file. That said, the Cradle file lists all the buildable TIMPs, and I'll make a couple changes but will largely leave it untouched.

            10) "BuildingBuildLists.txt" - Groups the different buildings into "buildlists" in support of different goals, for example "Happiness", "Gold", "Production", etc. The SC file has 12 groups, while the Cradle file has 9, so I revised the SC file to keep their categories, but added all the Cradle buildings. Cradle had a lot more "sharing" of buildings across the categories, but I eliminated most of that. Again, the assumption is the new AI does a better job of "following directions", so the less conflicting those are, the better.

            11) "BuildListSequences" - This is the prioritized "list of lists" for each of the usual groupings (Science, Gold, Production, etc). For example the "Production" list puts the "Garrison Units" build list at the top, followed by the "Production Buildings" build list, and then another 22 lists for more Units, Wonders, TIMPs, and Buildings. The original Cradle file had 9 groupings, while the SC file has 17, including the new SC groupings for "Dirty Cities", "Small Cities" and "Barbarians", among others. That sounds like a LOT of changes, but the lists within each group are exactly the same, albeit ordered differently. One of the main differences is that Cradle places a higher priority on the building of Wonders. To integrate the two files, I copied the Cradle sequences into 8 of the 9 Groupings that the two files have in common (leaving "Default" and 8 new groupings at the SC settings).

            If you've actually read this far, here's the important takeaway. With this task complete, all elements are in place for me to begin realistic playtesting of this puppy. I've been doing that all along, of course, and the game is completely stable and definitely a lot of fun. But now all the truly bad bugs are gone and from this point forward the games will involve fully operational AI opponents - which will be interesting. There's still a great deal more to be done of course, but most of that is "eye-candy" and thus game-play impacts from here on should be minimal.
            Last edited by Kull; August 11, 2022, 11:18.
            To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

            From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

            Comment


            • #81
              TIMPs - Getting the AI to build them in the right place: One of the more annoying AI activities is when they build TIMPs in the "wrong" terrain, or in quantities that look awful on the map.
              * Example #1 - Mines on Grassland: Just an ugly look. Why would they do that? The reason is "production uber alles". Fortunately the solution is easy - make it impossible to build mines (of any level) on Grassland. Plains can stay, but not for the first level of Mines.
              * Example #2 - Ports on every beach hex: This is trickier, because there are no other terrain types these can or should be built on. However, the "food bonus" is the same as "Nets" (+5) so we'll try to mitigate the problem by removing the food bonus and increasing the Gold bonus from 10 to 15. If nothing else, that might restrict the "Port spam" to AIs pursuing a "Gold" objective.
              * Example #3 - Mines on Horses: The settings for the new Horse Good were +10 Gold, 0 Food, and +10 Production. Which sounds logical, but the AI builds Mines on top of horses, and that's...just...wrong (albeit understandable from the AI perspective). So I'm shifting the Bonus from +10 Production to +10 Food. Hopefully that results in Pasture/Farm TIMPs being built instead.
              To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

              From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

              Comment


              • #82
                Status Report - Units without Idle: As reported in various posts, 10 "civilian" units were converted, and now that entire category has the Idle animation (and thus full on-map movement). Only three Naval units did not have Idle, and those have been converted AND given attack animations as well. For Land units, I noted previously (Post #32) that 7 had been converted. And as of today, the remaining 10 non-Idle land units have all been deconstructed and fixed:

                8) Horseman
                9) Warrior (Pacal)
                10) Pharaoh Chariot
                11) Great King Chariot
                12) Cataphract
                13) Crossbowman
                14) Man-at-Arms
                15) Janissary
                16) Arquebusier
                17) Howitzer

                The only exceptions are the Ballista and Trebuchet, which never had motion images to "unlock". Which leaves Air units. The Nuke has been fixed, leaving only the Fighter, Interceptor, Stealth bomber and Spy Plane, all of which are late game units. Even so, I will probably fix them eventually, if only for the sake of "completeness". But the larger point is that every land and sea unit which can move? Does move.
                Last edited by Kull; August 12, 2022, 11:20.
                To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                Comment


                • #83
                  Horses: Just to see how it would play out - and it's not like hints weren't dropped - but Horses are a requirement for horse units. How that plays out over the long term we'll have to see, but this much is certain. As the human player, if you don't have them, you KNOW where they are (or will seek desperately until you do)! And if they aren't nearby? You try to imagine distant colonial schemes that will make them yours. A feeling not unknown to devotees of other civ building games, of course, but it's nice to get that from CtP2. Oh, and building Nukes without uranium?
                  To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                  From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                  Comment


                  • #84
                    Hello Kull

                    I saw, you are looking for a, at least somewhat, better Version of the Hagia Sophia. Probably you´ll find this useful. It´s a Model from AOE II

                    Comment


                    • #85
                      Originally posted by Carolus V. View Post
                      Hello Kull

                      I saw, you are looking for a, at least somewhat, better Version of the Hagia Sophia. Probably you´ll find this useful. It´s a Model from AOE II
                      Thanks, that does look more like the as-built structure. I'd already removed the minarets (those were added much later) from the new version, but I'll take a closer look at yours.
                      To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                      From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                      Comment


                      • #86
                        Here you go with some other Wonders: Great Pyramids, Chichen Itza, Coliseum, Forbidden City, Hanging Gardens, Great Lighthouse. Use or use them not. As you wish

                        Comment


                        • #87
                          New Goody Huts: One of many new features added by the SC guys is the ability to assign different goody hut images to each terrain type. This latest project takes full advantage of that, assigning no less than 10 new images to most of the various land terraintypes. "Grassland" retains the existing Easter Island heads and the Megaliths, but all the rest have something new. The more common terraintypes (plains/forest/hills) have two, while most of the rest have one. In the attachment, you can see two of the new ones; a Mayan temple in the forest (R), and a Stone Tower atop a hill (L). The others include different temples, castles, obelisks, an actual hut, and even an igloo. I played around with these quite a bit, and am finally satisfied that each choice matches well with the chosen terraintype.

                          While implementing these changes I discovered something that has apparently always been true, but I'd never noticed until now - Goody Huts do NOT appear in any of the three Mountain terrain types. You can assign images, but they simply will not show up on the map. This was true even for games using the pre-Source Code ctp2.exe, so it's not something that was recently introduced.

                          I took the opportunity of this screenshot to show a couple of other changes. The "purple murex" (Dye) has been replaced by a more common variety (see red arrow) while the "Trawlers" image used on Beach tiles has shifted from the modern-looking rowboat to a small brown-sailed vessel (fits better with the other two sailing ships).

                          Edit: Credit where it's due - all the new Goody Hut images came from Ekmek's Civ3 pack, although every image has been edited to add shadows.
                          Click image for larger version  Name:	New Goody Huts.JPG Views:	1 Size:	75.3 KB ID:	9442910
                          Last edited by Kull; August 16, 2022, 13:15.
                          To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                          From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                          Comment


                          • #88
                            CTDs: It's been quite a while since the last update, and that's because I've been engaged with CTDs. For the most part the Cradle 3+ updates have been graphical, with only three new advances, one new building, and a number of new units (all of which used tried-and-true capabilities). Accordingly, most of the playtesting had been limited in duration, usually 50 turns or less. After the changes to the 11 files in the aidata folder, I launched some longer playtests, and soon discovered that the game would CTD repeatedly after 2500 BC. Reducing the number of civs from 12 to 8 extended things, once as far as 400 BC, but all "fewer civs" games would still CTD (unrecoverable), while those with 9 or more civs would terminate around 2000 BC (or sooner). Most of the CTDs produced Crash Logs, but they are largely unintelligible to me. Something about an EVENT error, but those are part of almost every slic file, and the specific mentions weren't descriptive enough to hone in on a particular file (see attached for one example).

                            Researching through the Source Code project threads, there were a number of comments suggesting that "no-longer-required" Slic files might contribute to instability (by interfering with functions now built into the exe), so the next step was a rigorous review of all 35 slic files included with Cradle. I'll list that in the next post, if only so folks looking to modify other scenarios can quickly determine which of the pre-Apolyton Edition slic files to delete. However, cutting to the chase, there was no positive effect. Games with 12+ civs still had unrecoverable CTDs around 2300 BC. By this point I'd been working the problem for almost two weeks, appeared to be running out of options, and was looking at the possibility of a complete rebuild of Cradle 3+. Extremely disappointing. As noted above, the slic file review is next, but I'll leave you with this hopeful comment. There is light at the end of the tunnel...
                            Click image for larger version  Name:	CrashLog.JPG Views:	1 Size:	65.7 KB ID:	9444185
                            Last edited by Kull; September 5, 2022, 14:25.
                            To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                            From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                            Comment


                            • #89
                              SLIC File reviews (alphabetical): All file numbers preceded by an asterisk were "commented out" and are not used in Cradle 3+. That's 14 in total, over a third.

                              *1) Airunit.slc: Not Required (per Martin Guhman (2004)): Refuels air units (it actually destroys the unit and replaces it with one of the same kind...fully refueled)

                              2) Buildingunits.slc: Required. Creates the "Great King" unit when the new "Dynastic House" building is completed. One piece of EVENT code.

                              *3) Capturecity.slc: Not Required. Destroys a percentage of buildings when a city is attacked or captured. The percent chance that various attacks will destroy buildings is included in Const.txt (ASSAULT_DESTROY_BUILDING_CHANCE), and the AE Readme specifically mentions that the "DestroyBuilding" function now works.

                              4) Colony.slc: Required (but modify, if possible). This is a Cradle file that builds a colony when a settler is disbanded inside city limits and it adds a population point when a Plunder II unit is disbanded in the city. However, it also has code for adding pop points when a settle is disbanded, and that *could* conflict with the new "Settle-in-city" function. Preferable if that part of the code could be removed. Since the "build colony" button doesn't work (Danger Will Robinson!), this is the only way to actually get colonies. Has two EVENT sections.

                              *5) ComImpSForAIs2.slc: Not Required, per Martin Guhman (2004)

                              6-8) Culture.slc (which in turn activates culture_funcs.slc and culture_msgs.slc): Required (with caveat). These are the Cradle Religious/Culture Victory files, and thus needed IF you plan to play with that option. If not, it might be best to "comment out" the "#include culture.slc" line in Scenario.slc. There are nine EVENT sections in culture.slc (none in the other two)

                              *9) Diplomod.slc: Not Required (replaced by diplomacy.slc)

                              10) Diplomacy.slc: Required. An AE file which replaces diplomod.slc.

                              11) Elite.slc: Required (but known to be broken!) This file creates the "Cradle Elite Units", and is thus a key part of the mod. Has two EVENT sections. ISSUE: The code which creates Generals from Heroes is broken. After the first Hero is promoted to General, all subsequent promotions kill the Hero unit but do not provide a General unit.

                              12) Feats.slc: Required. The Cradle-specific version has more entries, but there's no EVENT code, nor any errors related to this file.

                              *13) FortsForAIs.slc: Not Required. Builds forts for AIs in order to connect separated parts of the empire, primarily so they'll build roads between each area. In 2004 Martin noted that this file was still required, however in 2006 the SC team added the "CanBuildWasteland" code to tileimp.txt, and in 2007 Ekmek commented that "the AI has built roads through wasteland to connect cities".

                              *14) Frenzy.slc: Not Required, per Martin Guhman (2004)

                              *15) Goods.slc: Not Required, per multiple sources (now part of the base game)

                              16) Homeguard.slc: Required. This file creates the "Cradle Militia Units", and is thus a key part of the mod. Has thirteen EVENT sections. Worth noting that SC introduced a feature in userprofile.txt which provides the "cheapest unit" to the AI as a Militia garrison unit (AIMilitiaUnit=No or Yes), but that's a different solution to the problem. I suppose you *could* substitute that feature and do away with this file altogether, but that would be a last resort, and only if it's proven that this file is causing CTDs.

                              *17) Infras.slc: Not Required (probably). A small file which fixes an AI bug involving Infrastructure or Capitalization. One EVENT section. I couldn't find specific mention of this issue, but there are several threads in which the team fixed different Infrastructure/Capitalization problems, and this was almost certainly dealt with as well.

                              *18) KillCityOption.slc: Not Required. A file which gave the player a few options after capturing a city (destroy/disband/enslave). Two EVENT sections. "CityCaptureOptions" are now part of the base game, so this file is redundant.

                              19) Mapwonders.slc: Required. This file identifies the Visible Wonders (a key component of Cradle) and also places them on the map. Four EVENT sections. There were some slic errors related to the Great Wall code (it places two wall TIMPs, one on each side of the city). That feature isn't used in Cradle anyway, so I'll see if that code can be deleted - it almost doubles the size of the file, all to no purpose (in Cradle, anyway).

                              *20) Natwonders.slc: Not Required (but desired). This file identifies the seven Natural Wonders and places them on the map. Nine EVENT sections. This file was kicking out both a "normal" SLIC error and a cascade of EVENT errors. I was able to fix the first one, but I'm not "coding-smart" enough to figure out what's wrong with the Events. It does seem odd though - most of this code is used to deploy the wonders at the start of T2, after which it should shut down - the exception being all the code designed to prevent pillaging and overbuilding. At least for now I'm going to remove this file from the Active SLIC files list. Eye candy is great, but not at the expense of stability.

                              21) Plunder.slc: Required. A number of the Cradle Wonder Units have the ability to generate "plunder units" of various sorts, and this file controls the type of plunder unit (based on time period). Two EVENT sections.

                              *22) Pw_cheat.slc: Not Required. A small file which gives the AI a gold and PW boost to encourage them to build TIMPs. One EVENT section. Not a "bug fix", so not mentioned in the SC threads, but the AI shouldn't require artificial boosts like this, given the many AI improvements in AE. Worth noting that Cradle 3+ originally used the similar "pwcheat.slc" from the MoT mod, but that has been deactivated as well.

                              23) Scenario.slc: Required. An empty file (presumably the code requires its presence) which is populated and used only by scenarios.

                              24) Script.slc: Required. Most of the file is dedicated to "messagebox" code but it's also where most of the slic files are activated (bottom of the file). BB added two EVENT sections at the bottom of this file as part of the Cradle Scenario conversion, but I'm removing them since they disabled CityCaptureOptions in favor of those in KillCityOption.slc (now deactivated).

                              *25) Settling.slc: Not Required. A file from the Mot mod which BB altered for Cradle, intended to improve AI settling location choices. Seventeen EVENT sections. I like the idea, but at least one of the earlier playtest EVENT errors appeared to come from this file, and it has a LOT of EVENT code. Accordingly I'm going to disable it.

                              *26) Soundfix.slc: Not Required. A file which adds sounds when tile improvements are built. One EVENT section. The SC project added a sound file link to tileimp.txt, making this redundant.

                              *27) Springfield.slc: Not Required. A file which made the AI build a new Capitol improvement if the old was lost. Five EVENT sections. The AE readme specifically lists this as an SC fix from Revision 907.

                              28) Tilerefund.slc: Required (not really, but it's a nice feature and there's no indication that it's buggy). A file which refunds part of the PW cost of an improvement when it is pillaged or a new one replaces it. Three EVENT sections.

                              29-30) Train.slc (which in turn activates trainfunct.slc): Required. These are the Cradle Military Unit Training files, which increase unit strength by spending gold. Personally I don't use this, but it's an interesting feature and has a really nice graphical interface. There are six EVENT sections in train.slc (none in the other).

                              31) Traits.slc: Required. Holds the Cradle civ-specific feats and golden ages. One EVENT section.

                              32) Traits2.slc: Required (with caveat). More Cradle civ-specific traits (gold, pw, and culture). Fifteen EVENT sections. The Cradle2 playtest kicked out two EVENT errors related to this file, specifically the two EVENTs which grant extra population to newly founded cities of certain civs. When you read the code, it's designed to keep the exe from opening the build manager for one turn, so it's not surprising that CTP might see this as a problem. Worst case, those two civ features could be removed, but for now I'll keep this with no changes.

                              33) Updater3.slc: Required. This file allows the player to upgrade Cradle Militia and Elite units, which - because they are unbuildable - cannot be updated using the new AE upgrade system. The file included with Cradle (updater.slc) did not function properly, so it has been replaced with this modified version of APOL_updater2.slc.

                              34) Wonderbuildings.slc: Required (???) This file prevents the AI from constructing buildings that are already granted by a Wonder. For example, VoK gives the player the effect of an Apothecary in every city, but even if they have this Wonder, the AI builds Apothecaries anyway. Zero EVENT sections. NOTE: There is new code in the Wonder database, "ActualBuildingEverywhere", which means that when the Wonder is built, it places the actual building in all of the player's cities (the existing code - which still works - is "BuildingEverywhere", and that provides the effect of the building). So changing to the new code would mean this file could be removed. HOWEVER: Since there aren't any EVENT sections in the code, this is not a source for those sorts of errors.

                              35) Wonderunits.slc: Required. This file creates all the units (not all of which are non-buildable "Wonder Units") given to the player when particular Wonders are built. Seventy-four EVENT sections!!! Certainly that's a LOT of EVENTS, but each is a one-time creation of a single unit and each trigger is disabled right after the EVENT fires. Seems unlikely to be a source of problems.
                              Last edited by Kull; September 5, 2022, 23:36.
                              To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                              From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                              Comment


                              • #90
                                Fixing CTDs: The source of the unrecoverable CTDs was identified (more on that to follow). The first test game used 12 civs and was played on "Hard" difficulty, and in the screenshot below you'll see the "end state" when the playtest terminated in 1500 AD. There were a few CTDs near the end of the game, but all of them were resolved simply by loading the Autosave. I suspect they were the result of a resource overload, as the screenshot sort of attests. Even so, the CTDs were anywhere from 40 to 5 turns apart and all happened on hitting the end-turn button. So not too inconvenient...or surprising. OK, let's talk about what was done and why.

                                1) First thing! If you plan to run a long test game - especially with this many civs - it's best to "play" as the Barbarians. Which is surprisingly easy to do. For those unaware of the mechanics:
                                - Start off as any normal civ, choosing all the options you'd like to include in the test game (don't select any of the "extra Barbarian" options as that will only slow things down).
                                - After the game loads, I usually found the first city immediately, but it's probably not necessary.
                                - Hit the <esc> key and click "Cheat Mode" in the resulting menu.
                                - Click through the next two windows and when the "Scenario Editor" window finally appears, click the "EMPIRE" button (top right)
                                - In the next screen, go to the "Player" choice in the top left and click the left-facing arrow until the number is "0" (i.e. the Barbarians)
                                - Now click the "Exit" button (bottom right) and you'll return to the game screen (now completely black, since the Barbarians don't have any units on the map).
                                - Hit the apostrophe key to bring up the chat window.
                                - Type /rnd ## (meaning: /rnd<space><the number of turns you want the AI civs to play against each other> and hit Enter (then click anywhere on the map and hit the apostrophe key to close the chat window). That will start the game off, and the first batch of turns will pass VERY quickly, since Barbarian units won't appear on the map for quite a while. Your starting civ will proceed under full AI control, so don't think of it as anything more than an AI civ.
                                - Usually my chat window values are "/rnd 100", but later in the game that drops to 50 or even less. After each set number of turns, the game halts on the Barbarian turn and you can use the cheat menu to look around and see what's going on or just repeat the process for the next 50-100 turns.
                                - If you notice anything interesting during an auto-play sequence, just hit the ESC key and the game will halt on the next Barbarian turn.
                                And that's it! Easy peasy, and the turns will fly by....well at least for a while!

                                2) So what about those CTDs? I spent a LOT of time reading through the Source Code playtest threads, and noticed in particular some comments from BureauBert. He kept "finding" new CTDs and other errors, and every time it happened after he'd made changes to one or more files in the aidata folder. As you'll recall, that was a big project (discussed in Post #80) where the Cradle AI files were merged with those that are now part of the AE base game. And on further reflection, it was pretty obvious that I hadn't done a really thorough job. Many of the files were huge and I had no idea what most of the settings meant, and so there was a fair amount of "by guess and by golly". Accordingly all the files were restored to the original Cradle settings (while making necessary changes for things like new units and advances). And when that was done, the very first test game was the one you see here. In short, that was the problem.

                                3) Going forward, I will have to become EXTREMELY FAMILIAR with all the aidata files, and make changes only where the implications are fully understood. Especially where code sequences from one file are referenced by another. Some of that has already been done, and the result was a second test game (15 civs this time) which reached 1000 AD before the playtest was voluntarily terminated. It's going to be painful, but there's no real alternative. Although each of these games made it very far along, I'm not impressed (to put it mildly) with the AI's performance. So a great deal of changing, testing, and tweaking still lies ahead. Plus I still need to complete the "Special Attacks" project that was underway when this nightmare first reared its head over a month ago. And THAT is proving to be a rat's nest of unparalleled proportions. The SC guys did great work in almost every area.....but THIS? Aye caramba.
                                Click image for larger version  Name:	1500AD.JPG Views:	1 Size:	454.0 KB ID:	9444322
                                Last edited by Kull; October 12, 2022, 14:20. Reason: Ooops - forgot to add four lines on how to change the active player over to the Barbarians!
                                To La Fayette, as fine a gentleman as ever trod the Halls of Apolyton

                                From what I understand of that Civ game of yours, it's all about launching one's own spaceship before the others do. So this is no big news after all: my father just beat you all to the stars once more. - Philippe Baise

                                Comment

                                Working...
                                X