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

Базовая платформа для разработки модов ЗП


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

@Дизель, запуститься запустилось) Но у меня лаги даже на статике (не знаю из-за чего). Брал объединенную Припяти из П.ТО, заселял - все было прекрасно, а здесь бегаю - и часто фризит. Так же наблюдается баг с вытаскиванием оружия, сначала просто не всегда вытаскивалось, а потом вообще спряталось и не реагировало на кнопки


, ну я для своего мода адаптировал Припять из П.ТО, основательно заселил, все нормально. ОЗУ хватает 4ГБ (+ при включении сталкера, отключаю все процессы, даже explorer.exe). Поэтому не знаю что за косяки, из-за движка может?

5decb51e9a26ad16621f2264a38742441fadf324

 

https://yadi.sk/d/AR08Tmyxriwpn  bin для теста модели ГГ. Это новый второй вид. Стреляет в центр экрана. Для удобства стрельбы - отклоняйте голову, правой кнопкой мыши. В игру добавлять не советую - многим придётся пожертвовать. Папка не зависима от основного bin, запуском тоже, потому пусть будет - может пригодится.

 

Доп.скрины:

 

 

91ea7aada0569730c434f90c8af07b721fadf324

 

ac75e087b9ca7f832a824f2b6c4d8b551fadf324

 

 

Изменено пользователем Дизель
Добавлено Expropriator,

Перезалил новый bin и gamedata с правками - в шапке темы

Добавлено Expropriator,

Все патчи для ALL_0009 в "истории правок" в шапке темы

  • Нравится 2

Доработал систему прицеливания и ведения огня у БТР. Теперь огонь мышью, автоприцел и пользовательское управление пулемётом ( по типу Лост Альфа).

 

Скачать с Яндекс-диска 106.5 МБ., результат теста (BTR only). Установить в корневую папку любого ЗП. Запаковано в DB!!! Потому как тест. Хотите ковыряйте - проблем нет.

 

Видео-тест:

 

 

 

 

Описание управления под видео.

 

 

Так же отредактировал перемещение ГГ по грунтам.

 

Ожидайте патч, для версий ALL_0010.

 

С сегодняшнего дня, отбросив всё лишнее, я перехожу на базу "Лайт", без объединённой Припяти и лишних конфигов и скриптов. Чисто авто и сопутствующие материалы, плюс правки шейдеров и патчи для работы движка.

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

Я так понимаю, объединённая Припять не подходит для вставки вместо оригинала?

@DarkSatellite, вроде как можно, я из Припять. Точка отсчета брал,норм все было. Но там она малость недоделанная была, ляпов много. А отсюда юзать не пробовал

@DarkSatellite, @St-Himik, эта Припять так же имеет баги с визуалом за периметром.  Пожалуйста можете вставлять - проблем с адаптацией нет.

@Дизель, хотя бы пропадание визуалов кроме травы около мазагина "Книги" убрано или нет?)

@St-Himik,  внутри периметра, я багов не замечал. Хотя из далека видно, как деревья, за периметром, пропадают. Возле магазина нет бага, в старой версии там було баг. Говорят в старой версии еще яма где то была, куда проваливался ГГ, а в новой версии я не знаю, исправлено или нет, так как координаты этой ямы, не знаю.

Если не ошибаюсь, баги с пропаданием текстур на окраинах объединённой Припяти были в LWO, откуда этот уровень взят.

Помнится, Скат говорил, что он избавился от этого недостатка. Значит багов быть не должно.

----------------------------------------------------------------------------------------------------------------

Дизель, если не трудно, можешь залить отдельно те файлы, которые нужны для замены оригинальной Припяти, а то что-то не разберусь в таком количестве файлов?

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

@Дизель, собственно я и говорил про баг с лужей. Около школы, напротив поломанных этажей. Заходишь в лужу и тупо уходишь "под юбку" террейну

  • Полезно 1

@DarkSatellite, вот так задача. Я уже и не помню, что там именно, особенно в текстурах. Папку levels\pripyat - точно надо. :to_take_umbrage:. Алспавн - точно нужен. Текстуры? А больше и не надо ничего, так как локация уже зарегистрирована в оригинале.

Патч ALL 0011 2.58 Мб. для версии 0010: правка прицелов наведения, стрельба из БТР мышкой, камер Авто, передвижение ГГ, звуков и текстур, мелких багов.

 

