Zagolski 74 Опубликовано 2 Апреля 2017 (изменено) xrSound\SoundRender_Source_loader.cpp void CSoundRender_Source::load(LPCSTR name){ string_path fn,N; strcpy (N,name); strlwr (N); if(strext(N)) *strext(N) = 0; fname = N; strconcat (sizeof(fn),fn,N,".ogg"); if(!FS.exist("$level$",fn)) FS.update_path (fn,"$game_sounds$",fn); if (!FS.exist(fn)) { Msg("! Can't find sound '%s.ogg'",N); FS.update_path (fn,"$game_sounds$","$no_sound.ogg"); } LoadWave (fn); SoundRender->cache.cat_create (CAT, dwBytesTotal);} Изменено 2 Апреля 2017 пользователем Zagolski 1 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 23 Мая 2017 Новый нужен Luaicp. Вряд ли он будет корректно функционировать на обычном ТЧ движке, если вообще будет. 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 28 Мая 2017 (изменено) А кто-нибудь разбирался с классом CAI_Rat появившимся начиная с ЧН? Не могу понять, в нем столько всего намудрено, что аж целый головной мозг сквадов получился. В игру класс выведен, но не зарегистрирован и нигде не используется. Я его на ТЧ из ЗП ради интереса портировал (вообще это вроде как класс крыс по идее, хотел на него их попробовать повесить), но косяки начались с логикой неписей. Вот сижу разбираюсь. Терзают сомнения, что этот класс к крысам вообще имеет хоть какое-то отношение. Или он просто не доделан. Изменено 28 Мая 2017 пользователем Zagolski 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 6 Июня 2017 Кто-нибудь провал добавлять в ЗП мутатнтам инвентарь? Я в тупик зашел, два дня с проблемой вожусь. Делаю вроде все правильно, т.е. наследую соответствующий класс в CBaseMonster и все что с ним связано. В игре все работает как надо, инвентарь у мутантов есть и функционирует как положено, но при переходе любого мутанта в оффлайн (в т.ч. и при загрузке сохранки) дает ошибку в функции xr_delete в IGame_ObjectPool::destroy, т.е. при удалении его. В чем проблема никак не могу разобраться... Кто-то может подскажет, в чем тут дело? Кажется, что проблема на самом деле глубже. Ведь не зря в ЗП у мутантов инвентарь убрали. Видимо косяки с ним были, что не исправить... Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 9 Июня 2017 В ЗП построение слотов заметно отличается от ТЧ/ЧН, как и сама реализация UI. Тот способ и близко не подойдет. Сначала добавь их в перечисление в inventory_space.h, а затем придется возиться в UI. Файлы там другие: UIActorMenu.cpp, UIActorMenuInventory.cpp. Конкретнее может кто другой подскажет. 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 9 Июня 2017 (изменено) Ну вот сюда и добавляй через запятую: enum{ NO_ACTIVE_SLOT = 0, KNIFE_SLOT =1,//btn1 was(0) !!! INV_SLOT_2, //btn2PISTOL_SLOT was (1) INV_SLOT_3, //btn3RIFLE_SLOT was (2) GRENADE_SLOT, //btn4 GRENADE_SLOT was(3) BINOCULAR_SLOT, //btn5BINOCULAR_SLOT BOLT_SLOT, //btn6BOLT_SLOT OUTFIT_SLOT, // outfit PDA_SLOT, //pda DETECTOR_SLOT, // detector TORCH_SLOT, //torch ARTEFACT_SLOT, // artefact HELMET_SLOT, NEW_SLOT_1, NEW_SLOT_2, NEW_SLOT_3, NEW_SLOT_4, NEW_SLOT_5, LAST_SLOT = NEW_SLOT_5}; Дальше там наверняка потребуется еще что-то корректировать. А может быть и нет, судя по реализации достаточно только к перечислению добавить новые. Размер файлов может заметно отличаться от способа сборки и от включенных оптимизаций. Изменено 9 Июня 2017 пользователем Zagolski 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 9 Июня 2017 Этот файл в ЧН/ЗП перенесен в папку xrServerEntities. 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 12 Июня 2017 Я тут продолжаю копаться с инвентарем у мутантов в ЗП, о проблеме писал чуть выше. Так пока и не разобрался с ошибками по xr_delete. Но кое-что нарыл под дебаггером. Скорее всего виной всему bool переменные m_deadbody_can_take и m_deadbody_closed. Эти свойства добавлены только в ЗП классу CSE_ALifeTraderAbstract, т.е. есть у людей и мутантов. Не совсем понятно для чего они предназначены, в скриптах не используются, есть упоминание в CInventoryOwner в виде пары связанных с ними функций, которые тоже нигде не используются... Но однозначно это связано как раз с инвентарем и обыском (видимо поэтому в ЗП инвентарь у мутантов и убрали). Есть у кого идеи на этот счет? Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 12 Июля 2017 WinCap, У тебя с таким скриптом скорее всего будут периодические лаги возникать из-за постоянного перебора всех объектов. В самом движке не пробовал на бесхозном оружии постепенное снижение кондиции реализовать? 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 18 Июля 2017 m_eHitTypeBlowout присваевается тип урона в CCustomZone::Load непосредственно из секции самой аномалии в конфигах. 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 19 Июля 2017 (изменено) OnUnloaded. В ЧН и ЗП радиоактивные зоны урон тоже через m_eHitTypeBlowout наносят. А в ТЧ многое не так как нужно сделано... Winsor. Для ТЧ делаешь? Если для ТЧ, то вешай сразу на движковый класс, который в clsid определен. Изменено 19 Июля 2017 пользователем Zagolski Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 19 Июля 2017 (изменено) Не нужно ничего в скриптах регистрировать никаких классов. В движке в clsid_game.h новый класс регистрируй как какой-нибудь O_GBOX, на него в игре свой предмет и цепляй. В ТЧ для большинства так нужно делать. upd. А если скриптовые классы создавать, то да, половина глючить начинает. То в онлайн не переводится, то нет-пакеты не читаются. Но в ЧН/ЗП все с этим корректно. Изменено 19 Июля 2017 пользователем Zagolski Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 19 Июля 2017 (изменено) В ЧН/ЗП вызывается can_switch_online для этого дела. А в ТЧ лучше юзать нет-пакет от Артоса, взаимодействовать им напрямую с движковым классом. Я таким вариантом на ТЧ и пользуюсь, потому как тоже встречал проблемы с переходом в онлайн объектов на скриптовых классах. Не работают они корректно на ТЧ. Особо глубоко не разбирался почему, плюнул на них. Изменено 19 Июля 2017 пользователем Zagolski 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 19 Июля 2017 (изменено) Только что, Карлан сказал: И вот здесь, что конкретно не так? Конкретно тут может и так, после того как ты по полочкам все разложил. Касаемо вообще аномалий, то взять хотя бы частое неразрывание тушек в карусели на ТЧ, когда тело остается крутиться в воздухе. Может кто подскажет, при включении саншафтов на зп-шном рендере R4 на дх11 образуется вот это: Т.е. солнечные лучи сами по себе функционируют корректно, но наделены сверхяркостью в виде чистого белого света, примерно как если смотреть в игре на включенную лампу. На скриншоте показан дверной проем в который светят лучи (слева окно, сверху крыша, скрин снят в помещении). Это движковая трабла скорее всего, потому как шейдеры используются родные зп-шные и без каких-либо модификаций. И да, на дх10 этой проблемы не наблюдается. Изменено 19 Июля 2017 пользователем Zagolski Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 19 Июля 2017 (изменено) Только что, Карлан сказал: И еще, количество потоков никто не сокращал (после упрощения клиент-серверной фиесты)? Какие проблемы были, как решали? Тут можно поподробнее? Я у себя всю мультиплеерную шнягу повырезал, вот ищу, что еще можно удалить/упростить ненужного для облегчения. Как раз клиент-сервером сейчас занимаюсь. По-хорошему там бы вообще все переделать, от сервер-клиент отказаться, но это уже отдельный разговор. А ты в Prospectors так и оставил ТЧ-шный вариант сервера или на ЗП переделывал? Изменено 19 Июля 2017 пользователем Zagolski Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 3 Августа 2017 В 31.07.2017 в 00:31, KD87 сказал: А xrCPU_Pipe даже в ТЧ движок не юзает, неудивительно, что все нормально работает после замены )) Не, в ЗП он используется для расчета партиклов и освещения (тут не знаю какого именно, возможно тоже что-то с партиклами связанное). Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 5 Октября 2017 Shkiper2012 Попробуй удали у непися с которым разговариваешь скриптовые диалоги из его профиля (что-то вроде tm_job и тп) и еще раз проверь. Похоже, что спотыкается при инициализации скриптовых диалогов (а они как раз после основной фазы активируются), да и дело скорее всего в скриптах, а не движке (копай в dialogs.script или task_manager.script). 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 20 Октября 2017 А зачем ты этот шейдер на линзу ставишь? Значит не подходит он для нее. Подобное будет, если и любой из серии x наложить. На линзу лучше transparent делать. Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 5 Ноября 2017 (изменено) 4 часа назад, dsh сказал: Это из UICustomItem.cpp, из CUICustomItem::Render(). У кого-нибудь есть идеи, что за магическая константа 0.8333 и что за магические расчеты во второй строке вместо этой константы? 0.8333 - это для формата 16:10. На эту цифру множится ширина текстуры, а также координаты по x на экране, чтобы получить правильные пропорции (от базового 1024х768) и положение на экране. 0.75 - это для 16:9. В ЗП в движке появилась ф-ция get_current_kx() получения нужного кооф. для конкретного формата экрана. Изменено 5 Ноября 2017 пользователем Zagolski 1 2 1 Поделиться этим сообщением Ссылка на сообщение
Zagolski 74 Опубликовано 5 Ноября 2017 (изменено) Этот 0.75 - не конечный результат для формата 16:9 (хотя для него он тоже 0.75), тут они взяли уже готовый 0.75 как результат деления базы (768/1024), это по сути вот это и есть: float res = (h / w) / (UI_BASE_HEIGHT / UI_BASE_WIDTH) из второго случая. Изменено 5 Ноября 2017 пользователем Zagolski Поделиться этим сообщением Ссылка на сообщение