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

Народная 2010 разработка


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

"Что у нее внутри, и как это сделать лучше". Для тех, кто уже разбирается в скриптах, конфигах, текстурах и "других страшных словах" ©, и имеет желание и время действительно делать их лучше.
См. подробности в первом посте.

Тема НЕ является ни столом заказов, ни службой техподдержки, ни справочным бюро.

Изменено пользователем Dennis_Chikin
  • Нравится 2
  • Полезно 1
Ссылка на комментарий

А закэшировать тот гигабайт всякого, прости господи, шансона - боюсь, оно просто не запустится.

Запустится, пусть чуть подольше старт будет, зато в процессе игры лаги при выходе НПС в онлайн меньше. Я для каждой группировки кэшировал "human_01", "human_02", "human_03". ЗП при этом занимал в памяти 1,7Гб. Ну да и пусть, у меня всё равно 8. Зато лаги меньше, а это куда важнее. Но мне то проще, я для себя стараюсь, а ты для народа :)
Ссылка на комментарий

Я сейчас посмотрел, ЧТО предлагается кэшировать. Там, блин, одних нейтралов 3 вида, и каждому тщательно напихано по 18 мег одного и того же Окуджавы. И это то, что на глаза попалось. А всего, повторюсь, там гиг. Это "чистой" соли.

Тут надо явно не кэшировать, а разгребать эти авгиевы конющни.

 

То есть, буквально, добровольцам просматривать этот гигабайт, искать, где эта окуджава упоминатся, и все сносить. Ну или хотя-бы менять на что-то вменяемое. Не забывая про обработку в СДК.

 

 

P.S. ага, карфаген...деландум эс.

===============

Денис, привет. Если у тебя сложности в редактировании постов, переносе и прочем, пиши что тебе надо в сносках, поправлю.

Или в скайпе меня найдёшь всегда.

BFG

 

2BFG: Проблема в том, что даже набирать сообщения в отдельном редакторе - так оно ж их даже вставлять через раз дает. 8(

 

upd: Прошу прощения за флуд, конечно, но...

Попробовал вкурить код... В смысле, этой самой загрузки звуков.

Мда, с моей печенью мне столько не выпить.

 

А вот той травы я однозначно хочу.

Изменено пользователем Dennis_Chikin
Ссылка на комментарий

Денис, мне вот интересно, размышления об кешировании звуков носят чисто умозрительный характер?
Хоть какие-то проверки были практические с одним и другим вариантом?
Или как в случае с кешированием вообще (пост http://www.amk-team.ru/forum/index.php?showtopic=8830&page=60#entry758439 ), где элементарная практическая проверка показала полную несостоятельность утверждений?

Могу и сравнительную таблицу привести, если интересно.

Однако, об кешировании звуков.
Провел 2 сорта тестов - экспресс и длительную игру с РАСКОММЕНТИРОВАННЫМ кешированием звуков.

1. В экспресс-тесте разницы никакой. Общая загрузка оперативной памяти компьютера совпала с точностью до 0,02 ГБ. По лагам - разница не ощутима.
2. Включил кеширование "того гигабайта всякого, прости господи, шансона" и честно отыграл игровой час.
Это для того, чтобы оперативка реально забилась игровым мусором.
После чего пошел по "злачным" сильно населенным местам, где нейтралы 3-х сортов напичканы Окуджавой и другими анекдотами до самых бровей.
Очень хотелось  поймать ситуацию

оно просто не запустится

Не получилось! Все четко запускается, переходы между локациями работают как часы.
Да и с чего быть проблемам?
Если после игрового часа загрузка оперативной памяти поднялась с 2,74 ГБ до 3,15 ГБ и далее, при посещении сильно "озвученных" мест обитания НПС так осталась на этом уровне?
От локации к локации загрузка оперативки составляла 3,15-3,27 ГБ, то увеличиваясь, то уменьшаясь.
А вот лагов таки стало меньше.
Об чем, кстати, упоминал Shredder в посте чуть выше.

В общем, я сильно сомневаюсь, что

добровольцам просматривать этот гигабайт, искать, где эта окуджава упоминатся, и все сносить.

приведет к каким-то заметным выигрышам производительности.
Кроме, разве что к оскудению колорита и атмосферности, задуманных авторами мода.

Разумеется, я полагаю, что все озвучки оформлены должным образом через СДК с грамотными ogg-комментами.
 

ASUS P8Z77 \ Intel Core i5-3570 3400MHz \ RAM 16GB 1600MHz \ ASUS PH-GTX1060-3 ГБ 192 бит\\ ОС Windows 10 Pro x64 на SSD

Ссылка на комментарий

А можно подробности "элементарной проверки" по поводу скриптового кэширования чтения конфигов ?

Кто поверял, как проверял, каковы результаты ?

 

Аналогично со звуком. Как именно было сделано кэширование всей этой окуджавы, и когда успели ?

3 гигабайта 32-бит приложения тоже удивительны весьма.

Ссылка на комментарий

Dennis_Chikin, не чего удивительного, вот если бы система была 32 битная, то это было бы не возможно)) кто то утверждает что сталкер вылетает после 2 гигов, но например в дмх многие играли на максимуме, а там точно не 2 гига при этом используется

