Announcement

Collapse
No announcement yet.

Alexander the Great v1.5

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

  • Alexander the Great v1.5

    As I don't need to tell you, when CtP2 was released it was incomplete. It was buggy, unbalanced, etc and the design team basicallly needed a couple of months more to really make it a good game. That wasn't just true for the regular game, it was true for the Alexander the Great scenario as well, which as you all probably know was designed by our very own Harlan. Noone felt more that his scenario was incomplete than Harlan himself, so he decided pretty soon that he wanted to continue working on his scenario after the game's release. His goal was to release a version 2.0 that was everything that v1.0 was supposed to be plus a little bit more. I had already helped Harlan with some of the SLIC code for the scenario while he was still working for Activision, and the decision to go for a sequel was made jointly by the both of us (Harlan would do the creative work, I would be the code monkey).

    Soon it turned out real life issues would be a major obstacle for both of us but especially me, so we also got help from a few others. Most notably we got a lot of assistance with the SLIC code from Charles Rothermel, a.k.a. Radical_Manuvr (who basically learnt to code during the project -- very impressive) and two or three others (I honostly can't remember who) who mostly did playtesting. Unfortunately RL obstacles eventually proved too much and the project pretty much fell apart long before completion. Harlan later moved on to Civ3 and eventually disappeared from Apolyton altogether. Charles and I later discussed what to do with the results we had achieved while the project lasted, but without Harlan's consent as creative mind behind the project, I in particular wasn't comfortable releasing anything; especially since Harlan had repeatedly declined to release a public beta after requests from both other project members (Charles and the playtesters) and interested outsiders. He didn't want to release until the scenario was complete, in his mind the version that CtP2 had shipped with was bad enough. Also, when it came to a delayed release, the very last thing I wanted was to do was to create even the slightest bit of illusion that any of the credit for the scenario should go to anyone else but Harlan (Charles and I may have invested a fair bit of time in it but we didn't code a single line of SLIC without Harlan's consent).

    So now I've had these half-finished files sitting on my harddisk for well over 3 years and never quite knew what to do with them. Releasing them wasn't an option, completing them without Harlan always felt to me like heresy, but never doing anything with them at all (or worse, deleting them) would also have been a huge waste. A couple of days ago I was going through my old files, noticed the scenario again and it struck me: the Source Code Project is the perfect opportunity for me to finally do something with it. We're already improving the game as a whole in a big project where credit has to be shared between many individuals. Harlan didn't like releasing an incomplete product, and he was extremely unhappy with the version the game originally shipped. Releasing the improved but incomplete scenario as part of the Apolyton Edition would not be ideal, but still a huge improvement over the original. I have no means of contacting Harlan anymore and I hate speaking in other people's stead, but I think he could live with a decision to release the improved version now. Never releasing the files would be a huge waste of all the effort we all invested in it, and even though incomplete, the improved version is very much playable and enjoyable. Certainly much more so than the version CtP2 shipped with. Heck, assuming the one or two remaining problems will be solved, noone would probably ever have thought that the scenario is in any way incomplete if I wouldn't say so. All the known bugs from the original version have been solved and a bunch of new stuff has been introduced; it could pass for a v2.0 if it was presented as such.

    So, after a lot of thought I've decided I would like to release the improved version of the scenario, as part of the Apolyton Edition. I've had to make a couple of changes to it compared to how it was when it was abondoned 3-4 years ago, as there were quite a few loose strings (you tend to get that if you abandon something mid-way through ). I've tried to finish everything up as much as possible and make it all look as slick and complete as posisble. I'm calling the final result Alexander the Great v1.5: not v2.0 as it was intended to be, but still an improvement over the original version. I'll present the most exciting news first: what's new?

    Improvements in Alexander the Great v1.5:
    - New cities, units, advances, buildings and wonders
    - New trade goods and terrain types, with some different movement rules
    - New river system: major rivers can be navigated by ships and only a few types of land units
    - New 'support' system for naval units: they receive damage when they're too far from home
    - New events: more Egypt events, various city defections, Delphi (TBD), Persian navy (TBD)
    - New happiness system: the bigger the city, the unhappier (comes on top of existing overcrowding system)
    - Improved overall gamebalance (chances/rewards of events, numbers of units, city build lists, etc)
    - Improved AI
    - Improved Settler rules (some cheats disabled)
    - Fixed many existing bugs (pregnancies, treason, barbarian spawning, Sparta, fixes from AE, etc)
    - Greatly revised and updated Great Library

    But now for the bad news: the scenario still isn't 100% ready. There is one major bug that currently makes the scenario unplayable. I can't solve it myself (partly due to time contraints: I still have a lot of real life obstacles to deal with, one of them being a very packed exam period coming up next week), so I'm releasing it as a beta for now: hopefully with some help from you guys I'll be able to solve this problem. After that there are still a few other smaller issues to take care of, but nothing that should cause any serious delays. Also, some additional playtesting may be desirable to ensure the scenario is now indeed bug-free and properly balanced. However, none of that can really be done before the current game-breaking bug is resolved.

    The problem that currently makes the game unplayable is the time between turns: it takes an unexplicably long time for the AIs to complete their turn. Even after disabling all SLIC code and reducing the AI time slices to a fraction of the original, it takes about 10 minutes to complete a single turn. Most notably, the game seems to hang during the turn of the independent Greeks: it's like the goody huts problem in Cradle, but worse. And of course, there aren't any goody huts in this scenario so that can't explain it. I don't remember this problem being reported while Harlan was still working on the project and the first version AFAIK also didn't have it, so it's a bit of a mystery to me where it came from. Can you guys please download this scenario (it installs to a seperate folder so it won't overwrite any existing files) and test it? For one thing I'd like to know if the problem is with just with my PC or if it's happening to everyone (I had problems running the first version of the scenarios as well, though that was on another PC). Also, maybe the coders can see anything in the source code or logs that might explain it? As I said, I have a busy exam period coming up, so I can't do an awful lot myself in the coming weeks, but I'm really stuck on this anyway, someone with a fresh perspective needs to look at this. This scenario is truely awesome and would be a great addition to the AE, but it ain't no good if it takes 10 minutes a turn...

    A second, far less serious, problem I've had with this scenario that I haven't been able to resolve myself is with the colors00.txt, in particular the minimap. Harlan rewrote terrain.txt to redefine a few terrain types (most notably some underwater terrains were converted into river tiles) and now the land/water only version of the minimap takes the colour of grassland river (formerly underwater volcano) instead of regular grassland as the colour for land. How do I get it to use regular grassland again? Also, Polar Mountains (which have been made impassable for all units) show up as water tiles on this version of the minimap. I've currently worked around the problem by simply giving the volcano a greenish colour on the radar map, but if anyone could fix these minimap issues (and/or explain to me why it's so messed up), I would appreciate it.

    Anyway, here is the scenario, it's labeled v1.5b(eta) for the time being. It's 4.25 MB, unzip to your [root]\Scenarios folder.
    Administrator of WePlayCiv -- Civ5 Info Centre | Forum | Gallery

  • #2
    Just downloaded it, and the AI does take an extremely long time to complete their turns. I was using the lstest playtest.

    It looks like it will be really good though once the bugs are worked out
    "

    Comment


    • #3
      Cool Did you ever get a fix for the AI moving stacks on roads thing?
      Concrete, Abstract, or Squoingy?
      "I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis

      Comment


      • #4
        Well, we used some common sense solutions like spreading the stacks more evenly over the whole map rather than concentrating them around one or two cities, and we simply created more roads so units can move around chokepoints I also had some (unfinished) ideas about how to work around the problem with SLIC, but before I continue on those I would first like to test how the scenario currently holds up, especially since AI movement is also being reworked for the Source Code Project...
        Administrator of WePlayCiv -- Civ5 Info Centre | Forum | Gallery

        Comment


        • #5
          Ah ok. Excellent.
          Concrete, Abstract, or Squoingy?
          "I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis

          Comment


          • #6
            Loc I think I may have solved you colour.txt nightmare the reason ( at lest what I suspect) is that you have made it so ships can sail up river by putting the

            MovementType: ShallowWater

            Flag on the terrain this makes the terrain show up as water as it can be navigated by sea. Eg the map is painted completely green then the tiles were ships can sail is painted blue making the min map mistake them for shallow wetter tiles. (not a coder so pleas feel free to give me a slap.)

            As for detailed map a simple modification to color.txt can be done to make the detailed version see that its grass land.
            "Every time I learn something new it pushes some old stuff out of my brain" Homer Jay Simpson
            The BIG MC making ctp2 a much unsafer place.
            Visit the big mc’s website

            Comment


            • #7
              Originally posted by The Big Mc
              MovementType: ShallowWater

              Flag on the terrain this makes the terrain show up as water as it can be navigated by sea.
              No, not really. The river tiles show up as land just fine. It's the Polar Mountains that show up as sea -- while they can't be navigated by anyone.

              The problem with the river tiles is that the minimap takes the colour of those tiles rather than the regular grassland tiles for the land/sea only minimap. I.e. on the detailed minimap, Grassland is pale green and River Grassland is bright green. On the land/sea only minimap, all land is bright green (as opposed to the pale green of the normal game).
              Administrator of WePlayCiv -- Civ5 Info Centre | Forum | Gallery

              Comment


              • #8
                try this it should make river grassland the same as grassland.

                But it needs testing as it was made on the fly as I don't currently have the latest play test.
                Attached Files
                Last edited by The Big Mc; October 18, 2004, 18:41.
                "Every time I learn something new it pushes some old stuff out of my brain" Homer Jay Simpson
                The BIG MC making ctp2 a much unsafer place.
                Visit the big mc’s website

                Comment


                • #9
                  The Big Mc,
                  The only line you changed in that file was an outcommented line, part of the old CtP1 set. Obviously that didn't have any kind of effect. The radarmap colours are further down, from line 105 onwards (you changed line 69).
                  Administrator of WePlayCiv -- Civ5 Info Centre | Forum | Gallery

                  Comment


                  • #10
                    try now

                    sory to much time off.
                    "Every time I learn something new it pushes some old stuff out of my brain" Homer Jay Simpson
                    The BIG MC making ctp2 a much unsafer place.
                    Visit the big mc’s website

                    Comment


                    • #11
                      I was afraid that's what you were trying to do. Yes, now the land/sea only minimap looks normal again, but now you can't distinguish between regular grassland and river grassland on the detailed minimap. And that's quite important, as you can't distinguish between regular grassland+river and river grassland on the main map either (except for right-clicking on a tile and requesting terrain info). What I would want is for river grassland (and other major river terrains) to have its own unique colour (ideally blue) in the detailed minimap, while the land/sea only minimap uses the colour of regular grassland (otherwise you get that both land and water in the land/sea only minimap are blue).
                      Administrator of WePlayCiv -- Civ5 Info Centre | Forum | Gallery

                      Comment


                      • #12
                        If you want a slow game, you should try running this in the debugger with the Apolyton edition . I didn't even make it to turn 2 . It looks like the AI is busy determining how to schedule its transport goals. Player 2 is handled relatively fast (around 1000 matches to consider), player 3 takes a little bit longer (about 5200 matches), and player 4 takes forever, with over 34000 matches and an enormous amount of sorting large lists.
                        Can this be caused by the rivers? If so, adding some river crossings may reduce the need for transports. OTOH, this could introduce chokepoints.

                        An observation about the Slic code: the construct
                        Code:
                        GetCityByLocation(x, tmpCity);
                        if (CityIsValid(tmpCity) ...
                        is used quite often. This is at best inefficient, and may even be incorrect. See the observation by BureauBert and some following posts for an explanation.

                        Oh, and another one: some comments about defection probabilities do not reflect the state of the actual code.

                        Comment


                        • #13
                          it happens in the original too.
                          "Every time I learn something new it pushes some old stuff out of my brain" Homer Jay Simpson
                          The BIG MC making ctp2 a much unsafer place.
                          Visit the big mc’s website

                          Comment


                          • #14
                            Originally posted by Fromafar
                            If you want a slow game, you should try running this in the debugger with the Apolyton edition . I didn't even make it to turn 2 . It looks like the AI is busy determining how to schedule its transport goals. Player 2 is handled relatively fast (around 1000 matches to consider), player 3 takes a little bit longer (about 5200 matches), and player 4 takes forever, with over 34000 matches and an enormous amount of sorting large lists.
                            Can this be caused by the rivers? If so, adding some river crossings may reduce the need for transports. OTOH, this could introduce chokepoints.
                            That's the sort of info I was looking for, especially since I don't have a working version of the source (I get all sorts of weird bugs when I run the latest version, I need to do a clean install but simply don't have the time). Thanks a ton

                            I'll try adding some river crossings later when I have the time and see what that does...

                            An observation about the Slic code
                            Yeah, the folks at Activision seemed to really love that CityIsValid function, never quite got that It's not causing any problems AFAIK so I think I'm leaving it as it is for now, until I get really bored sometime

                            Oh, and another one: some comments about defection probabilities do not reflect the state of the actual code.
                            Well, that's what you get when you have non-programmers working on code. They tend to be sloppy, especially when it comes to keeping documentation updated (especially Harlan) When in doubt, the actual code is correct
                            Administrator of WePlayCiv -- Civ5 Info Centre | Forum | Gallery

                            Comment


                            • #15
                              Originally posted by Locutus
                              That's the sort of info I was looking for, especially since I don't have a working version of the source (I get all sorts of weird bugs when I run the latest version, I need to do a clean install but simply don't have the time). Thanks a ton

                              I'll try adding some river crossings later when I have the time and see what that does...
                              Yeah that's a problem of the playtest version in general, as soon as the AI has to use transports it is getting slow.

                              Originally posted by Locutus
                              Yeah, the folks at Activision seemed to really love that CityIsValid function, never quite got that It's not causing any problems AFAIK so I think I'm leaving it as it is for now, until I get really bored sometime
                              Probably it doesn't cause any problems as long as all the cities are valid, but if one gets destroyed, you might see the slic code in action even if the slic code is not supposed to work if the city is destroyed.

                              Here is another piece of code that is - well slower than necessary. At least I don't see any reason why:

                              Code:
                              HandleEvent(MoveUnits) 'AGSeres2_F' post {
                              army_t		tmpArmy;
                              location_t	tmpLoc;
                              	tmpArmy = army[0];
                              	player[0] = tmpArmy.owner;
                              	if (player[0] == 1) {
                              		tmpLoc = tmpArmy.location;
                              		if (SquaredDistance(tmpLoc, seres2Loc) < 25) {
                              			Message(1, 'AGSeres2');
                              			DisableTrigger('AGSeres2_F');
                              		}
                              	}
                              }
                              I don't see the need for the temporary variables, so that it looks like this:

                              Code:
                              HandleEvent(MoveUnits) 'AGSeres2_F' post {
                              	if (army[0].owner == 1) {
                              		if (SquaredDistance(army[0].location, seres2Loc) < 25) {
                              			Message(1, 'AGSeres2');
                              			DisableTrigger('AGSeres2_F');
                              		}
                              	}
                              }
                              -Martin
                              Civ2 military advisor: "No complaints, Sir!"

                              Comment

                              Working...
                              X