Announcement

Collapse
No announcement yet.

Fixing SMACX Bugs

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

  • Originally posted by vyeh View Post
    So, are you comfortable with what is going on in #4 and #5?

    I believe that if you change the sign in #2, that fixes the error. Then the repair bay will follow the manual.
    Ya, #4/5 seem to be ok as far as I can tell from my testing. I'll fix the conditional check in #2. If anyone has any questions or comments regarding this let me know. I'm going to consider the RB bug sorted.

    Comment


    • Can you restate what #4 and #5 do?
      Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

      Comment


      • Originally posted by vyeh View Post
        Can you restate what #4 and #5 do?
        If there is more than one unit in the same transport that unit to be healed is currently in, #4 loops through all the units until it gets the last ones unit id. It uses this as starting point in #5 when it loops through all units in tile. If there is only one unit, it uses this unit id to start and skips over #4 completely.

        In #5, it loops through all units in tile and checks to see if any of them have repair bay special ability flag set. If it finds one that does, it sets a toggle to double healing modifier. Specifically skips over checking if current unit (one to be healed) has RB or not.

        Comment


        • Originally posted by BlackCat View Post
          What is it with these units ? Why do they have to stop at every base in their path if you tell them to go to a specific base ?
          Is the issue reported here with cities killing the rest of certain units turns universally accepted as a bug? I found the check that is causing it and can disable it. I still have to analyze function to make sure changes are "safe" to do, prob on Friday.

          Comment


          • There is something funky about the logic.

            We start off with a current unit (x).

            We test whether it meets certain conditions (#1, #2, #3)

            At this point, I would expect to cycle through the other units in the tile to see if there is a repair bay and if there is one to apply the repair bonus.

            Could the logic be starting with a unit, checking to see if it is a transport and then checking every unit on the transport to see if it is eligible for repair bay healing? This doesn't quite match the facts, but it might be closer.

            Maybe I'm missing something.
            Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

            Comment


            • Originally posted by scient View Post
              ...
              - From manual: "Probe teams are now “unflagged”, meaning you cannot easily tell who controls the team." However, moving cursor over a tile with will display faction probe belongs to. Bug? Maybe more of MP issue.
              ...
              I think it's the way it was intended to and works ok. I remember reading somewhere (readme?) that "unflagged" here means that probe unit has no faction/health flag displayed anymore. this was done for visual effect only. You should be able still to see which faction the probe unit belongs to when moving a cursor over the tile, as you say.
              Mart
              Map creation contest
              WPC SMAC(X) Democracy Game - Morganities aspire to dominate Planet

              Comment


              • There is an effect when you see units move between turns. Sometimes you will see a unit, but it won't show up on the map during your turn. In this case moving the cursor over the tile won't display who the probe belongs to.
                Unofficial SMAC/X Patches Version 1.0 @ Civilization Gaming Network

                Comment


                • I just thought of another bug which to me seems easy to solve.
                  Units that are ordered to `go to home base' (action menu) instead move to the nearest base. This only applies to the command given "in the field"; when done from within the home base it works fine (right click on unit icon). So to solve the problem it might be sufficient to point to the code that does work. By the way, this is in SMAC XP.

                  And I want to add: this is a great job you are doing, scient!

                  Comment


                  • Originally posted by vyeh View Post
                    Could the logic be starting with a unit, checking to see if it is a transport and then checking every unit on the transport to see if it is eligible for repair bay healing? This doesn't quite match the facts, but it might be closer.
                    The way the healing function works is it passes one unit at a time that has been damaged. I couldn't figure out an easy way to determine which transport an unit is on from unit itself. So, the only time you'll get a transport even near to RB code is if it has been damaged (it will fail the first check if it's a ground unit).

                    It might be possible to loop through all the units in a square, get the transports then see if current unit is on one of them. However, I've noticed weird behavior when more than one transport is on same square so I think it is best to leave it as is. Well, unless you can see a potential problem besides the bleed over issue we discussed.

                    Originally posted by Doux View Post
                    Units that are ordered to `go to home base' (action menu) instead move to the nearest base. This only applies to the command given "in the field"; when done from within the home base it works fine (right click on unit icon). So to solve the problem it might be sufficient to point to the code that does work. By the way, this is in SMAC XP.
                    Could you explain in what situation the "go to home base" works? I could only ever get the option if unit was outside a base. Tracking down hotkey/right click menu item was inconclusive.

                    Lastly, point taken on probes. I'll drop that from my list.
                    Last edited by scient; February 19, 2009, 13:30.

                    Comment


                    • Originally posted by scient View Post
                      Could you explain in what situation the "go to home base" works? I could only ever get the option if unit was outside a base. Tracking down hotkey/right click menu item was inconclusive.
                      Go to the units homebase and rightclick the unit in the "Supported units" section - there is a Return to homebase order.
                      With or without religion, you would have good people doing good things and evil people doing evil things. But for good people to do evil things, that takes religion.

                      Steven Weinberg

                      Comment


                      • How can you see/modify the SMAC executable?
                        Contraria sunt Complementa. -- Niels Bohr
                        Mods: SMAniaC (SMAC) & Planetfall (Civ4)

                        Comment


                        • Originally posted by BlackCat View Post
                          Go to the units homebase and rightclick the unit in the "Supported units" section - there is a Return to homebase order.
                          Cheers, will have a look.



                          Originally posted by Maniac View Post
                          How can you see/modify the SMAC executable?

                          A combination of a debugger and disassembler. Debugger is to actively step through the program and locate portions causing bug. It also lets me test out my patches in real time. Disassembler is to do analysis and layout code in a more readable tree format.

                          Comment


                          • Eek! I guess that doesn't produce files as readable as the Civ4 SDK?
                            Contraria sunt Complementa. -- Niels Bohr
                            Mods: SMAniaC (SMAC) & Planetfall (Civ4)

                            Comment


                            • Well, I located the areas in code that handle right click/hotkey "go to home base" and city recall. It won't be as simple as airdrop where I could just redirect it. I was able to successfully get the right click to correctly "go to home" by jumping around in memory so it is possible. I'll have to do some analysis on how functions work and then code a version to use for the hotkey/right click outside of a city.


                              Originally posted by Maniac View Post
                              Eek! I guess that doesn't produce files as readable as the Civ4 SDK?
                              There is no source code or SDK for ACX that I know of. If there were, it would make things much easier. There is only the compiled exe so I'm working on the assembly level.

                              Comment


                              • This isn't a bug, but rather a question on how the game works. It's been alleged that each time a monolith is used to upgrade (but not heal) a unit, there's a 1-in-32 chance that the monolith will vanish. However, no one has ever cited an authoritative source for this fact. Can you confirm this bit of "folk wisdom"? Or perhaps reveal the true behavior? Not a priority.

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

                                Comment

                                Working...
                                X