Закрома Родины |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Закрома Родины |
17.09.2014, 16:27
Сообщение
#3741
|
|
И никаких няш-мяш! Репутация: 5029 Группа: Участник Сообщений: 28157 Регистрация: 04.02.2003 |
Сборка движка X-Ray 1.0007 RC1 Сборка движка ЗП от Shoker 0) Устанавливаем Visual Studio 2008 SP1 (Proffesional или Team, я собирал в первой), сервис пак из архива engine.vc2008.fixed.rar подходит только к английской версии студии, для русской нужно будет скачать отдельно. ______________________________________________ 1) Создаём на диске папку, в ней ещё одну папку. 2) В эту папку помещаем только папку engine.vc2008 из архива "engine.vc2008.fixed - фикшенный мною проект vs2008", папку SDK от туда не трогаем. 3) Папку SDK берём из архива "stasvn\sources\engine.vc2005-2008(~1.6.02 бенчмарк) - март 2010", из под-папки sources. Помещаем её в одну папку к engine.vc2008 4) Вот теперь поверх неё докладываем папку SDK из архива engine.vc2008.fixed.rar, соглашаемся на замену всех файлов 5) Качаем с сайта майкрософт два DirectX SDK - 2009 March и 2010 June. (Вес каждой около 500 мб), можно использовать только версию 2009, но тогда не сможете собрать xrRender_R4. (LINK : fatal error LNK1181: cannot open input file 'd3d11.lib'), а если будете использовать только 2010 - игра с R4 не запустится. После установки двух DX SDK убедитесь что они прописали свои пути в студию, файлы 2010-го СДК должны быть после 2009-го, как показано на рисунке: Аналогично для разделов Executable files и Include files. Если возникнут вопросы, ищите информацию в гугле по словам "подключение directx sdk visual studio 2008" При неправильных версиях СДК (или его не-подключении) в логе будет ругань на отсутствие файлов типа d3dXX.lib\.h) Перемещать папки из уже установленного DirectX SDK никуда не нужно. Достаточно прописать к ним пути глобально для студии (или для каждого проекта вручную) Комментарий от loxotron: достаточно скопировать и переименовать d3d11_beta.lib в d3d11.lib в папке с директовским сдк, а еще лучше скачать и поставить DX SDK August 2009 и не париться с неподходящими версиями. 6) На всякий случаи можно установить ещё SDK\OpenALwEAX.exe, но не уверен что он критически необходим. 7) Запускаем проект через ..\CoP\Project\engine.vc2008\engine.sln. Когда он загрузится, вверху студии режим сборки с Debug_Dedicated (или любой другой) меняем на Release. Далее слева\справа будет список папок с файлами движка, нам нужна, в первую очередь, папка 3rd_party - жмём на неё правой кнопкой мыши и выбираем Build\Построить. Если всё будет правильно, то в конце лог внизу напишет об 11 успешных проектах (или число будет меньше, если некоторые проекты уже были собраны до этого, лог об этом тоже сообщит "пропущены\up to date") Главное чтобы Ошибок\Fatal везде было 0 У меня собрались полностью все проекты без ошибок. (warning за полноценные ошибки не считаются) 8) По аналогии, сверху вниз, можно собрать другие Dll-ки, папки editor\dedicated\utils\plugins собирать не обязательно - к движку они не относятся. Дольше всего будет собираться xrGame.dll. Остальные достаточно быстро. Собирать все Dll-ки к слову не обязательно. Можно лишь нужные. Когда они будут готовы - создать чистую папку bin в папке с игрой. Закинуть туда все созданные dll файлы (можно вместе с .pdb). При необходимости, можно докинуть отсутствующие файлы из оригинальной bin ЗП (2-ой патч), если игра будет их требовать. (Навроде wrap_oal.dll) Игру я запускал с оригинального Stalker-COP.exe Если всё верно, то в логе\консоли игры в первых строчках будет указан билд игры и дата построения. Сообщение отредактировал RayTwitty - 22.01.2016, 17:03 |
 
|
|
|
|
02.11.2015, 18:50
Сообщение
#3742
|
|
Почти Игроман Репутация: 96 Группа: Участник Сообщений: 594 Награды: 3 Регистрация: 26.10.2012 |
Где найти BugTrap.lib, в шапке в репозиториях где-нибудь есть?
-------------------- Будиш маму-папу слушать
Будиш ты канфеты кушать! © Операция «Ы» |
 