Повтор видео:

 

 

 

Отключение автоприцела "X" eng - включается пользовательский режим и динамическая музыка. В момент включения прицела "Лост Альфа" на Затоне появляется Шилка - убивает влёт, так как нет защиты впереди у БТР. При выходе из БТР - меняется режим прицеливания, на автоматический.

 

Странный движок. Стрельба из Шилки не идёт по ГГ через кусты, да и монстры нифига не видят когда ГГ в БТР. Единственный монстр который одекватно видел ГГ в БТР, и которого я тестировал, это была Химера. Надо всех монстров переводить на этот класс, однако.

 

Еще на будущее. Ранее, ковыряясь в движке, я напоролся на любопытную функцию пробития и попадания в технику. Будет чем заняться на досуге - есть возможность сделать адекватную броню, как в WOT.

Изменено пользователем Дизель
  • Спасибо 1

Ещё для шилки надо сделать стрельбу из всех стволов раз, стрельба ракетами два. Ах да, стрелять из CCarWeapon лучше скриптом, это надо для автоприцеливания или прямой наводкой, в зависимости от настроек, или даже в скрипте можно переключить, например по захвату воздушной цели по упреждению баллис. вычислителя, и прямой наводкой по наземным целям, и это переключается кнопкой. Я попозже портирую код из своего проекта в С++, можешь потом добавить.

А во обще надо создать проект, хотя зачем создавать лучше сразу в твой добавлять, где можно добавлять разные возможности, фиксить разные баги, например я переделал часть оружия для более широкой возможности, типа много зарядные гранатомёты (РГ6, РПГ7, ПГ) ракеты соответствуют  патронам и многое другое, ошибок там не мало. Тот же холдер вертолёт пригодится, турели надо сделать с возможностью стрелять гранатами. И так далее...

Изменено пользователем НаноБот
  • Полезно 1

@НаноБот, есть мысль, как внедрить бтр в сетевуху? У меня  БТР спавнится и вылетает при атаче ГГ в БТР. Холдер - вылет.

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

Вот набросал малеха.

https://yadi.sk/d/WMcKZs_5soi3Q

Исправлено оружие, гранатомёты могут стрелять очередями  ПГ и РПГ-7 при fire_modes = -1, ракеты соответствую патронам, восстановил турель, класс CWeaponPistol могут так же стрелять очередями т.к. родитель CWeaponMagazined, для гранатомётов работает метод pzrk:set_queue_size(0) заблокировать огонь. Это я что вспомнил.

Я не проверял на компиляцию, так что синтаксические ошибки придётся исправлять самим. Короче, рассчитано на опытных программистов С++.

ЗЫ

Я изменил те файлы, которые изменены в этом году (2016), если что.

Изменено пользователем НаноБот
  • Спасибо 1

@НаноБот, ActorMountedWeapon я еще раньше подключил. У меня это в движке работает. А за остальное спасибо, подключить не составит труда, так как у меня эти файлы не тронуты ранее.

 

Вот последняя версия исходников xrGame, моя, за июнь 2016, для патча ALL_0011, с правкой камер авто и управления стрельбой бтр ( по типу лост -альфа).

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

Метод ActorMountedWeapon надо бы доработать, в прочим пока так сойдёт.

 

Так же добавлены 5 колбеков... 

1: на выстрел, передаёт позицию старта пули, вектор направления, реальную секцию патрона (для ножа силу хита).

2: на переключения режима огня, передаёт номер нового режима, старый режим огня. Начиная от 1.

3: на переключения видимости гранаты для РПГ, передаёт номер типа выстрела, номер состояния оружия.

4: на обновление видимости кости аддона худа, передаёт флаг видимости худа аддонов.

5: на обновление видимости кости аддона, передаёт флаг видимости худа аддонов.

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

 

Обновил архив.

Изменено пользователем НаноБот
Добавлено Expropriator,

Извиняюсь, за поздний ответ. Нужна мне помощь.

  • Спасибо 1

По рендеру планируются правки? Всякие графические плюшки из OGSE. 