S.T.A.L.K.E.R 1.004, Народная..Солянка от 19.04.10, дополнение 14.08.10, патч 3.09.10, DMX 1.3.5, Saruman addon 1.1

Vkontakte

Добавление нового транспорта в сталкер

Ссылка на комментарий

Воскурил код вместе с конфигом (бедная моя печень !):

 

Мда, похоже, от принудительного кэширования (только его надо ручками делать - sound_prefetch.script какой-то сомнительный) сильно хуже не будет. Там и так куча всякой ереси подгружается, включая объявленя в баре - простым сталкерам (включая наемников, бандитов, монолитовцев и зомбей).

 

Мда, уж.

 

И, кстати, забавно. Переписал скрипт, и добавил вывод в лог времени загрузки. Эффект любопытный крайне: она стала быстрее ! Именно от вывода в лог.

 

P.S. А по-хорошему, надо разгребать \config\misc\script_sound.ltx

Изменено пользователем Dennis_Chikin
  • Полезно 1
Ссылка на комментарий

А можно подробности "элементарной проверки" по поводу скриптового кэширования чтения конфигов ?

Кто поверял, как проверял, каковы результаты ?

Странно, что вопрос возник только сейчас. Я ведь отвечал сразу, в посте http://www.amk-team.ru/forum/index.php?showtopic=8830&page=60#entry758723 и привел качественное сравнение результатов с кешированием и без.

Не думал, что конкретные цифры заинтересуют т.к. разумеется, что для каждого компьютера они буду индивидуальны.

Однако, важна сама тенденция.

Я проверял следующим образом и результаты таковы:

1. Перезагрузка компа - это важно и необходимо перед проверкой того либо иного варианта!

2. Загрузка сейва                                              1:28.18   /   1:26.66

3. Повторная загрузка это же сейва               0:49.34  /    0.48.83

4. Выход из игры и загрузка

того же сейва                                                    1:06.06  /    1:08.51

 

Первая цифра - по умолчанию, вторая - с iniCaching = false

Я думаю, что подобную проверку может выполнить любой желающий, чтобы убедиться в отсутствии радикальных отличий.

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

Кроме того, эти же испытания я выполнил с включенным антивирусом Касперского и выключенным.

Естественно, некоторое тлетворное влияние антивируса на скорость загрузки имеется, но для реальной жизни несущественное.

P.S. ФПС и микролаги - никакой разницы не почувствовал вообще, что с кешированием, что без.

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

ASUS P8Z77 \ Intel Core i5-3570 3400MHz \ RAM 16GB 1600MHz \ ASUS PH-GTX1060-3 ГБ 192 бит\\ ОС Windows 10 Pro x64 на SSD

Ссылка на комментарий

Dennis_Chikin, кстати а почему час ужаса из за определенных причин (например переход на другую локацию) может не закончиться (то есть все постэффекты прекратились, но инфопоршень конца часа ужаса не получен)? можно ли это как то исправить, так как сон в это время не возможен, с выбросом например таких проблем нет.

S.T.A.L.K.E.R 1.004, Народная..Солянка от 19.04.10, дополнение 14.08.10, патч 3.09.10, DMX 1.3.5, Saruman addon 1.1

Vkontakte

Добавление нового транспорта в сталкер

Ссылка на комментарий

Ну и при чем здесь iniCaching ? Он непостижимым образом заменяет во всем коде все вызовы getIni*() на :r_*()?

 

У меня сейчас загрузка ВСЯ занимает 20-30 секунд. Было - да, полторы минуты.

 

Saruman, мне ЧУ не интересен от слова совсем, а по тому просто отключен. От того же самого слова.

В новой соли - исправили.

Изменено пользователем Dennis_Chikin
  • Полезно 1
Ссылка на комментарий

Ну и при чем здесь iniCaching ?

Это глобальный параметр, во всяком случае, я так всегда полагал.

Результат 20-30 секунд против полутора минут - разница разительная.

 

хит сезона:

для начала просто убрал кэширование.... 

Может быть убирались еще и локальные кеширования, но неужели глобальное кеширование не перекрывает локальные?

Надеюсь, ты не ошибся в тестах и ускорил загрузку таки за счет отключения кеширования, а не за счет чего-то другого.

  • Полезно 1

ASUS P8Z77 \ Intel Core i5-3570 3400MHz \ RAM 16GB 1600MHz \ ASUS PH-GTX1060-3 ГБ 192 бит\\ ОС Windows 10 Pro x64 на SSD

