Arkham city is an old game with a small open world running on an engine that shouldn’t be used for open world at all.
How to make the game playable
Just know that regardless of this fix, sometimes running on an HDD will make the game slow down occasionally no matter what you do. Though personally on my HDD it runs just fine.
Fix: Perform the following changes with your game OFF.
You can find Arkham City’s workable files in users/yourname/documents/WB Games.
In BMGame go into Config and open the BMEngine.ini.
CTRL+F to find “PoolSize” and set the value to whatever you want, this is the VRAM used for texture streaming and it’s originally like 500 something which is abysmal. A safe bet is to set it to 4096 which translates to 4GB.
Once again CTRL+F to find “SizeOfPermanentObjectPool” and change the 116 to 232. Keep the zeroes.
Lastly find and set hystersislimit to 0
IMPORTANT: Due to this game having PhysX, opening the game after this point will reset your BMEngine.ini. Across the internet guides will say to disable PhysX. You can keep it on actually. Just set the .ini file to Read Me in properties to cockblock it.