Announcement

Collapse
No announcement yet.

Fixing SMACX Bugs

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

  • #76
    Took a break from "go to" stuff and have a deeper look at probes.

    - With Hunter-Seeker Algorithm on an attempt to access an unit or city, kills the probe (P) while an enhanced probe (EP) passes this check and gets normal probe menu. (ok)
    - P or EP will always fail "Mind Control" attempt on both units and cities if SE is >=3 stating "social values have rendered immune". (bug?)


    Are the two values the range of success? So w/o HSA normal EP attempt you'd have a chance of success between 84% to 100%? If that's the case, I'm really confused by HSA prob values. The cost looks ok, nothing says it will be different only probabilities. Can anyone explain to me whether there are any problems with probabilities? Also, the drop between normal/untraceable?

    mind control Former w/ hardened EP w/ SE PROBE +1 w/o HSA:
    cost: 1533, normal: (100%, 84%), untraceable: (75%, 67%)

    "" w/ HSA:
    cost: 1533, normal: (50%, 67%), untraceable: (25%, 34%)

    mind control Former w/ hardened P w/ SE PROBE +1 w/o HSA:
    cost: 1533, normal: (100%, 67%), untraceable: (50%, 34%)

    "" w/ HSA:
    dies

    If you can think of any other problems relating to SE PROBE value, HSA, probes/enhanced probes actions let me know. Or if you know how the probabilities are suppose to be calculated between P/EP/HSA that would help.

    I came across what seems to be a flag where a faction can be completely immune to probe effects. Is this from a secret project? I'm just curious, I forced the code to access it.

    Comment


    • #77
      Look at the rules

      No HSA:

      Note that the hardened probe has a normal 0% chance of failure and 33% chance of nonsurvival and an untraceable 50% chance of failure and 66% chance of nonsurvival.

      The hardened enhanced probe should have a 0% chance of failure and a 16 1/2% chance of nonsurvival and an untraceable 25% chance of failure and 33% chance of non survival.

      w/ HSA

      Note that the enhanced probe should have half the chance of success that it would have if there was no HSA (50%), but it looks like the chance of nonsurvival doubled from 16% to 33%. The untraceable chance of non survival doubled from 33% to 66%, but the chance of success is only 1/3 (25%) of the 75%.

      It doesn't look like enhancement affects the cost of mind control.

      The message you triggered is not the message you get when you try to subvert a base or a unit. Could it be the result of trying to create a drone riot?

      In the manual, it states:

      "The Believers are resistant to probe brainwashing ..."

      In script.txt and xscript.txt, there is a passage that says:

      #MINDIMMUNITY
      #xs 440
      #caption Operations Director
      $ citizens are intrinsically immune to mind control!

      Since it can apply to any faction, I surmise that is probably is triggered by a faction characteristic.

      The Believers have the FANATIC faction characteristic, so I speculate that the message was triggered because of the FANATIC characteristic.
      Attached Files
      Last edited by vyeh; February 16, 2009, 15:46.
      Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

      Comment


      • #78
        I took a look into AX manual, and on page 25 it says:

        ALGORITHMIC ENHANCEMENT
        With Algorithmic Enhancement, Probe Teams can become even more powerful.
        An enhanced Probe Team has half the normal chance of failure. For example, a
        Probe Team with a normal chance of 60% success, 40% failure, would now have
        an 80% chance of success (1/2 40% = 20%, added to the chance of success).
        In addition, Enhanced Probe Teams can penetrate the interlocks of a unit or
        base protected by Social Engineering or the Hunter-Seeker Algorithm! The
        chance of success is half what the chance would have been if the target did
        not possess the H-S Algorithm, or if their Probe rating was +3 rather than +4.


        This might be the closest description of what was intended, but never done right in the code. Note, that claim of need +4 probe for immunity is incorect, as in vanila it's +3. So the end of last sentence might be:
        ...or if their Probe rating was +2 rather than +3.

        If they made mistake here referencing vanila AC, can we consider what they write in this paragraph correct? Maybe yes, then I think the probe (P) and enhanced probe (EP) working might be like this:

        SE Probe +2 or lower
        NO HSA
        (P) chance 50% (for example 50%)
        (EP) chance 100%
        HSA
        (P) dies
        (EP) chance 25% (or 50% ???)

        SE Probe +3 or higher
        NO HSA
        (P) not able
        (EP) chance 25% (or 50% ???)
        HSA
        (P) dies
        (EP) chance 25% (or 50% ???)

        What do you think about it?

        I wrote 50% or 100%, because I'm not sure this half pertains to (P) or (EP). This could be chcked though in case of +2 or less probe... I will check it later.
        Mart
        Map creation contest
        WPC SMAC(X) Democracy Game - Morganities aspire to dominate Planet

        Comment


        • #79
          Originally posted by vyeh View Post
          Look at the rules below

          No HSA:

          Note that the hardened probe has a normal 0% chance of failure and 33% chance of nonsurvival and an untraceable 50% chance of failure and 66% chance of nonsurvival.

          The hardened enhanced probe should have a 0% chance of failure and a 16 1/2% chance of nonsurvival and an untraceable 25% chance of failure and 33% chance of non survival.

          w/ HSA

          Note that the enhanced probe should have half the chance of success that it would have if there was no HSA (50%), but it looks like the chance of nonsurvival doubled from 16% to 33%. The untraceable chance of non survival doubled from 33% to 66%, but the chance of success is only 1/3 (25%) of the 75%.

          It doesn't look like enhancement affects the cost of mind control.

          The message you triggered is not the message you get when you try to subvert a base or a unit. Could it be the result of trying to create a drone riot?
          Ah ok, that makes a lot more sense now. I didn't understand what each of the % meant. Now I'll see about resolving it so it conforms to rules set in the manual.

          There is one root function when you use a probe (doesn't matter if it is enhanced or not). The first bit does some checks regarding what looks like amphibious assault? (PROBEABILAMPHIBIOUS) I haven't looked at that. The next bit is where HSA is active. It then generates a menu with all the different valid probe actions for a particular city. After you select one, it takes that action ID and uses it in a switch for various actions. If it is for a unit, it skips the menu bit and jumps directly to switch. That screenshot is from a code check (MINDIMMUNITY) solely inside MC section for cities and there is a duplicate one inside unit MC path. If you've never seen it before, I'll have a look to see what toggles it.

          Comment


          • #80
            You can make a faction immune to mind control by setting in the special values "MINDCONTROL" inside faction.txt. It's actually docummented in brian.txt.

            So for example if you wanted the Believer's to be immune:
            TECH, Psych, SOCIAL, --RESEARCH, SOCIAL, +PROBE, SOCIAL, ++SUPPORT, SOCIAL, -PLANET, MINDCONTROL, FANATIC, 0
            When you set that, it will display the message in my screenshot on probe attempts.

            Comment


            • #81
              Attached is the message I got when I moved a probe team onto a Ghost colony pod when Ghost had probe of +3.

              PROBEABILAMPHIBIOUS occurs when a probe team that is on a transport attempts to move onto another faction's adjacent base. This checks to see if the probe team has amphibious ability. If it does, it allows a probe action. If it doesn't, it returns an error message (see attachment).

              I'm pretty sure your message is triggered by the FANATIC characteristic.

              I used the scenario editor to place a probe team next to Believers. I can't reproduce your message.

              Edit: I didn't know you were using a modified faction file!
              Attached Files
              Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

              Comment


              • #82
                Originally posted by vyeh View Post
                Attached is the message I got when I moved a probe team onto a Ghost colony pod when Ghost had probe of +3.
                Ya that's the same message I get even with enhanced probes. So this is a bug correct? Enhanced probes should be able to bypass SE PROBE restrictions?

                Originally posted by vyeh View Post
                Edit: I didn't know you were using a modified faction file!
                I'm not. I just tracked down what value you'd have to add to create that message. I'm running stock AC/ACX install, ACX v2 patch, 2000/xp compat patch and my modified exe.

                Originally posted by Mart View Post
                I took a look into AX manual, and on page 25 it says:

                This might be the closest description of what was intended, but never done right in the code. Note, that claim of need +4 probe for immunity is incorect, as in vanila it's +3. So the end of last sentence might be:
                ...or if their Probe rating was +2 rather than +3.
                So, let's say Angels have a SE PROBE value of +6. How would I handle it there? Should enhanced probes always be able to bypass SE? I could treat SE as value of 2 only for enhanced probes. Or do enhanced probes just give -1 to SE value so in the case of Angels it would be +5 and still immune. I wish we could find someone who worked on the game and get some input.

                edit: Also, even if I treated SE as +2 regardless if it is >=3 there is still the issue if faction's city has "Covert Ops Center". It would end up being +4 and being immune. However, units wouldn't since if I remember correctly they're only based on SE value.
                Last edited by scient; February 16, 2009, 17:31.

                Comment


                • #83
                  According to the manual, an enhanced probe team should be able to subvert bases and units even if the probe = +3.

                  One of the problems is that the team that did the expansion was different from the original team.

                  According to the designers notes at the end of the ACX manual, the enhanced probes were supposed to allow probe team combat to continue.

                  In my opinion probe +4 and above should be treated as +3. And enhanced probe always works.

                  Data Angels bases with covert ops centers should be immune from regular probe teams (the fact that they are not is the rollover bug). However, Data Angels units are not immune from regular probe teams (unless there is HSA or + probe from SE).
                  Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

                  Comment


                  • #84
                    Originally posted by vyeh View Post
                    According to the manual, an enhanced probe team should be able to subvert bases and units even if the probe = +3.

                    One of the problems is that the team that did the expansion was different from the original team.

                    According to the designers notes at the end of the ACX manual, the enhanced probes were supposed to allow probe team combat to continue.

                    In my opinion probe +4 and above should be treated as +3. And enhanced probe always works.

                    Data Angels bases with covert ops centers should be immune from regular probe teams (the fact that they are not is the rollover bug). However, Data Angels units are not immune from regular probe teams (unless there is HSA or + probe from SE).
                    Ok, I'll have to think about this and come out with an outline of sorts that can be vetted before I start working on this. If I were to contact 1 or 2 people who worked on ACX for advice, who would they be?


                    Originally posted by Mart View Post
                    Attached is save file with 2 sea transports, one with repair on tile 34,64, another without.
                    They are near Hive and Sea Hive bases, save should show cursor on repair unit when loaded.

                    There are 2 scouts onboard, 70 % damaged both.
                    I also destroyed Nano factory SP, as it gives repair ability everywhere.

                    When advancing from 2242 to 2243, both scouts heal to the same 50% damage.
                    Apparently repair ability does not work.

                    Ok, I see now. There is a good explanation on pg 104 of the AC manual about healing. I've tested Command Center but are Naval Yard, Aerospace Complex, and Bio Labs all working by healing specific units in one turn? So in that saved game, both units in transports are getting +10% base healing and another +10% from being in friendly territory so cumulative of +20% per turn. Which can be seen empirically since they go from 70% damage to 50%. However, the unit in "Repair Bay" transport should heal 20% * 2 or 40% for a final of 30%.

                    Ya, that sucks and breaks a very useful ability. I located the byte that stores damage percent in a few mins thanks to my earlier work on patrol elite bug. I've got to do more analysis and see how the new healed value is being generated that updates the dmg percent variable. Do you know if this worked in AC? Or previous versions of ACX? I'm just curious because this seems like a pretty obvious issue.

                    Comment


                    • #85
                      Command Center = land units; Naval Yards = sea units; Aerospace Complex = air units; Biology Lab = native units.

                      The repair bay facility was broken in AC.

                      Note that there is some healing in a transport anyway. I assume the testers saw there was some healing and didn't realize it was only half of what it should be (and healing rate would vary depending on whether the transport was in territorial waters or not; plus you would need to have loaded a damaged unit to see any healing).

                      There is evidence in the alpha.txt and alphax.txt files of features that were not included in the final version. I suspect that there were a lot of changes and a lot of pressure to get the product out the door.
                      Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

                      Comment


                      • #86
                        After doing analysis on unit heal function it pretty much follows page 104 to the letter. It even follows the same order closely (friendly territory, airbase, bunker, etc). There is code there that doubles the current healing modifier right before checking if faction has Nano Factory. The problem is even for units inside transport with repairing flag the initial check for this code fails. So, the good news is there is code there and it just needs to be fixed. I'll be starting class up again on Weds so if I have time tomorrow I'll see if I can sort it.

                        There is one interesting thing that I haven't seen documented in manual. At the very top where it sets the initial healing modifier base value, there are two paths. It first off automatically sets it to 1 (10%) like it says on page 104 however there are a set of checks if passed will overwrite this value and set it to 2 (20%). Are there any factions that have a native boost to base healing? If no one knows, once I've fixed the Repair Bay bug I'll play around and see what triggers it. Otherwise, I've pretty much got rest of code for this unit healing function well documented. I even came across some useful functions such as whether a tile is in enemy or friendly territory and another that tells me whether tile is a city and if so if it is current factions.

                        edit:
                        Or maybe in proximity to monoliths or some land feature? It looks like it uses x,y coordinate somehow in setting that base value of 20%.

                        Comment


                        • #87
                          There is +10% (for a total of 20%) if in friendly territory. Could the 1 be default and 2 be in friendly territory?
                          Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

                          Comment


                          • #88
                            Originally posted by vyeh View Post
                            There is +10% (for a total of 20%) if in friendly territory. Could the 1 be default and 2 be in friendly territory?
                            No, that check is after. It also adds +10% rather then this one actually setting the initial value to 20%. So it goes like this:

                            1. Set base value to 10%
                            2. If passes unknown checks, reset base value to 0 and set it to 20%
                            3. checks if tile is in friendly territory, +10%
                            4. If air unit and in airfield, +10%
                            5. if ground unit and in bunker, +10%
                            6. checks if tile is city, if so do various checks I haven't looked at since they all result in fully healing unit if passed. I presume they are the checks for Command Center, Naval Yard, Aerospace Complex and Biology Lab.
                            7. broken check that would double total sum of modifier if passed. This is what I take as broken repair bay.
                            8. check if faction has Nano Factory and if so completely heal unit (like stuff in #6 however not dependent on being in a city or not).

                            Comment


                            • #89
                              Might the check in #2 be whether the player has built the Xenoempathy Dome and whether the damaged unit is in fungus? Some quick testing indicates that under those conditions, the unit heals 20% per turn (unless other conditions increase healing even more).

                              Petek
                              "The avalanche has already started. It is too late for the pebbles to vote."
                              -- Kosh

                              Comment


                              • #90
                                Do native units normally heal at 20% per turn in fungus (unless other conditions increased healing even more; it would be odd if xenoempathy dome gave advantage that native units did not already have)?

                                One other thing to consider about healing: there is normally a cap of 80% health unless the unit meets certain conditions (e.g. it is in base). Have you located that code?
                                Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

                                Comment

                                Working...
                                X