Gamerpage 
Вторник, 13.11.2018, 21:06

| RSS
Главная | Каталог статей

Категории раздела
Все статьи [3]
TRLE - оригинальный редактор [3]
Редактор TRLE и все что с ним связано
Редактор TRNG [4]
Tomb Raider Next Generation - усовершенствованная версия движка TRLE

Статистика

Главная » Статьи » Все статьи

Баги и вылеты
Глюки-баги-вылеты: их причины и методы исправления

1. В игре пропадают объекты типа Movable. При этом в редакторе эти объекты отображаются нормально.
Если объекты пропадают при начале новой игры при первой же загрузки уровня, то скорее всего, объект помечен в OCB как Invisible (невидимый), и пока не был активирован триггером. Все враги в игре, за исключением Wraith, по умолчанию невидимы до тех пор, пока не будут активированы триггером.
Если же для объекта триггер не требуется, он не помечен как Invisible, но тем не менее, в игре не виден, причина может быть в переходе между уровнями. Проверьте в первую очередь ID объекта LARA: выделите объект в редакторе и посмотрите его номер в скобках. В обоих уровнях ID для Лары должен быть одинаковым, иначе возможен баг в виде исчезновения объектов. Если ID разные, можно сделать следующее: найти объект с таким же ID, как у Лары в соседнем уровне (в том, куда осуществляется переход), выбрать в редакторе пункт Objects - Change object, замените данный объект на объект LARA. После этого оригинальный объект LARA, номер ID которого не совпадал, надо удалить. После этого выделите сектор, где находился объект LARA и нажмите кнопку Move Lara here. Новый объект LARA займет место старого. Важно: кнопка Move Lara here есть только в редакторе TRNG. Кроме того, поиск объекта с нужным ID может быть достаточно долгим.

2. Объект ведет себя странно - не только в игре, но и в редакторе, как только его поместили на карту, все остальные объекты начинают куда-то съезжать.
Проверьте объект в программе Wadmerger: скорее всего, некоторым "костям" неправильно назначены флаги Pop или Push. Wadmerger - программа достаточно глючная, поэтому если вы не смогли исправить нужный объект, то от его использования лучше отказаться.

3. После внесения изменений в скрипт TRNG игра вылетает, либо работает не так как надо. При этом все значения верны, и при компиляции не выдается сообщений об ошибке.
Скорее всего, ошибка в ходе компиляции скрипта все-таки произошла. Такое бывает, если строка кода скрипта окружена большим количеством комментариев, например, так:

; гр-8 отключить глобальный триггер 3,4
TriggerGroup=    8, $2000,109,$300, $2000,109,$400    
; еще какой-либо комментарий

В этом случае компилятор может пропустить строку кода. Проверить это можно, нажав после компиляции скрипта кнопку Show Log в программе NG_Center. Откроется текстовый файл, в котором показывается ход компиляции:

.............
[OPTIONS] Section ...
    Scanning: WorldFarView=  32
    Scanning: CRS=   DISABLED
[LEVEL] : DATA\TITLE
    Scanning: ColorRGB=  1, 100, 120, 135
    Scanning: Customize= CUST_BAR, BAR_LOAD_LEVEL, IGNORE, IGNORE, IGNORE, IGNORE, IGNORE, 1, IGNORE, IGNORE
    Scanning: AddEffect= 1, ADD_MIST, FADD_CONTINUE_EMIT, JOINT_SINGLE_MESH, IGNORE, IGNORE, IGNORE, IGNORE, IGNORE, 15, 1, MIST_COL_GREEN
[LEVEL] : DATA\shadow1
    Scanning: Turbo=  TRB_OPTIMIZE_SORTING+TRB_SELECTIVE_VIEW, IGNORE
    Scanning: Equipment=  PISTOLS_ITEM, 0
    Scanning: Equipment=  BIGMEDI_ITEM, 0
    Scanning: Equipment=  SMALLMEDI_ITEM, 0
.............
  Scanning: TriggerGroup= 1, $2000, 244, $11FF, $8000 + TGROUP_OR, 12, $30,  $8000 + TGROUP_OR, 28, $30, $8000 + TGROUP_OR, 76, $30
    Scanning: TriggerGroup= 2, $2000, 70, $1F92, $2000, 51, $812
    Scanning: GlobalTrigger= 1, FGT_SINGLE_SHOT_RESUMED, GT_LARA_HP_LESS_THAN, 750, 1, 2, IGNORE
.............

Вам надо найти строки, в которые вы вносили изменения. Все, что следует после заголовка [LEVEL] относится к конкретному уровню. Если в блоке уровня вы не нашли вашу строку, значит, она оказалась пропущена при компиляции. В таком случае попытайтесь немного перестроить скрипт, отделив код от комментариев, например так:

; гр-8 отключить глобальный триггер 3,4
TriggerGroup=    8, $2000,109,$300, $2000,109,$400  
 
