Uploaded by bdanv - 13-05-10
This is a comprehensive set of fixes to bugs, crashes, and exploits found in Sid Meier's Alpha Centauri (SMAC) and Alien Crossfire (SMAX). The primary goal of this project is to try and fix all the bugs left after the official patches. Also, a secondary objective is to expand the games features without modifying the existing mechanics to give modders more freedom.
Feel free to share this with your friends. I only ask that this readme is included. Currently the unofficial patch is only hosted on CGN forums and WPC forums. If you're interested in hosting it somewhere else I'd appreciate it if you contacted me first.
I juggle working on this unofficial patch project along with another one for the classic isometric RPG Planescape: Torment (shameless plug). So while I may not release any updates for periods of time this project is not dead. I'm just very busy with multiple commitments. If you're interested in helping out in any capacity such as testing or bug fixing please contact me. Also, I'm looking for anyone who can put me in touch with people who have worked on the development of either SMAC or SMAX.
I would like to state that I have no problem with other modders building off of my work under two conditions. If you'd like to use this patch as a starting point for your own project then contact me first as well as give credit to me and those credited below.
I encourage you to report any bugs/crashes/exploits or just ideas on CGN forums which has become the primary home of this project. You can also contact me on WPC, Apolyton, CFC or SHS forums.
- Install the game.
- Next install official patches:
- Next install unofficial patch: Back up the original .exe files from your installation directory then copy over ones from unofficial patch archive. Note, the steps below are written as if you have both SMAC and SMAX installed. If you only have one game installed, you would only follow steps for that games .exe. For example, you don't need the SMAX exe if you only have SMAC installed.
- Download the unofficial patch .7z file and extract the contents to a new folder. You can do this using 7-Zip or WinRAR.
- Find the original .exe files from your installation directory. You can check where these are located by right clicking your shortcuts to the game and viewing properties.
- Browse MY COMPUTER or COMPUTER to the path shown in the shortcuts.
- Find the 2 following .exe files named: terran.exe (SMAC) and terranx.exe (SMAX).
- With each of these .exe files right click and rename them by adding ORIGINAL after the .exe. Your 2 .exe files should say: terran.exeORIGINAL and terranx.exeORIGINAL when step #5 is completed.
- Browse to the folder you created in step #1 and right click both files and CUT.
- Return to the path or folder/file location you used in step #5. Right click anywhere in the unused white space of the window where other files are located and PASTE.
- Optional modifications:
- [If you use scenario editor (ie. cheat mode)] Apply fix in non-engine patches section. The reason the files aren't included prepatched is because many people have modified versions of them. This fix is primarily geared toward modders.
- [If you've set ForceOldVoxelAlgorithm entry in "Alpha Centauri.ini" to 1] Either delete the entire entry or set it back to 0. The unofficial patch should fix the crash associated with it being set to 0. This is recommended because it should give you a performance boost, see fixes section for more details. However, if you still experience the crash then set it back to 1.
- [If you own Planetary/Laptop pack or SMAX] GooglyBoogly has done a great job revising and updating SMAX's Datalinks. See link for more details.
- [CRASH][SMAX] If you open up Design Workshop as Caretakers/Usurpers and switching back and forth between colony pod and other "equipment" you can cause text in "special ability" to become overwritten and crash once you exit Design Workshop. Patch increases memory allocation used to manipulate the caviar animation files (cvr) and may fix other buffer related problems other than the one noted. (credit to WBird784 for original patch)
- [CRASH] It is possible usually on larger maps that scrambling air interceptors would cause the game to crash. Even when the game didn't crash incorrect altitude values were being used in checks. Both of these have been fixed.
- [CRASH] When moving units near or at the poles, it is possible for y coord to exceed the map bounds and crash the game. Patch adds handling to prevent y coord from going over min/max.
- [CRASH/MISC] Removed and optimized out a number of CPU checks which serve no purpose unless you're using a 15 year old computer. In some cases, these checks actually prevent the game from starting on newer CPU's causing them to exit out or crash. Because of these changes, you now shouldn't need to set ForceOldVoxelAlgorithm to 1. It is recommend that if you've already set it to 1 to either change it back to 0 or delete the entry entirely causing the game to automatically reset it to 0 on launch. Doing so may improve performance since setting ForceOldVoxelAlgorithm to 0 enables SMAC/SMAX to use your CPU's MMX capabilities for voxel algorithm.
- [BUG][SMAX] Transport unit's special ability "Repair Bay" is rendered useless due to an incorrect check that would only give the healing bonus to ground transports. Now, it will give bonus to all ground units except ground transports.
- [BUG][SMAX] Enhanced probes (Algorithmic Enhancement) are now able to mind control bases/units normally immune due to high SE morale as stated in SMAX manual. For units it's purely the morale SE value so >=3 acts as if it were 2 (cost doubled). For bases, the value is calculated from morale SE and any base facility modifiers (Covert Ops: +2, Genejack: -1). If final value is >=3, it acts as if it were 2.
- [BUG][SMAX] While loading the ambient sound file for game, there is a mistake in faction id check for Believers causing it to use SMAX default of "aset1.amb". Patch fixes check so Believers will now use their correct ambient sound file "bset1.amb".
- [BUG][SMAX] Enhanced probes don't receive a penalty to survival probability when target faction has built Hunter-Seeker Algorithm. Instead, the success probability is erroneously given the penalty for a second time after it has already been displayed in UI. This could cause diminished success rate when it should have been higher. Patch corrects check so survival rather than success probability is modified.
- [BUG][SMAX] Sealurk units now do not get a penalty when moving onto Sea Fungus like Isle of Deep.
- [BUG] If a faction's cumulative PROBE value is greater than 3 (SE morale, covert ops center) it is possible to "mind control" their bases when they should be immune. If the University uses SE Knowledge putting PROBE value down to -4, it would act as if it were 0 erroneously increasing "mind control" costs. After patch, PROBE values greater than 3 will always be immune to regular probes and values less than -2 will be treated as if they were -2.
- [BUG] Fixed a check that was ending the turn for certain air units (choppers/missiles/grav) when entering a base which had no adjacent enemy units. There is still a check which will end the unit's turn if when entering a base it has less then one turn remaining unless an enemy is adjacent to base.
- [BUG] Using "Go to home base" (shift-g) command sends the unit to closest base rather than it's actual home. Patch retrieves unit's home base and sets a "go to" waypoint similar to how a unit is recalled from within base UI. If a home base cannot be found (independent) the unit will go to the nearest base.
- [BUG/EXPLOIT] Setting more than one patrol waypoint with spacebar causes the values to be stored incorrectly. If only two waypoints are set then it is just a display issue showing an incorrect amount of waypoints when clicking on unit. If three waypoints are set, it causes the unit's morale to be set as one of coordinates usually boosting it to demon boil / elite status. Also, with three waypoints the final waypoint gets set to some far off random location usually (0,0) breaking three point patrol completely.
- [EXPLOIT] Using the right click menu to airdrop calls the "move to" code directly and bypasses all the checks such as if unit is in airbase/base or has already moved. Since the airdrop hotkey "i" correctly checks these restrictions, the patch makes the right click menu use the hotkey checks before directly moving the unit.
- [EXPLOIT] Inside base UI, after opening up the production queue window it is possible to then open the hurry command window, switch between bases and complete projects for less then their actual value. Patch fixes a clean up issue with queue panel preventing certain parts of UI from becoming clickable when they shouldn't.
- [EXPLOIT] When clicking on an unexplored tile, the map recenters on that square. However, if the tile contains a base the map doesn't recenter. Patch fixes it so when an unexplored tile with a base is clicked, the game will recenter like the rest of the tiles.
- [EXPLOIT] It is possible to change another faction's workers via Base Ops (F4) if you have that faction infiltrated. Patch fixes it so clicking citizens of another faction in Base Ops has no effect similar to garrisoned units.
- [EXPLOIT] It is possible to give airdrop or artillery ability to an unit who didn't have it. This is done by using hotkey (I or F) on an unit that has the ability then switching units in bottom center window. The mouse cursor would still have airdrop/artillery up and it is then possible to use it with the new unit bypassing all the checks if unit can use ability. Patch resets the cursor when clicking unit selection window.
- [MOD] Squares with both a borehole and nutrient bonus don't receive the nutrient bonus. If the "Borehole Square" nutrient value defined in #RESOURCEINFO (alphax.txt) is set to non-zero, a square with borehole will erroneously act as if it has a nutrient bonus. The patch fixes a check whether or not to give a borehole square a nutrient bonus from checking if borehole nutrient value is non-zero to checking if nutrient bonus is actually present in square.
- [MOD] Fixed an unit check to use the "Max artillery range" value defined in #Rules (alphax.txt) rather than a hardcoded value of 2. This fix is geared toward modders so players who use an unmodified version of alphax.txt will see no change.
- [MOD] Increasing maximum number of all units on a map from 2048 to over 2 billion (2147483647). Also, increasing value when native life stops spawning due to number of units on map from 1792 to 2147483391 (same difference of 256 between orginal values).
- [UI] Removed a check that would while displaying probe success/survival probabilities drop one if they're both the same. For example, (50%, 50%) would just be (50%). This change makes interface a little less confusing.
- [BUG] Needlejet "DATA" edit window via scenario editor doesn't render properly making stats uneditable. Fixed by adding "#itemlist" to "#EDITVEH2A" inside scripts.txt/xscripts.txt.
So far all patches are done by myself except for one credited to WBird784. I'd like to thank a few people for their work behind the scenes. First off, a big thank you should go out to vyeh for the work he's done in overseeing all the administrative aspects of project. He has definitely helped motivate me by keeping in contact and setting up community at CGN for this project. And credit to Nevill for reporting sightings of me to vyeh. Another big thank you goes to buster (the owner of CGN) for providing dedicated forums for project and being willing to host the unofficial patch. DrazharLn for letting me use his instructions on loading patches used in installation section of readme. chuft for helping moderate and organize project forums on CGN. Darsnan for making playtest scenarios used in testing of fixed game mechanics. GooglyBoogly for his Datalinks update and comprehensive testing of patch changes. BlackCat, Googlie, Illuminatus, Lord Avalon, Mart, Petek, Psyringe, Rubin, WPC forums and anyone else who has reported bugs, given feedback and support to this project. Qwinn for letting me use the html shell of his PS:T Fixpack readme. And of course to the developers of SMAC and SMAX for making two great games even to this day!