на главную
об игре
Supreme Commander 16.02.2007

Решение проблемы с тормозами SCFA

Описание проблемы
При игре на больших картах с кучей ботов игра начинает тормозить - самолетики летят медленно, пули тоже, игровые часы считают время так как будто ты играешь в slo-mo режиме. При этом от видяхи вообще ничего не зависит хоть на high хоть на low.
В частности на компе e6550 c 4гигами 1333 мегагерца, игра тормозит на 11 минуте , пройдя планку в один гиг использованной оперативы и загружая процессор на 70 процентов, при этом загруз процессора перестает расти загруз оперативы тоже, а игра все больше превращалается в статическую трехмерную картинку с висящими в воздухе самолетами, по мере того как боты клепают новых юнитов на своих фабриках.

Причина проблемы
Игра просто не может использовать больше 2х ГБ памяти, даже если у вас 3,56 гигов определено 32 битной виндой. Одним из патчей самовыпиливание игры при достижении 2ГБ заменено на тормоза. Связано это с ограничением на выдачу памяти приложениям в 32х битных системах, все игры написанные под 32 битную винду по умолчанию ограничены лимитом в 2 Гига оперативы, а не только суприм.

Как решить проблему
1.Надо убрать замедление, заменить его на рывки и самовылетания (так как было в старых версиях игры) для этого нужно установить этот патч http://supreme-commander.ru/load/myspeed.zip версию игры и баланс он не меняет.

2.Надо расширить объем памяти зарезервированной для использования конкретной игрой - пропатчить игру специальной прогой. Делается это при помощи приложения Large Address Aware,
вот ссылка http://www.techpowerup.com/forums/showthread.php?t=112556

3.Растачиваем винду под 3 гигабайтовые процессы, для 32 битных и 64 - делается по разному:

3.1. Для 32 битных операционных систем расширяем объем памяти по умолчанию доступной каждому приложению алгоритм для семерки и хр разный способ:
3.1.1. Для семерки: пуск - выполнить, ввести вот эту фигню bcdedit /set IncreaseUserVA 3072 нажать enter, перезагружаем комп.
3.1.2. Для ХР надо в файле boot.ini добавить в конец startup line вот этот текст /fastdetect switch: /3GB , перезагружаем комп.

3.2.Для 64 битных систем ничего растачивать не надо 64 битная винда по умолчанию расточена под 32 битный 4 гигабайтовый процесс, нужно лишь расширить екзешнику адресное простарнство, что и делается прогой LAA, проще говоря после выполнения пункта 2 просто запускаем игру.

4.Запускаем игру и играем.

Механизм работы этого метода

Патч Myspeed выключает тормоза у супримыча при достижении предела памяти, но если игра упрется в предел памяти то вылетит. Для того чтобы она не вылетела после 15 минут игры с шестью AI ботами, мы расширяем игре предел памяти прогой Large Address Aware которая патчит экзешник супримыча добавляя ему увеличенный адресованный объем памяти с 2 до 3гигов в 32битной и до 4 гигов в 64 битной операционной системе.

Итог танцев с бубном

Процессор e6550 тормозит и работает рывками на 100 процентах c 4 гигами оперативы 1333 mhz, под 7 виндой 32bit, после 20 минут сетевой игры восьми ботов без человека на карте 81 км, с лимитом тысяча юнитов, при этом загруз оперативы приложением составляет 1.5 гига и постепенно растет по мере роста числа юнитов на карте, процессор же работает на все 100 и дальше расти не может, ибо он е6500 а не i7.

Короче нужен процессор i7 и 64 битная винда с 6 гигами (4 для игры, 2 для системы) желательно с частотой памяти выше 2333 и более чтобы процессор крутил на полную в связке с такой памятью.

Суть
Описанная выше методика расширяет программные ограничения с 2 до 4 (в идеале) гигов оперативы. Остается лишь купить новое железо.