|
|
02.11.2015, 19:55
Сообщение
#3743
|
|
Опытный Геймер Репутация: 22 Группа: Участник Сообщений: 169 Награды: 2 Регистрация: 19.11.2010 |
Где найти BugTrap.lib, в шапке в репозиториях где-нибудь есть? Можете отсюда забрать актуальные исходники и собрать: Там есть и бинарники, но вам может не подойти версия рантайма. -------------------- |
 
|
|
12.11.2015, 20:06
Сообщение
#3744
|
|
Почти Игроман Репутация: 96 Группа: Участник Сообщений: 594 Награды: 3 Регистрация: 26.10.2012 |
Пока застрял вот на этом:
Код Серьезность Код Описание Проект Файл Строка Ошибка LNK2001 неразрешенный внешний символ "__imp__fprintf" xrSound E:\priquel\engine\xrSound\vorbisfile_static.lib(analysis.obj) 1 В гугле вычитал, что может помочь пересборка либы на 15-шке, в данном случае получается vorbisfile_static.lib. Но из чего она собирается? Пробовал собирать libvorbis-1.3.5, libogg-1.3.2, libogg-1.1.4, libtheora-1.1.1, но такой либы там нет. Сообщение отредактировал Kontro-zzz - 12.11.2015, 20:07 -------------------- Будиш маму-папу слушать
Будиш ты канфеты кушать! © Операция «Ы» |
 
|
|
12.11.2015, 20:09
Сообщение
#3745
|
|
Продвинутый геймер Репутация: 22 Группа: Участник Сообщений: 234 Награды: 3 Регистрация: 27.10.2010 |
vorbisfile_static.lib
Статическая библиотека.(должна быть такая конфигурация в решении, либо руками в проекте поставить) |
 
|
|
15.11.2015, 21:51
Сообщение
#3746
|
|
Почти Игроман Репутация: 153 Группа: Участник Сообщений: 614 Награды: 4 Регистрация: 03.05.2012 |
Кому интересно, нашел некоторые ошибки оригинала, которые удалось пофиксить:
Не работает вертикальная синхронизация [ТЧ, ЧН, ЗП] Из-за этой проблемы у некоторых людей горели видеокарты, так как не было ограничения кадров в игре. У Лохотрона, например, так сгорело две видюхи, т.к. в меню выдавало аж 6000 кадров в секунду. Для DX9 это фиксится в файле HW.cpp: Код DevPP.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE; и Код P.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE; меняются на: Код DevPP.PresentationInterval = selectPresentInterval(); и соответственно Код P.PresentationInterval = selectPresentInterval(); Для DX10/11 в dxRenderDeviceRender.cpp: Код HW.m_pSwapChain->Present( 0, 0); Добавляем проверку на включение вертикальной синхронизации: Код HW.m_pSwapChain->Present(psDeviceFlags.test(rsVSync) ? 1 : 0, 0); Эффектор перезарядки срабатывает не каждый раз [ЗП] Ну тут всё просто, просто перезапускаем активный эффектор. Заходим в player_hud.cpp, находим строки 380-381: Код if(NULL==ec) { Эти две строки с закрывающейся скобкой удаляем. Вместо этого вставляем: Код if(ec) current_actor->Cameras().RemoveCamEffector(eCEWeaponAction); Теперь эффектор работает при каждой перезарядке. Очень странный вылет [ТЧ, ЧН, ЗП] Данная проблема была в свое в ЛА еще в 2013 году, и я очень долго не мог найти причину вылета, так как вылет каждый раз ссылался на разные некорректные по его мнению объекты. Причем возникал не всегда и можно было его поймать только при выходе из игры. Спустя несколько месяцев чудом проблема была найдена. Оказывается, проблема была в лампочках, которые включались и выключались скриптово. Игра ловила крэш при 255 и более включении и выключении лампочки. Фиксится в HangingLamp.cpp в строках: Код } if(!PPhysicsShell())//if we have physiccs_shell it will call processing deactivate when disable processing_deactivate (); Удаляем if(!PPhysicsShell()), теперь processing_deactivate(); будет срабатывать всегда, как и должен, и мы можем включать и выключать лампочки сколько угодно раз. Причину бага с глитчами камеры в ЗП я так найти не смог. Может кто находил причину? Проверить баг просто: перезаряжаемся и стрефимся. При одном активном эффекторе, окончание второго эффектора глитчит камеру. Сообщение отредактировал SkyLoader - 15.11.2015, 21:53 |
 