Ссылка на комментарий

Там ОЧЕНЬ большие накладные расходы на сами вызовы, плюс на повторные вызовы ini_file()

Аналогично жрут "универсальные" cfg_get_* от самих ПЫС.

 

Ну, часть тормозов при загрузке еще за счет повторных переборов, но я только что приводил цифры по чтению конфигов: death_manager - 10 секунд, тайники - 4.

И с полминуты - на торговлю бандитскими курточками полутора тысяч цветов. ;)

Еще не трогал квесты.

 

Правда, на предзагрузке звуков, если я ее сделаю, мы секунд 15 обратно потеряем.

 

UPD: мда. Был излишне оптимистичен. Не 15, а пол минуты минимум. И это не полная предзагрузка, а только наиболее частые. Надо минимум править конфиг, и хотя-бы уникальным персонажам проставлять sidы/имена. Или по картам звуки растаскивать.

 

Внезапно, очень сильно жрут анекдоты и балалайки.

Изменено пользователем Dennis_Chikin
  • Полезно 1
Ссылка на комментарий

У меня сейчас загрузка ВСЯ занимает 20-30 секунд. Было - да, полторы минуты.

 

У меня возник нескромный вопрос. Можно ли указать конфигурацию железа, на которой загрузка сейва происходит за 20-30 секунд?

Только что я проделал совсем простой эксперимент, который может повторить любой желающий.

1. Абсолютно чистая оригинальная игра ТЧ с патчем 1.0006 (чистая - это в смысле никаких модов нет вообще).

2. Начинаю новую игру, беру задание на флешку Шустрого.

3. Разговоры с Волком, Петрухой и т.п. Добегаю до АТП "Локомотив" и делаю сейв.

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

5. Загружаю игру и сейв возле АТП.

Загрузка длиться 39 секунд.  А это ведь самое начало игры!

Далее. Выхожу из игры и не перезагружая компьютер опять запускаю игру и гружу тот же сейв.

Вот тут уже результаты веселее - всего 18 секунд.

Это и естественно - Вын 7 достаточно умна и сообразительна, чтобы не использовать то, что уже болтается где-то в памяти компьютера.

 

Получается, что загрузка сейва оригинальной игры происходит за 39 секунд, а загрузка сейва "тяжелого" мода происходит за 20-30 секунд?

Тогда поздравляю!

GSC нервно курит!

 

P.S. Конфигурация моего компьютера - в подписи.

P.S.S. Настройка игры - полное динамическое освещение, максимальное качество (это во всех испытаниях, что в Солянке, что на чистой игре только что).

Изменено пользователем SergeT
  • Нравится 1

ASUS P8Z77 \ Intel Core i5-3570 3400MHz \ RAM 16GB 1600MHz \ ASUS PH-GTX1060-3 ГБ 192 бит\\ ОС Windows 10 Pro x64 на SSD

Ссылка на комментарий

SergeT,