Если у кого есть возможность протестить игру на i7 процессоре с 6 гигами оперативы и 64 битной системой (4 гига максимально можно отдать игре), отпишитесь в тему. Теоретически после достижения 4 гигов оперативы игра все равно должна вылететь, вопрос лишь в том, может ли супримыч столько сожрать с восемью sorian ботами, лимитом в 1000 юнитов, и картой 81 км.

Как только куплю такое железо сам, то отпишусь в тему.

P.S.
Пробовал на i5 разогнаном, процессоре в 64 битном режиме, 8 гигов оперативы. со всеми бубнами, устроил из максимального числа сориановых ботов серпентарий с максимальным числом юнитов, этот серпентарий продержался 40 минут и начал все равно тормозить рывками, добравшись где то до 2,4 гигов съеденой оперативы, затем вылетает. Вобщем это не излечимо.

Комментарии: 18
Ваш комментарий

ну так в супреме и юнитов больше, чем в тех же танках. Конечно, она будет тормозить. Если честно, я не знаю, что нужно этой игре, чтоб она не лагала на максималке на самой большой карте. Все таки художники молодцы - классная прорисовка)

1

Да, похоже FA тормозит на любом компьютере (особенно на картах 81 км 8 игроков). Я пробовал запускать его когда у меня был AMD x2 4600+, 4 гига оперативки, видеокарта geforce 8800 gts 640 mb, затем когда поменял платформу, на core 2 duo e8400 и radeon 5850, потом проц поменял на intel q9650 (4 ядерный). И даже на нем игра тормозит на больших картах. Сегодня запустил его (все настройки максимальные, карта 81 км, 8 игроков, 2000 юнитов) на системе core i5 4670k, 16 gb оперативки, видеокарта Geforce 970 msi gaming 4g. Вы будете смеяться, но после 30 минут игры я вижу 5-10 fps)))). И это на игре, у которой на лицензионном диске написаны системные требования Pentium 4 1800, 512 mb ram, Видеокарта geforce 6200/radeon 9600!!!!

1

Хорошо расписано. Только на моем компе на самой большой карте со самыми сложными ботами подтормаживать стало. Комп не самый слабый World of Tanks на максималке летают

0