|
|
15.11.2015, 21:59
Сообщение
#3747
|
|
Почти Игроман Репутация: 96 Группа: Участник Сообщений: 594 Награды: 3 Регистрация: 26.10.2012 |
Цитата Не работает вертикальная синхронизация [ТЧ, ЧН, ЗП] ГСК это вроде фиксили мультипатчем P.S. Но в любом случае для исходников эта правка будет полезна. Сообщение отредактировал Kontro-zzz - 15.11.2015, 22:07 -------------------- Будиш маму-папу слушать
Будиш ты канфеты кушать! © Операция «Ы» |
 
|
|
15.11.2015, 22:22
Сообщение
#3748
|
|
Продвинутый геймер Репутация: 90 Группа: Участник Сообщений: 395 Награды: 3 Регистрация: 07.04.2014 |
SkyLoader, Цитата(Shadows @ 25.02.2015, 23:37) *
Расковырял тот экзешник из мульти-патча, там пыс в двух местах поправили, чтобы включить ограничитель фпс. Правда поправили опять криво - флаг в опциях как не работал, так и не работает... Нормальная реализация выглядит так: В файле HW.cpp, в функции CHW::Reset Код DevPP.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE; заменить на Код DevPP.PresentationInterval = selectPresentInterval (); в функции CHW::CreateDevice Код P.PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE; заменить на Код P.PresentationInterval = selectPresentInterval (); После чего команда rs_v_sync будет работать сразу после рестарта рендера (vid_restart). © RayTwitty -------------------- no more running
|
 
|
|
15.11.2015, 23:07
Сообщение
#3749
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
У Лохотрона, например, так сгорело две видюхи Сталкер не щадит никого. У меня до фикса частенько рендер падал в игре, текстуры кувырком. Думал, новая карта кривая, ведь на 8800GTS\9800GT такого не было, но оказалось, что просто слишком мощная При одном активном эффекторе, окончание второго эффектора глитчит камеру. Не знаю как в ЗП сделали, но при реализации в ТЧ, я вообще эффекторы после запуска не трогал, ибо удаление старого эффектора перед новым делает движение только хуже - камера дергается (резко возвращается) в исходное положение. Но в любом случае для исходников эта правка будет полезна. Уже сто лет ей, даже в ХЕ перенесли. Удаляем if(!PPhysicsShell()), теперь processing_deactivate(); будет срабатывать всегда, как и должен, и мы можем включать и выключать лампочки сколько угодно раз. Да, там ведь счетчик стоит. Тут либо в обоих случаях ставить условие, либо убирать. В данном случае, конечно, правильнее убрать, ведь без физической оболочки апдейт тоже нужен. Сообщение отредактировал RayTwitty - 15.11.2015, 23:19 -------------------- |
 
|
|
16.11.2015, 00:57
Сообщение
#3750
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Кстати, о багах. Сейчас на слабой видюхе перепроверил один баг в ТЧ 1.0006 - каждый раз при заходе в какое-нибудь меню, например из главного в опции и обратно, FPS падает. Где-то за 20 заходов получилось сбить FPS с 280 до 30.
Сообщение отредактировал macron - 16.11.2015, 00:59 |
 
|
|
16.11.2015, 03:50
Сообщение
#3751
|
|
Почти Игроман Репутация: 153 Группа: Участник Сообщений: 614 Награды: 4 Регистрация: 03.05.2012 |
Не знаю как в ЗП сделали, но при реализации в ТЧ, я вообще эффекторы после запуска не трогал, ибо удаление старого эффектора перед новым делает движение только хуже - камера дергается (резко возвращается) в исходное положение. Сколько играл с этим фиксом, все выглядело хорошо. Камера успевает возвращаться в исходное положение. Уже сто лет ей, даже в ХЕ перенесли. И на DX10/11 тоже? Я не видел что-то. Кстати, о багах. Сейчас на слабой видюхе перепроверил один баг в ТЧ 1.0006 - каждый раз при заходе в какое-нибудь меню, например из главного в опции и обратно, FPS падает. Где-то за 20 заходов получилось сбить FPS с 280 до 30. Надо проверять, в скриптах ли дело. Может и в движке (приоритеты отрисовки?). Но для начала надо в скриптах поотключать всякие видео менюшные и прочие вещи, сверить фпс. По поводу бага с камерой. Скопипастю свое сообщение с амк: Баг происходит, когда заканчивается один эффектор при активности другого. Т.е. если минимум два эффектора активны. Это могут быть абсолютно любые эффекторы. У меня подозрения падают на менеджер эффекторов CActorCameraManager, который объединяет все эффекторы в одну матрицу для камеры. Сообщение отредактировал SkyLoader - 16.11.2015, 03:56 |
 
