Scient's patch

From Alpha Centauri Wiki
Jump to: navigation, search

scient's patch is an unofficial patch aimed at fixing crashes, bugs, and exploits in SMAC and SMAX developed by scient in 2010. It has been superseded by later efforts. Read Unofficial patches for more information.

In December 2014, scient released v2 of his patch, in a post on AC2, incorporating Guv'nor and some of GooglyBoogly's text edits and a number of new bug and exploit fixes. This work is incorporated in Yitzi's patch from at least v3.4, but not yet in any public release of kyrub's patch that I can find.

v1 Changes

  1. [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)
  2. [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.
  3. [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.
  4. [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 SMACSid Meier's Alpha Centauri/SMAXSid Meier's Alien Crossfire (Cross = X) to use your CPU's MMX capabilities for voxel algorithm.
  5. [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.
  6. [BUG][SMAX] Enhanced probes ([[Algorithmic Enhancement]) are now able to mind control bases/units normally immune due to high SESocial Engineering morale as stated in SMAX manual. For units it's purely the probe 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.
  7. [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".
  8. [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.
  9. [BUG][SMAX] Sealurk units now do not get a penalty when moving onto Sea Fungus like Isle of the Deep.
  10. [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.
  11. [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.
  12. [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.
  13. [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.
  14. [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.
  15. [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.
  16. [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.
  17. [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.
  18. [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.
  19. [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.
  20. [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.
  21. [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 original values).
  22. [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.

Non-Engine Fixes

  • [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.

v2 Changes

See readme in patch download

See also