Глава III. Компиляция (ZHLT).
§ 3.10 Узнай устройство карты без декомпиляции
В этой статье мы рассказываем о том, как можно узнать устройство какого-либо события на карте, которая не декомпилируется. Под событием мы подразумеваем систему взаимосвязанных объектов, которые создают какой-то один эффект, например, летающая птица на De_Survivor или авиаудар на De_Torn.
Для опытных декомпиляторщиков не секрет, что некоторые карты не декомпилируются :) Возможно, это происходит из-за каких-то ограничений внутри программ-декомпиляторов, потому как не декомпилируются, в основном, большие по размеру карты.
Мы не будем декомпилировать карты, а узнаем ее устройство более цивильным методом. Возмем, к примеру, авиаудары на карте De_Torn. Как они сделаны? (Если Вы не знаете, о каких авиаударах идет речь, то можете прочитать об этом в статье из раздела "Секреты".
Консольная команда: developer 2
Загружаем интересующую нас карту карту и вводим в консоли:
developer 2. Теперь у нас на экране будут отображаться сообщения обо всех события на карте (активации объектов, где что нажалось, какой звук проигрался и т.д.).
Бегая по карте, мы обнаружили, что активируется некий объект
jetmulti. Им оказался
multi_manager. При этом на экране появилась строчка:
Found: multi_manager Firing: jetmultiЗатем мы открыли карту (de_torn.bsp) во втроенном редакторе менеджера FAR (можно использовать и TotalCom) и, так как информация об энтити-объектах хранится внутри карт в чистом виде, то можно отыскать объект по имени
jetmulti, что мы и сделали. В свойствах
multi_manager'а мы нашли имена всех объектов, которые он активирует в игре. Это были и самолеты (которые на поверку оказались обычными дверями, которые func_door :), и звуки, и прочие объекты. Дальше мы составили схему работы всего авиаудара - "кто" "кого" и когда активирует.
Подобным же образом можно определить устройство объектов и на других картах.
Глава III. Компиляция (ZHLT).
К оглавлению Учебника
©
http://cs-mapper.by.ru/