|
|
16.11.2015, 16:41
Сообщение
#3752
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
И на DX10/11 тоже? Я не видел что-то. Ну я про ТЧ говорил. Для ЧН\ЗП вроде раньше не делали. Сколько играл с этим фиксом, все выглядело хорошо. Камера успевает возвращаться в исходное положение. Я запускал эффекторы через стандартные функции экспортированные в lua. Возможно, в ЗП уже по-другому сделали. -------------------- |
 
|
|
17.11.2015, 01:58
Сообщение
#3753
|
|
Продвинутый геймер Репутация: 55 Группа: Участник Сообщений: 469 Награды: 4 Регистрация: 20.12.2008 |
Будет ли востонавливаться худ продуктов питания и этого билда? http://www.gameru.net/forum/index.php?show...41494&st=20
-------------------- |
 
|
|
17.11.2015, 16:41
Сообщение
#3754
|
|
Мастер Игры Репутация: 232 Группа: Друзья GM Сообщений: 1299 Награды: 4 Регистрация: 05.03.2012 |
sgs-sd,
В ОЛР3 будет. -------------------- |
 
|
|
18.11.2015, 07:57
Сообщение
#3755
|
|
Продвинутый геймер Репутация: 22 Группа: Участник Сообщений: 234 Награды: 3 Регистрация: 27.10.2010 |
Вопрос к тем, кто ковырял ТЧ\ЧН -
Зачем нужен? class XRCORE_API NET_Packet public: IIniFileStream* inistream; В ЗП это вроде рудимент... |
 
|
|
18.11.2015, 18:48
Сообщение
#3756
|
|
Продвинутый геймер Репутация: 24 Группа: Участник Сообщений: 223 Награды: 5 Регистрация: 01.02.2006 |
Скучно что-то тут, даешь сорцы каких-нибудь старых билдов, просто так для коллекции
|
 
|
|
18.11.2015, 19:57
Сообщение
#3757
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
Скучно что-то тут, даешь сорцы каких-нибудь старых билдов, просто так для коллекции Просто так для атмосферы Верните мой 2009\10\11-ый. Сообщение отредактировал RayTwitty - 18.11.2015, 19:58 -------------------- |
 
|
|
23.11.2015, 18:25
Сообщение
#3758
|
|
Продвинутый геймер Репутация: 55 Группа: Участник Сообщений: 469 Награды: 4 Регистрация: 20.12.2008 |
ГДе можно скачать компиляторы на чистое небо Х64? компиль с обходом инвалид фейсов
Сообщение отредактировал sgs-sd - 23.11.2015, 18:32 -------------------- |
 
|
|
23.11.2015, 20:55
Сообщение
#3759
|
|
разраб одиночка Репутация: 2132 Группа: Модератор Сообщений: 3413 Награды: 13 Регистрация: 06.05.2004 |
ГДе можно скачать компиляторы на чистое небо Х64? компиль с обходом инвалид фейсов меня такой устраивал: Сообщение отредактировал Директор РенТВ - 23.11.2015, 21:00 -------------------- |
 
|
|
23.11.2015, 20:57
Сообщение
#3760
|
|
Продвинутый геймер Репутация: 90 Группа: Участник Сообщений: 395 Награды: 3 Регистрация: 07.04.2014 |
Директор РенТВ,
ttps://yadi.sk/d/F2FRzp0JQpntk 64 битный надо!!!!! sgs-sd, вот держи -------------------- no more running
|
 
|
|
23.11.2015, 21:38
Сообщение
#3761
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
ГДе можно скачать компиляторы на чистое небо Х64? компиль с обходом инвалид фейсов Добавил в шапку. -------------------- |
 
|
|
Текстовая версия | Сейчас: 26.04.2024, 18:13 |