- 1,637
- 547
На Аризоне есть система скейта и спрыгнув с него есть вероятность зацепить его персонажам до того как сервер удалит транспорт. Из-за этого будут бесконечно лететь варнинги и все процессы в игре заморозятся. Проблуждав много часов с дебаггером и смотря файл сампа в иде я выяснил, что проблема в том, что коллизия скейта не загружена из-за чего её обработка приводит к невозможности игрой продолжить обработку фрейма.
Я решил просто вызывать опкод
Вот только какого-то хуя она почти сразу выгружается. Поэтому опкод приходится дёргать при каждом спрыгивании с скейта, так ещё и с задержкой так как если вызвать слишком рана через доли секунд модель уже выгрузится обратно. Идеальный тайминг подобрать не удалось. Всё равно пару десятков варнингов может успеть проскочить.
Пока я это всё чинил скачал ultimate model viewer. И заметил, что если я через него открою скейт, то после этого коллизия никогда не выгружается. Я пока так и не понял почему.
Кто знает по каким принципам модели загружаются, выгружаются и как можно намертво оставить загруженной коллизию определённой модели?
Я решил просто вызывать опкод
0247: load_model для загрузки модели, связи с чем погрузится и её коллизия, благодаря чему меня отпускает и игра продолжает работать.Вот только какого-то хуя она почти сразу выгружается. Поэтому опкод приходится дёргать при каждом спрыгивании с скейта, так ещё и с задержкой так как если вызвать слишком рана через доли секунд модель уже выгрузится обратно. Идеальный тайминг подобрать не удалось. Всё равно пару десятков варнингов может успеть проскочить.
Пока я это всё чинил скачал ultimate model viewer. И заметил, что если я через него открою скейт, то после этого коллизия никогда не выгружается. Я пока так и не понял почему.
Кто знает по каким принципам модели загружаются, выгружаются и как можно намертво оставить загруженной коллизию определённой модели?