И в xrGame есть всякое по мелочи правки как у MaxWarlock? А то видно только - запрещены все слоты в авто.

 Кстати ещё оооооооооч давно делал правки по мелочи типа выбор курсора между билдовским и обычным курсором, консольная команда вкл\выкл коллизии трупов, консольная команда вкл\выкл патроны\артефакты на поясе и мож ещё что. 

Изменено пользователем power-cat
Добавлено Expropriator,

Глобальные правки хотелось бы, но пока нет времени и профессионализма. Меня распирает от одновременных дел. Нужны консультанты. Сейчас я занялся вскрытием игровых ресурсов, для вычленения 3d моделей.

@power-cat, плохо смотришь. Там с десяток правок в исходниках - в последнем одиннадцатом патче.

@НаноБот, чего то я потерялся в оружейных правках. Один раз попытался внедрить их, но потом понял, что там не хватает чего то, то ли мозгов у меня, то ли еще каких файлов. Две ошибки я прям легко увидел, далее не полез делать - страховато.

 

 

20>c:\stalker_cop\project\engine.vc2008\xrgame\WeaponRG6.h(9) : error C2504: 'CWeaponAutomaticShotgun' : base class undefined
20>c:\stalker_cop\project\engine.vc2008\xrgame\WeaponRG6.h(11) : error C2146: syntax error : missing ';' before identifier 'inheritedSG'
20>c:\stalker_cop\project\engine.vc2008\xrgame\WeaponRG6.h(11) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
20>c:\stalker_cop\project\engine.vc2008\xrgame\WeaponRG6.h(11) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
20>.\WeaponRG6.cpp(20) : error C2653: 'inheritedSG' : is not a class or namespace name
20>.\WeaponRG6.cpp(23) : error C2065: 'iAmmoElapsed' : undeclared identifier
20>.\WeaponRG6.cpp(49) : error C2653: 'inheritedSG' : is not a class or namespace name
20>.\WeaponRG6.cpp(55) : error C2653: 'inheritedSG' : is not a class or namespace name
20>.\WeaponRG6.cpp(56) : error C2065: 'm_magazine' : undeclared identifier
20>.\WeaponRG6.cpp(56) : error C2228: left of '.back' must have class/struct/union
20> type is ''unknown-type''
20>.\WeaponRG6.cpp(56) : error C2228: left of '.m_ammoSect' must have class/struct/union
20>.\WeaponRG6.cpp(56) : error C2228: left of '.size' must have class/struct/union
20>.\WeaponRG6.cpp(70) : error C3861: 'get_LastFP': identifier not found
20>.\WeaponRG6.cpp(71) : error C3861: 'get_LastFD': identifier not found
20>.\WeaponRG6.cpp(73) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(75) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(78) : error C3861: 'GetState': identifier not found
20>.\WeaponRG6.cpp(79) : error C3861: 'GetNextState': identifier not found
20>.\WeaponRG6.cpp(80) : error C2228: left of '.c_str' must have class/struct/union
20> type is ''unknown-type''
20>.\WeaponRG6.cpp(80) : error C3861: 'cNameSect': identifier not found
20>.\WeaponRG6.cpp(81) : error C2227: left of '->cNameSect' must point to class/struct/union/generic type
20> type is ''unknown-type''
20>.\WeaponRG6.cpp(81) : error C2228: left of '.c_str' must have class/struct/union
20>.\WeaponRG6.cpp(81) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(83) : error C2664: 'CEntity::g_fireParams' : cannot convert parameter 1 from 'CWeaponRG6 *const ' to 'const CHudItem *'
20> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
20>.\WeaponRG6.cpp(93) : error C2660: 'IsZoomed' : function does not take 0 arguments
20>.\WeaponRG6.cpp(93) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(95) : error C2227: left of '->setEnabled' must point to class/struct/union/generic type
20> type is ''unknown-type''
20>.\WeaponRG6.cpp(95) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(96) : error C3861: 'setEnabled': identifier not found
20>.\WeaponRG6.cpp(99) : error C2664: 'CObjectSpace::RayPick' : cannot convert parameter 6 from 'CWeaponRG6 *const ' to 'CObject *'
20> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
20>.\WeaponRG6.cpp(101) : error C3861: 'setEnabled': identifier not found
20>.\WeaponRG6.cpp(102) : error C2227: left of '->setEnabled' must point to class/struct/union/generic type
20> type is ''unknown-type''
20>.\WeaponRG6.cpp(102) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(115) : error C3861: 'EffectiveGravity': identifier not found
20>.\WeaponRG6.cpp(136) : error C2227: left of '->ID' must point to class/struct/union/generic type
20> type is ''unknown-type''
20>.\WeaponRG6.cpp(136) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRG6.cpp(141) : error C3861: 'u_EventGen': identifier not found
20>.\WeaponRG6.cpp(141) : error C3861: 'ID': identifier not found
20>.\WeaponRG6.cpp(143) : error C3861: 'u_EventSend': identifier not found
20>.\WeaponRG6.cpp(151) : error C2653: 'inheritedSG' : is not a class or namespace name
20>.\WeaponRG6.cpp(153) : error C2065: 'm_ammoTypes' : undeclared identifier
20>.\WeaponRG6.cpp(153) : error C2065: 'm_ammoType' : undeclared identifier
20>.\WeaponRG6.cpp(153) : error C2228: left of '.c_str' must have class/struct/union
20>.\WeaponRG6.cpp(156) : error C2664: 'CRocketLauncher::SpawnRocket' : cannot convert parameter 2 from 'CWeaponRG6 *const ' to 'CGameObject *'
20> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
20>.\WeaponRG6.cpp(163) : error C2653: 'inheritedSG' : is not a class or namespace name
20>.\WeaponRG6.cpp(169) : error C2664: 'CRocketLauncher::AttachRocket' : cannot convert parameter 2 from 'CWeaponRG6 *const ' to 'CGameObject *'
20> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
20>.\WeaponRG6.cpp(185) : error C2653: 'inheritedSG' : is not a class or namespace name
20>WeaponShotgun.cpp
20>WeaponBinocularsVision.cpp
20>WeaponBinoculars.cpp
20>WeaponRPG7.cpp
20>.\WeaponRPG7.cpp(36) : error C3861: 'RocketLaunch': identifier not found
20>.\WeaponRPG7.cpp(48) : warning C4805: '==' : unsafe mix of type 'BOOL' and type 'bool' in operation
20>.\WeaponRPG7.cpp(75) : error C2065: 'm_bBlockRocket' : undeclared identifier
20>.\WeaponRPG7.cpp(121) : error C2039: 'RocketLaunch' : is not a member of 'CWeaponRPG7'
20> c:\stalker_cop\project\engine.vc2008\xrgame\weaponrpg7.h(7) : see declaration of 'CWeaponRPG7'
20>.\WeaponRPG7.cpp(127) : error C3861: 'getRocketCount': identifier not found
20>.\WeaponRPG7.cpp(131) : error C3861: 'get_LastFP': identifier not found
20>.\WeaponRPG7.cpp(132) : error C3861: 'get_LastFD': identifier not found
20>.\WeaponRPG7.cpp(135) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRPG7.cpp(138) : error C2673: 'RocketLaunch' : global functions do not have 'this' pointers
20>.\WeaponRPG7.cpp(142) : error C3861: 'IsHudModeNow': identifier not found
20>.\WeaponRPG7.cpp(162) : error C2065: 'm_fLaunchSpeed' : undeclared identifier
20>.\WeaponRPG7.cpp(164) : error C2352: 'CRocketLauncher::LaunchRocket' : illegal call of non-static member function
20> c:\stalker_cop\project\engine.vc2008\xrgame\rocketlauncher.h(18) : see declaration of 'CRocketLauncher::LaunchRocket'
20>.\WeaponRPG7.cpp(166) : error C3861: 'getCurrentRocket': identifier not found
20>.\WeaponRPG7.cpp(168) : error C2227: left of '->ID' must point to class/struct/union/generic type
20> type is ''unknown-type''
20>.\WeaponRPG7.cpp(168) : error C3861: 'H_Parent': identifier not found
20>.\WeaponRPG7.cpp(173) : error C3861: 'u_EventGen': identifier not found
20>.\WeaponRPG7.cpp(173) : error C3861: 'ID': identifier not found
20>.\WeaponRPG7.cpp(174) : error C2227: left of '->ID' must point to class/struct/union/generic type
20> type is ''unknown-type''
20>.\WeaponRPG7.cpp(174) : error C2514: 'u16' : class has no constructors
20> c:\stalker_cop\project\engine.vc2008\xrcore\_types.h(9) : see declaration of 'u16'
20>.\WeaponRPG7.cpp(174) : error C3861: 'getCurrentRocket': identifier not found
20>.\WeaponRPG7.cpp(175) : error C3861: 'u_EventSend': identifier not found
20>.\WeaponRPG7.cpp(177) : error C3861: 'dropCurrentRocket': identifier not found
20>.\WeaponRPG7.cpp(215) : error C2509: 'OnAnimationEnd' : member function not declared in 'CWeaponRPG7'
20> c:\stalker_cop\project\engine.vc2008\xrgame\weaponrpg7.h(7) : see declaration of 'CWeaponRPG7'
20>Bolt.cpp
20>WeaponKnife.cpp
20>WeaponMagazinedWGrenade.cpp
20>.\WeaponMagazinedWGrenade.cpp(73) : warning C4800: 'BOOL' : forcing value to bool 'true' or 'false' (performance warning)
20>.\WeaponMagazinedWGrenade.cpp(320) : error C2144: syntax error : 'float' should be preceded by ';'
20>RocketLauncher.cpp
20>.\RocketLauncher.cpp(139) : error C2143: syntax error : missing ',' before '<'
20>.\RocketLauncher.cpp(139) : error C2086: 'int i' : redefinition
20> .\RocketLauncher.cpp(139) : see declaration of 'i'
20>.\RocketLauncher.cpp(140) : error C2143: syntax error : missing ';' before '{'
20>.\RocketLauncher.cpp(141) : error C2027: use of undefined type 'CWeaponMagazined'
20> c:\STALKER_COP\project\engine.vc2008\xrServerEntities\smart_cast.h(141) : see declaration of 'CWeaponMagazined'
20>.\RocketLauncher.cpp(141) : error C2227: left of '->m_magazine' must point to class/struct/union/generic type
20>.\RocketLauncher.cpp(141) : error C2228: left of '.m_ammoSect' must have class/struct/union
20>.\RocketLauncher.cpp(141) : error C2228: left of '.c_str' must have class/struct/union
20>.\RocketLauncher.cpp(145) : error C2143: syntax error : missing ';' before 'else'
20>.\RocketLauncher.cpp(145) : error C2065: 'CWeaponRPG7' : undeclared identifier
20>.\RocketLauncher.cpp(145) : error C2059: syntax error : '>'
20>.\RocketLauncher.cpp(145) : error C2059: syntax error : ')'
20>.\RocketLauncher.cpp(148) : error C2355: 'this' : can only be referenced inside non-static member functions
20>.\RocketLauncher.cpp(149) : error C2143: syntax error : missing ';' before '}'
20>.\RocketLauncher.cpp(150) : error C2143: syntax error : missing ';' before '}'
20>.\RocketLauncher.cpp(151) : error C2143: syntax error : missing ';' before '}'
20>.\RocketLauncher.cpp(151) : fatal error C1004: unexpected end-of-file found

 

 

 

