Aller au contenu

Star Citizen - CPU - How to fix performance issues using a script (mouse lag/freezes/crashes/FPS problems)


Laoric

Recommended Posts

Hello Citoyen,

Voici quelque chose qui a changé ma vie !  :victory:

 

En effet, comme expliqué dans la vidéo, il n'est pas rare que Star Citizen ne fonctionne que sur 1 seul coeur de votre CPU, ce qui peut amener à de nombreux problèmes... Depuis la 2.1, je n'avais JAMAIS réussi à finir un seul match AC sans cracher, mais ça, c'est du passé  :bad_smile:

 

Tout est très bien expliqué dans cette vidéo. Je ne connaissais  rien aux nombres binaires il y a encore 1h, et pourtant j'ai réussi à mettre à jour le script, donc ça ne devrait pas vous poser de soucis  :big_smile:

 

 

Pour les curieux, voici ce que j'ai pour mon processeur à 8 cœurs (4 physiques), et pour contrer le fait que SC ne tournait que sur mon coeur N° 2.

 

 

@echo off
C:
cd C:\Program Files\Cloud Imperium Games\Patcher
 
 
echo:
echo DON'T CLOSE THIS WINDOW UNTIL THE VERY END!
echo:
echo READ THIS FILE WITH NOTEPAD BEFORE USING IT!!!
echo:
REM ----------------------------------------------------------------------------------------------------------
REM This batch script is made for people who have the game running on 1 core.
REM This batch script needs to be adjusted if you have more or less than 4 cores (quadcore)
REM To get the correct decimal numbers for the affinity check this website:
REM to make sure that the 1 core that is running the game FOR YOU is refreshed.
REM you can change these numbers below at the powershell lines where you see "$Process.ProcessorAffinity=14"
REM Also make sure the pathnames and drive letter for the Patcher are correct before you run this.
REM both the path at the top (above this text) and under this text.
REM ----------------------------------------------------------------------------------------------------------
echo:
echo Starting Patcher (CIGPatcher.exe)
echo:
 
start "CIGPatcher" "C:\Program Files\Cloud Imperium Games\Patcher\CIGPatcher.exe"
 
echo Timer has started.
echo -----------------------------------------------------------------------
echo 1. LOG IN,
echo 2. LAUNCH THE GAME, 
echo 3. WAIT, script will automaticly refresh affinity!
echo -----------------------------------------------------------------------
echo:
echo The next steps will ONLY work if the "StarCitizen.exe" process is running.
echo You are fine when you see or have seen the window with the CryEngine logo.
 
REM change the number of seconds the timer runs here:
TIMEOUT /T 35 /NOBREAK
 
echo:
echo Changing affinity to run StarCitizen.exe on all cores...
echo:
echo Current affinity for StarCitizen.exe:
PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity";
echo Unchecking the core that runs StarCitizen.exe on 100 percent:
PowerShell "$Process = Get-Process StarCitizen; $Process.ProcessorAffinity=251"
PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity";
echo Changing affinity back to run StarCitizen.exe on all cores:
PowerShell "$Process = Get-Process StarCitizen; $Process.ProcessorAffinity=255"
PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity";
 
echo:
echo The affinity has been refreshed successfully if you see no red errors. 
echo:
echo NOTE: However even if you see no errors, if you didn't see the 
echo Star Citizen/CryEngine logo (window) before the timer was done,
echo then the game might still run on 1 core. (check in Task manager)
echo:
echo If you DO see errors: quit the game and patcher and run this file again.
echo It means that "StarCitizen.exe" was not running after the timer was finished.
echo:
echo Edit the .bat file if you need more time. Change the number
echo at the line "TIMEOUT /T xx /NOBREAK" where xx equals the number in seconds.
echo:
echo:
echo Press any key to exit this window...
echo (if you want it to automaticaly exit next time, delete the last line in notepad)
pause >nul
O5L0A1P.gif
Lien vers le commentaire
Partager sur d’autres sites

euh moi je comprend pas bien ce qu'on dois en faire de ce que tu as écris, peux-tu donner plus d'explications sur ce que tu dois faire, s'il faut copier qq chose qq part ou remplacer un fichier, bref la marche à suivre quoi. Merci d'avance

Ea est fiducia Gentis / Telle est la fidélité de cette nation

SGLlgZw.gif
Lien vers le commentaire
Partager sur d’autres sites

C:

cd C:\Program Files\Cloud Imperium Games\Patcher

start "CIGPatcher" "C:\Program Files\Cloud Imperium Games\Patcher\CIGPatcher.exe"

TIMEOUT /T 35 /NOBREAK

PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity";
PowerShell "$Process = Get-Process StarCitizen; $Process.ProcessorAffinity=251"
PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity";
PowerShell "$Process = Get-Process StarCitizen; $Process.ProcessorAffinity=255"
PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity";
exit
 
 
 
 
 
 
-> ca c'est le résumé, les rem et echo pas besoin...
Penser à changer le chemin si l'installation est ailleurs. Et on peut aussi changer l'affinité directement sur le process sans ca :P
Lien vers le commentaire
Partager sur d’autres sites

@Mäethys 

 

Il est toute fois TRES important de commencer par regarder quel coeur fonctionne à 100%. Bon nombre de gens ont le coeur N° 2 qui tourne à plein régime, donc pour "uncheck" le coeur 2, tu as quelque chose comme cela : 11111011 qui devient 251 en binaire. Le 255 correspondant à tous les coeurs actifs (11111111). 

 

Donc faut pas simplement recopier, mais bel et bien regarder quel coeur désactiver et ainsi, adapter, au besoins, le "chiffre 251"....

O5L0A1P.gif
Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...