; еще какой-либо комментарий


или так:
TriggerGroup=    8, $2000,109,$300, $2000,109,$400     ; гр-8 отключить глобальный триггер 3,4
Затем откомпилируйте скрипт снова. Обычно это помогает.

4. При подбирании предметов в игре экран в течении 1-2 секунд мигает черным или другим цветом. Используется TRNG.
Если в скрипте есть команда Turbo= ...., мигание может быть вызвано использованием значения TRB_ASYNC_FRAMES. Другое значение - TRB_HIGH_PRIORITY также может вызывать проблемы, но уже связанные с управлением. Это значение не позволяет нормально использовать в игре программы для записи видео, такие как Fraps.
 
5. Возникают проблемы с камерами.
Камеры или не работают совсем, или включаются буквально на долю секунды, не давая ничего разглядеть? Эта проблема обычно возникает тогда, когда объект ROLLINGBALL после активации остановился на участке с каким-либо триггером. Измените геометрию комнаты или переместите ROLLINGBALL в другое место.
 
6. Невидимая гробокопательница
Вы откомпилировали уровень, запустили его - и обнаружили, что мисс Крофт абсолютно невидима, хотя может перемещаться и производить другие действия. Причины могут быть разные. Чаще всего это ошибки в анимациях, например неправильные значения команд SetPosition. На этот случай нужно всегда иметь резервную копию wad-файла вашего уровня (всех 5-ти компонентов - was, wad, sam, sfx, swd), чтобы не бояться что-то испортить. Также проблема может возникнуть при испорченном файле sounds.txt. Рекомендация та же - пока все файлы рабочие и игра ведет себя как надо - создавайте перед внесением изменений резервные копии, к которым можно будет вернуться в случае чего.

7. Проблемы с анимированными текстурами
Вы создали свой собственный объект и поместили его в слот WATERFALL1, WATERFALL2 или WATERFALL3. В игре обнаруживается, что его текстура не движется, либо движется совершенно не та текстура и не на тех объектах.
Во-первых, надо помнить, что объект WATERFALL не должен содержать треугольных полигонов - только четырехугольники могут иметь анимированные текстуры. Еще одно важное замечание - текстура, присваиваемая объекта в слотах WATERFALL должна быть одной из первых по порядку в WAD-файле. Для этого она должна быть самой крупной по высоте из используемых текстур, например, 256х256 или 128х256 пикселей.
 
8. Странные звуки при попадании пуль
Когда Лара получает ранения от вражеских выстрелов, слышится странный звук.
Проигрывается звуковой эффект 50:UNDERWATER_DOOR. Это жестко закодировано, т.е. с этим ничего не сделать. По идее должен быть звук попадания пуль, но проблема в том, что этот же звук используется для объекта UNDERWATER_DOOR. Поэтому, если в вашем WAD-файле есть объект UNDERWATER_DOOR, возникает баг - использование одного и того же звукового эффекта для разных вещей. Что можно сделать: либо заглушить этот звук, либо совсем убрать его из WAD-файла, либо заменить его на подходящий звук попадания пуль. Для объекта UNDERWATER_DOOR придется назначить другой звуковой эффект, например звук подводного переключателя.
 
9. Вылеты при сохранениии и/или загрузке игры
Внезапно начали возникать проблемы с сохранением и загрузкой - игра вылетает при попытке сохраниться или загрузиться. При этом в файле Last_Crash_X можно найти фразу:
"Last diagnostic mexage:Set in ImageMonoScreen image from TempImage"

Как показал опыт, причина тут не в картинках, а в использовании команды:
Action 37: Swap Mesh of <#>moveable with (E)Slot.
Принудительные мешсвопы (замена мешей одного объекта мешами другого) частенько запарывают сохраненки, а также не дают нормально загрузиться. Поэтому команду Action 37 нужно использовать крайне осторожно, или не использовать вообще.
 
10. Провалы сквозь землю?
Бегая по карте уровня, Лара вдруг проваливается сквозь землю на конкретном участке - там, где используется тип триггера Condition в редакторе NGLE из пакета TRNG.

Проверьте, нет ли в списке комнат пустого места: нажмите в редакторе кнопку выбора комнат - Select. Комнаты должны следовать по порядку, среди них не должно быть комнат с именем Empty (пустых) - такие допустимы лишь в конце списка, где им и место. Следует иметь в виду, что даже если вы создали комнату в пустом до этого слоте, баг с проваливающейся Ларой скорее всего останется - до тех пор, пока вы не уберете с карты проблемный триггер Condition. Лучше всего загрузить бэкап вашего уровня - до того, как появилась проблема.
Категория: Все статьи | Добавил: AngelDeviant (14.01.2014)
Просмотров: 172 | Теги: Баги, TRNG, Bugs, TRLE, скрипт, проблемы | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск


Copyright AngelDeviant © 2013-2018. При использовании материалов сайта ссылка обязательна.
Используются технологии uCoz