MB ASRock Z68 Pro3-M, Intel Core i5 3570k 3.4GHz, DDR-III 16ГБ 2133 MHz, Video Sapphire HD7870 2GB, SSD OCZ Vertex 4 128 Gb, Windows 7 х64 SP1 Максимальная, Монитор 22` 1680х1050 (16х10)

 

Сейв ОП, который куда "тяжелее" соляночного, грузится 35-40 секунд с нуля. В игре секунд 20.

Выхожу один я на дорогу, АКМ при мне — и слава Бoгу!

Ссылка на комментарий

Когда у меня будет ТАКОЕ железо - думаю, что и тяжелые сейвы Солянки будут загружаться за то же время.
Кстати, я с недавнего времени счастливый обладатель такого же чуда SSD OCZ Vertex 4 128 Gb.
К сожалению, возможности накопителя использую далеко не полностью - на моей старенькой материнке только SATA-2.
Тем не менее, тестируемую Солянку я гружу именно с SSD накопителя разница все равно есть и заметная. А перезагружаться приходится часто ;)
Все описанные выше опыты я проводил на сборке Сталкера, которая находится на обычном стареньком винте.
P.S. Вот потому я и интересуюсь железом, на котором Денис получил такие фантастические результаты.

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

ASUS P8Z77 \ Intel Core i5-3570 3400MHz \ RAM 16GB 1600MHz \ ASUS PH-GTX1060-3 ГБ 192 бит\\ ОС Windows 10 Pro x64 на SSD

Ссылка на комментарий

Во-первых, антивирь при тестах на скорость желательно таки выключать. Он тормозит весьма конкретно.

 

Athlon 64 x2 6100/4/500. То есть, винт - новый, да.

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

 

Да, повторная загрузка без выхода - это не по тому, что win7, а по тому, что графика кэшируется движком. Звуки и, на самом деле, конфиги - тоже. Именно по этому "скриптовое" кэширование ситуацию не улучшает, а ухудшает. Проблема только в том, что прежде чем что-то закэшировать, движок должен это прочитать. Когда мы побегали по локе, и снова загрузили сэйв той же локи - оно в памяти есть.

 

P.S. Да, а вот с предварительно загрузкой звуков что-то не получается. То есть, оно целых 40 секунд что-то делает, но при входе неписей в онлайн результата не наблюдаю. 8( Если следующий непись читает тот же звук, что запиханы в предыдущих - лага нет. Если новый - лаг.

  • Полезно 1
Ссылка на комментарий

....Именно по этому "скриптовое" кэширование ситуацию не улучшает, а ухудшает.

В посте http://www.amk-team.ru/forum/index.php?showtopic=8830&page=61#entry763831 я приводил конкретные цифры. Можно сравнить разницу с кешированием и без и остается сделать вывод, что скриптовое кеширование я отключал совершенно неграмотно. Тут я спорить не буду, ибо сам не уверен.

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

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

Т.е. сократив время загрузки сейва мы вполне можем получить "дергания" в ходе игры по мере ее прохождения.

Странно, но я не заметил заметной разницы в скорости загрузки сейвов и микролагах ни в случае с кешированием, ни без оного.

А может таки кеширование я отключал неграмотно.

ASUS P8Z77 \ Intel Core i5-3570 3400MHz \ RAM 16GB 1600MHz \ ASUS PH-GTX1060-3 ГБ 192 бит\\ ОС Windows 10 Pro x64 на SSD

Ссылка на комментарий

Кэширование - это не предварительное чтение. Это запоминание прочитанного.

Поэтому, многократное программное кэширование не может дать лучший результат, чем однократное - только наоборот.

То есть, если движок сам запоминает прочитанное - получаются только лишние операции.

 

То есть, в норме мы делаем так:

local ini = ini_file( "наш_конфиг" )

local s1, s2, s3, и еще много строчек

if ini:section_exist( sect ) then

s1 = ini:line_exist( sect, l1 ) and ini:r_string( sect, l1 )

и еще сколько надо

end

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

 

Если строка нам требуется 1 раз - получаем проигрыш в n раз. Если у нас файл с 1000 строк, и каждая из строк нужна по одному разу - вот тут мы и получаем те самые 10 секунд на несчастных 70 килобайтах.

 

Вот если мы бы ЗАРАНЕЕ очень быстро прочитали те 1000 строк, да они еще и требовались бы многократно - да, получим выигрыш в сколько-то раз.

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

 

Или я что-то не то делаю, или оно не работает. По крайней мере на 1.0006

 

Попробуйте кто-нибудь на 1.0004 и дайте лог. Устроит сразу после загрузки. В лагере новичков на Кордоне - вполне. Можно в баре.

 

https://dl.dropbox.com/u/27871782/sound_theme.7z

  • Полезно 1
Ссылка на комментарий

В общем, скрипт можно не проверять - не работает.

Нужен кто-то, кто хорошо разбирается в работе звука. Мысль я изложил в теме скриптования.

 

 

Да, к вопросу об "обеднении игры": 6 абсолютно идентичных копий одной и той же окуджавы общим весом в 100 мегабайт, +50 мег пьяной гитарной лажи (зато в 192kbps) + 21 копия балалайки - это, простите, несколько перебор. Мне так кажется. Ну и гармошки в неисчислимых количествах, тоже одинаковые - явно не шедевр.

 

+ простите за оголтелый национализм, но игра - не способ изучения мовы, да еще на тупых анекдотах.

Короче, резать и резать. А оставшееся - еще раз проверять, и пережимать.

 

P.S. И таки из соображений экономии памяти исключительно (тормоза здесь только на самом первом неписе) - для уникальной озвучки надо бы таки проставить sidы.

  • Согласен 1
Ссылка на комментарий

Уже неактуальна.

Пересобирается с очень большими изменениями.

 

Кстати, фиксы по прицелам и звукам вообще кто-нибудь тестировал ? На чистой соли ?

 

Меня в частности интересуют бои на АТП и с немниками. Ни кто ни каких изменений (или проблем) не замечал ?

 

Еще раз, для особовнимательных, файлы торговли (вот еще у кого-то профиль правил - не помню, у кого)

https://dl.dropbox.com/u/27871782/%D1%82%D0%BE%D1%80%D0%B3%D0%BE%D0%B2%D0%BB%D1%8F.7z

 

Всего-то каких-то жалких 40 секунд загрузки.

 

Дефолтные коэффициенты крутить в system.ltx

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

Изменено пользователем Dennis_Chikin
  • Нравится 1
  • Полезно 1
Ссылка на комментарий
Гость
Эта тема закрыта для публикации сообщений.
  • Недавно просматривали   0 пользователей

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