Перейти к контенту

Вылеты И Проблемы Солянки II


vlad_all

Рекомендуемые сообщения

Я всю эту игру от 3.08 солянке исследую от чего так сильно растет нетпакет ГГ и как это предотвратить. Я выяснил следующее:

1. Как уже сказали - не пользуйтесь нычками, они много байт едят.

2. Старайтесь не делать трансмутации от АМК, они очень сильно увеличивают нетпакет.

3. Не сохраняйтесь при трансмутациях.

4. Постарайтесь быстро как только это возможно выйти во фриплей (как вариант - пройти основную ветку, а потом выполнять остальные квесты). Почему во фриплей? Есть несколько причин. Во-первых сами выбросы - они сами по себе почему-то нехило едят байты нетпакета ГГ, один раз у меня выброс захавал целых 100 байт (для сравнения - на 100 байт можно пройти примерно 50-60 квестов). Во-вторых после выброса начинают оживать трупы. Мало того что иногда при оживлении трупа происходит вылет, так и сам процесс оживления до своего завершения ест очень много байт. Если сохраниться в это время то очень высока вероятность, что после завершения процесса нетпакет не уменьшится (это при том что обычно оживают от 3 до 8 трупов в среднем, и на оживление каждого используется 30-50 байт, итого - от 90 до 400 байт может пропасть). Я вышел во фриплей - и у меня нетпакет стабилизировался на уровне от 5100 до 5500 байт, с колебаниями.

5. Влияет количество барахла проданного неписям (чем больше у них в наличии тем больше пакет).

6. Не берите больше 10-15 квестов обновременно.

7. Тайники от Кости увеличивают нетпакет (почему - хз), особенно сильно (на 100-150 байт) увеличивает пакет квест на нахождение тайника в Х-10 и последующее взятие телепортов (не проверено).

Теперь что не влияет на пакет:

1. Количество барахла в нычках не влияет (только при условии что в нычке нет метки).

2. Не влияют на размер пакета квесты висящие в ПДА (при условии что их там меньше 10 штук одновременно).

3. Вечнотрупы на локах не влияют на размер пакета, но уничтожать их все же стоит, чтобы не нагружать комп обработкой левых динамических объектов.

4. Не влияет респавн (что частый, что редкий - все одно).

 

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

 

V92, а где узнать объем нетпакета?

АлмаЗОНА, вот правка от Shadowman:

В bind_stalker.script делаем так:

function actor_binder:save(packet) -- эту функцию находим

--Vergas timer=======================ON============

timer_v.save(packet)

--Vergas timer=======================OFF===========

if rx_ai then rx_ai.actor_save(packet) end

 

local pk1=fake_net_packet.fake_net_packet()

self:save_old(pk1)

amk.mylog("Packet size is "..pk1:w_tell())

if pk1:w_tell()>7500 then

self.warning=true

self.critical=1

self.wt=time_global()+60000

amk.emergency_cleanup()

self:save_old(packet)

amk.mylog("Actor packet size is "..packet:w_tell().."!")

amk.send_tip("Packet size critical=2 >7500 ","Размер пакета:"..pk1:w_tell(),0,15,"gen_info") -- это добавляем

amk.emergency_restore()

elseif pk1:w_tell()>7000 then

self.warning=true

self.wt=time_global()+60000

self:save_old(packet)

amk.send_tip("Packet size critical=1 >6000 ","Размер пакета:"..pk1:w_tell(),0,15,"gen_info") -- это добавляем

else

self:save_old(packet)

self.wt=time_global()

amk.send_tip("Packet size <6000 ","Размер пакета:"..pk1:w_tell(),0,15,"gen_info") -- это добавляем

end

self.is_saved = true

end

 

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

Изменено пользователем n6260

 

Мой музыкальный аддон для ОП-2 + Музыкальные флешки для плеера - для тех, кому не нравится оригинальная музыка. Более 150 новых треков различных направлений и исполнителей, каждый найдёт музыку на свой вкус. Апдейт 1.1 от 30.03.2015 - в плеер добавлены записи реальных радиостанций + наиболее подходящие миксы. Торрент.
Пак измененных локаций из ОГСЕ 0.6.9.3 для ОП-2. Скачать можно здесь.

Поделиться этим сообщением


Ссылка на сообщение

vodkin6804, твой вылет из-за переполнения игровой памяти. Лечится просто переигровкой. Предупредить можно если раз в час или меньше перезапускать полностью игру.

 

Очень часто у игроков бывают вылеты с переполнением игровой памяти. Возникают они из-за несовершенства движковой системы удаления ненужных данных из игровой памяти. Чтобы отпали некоторые вопросы, представляю подборку вылетов, происходящих от переполнения игровой памяти.

1. Первый тип вылета. Независимо от наполнения, в логе всегда содержит строку

"stack trace:"

 

stack trace:

 

001B:7814500A msvcr80.dll, strncmp()

001B:008F403A xrCore.dll, IReaderBase<IReader>::r()

 

[error][ 1450] : Недостаточно системных ресурсов для завершения операции.

********************************************************************************

 

2. Второй тип вылета. Независимо от наполнения, в логе всегда содержит строку "C stack overflow"

 

Expression : fatal error

Function : CScriptEngine::lua_error

File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp

Line : 73

Description : <no expression>

Arguments : LUA error: ...hing\s.t.a.l.k.e.r\gamedata\scripts\xrs_armor.script:1709: C stack overflow

********************************************************************************

 

3. Третий тип вылета. Независимо от наполнения, в логе всегда содержит строку "Ran out of memory"

 

Expression : Ran out of memory

Function : TW_LoadTextureFromTexture

File : E:\stalker\patch_1_0004\xr_3da\xrRender\Texture.cpp

Line : 132

Description : D3DXCreateTexture( HW.pDevice, top_width,top_height, levels_exist,0,t_dest_fmt, D3DPOOL_MANAGED,&t_dest )

********************************************************************************

 

4. Четвертый тип вылета. Стандартный лог данного типа вылета вы можете увидеть ниже. Коварность данного вылета заключается в том, что данный вылет происходит в момент сохранения игры, и в результате сэйв будет битым.

 

Expression : W==1

Function : CFileWriter::w

File : e:\stalker\patch_1_0004\xrcore\FS_internal.h

Line : 63

Description : Can't write mem block to file. Disk maybe full.

Arguments : Invalid argument

********************************************************************************

 

5. Пятый тип вылета. Независимо от наполнения, в логе всегда содержит строку "Out of memory."

 

Expression : fatal error

Function : _out_of_memory

File : E:\stalker\patch_1_0004\xrCore\xrDebugNew.cpp

Line : 359

Description : <no expression>

Arguments : Out of memory. Memory request: 72230 K

 

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

 

Строгое предупреждение от модератора n6260
Хорошее сообщение. Информативное. Оставляю в нем свой "модераторский" тэг - дабы случайно не удалили.
Изменено пользователем n6260

 

Мой музыкальный аддон для ОП-2 + Музыкальные флешки для плеера - для тех, кому не нравится оригинальная музыка. Более 150 новых треков различных направлений и исполнителей, каждый найдёт музыку на свой вкус. Апдейт 1.1 от 30.03.2015 - в плеер добавлены записи реальных радиостанций + наиболее подходящие миксы. Торрент.
Пак измененных локаций из ОГСЕ 0.6.9.3 для ОП-2. Скачать можно здесь.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...