Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
heli_bug [2020/03/09 23:55]
CharlotteLabyrinth Added a link to the Helicopter Patch
heli_bug [2020/03/31 17:01] (current)
Ormu Moved the old and obsolete methods into a separate section so that it's clear to everyone that they should not be used anymore. Added historical information, sourced from the forums and discord..
Line 2: Line 2:
  
 The "Great Helicopter Bug" is one of the most common UA problems on modern computers and one of the most common topics on the forum. Luckily it's also pretty easy to fix. The "Great Helicopter Bug" is one of the most common UA problems on modern computers and one of the most common topics on the forum. Luckily it's also pretty easy to fix.
 +
 +Note that this problem only occurs with the original game executables. [[ua_source|UA Source]] does not suffer from this problem.
  
 ===== Signs and symptoms ===== ===== Signs and symptoms =====
Line 16: Line 18:
 ===== Causes ===== ===== Causes =====
  
-The problem is caused by a threshold check in the code that processes helicopter rotation as was found out by user Zidane in [[http://​forums.metropolisdawn.com/​viewtopic.php?​f=13&​t=1575|this forum thread]]. When an update time period gets short enough, which happens on new, powerful computers, the threshold condition is never fulfilled and the helicopter rotation is not processed correctly.+The problem is caused by a threshold check in the code that processes helicopter rotation as was found out by user Zidane in [[http://​forums.metropolisdawn.com/​viewtopic.php?​f=13&​t=1575|this forum thread]]. When an update time period gets short enough, which happens on new, powerful computers, the threshold condition is never fulfilled and helicopter rotation is not processed correctly.
  
 Factors that are known or believed to affect the occurrence of the problem include: Factors that are known or believed to affect the occurrence of the problem include:
Line 23: Line 25:
   * Fast and powerful CPU   * Fast and powerful CPU
   * Using software rendering   * Using software rendering
-  * Slow turning rate (maxrot) of the helicopters as it determines ​(together with the update periodwhether the threshold value can be exceeded or not+  * Slow turning rate (''​maxrot''​) of the helicopters as it determinestogether with the update periodwhether the threshold value can be exceeded or not
  
 ===== Workarounds ===== ===== Workarounds =====
  
-Various workarounds exist to mitigate the problem.+Various workarounds exist to mitigate the problem ​but only one of them is recommended nowadays.
  
-==== Use patched game executable ​(HIGHLY RECOMMENDED) ​====+==== Use patched game executable ====
  
 [[https://​files.metropolisdawn.com/​heli-patch/​Helicopter%20Patch.zip|Direct download link for Helicopter Patch]] [[https://​files.metropolisdawn.com/​heli-patch/​Helicopter%20Patch.zip|Direct download link for Helicopter Patch]]
Line 37: Line 39:
 The thread also contains instructions on how to patch the game manually using a hex editor. The thread also contains instructions on how to patch the game manually using a hex editor.
  
 +----
  
-==== Use hardware rendering ​====+==== Historical methods ​====
  
-Software rendering seems to result in more serious problems so it'​s ​recommended ​to switch to hardware rendering firstIn UA Options menu, change Direct3D Device to "​Primary display driver"​ instead of "​Software"​. This method is not guaranteed to fix the symptoms, and usually makes no difference on modern machines.+These methods were used to mitigate the problem but none of them is necessary or recommended ​anymoreThey are presented here for historical reasons.
  
 +=== Script-based fixes and increasing turning rate ===
  
-==== Increasing turning ​rate (NOT RECOMMENDED====+[[modding:​vehicle_script|Script-based]] fixes were the first discovered methods to fix the unresponsive helicopters. Several different patch sets and guides have been in circulation and may still be found on the internet. Before the relation between the rotation ​rate (''​maxrot''​and the problem was known, some early patches replaced the parameters of the affected helicopters with those of a working helicopter such as Hornet. This fixed the problem but also caused them to lose their unique properties which was undesirable.
  
-This crude and obsolete method ​of fixing is NOT recommended ​anymoreIn fact, it is very much discouraged due to its detrimental nature to the gameplay. ​Please use the patched .exe above to fix the helicopter ​problem instead. This section only serves for the information.+Slightly later, increasing the turning rate of the affected helicopters became the standard way to fix them. Different values were recommended ​by different persons and different patches were again distributedThe higher the value was compared to the originalthe more it affected ​the gameplay. ​While this method preserved most of the unique properties of each helicopter, it still had a detrimental effect on the gameplay and balance.
  
-Increasing the turning rate of the buggy helis used to be the most common way to fix them. Ready-made patch sets with modified files were often used but these are no longer recommended. Some of these "​patches"​ unnecessarily and intrusively changed other properties of the helicopters as well which is undesirable. 
  
-To manually ​fix the helis:+Here's a typical procedure to fix the helicopters before the native patch was known:
  
   * Open a text editor such as Notepad, WordPad or Notepad++   * Open a text editor such as Notepad, WordPad or Notepad++
Line 64: Line 67:
   * Save the files and quit.   * Save the files and quit.
  
-On nowadays machines, this method is pretty much useless because there are more types of helicopters getting affected by the bug, and thus the threshold maxrot values should be set to unusually high. Which totally breaks the gameplay and balance. 
  
-Note that this method is also technically considered cheating in multiplayer ​because it directly modifies the unit scripts and changes how the helicopters physics work, unless all players ​are informed and agreed ​to allow such modificationAny file mismatch ​warning ​indicates custom modification or potential ​cheating, and due to the nature of this methodit will always trigger ​the alarm.+One particular problem of script-based helipatches concerns [[multiplayer_basics|multiplayer]]. If the players ​have different game files, a warning message is displayed. Script-based helicopter patches used to cause this warning when players were using different patchesHowever, the warning ​can also indicate ​cheating, and helicopter patches could be used as an excuse ​to conceal cheating. On the other handusing different helicopter patches may be considered cheating in itself if a particular patch gives an advantage over the other players
  
 +Due to its detrimental effect on the gameplay and balance, this method is not recommended anymore. On nowadays machines, higher ''​maxrot''​ values might be needed and more helicopters might need patching which results in increased disruption of unit balance.
  
-==== Decreasing frame rate ==== 
  
-In hardware rendering ​mode UA automatically locks frame rate to display refresh rate. Higher frame rates are known to worsen the problem. Decreasing refresh rate via graphics card control program may help to an extent. There are also some DirectX manipulation tools available that can be used to adjust frame rate.+=== Using hardware rendering ​===
  
 +At some point, it was noticed that software rendering might result in more serious problems, especially on modern computers. Switching to hardware rendering became a recommended option. In UA Options menu, change Direct3D Device to ''​Primary display driver''​ instead of ''​Software''​ (note that "​Primary display driver"​ may be localized to the system language). This method is not guaranteed to fix the symptoms and it usually makes no difference on modern computers when used alone. However, it may improve the effectiveness of script-based patches which may be more difficult to get working in software rendering mode.
  
-==== Slowing down CPU ====+Nowadays the choice between hardware and software rendering depends on which mode works better on a particular computer, and the personal preference of the player.
  
-Slowing down the CPU can help but may be difficult to carry out. Causing excessive load is one way to achieve it, underclocking is another. 
  
 +=== Decreasing frame rate ===
 +
 +In hardware rendering mode UA automatically locks frame rate to the display refresh rate. Higher frame rates are known to worsen the problem. Decreasing refresh rate via graphics card control program may help to an extent. There are also some DirectX manipulation tools available that can be used to adjust frame rate.
 +
 +
 +=== Slowing down CPU ===
 +
 +Slowing down the CPU can help but may be difficult to carry out. Causing excessive load is one way to achieve it, underclocking is another.
  
-==== Cheating ​the Engine ====+Sometimes this problem may seem to disappear by itself when the number of units in the game increases. This may happen if the computer is just powerful enough to trigger the problem when there are only a few units. When more and more units are created, the game runs slower. When units are destroyed, the problem returns. This phenomenon is also affected by the rendering mode. 
  
-Using a process manipulation tool such as Cheat Engine to tamper with the system time functions and speed up the game ("​speedhack"​) can help but it will have a significant effect on the gameplay experience. 
  
 +=== Cheating the Engine ===
  
 +Using a process manipulation tool such as Cheat Engine to tamper with the system time functions and speed up the game ("​speedhack"​) has been reported to help but it will have a significant,​ often undesirable,​ effect on the gameplay experience.
heli_bug.txt ยท Last modified: 2020/03/31 17:01 by Ormu
Back to top
CC Attribution-Noncommercial-Share Alike 4.0 International
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0