Уроки моддинга
Основной раздел
Search…
⌃K
Links

00088. Интересные опкоды (Часть 1)

Интересные опкоды (Часть 1)|В этом уроке перечислены самые интересные и полезные опкодов, на мой взгляд.|wmysterio|wmysterio||||Всем привет! Этот урок будет посвящен исключительно опкодам.
  1. 1.
    Все мы помним, как тяжело иногда набрать 6 звёзд, не используя читы. Вот этот опкод позволит вам набрать все шесть звёзд за два убийства:
03C7: set_sensitivity_to_crime 20.0
Здесь: 20.0 - процент возрастания криминального рейтинга. Если поставить 0.0, то, естественно, криминальный рейтинг возрастать не будет ( или будет возрастать, но очень долго )
  1. 1.
    Возможно так же записать в переменные текущие координаты трупа:
Здесь: [email protected] - мёртвый актёр [email protected] [email protected] [email protected] - переменные, в которых будут хранится координаты
  1. 1.
    Иногда возникает необходимость узнать текущую цену автомобиля. Пожалуйста:
09E1: get_car_model [email protected] price_to $PRICE
Здесь: [email protected] - хендл автомобиля $PRICE - в эту переменную и заносится цена автомобиля ( целое число )
  1. 1.
    Вот интересные опкоды, которые убирают некоторый транспортный поток:
099E: enable_police_patrols 0 // Патрули полиции не будут встречаться по дороге
072C: generate_police_bikes 0 // Тоже самое, что и опкод 099E, только убирает полицейские байки
06D0: enable_emergency_traffic 0 // На убийства и пожары перестанут приезжать медики и пожарные
06D7: toggle_train_traffic 0 // Поезда перестанут ездить
0923: unknown_toggle_air_traffic 0 // Убирает воздушный трафик ( самолёты и вертолеты )
Здесь: 0 - выключить, 1 - включить
  1. 1.
    Иногда нужно, что бы вертолёт начал падать. Не проблема:
0564: heli [email protected] simulate_crash_landing
Опкод заставляет симулировать падение ( как это было в одной из миссий )
  1. 1.
    Хотите, чтобы звёзды уровня розыска мигали, как после перекраски, держите:
09D4: suspend_wanted_level
  1. 1.
    Вот ещё одна неплохая проверка:
0A29: player $PLAYER_CHAR climbing
Проверяет: "Игрок лезет на что то ( перелазит через что то )?".
  1. 1.
    Вот этот опкод вы не найдете в SASCM.INI, но SB не вызовет никаких ошибок:
0488: model 205 exists
Проверка: "Модель 205 существует?".
Здесь: 205 - модель ID ( которое используется в команде Model.Load )
  1. 1.
    Вот ещё интересный опкод, связаный с Гидрой:
0745: set_hydra [email protected] thrust_to_horizontal
Поворачивает турбины Гидры "[email protected]" ( истребителя, если кто не понял :) ) по горизонтали.
  1. 1.
    Очень часто у меня спрашивали, как заставить актёра стрелять куда то. Вот:
0668: AS_actor [email protected] rotate_and_shoot_at 374.2905 -125.681 1001.308 2000 ms
Актёр "[email protected]" будет стрелять в точку "374.2905 -125.681 1001.308" на протяжении "2" секунд.
  1. 1.
    Бывает необходимость запретить возможность перекрашивать автомобиль:
0294: set_car $car sprayable 0
Если установить значение на "1" - разрешает перекраску.
  1. 1.
    Следующие три опкода связаны с оружием:
0881: set_player $PLAYER_CHAR able_to_shoot_weapons 0 // 1 - обратное действие
0992: set_player $PLAYER_CHAR weapons_scrollable 0 // 1 - обратное действие
01B9: set_actor [email protected] armed_weapon_to 30
Первый опкод запрещает игроку стрелять. Второй опкод запрещает игроку менять слоты оружия. Третий опкод устанавливает актёру "[email protected]" оружие с номером "30". Оно не даёт само оружие, а только имитирует выбор. Полезно использовать, когда Вы дали актёру несколько типов оружия и хотите, что бы он начал стрелять именно с нужного номера.
  1. 1.
    Следующие опкоды связаны с автомобилями:
01E9: [email protected] = car [email protected] num_passengers // Записать в переменную [email protected] текущее количество пассажиров в автомобиле [email protected]
01EA: [email protected] = car [email protected] max_passengers // Записать в переменную [email protected] максимальное количество мест в автомобиле [email protected]
01E0: [email protected] = car [email protected] occupied_seats // Записать в переменную [email protected] количество зянятых мест в автомобиле [email protected]
0431: car [email protected] passenger_seat_free 0 // Проверка: "Место с номером 0 занято в автомобиле [email protected]?"
  1. 1.
    Так же есть ряд опкодов, связанных с шинами автомобиля:
04FE: deflate_tire 2 on_car [email protected] // Повредить шину с номер 2 в автомобиле [email protected]
0699: set_car [email protected] repair_tire 2 // Отремонтировать шину с номер 2 в автомобиле [email protected]
053F: set_car [email protected] tires_vulnerability 0 // Устанавливает всем покрышкам автомобиля [email protected] иммунитеты к выстрелам
0496: tire 0 on_car [email protected] deflated // Проверка: "Шина 0 в машине [email protected] повреждена?"
  1. 1.
    Так же есть возможность создать и удалять объектные группы:
0776: create_objects_in_object_group "BARRIERS1"
0777: delete_objects_in_object_group "BARRIERS1"
Опкод создаёт/удаляет препятствия на дороге. Например: барьер, который не даёт автомобилям ездить между городами. Все барьеры выставляются автоматически в нужных местах. Вот список известных мне объектных групп:
Имя
"BARRIERS1"
"BARRIERS2"
"TRUTHSFARM"
"CRACK"
  1. 1.
    Если вас достало выскакивающее окошко статистики ( по-умолчанию кнопка TAB` ), то вы можете отключить эту возможность опкодом:
0960: toggle_player_stats_box $PLAYER_CHAR flag 0 // 1- включить. Опкод нужно использовать в цикле!
Как видите, получился неплохой списочек =) Всё это я собирал на протяжении всей моей скриптерской деятельности. И, конечно же, это не всё! Так что время от времени я буду делится этой коллекцией с Вами, а пока, так сказать, урок, закончен. Надеюсь вы откроете что то новое для себя.|2595|1|0||interesnye_opkody_perechislenie_na_moj_vzgljad_samykh_interesnykh_i_poleznykh_opkodov|1500729419