20>.\ActorMountedWeapon.cpp(15) : error C2027: use of undefined type 'CHolderCustom'
20> c:\STALKER_COP\project\engine.vc2008\xrServerEntities\smart_cast.h(209) : see declaration of 'CHolderCustom'
20>.\ActorMountedWeapon.cpp(15) : error C2227: left of '->detach_Actor' must point to class/struct/union/generic type
20>.\ActorMountedWeapon.cpp(17) : error C2065: 'zero_vector' : undeclared identifier
20>.\ActorMountedWeapon.cpp(25) : error C2027: use of undefined type 'CHolderCustom'
20> c:\STALKER_COP\project\engine.vc2008\xrServerEntities\smart_cast.h(209) : see declaration of 'CHolderCustom'
20>.\ActorMountedWeapon.cpp(25) : error C2227: left of '->Use' must point to class/struct/union/generic type
20>.\ActorMountedWeapon.cpp(26) : error C2027: use of undefined type 'CHolderCustom'
20> c:\STALKER_COP\project\engine.vc2008\xrServerEntities\smart_cast.h(209) : see declaration of 'CHolderCustom'
20>.\ActorMountedWeapon.cpp(26) : error C2227: left of '->attach_Actor' must point to class/struct/union/generic type

 

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

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

f888a3e69ee9t.jpg

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

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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

×
×
  • Создать...