я тоже столкнулся с этой проблемой и сделал (2.Надо расширить объем памяти зарезервированной для использования конкретной игрой пропатчить игру специальной прогой. Делается это при помощи приложения Large Address Aware) но это не помогло, а сделать первый пункт у меня не получилось. Вот что я делал (я скачал нажал кнопку Patch он мне пишет не может найти файл. Найти вручную? Я всю игру перекопал, каждую папку но так и не нашел что и как пропачить.
P.S. У меня i7, 16гб оперативы и отличная видюха
Помогите пожалуйста уж очень нравится игра. Заранее спасибо!

0

ха! у меня тоже тормозит, но можно поступить иначе..когда отдаляешь карту, то и лагать перестаёт. всё равно боевые единицы имеют свои значки..но приближать всё равно придётся...однако это на +-20% решает проблему. самый простой и не требующий особых усилий способ. однако это не то что нужно..скорее небольшая фишка...но, надеюсь, пригодится лишний раз.

0

Pendal3000
Попробуй от имени администратора запустить патч, а приложение в папке bin корневого каталога игры, да и опыты надо проводить на SC- Forged Alliance, а не на первой SC.

0

imker
Я попробовал от имени администратора не получилось. Патч как будто не находит что пачить и еще я пробовал на SC- Forged Alliance с самого начала.

0

Pendal3000
Возможно ему не нравится версия игры, установи самый последний патч на лицуху. я проверял на лицухе от буки, под 7 виндой 64 битной. Так то на больших картах все равно она упирается в 2.4 гига оперативы и не хочет больше брать.

0

imker
Спасибо большое я попробую.

0

ZORRO12
А все потому,что создатели криворукие твари,которые даже во 2 части это не исправили!

0

Я конечно понимаю, что возможно немножко опоздал, но я знаю, что в игру и сейчас очень даже играют.
Попробовал я метод увеличения выделенной памяти игре через LAA. Конфигурация следующая:
AMD FX 8320
Radeon R9 285
8 gb ОЗУ
Казалось бы - такого конфига хватит на десять окон этой игры! Однако - на больших картах и замесах начинались те самые фризы и тормоза. Играть становилось невозможно, и отсчет шел до убийства первого адаптивного ИИ. xd
Увеличив пространство памяти игре - стало идти куда более плавно. Карта 40х40 км, 7 ИИ адаптивных. Игра длилась около 30-40 минут с кучей тысяч боевых единиц. Была замечена лишь незначительная просадка быстродействия игрового процесса. Играть стало куда комфортнее.

0

FX-9590, 2x8Gb DDR3 2400Mhz, GTX970, RAID 0 под игрой, время игры 1:14, лардж карта, 7 ИИ, игра просела, буду пробовать патчить, ибо в сингле не критично, но хочется и по сетке по играть

0

Поставил сейчас 1ю часть, не forged alliance. Карта на 20 на 4 игрока совсем не тормозила на протяжении 6 игровых часов. Комп далеко не новый. Может можно как нахимичить чтоб дополнение не тормозило...? Кто разбирается может поковыряет?

0

Добавлю, что во всех известных RTS в сингле есть проблема с поддержкой орд юнитов (на серверах такого почти нет). В Age of Empires II HD фризит с 25 юнитов, в Tiberium Wars - 20 планетарников в ионке начинают тормозить или 50 атакующих пехотинцев-огнемётов. 1000 юнитов "Оса" приводят к вылету. В Red Alert 3 - спавним 350 юнитов, выбираем всех и сажаем в один БТР, и зависаем намертво. В Supreme Commander у меня начинало фризить уже на 50 юнитах в туториале. В HoMMV даже начинало фризить при охвате камерой кучи объектов. Grey Goo - это ад кромешный, там и 32 GB ОЗУ не поможет из-за движка. Empire Earth - фризы, Age of Empires 3 - 100 юнитов в движении фризят, Казаки (BtoW) - 10000 юнитов и вылет.

Короче... Если в жанре RPG - это беда в десятках битых квестов, то в жанре RTS - это падение под собственным весом. Во многих RTS и вовсе нет лимитов - спавни, пока не крашнется. Только стратегии от Blizzard Entertainment и игра Rise of Legends летали при потолке юнитов.

0

Tellery Spyro-Cynder Mix
Как ты это сделал? Можешь объяснить подробно

0

Апдейт:
Решение проблемы с тормозами игры
Описание проблемы
При игре на больших картах с кучей ботов (или живых игроков) игра начинает тормозить - самолетики летят медленно, рывками, пули тоже, игровые часы считают время так как будто ты играешь в slo-mo режиме. При этом от видяхи вообще ничего не зависит хоть на high хоть на low.

Причины проблемы:
1.Игра по умолчанию использует преимущественно одно ядро процессора. Хотя технические она является многоядерной и может использовать все ядра. Но общая симуляция мира всегда будет выполнятся на одном ядре, это самая слабая сторона игры, которую фундаментально можно исправить только процессором на 5 Гигагерц
2.Игра является 32х битным приложением, как следствие она по умолчанию просто не может использовать больше 2х ГБ памяти, даже если у вас 64 битная система и 16+ гигов оперативы.

Как решить (хотя бы частично) эти проблемы:
1.Нужно заставить игру использовать все ядра процессора в равной степени.
Делается это утилитой Core Maximizer специально написанной для этой игры:
Вот ссылка:
http://www.dragonborn.se/wp-content/uploads/2019/05/CoreMaximizer1.03-1.zip
Утилита просто запускается и висит в трее. В настройках выбираем ядра процесса которые игра может использовать (выбираем все) и выбираем тип игры (первый суприм или FA).
Разницу можете заценить сами в диспетчере задач во время рубилова на 1000+ юнитов. Разница существенная. Но для FAF не актуально, там сам клиент FAF эту функцию выполняет.

2.Надо расширить объем оперативной памяти зарезервированной для использования конкретной игрой - пропатчить игру специальной прогой. Делается это при помощи приложения Large Address Aware,
Вот ссылка:
https://www.moddb.com/downloads/large-address-aware1
Просто скачиваем утилиту и патчим экзешник игры.

После этого, игра начинает эффективно сжирать 2,5 гига оперативы.
Кстати утилита LAA работает и на других подобных 32битных играх и очень полезна при аналогичных проблемах в них.

Примечание: Если играете через FAF (создаете матч в FAF) то этот пункт также реализуется сам собой, даже без ваших танцев с бубном, поскольку FAF скачивает отдельный уже пропатченный с помощью LAA экзешник игры и запускает его когда вы стартуете.
Также экзешник с FAF жрет гораздо меньше оперативы.
Даже самые мясистые зарубы профессионалов в реплеях на FAF с 2000+ юнитов жрут лишь 1,3 гигабайт оперативы, так что 4ГБ лимит по оперативе в этой игре достигнуть практически невозможно, поскольку при соответствующем росте количества юнитов скажем до 8000, даже самый разогнанный на жидком азоте процессор затормозит в стопкадр задолго до достижения лимита по оперативке.

Если у Вас 64х битная винда, то больше ничего делать не надо. Можно играть.

3.Если у Вас старая 32х битная винда. Растачиваем винду под 3 гигабайтовые процессы. Алгоритм для семерки и хр разный:
3.1. Для семерки: пуск - выполнить, ввести вот эту фигню bcdedit /set IncreaseUserVA 3072 нажать enter, перезагружаем комп.
3.2. Для ХР надо в файле boot.ini добавить в конец startup line вот этот текст /fastdetect switch: /3GB , перезагружаем комп.

Примечание: Игра очень требовательна к Гигагерцовке процессора. Никакие танцы с бубном в этой игре не заменят высоко-гигагерцовый процессор. При этом объем оперативной памяти в Гигабайтах роли не играет, так как игра все равно не сожрет больше двух с половиной гигов памяти.
Для максимального повышения производительности нужно использовать как можно более производительный разогнанный процессор. В идеале i9 процессор с 4+ Гигагерц. Зависимость линейная. Каждые 10 процентов роста тактовой частоты процессора дают рост производительности игры на 10 процентов. Количество ядер роли не играет. Причина в том, что для симуляции мира используется одно ядро и оно является слабейшим звеном во всей системе.
Серверный процессор с кучей ядер но низкой тактовой частотой проиграет разогнанному 4Гигагерцовому двух-ядернику.

Предсказать как поведет себя в игре тот или иной процессор и насколько он ускорит игру в сравнении с Вашим текущим процессором можно по таблице одноядерной производительности:
https://www.cpubenchmark.net/singleThread.html

Причем эта проблема актуальная даже для многоядерной Planetary Annihilation - там также симуляция мира одноядерная, что выливается в те же проблемы. 2-3 тысячи юнитов на планете и планета виснет. Разрабы на форумах писали что эта проблема принципиально не имеет решения, поскольку невозможно построить единый связанный мир на параллельных ядрах, все равно одно из них должно будет рулить всей симуляцией, а значит быть слабым звеном в системе с кучей юнитов.
Таким образом, вышеуказанные проблемы являются не следствием криворукости разрабов, а следствием фундаментальных ограничений логики многоядерного программирования.
Так что супримыч в связке с FAF, скорее всего так и останется вершиной производительности которая никогда не будет преодолена.

Как реально решить проблему с тормозами в SC? (суммируя все вышесказанное):
1.Купить комп на базе топового процессора из этого списка:
https://www.cpubenchmark.net/singleThread.html
2.Играть на купленном компе под лицухой на FAF.

0