Вопросы по созданию скриптов
| |
dim1988 |
Дата: Воскресенье, 19.07.2009, 18:43 | Сообщение # 1 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Ответы на самые часто задаваемые вопросы
Как сохранить (компилировать) скрипт? Почему не следует использовать в клео скриптах глобальные переменные? Как узнать координаты мест, через какую прогу? Как поместить игрока в интерьер? Опкод, который открывает все дома в СА Запись в переменную ближайшего педа и проверка его модели Как заставить актёров ходить по определённым координатам Проверка нажатия определённой клавиши Пак пути с анимацией Как сделать так, чтоб 2 миссии следовали друг за другом? Как актёру дать оружие? Как создать транспорт Как создать жёлтый маркер для входа в интерьер? При компиляции выдаёт ошибку перехода на нулевой оффсет,что это и как исправить? Как транспорту присвоить определённый цвет? Что делать если пишет ожидалось 'x' параметров? Как написать цветной текст? Номера костей актёра Что такое gosub? Опкоды, связанные с созданием огня Как изменить оружие банд? Образец добавления в игру объектов Проверка нажатия клавиши в игре и список значений Путь или scmpath Как изменить цвет затемнения экрана? Как записать в переменную случайное число из интервала Список стилей боя Как привязать эффект к кости актёра? Как произвести действия, над педами, созданными игрой Как заменить модель игрока Как заставить актёра поднять руки, как при аресте Сброс анимации Как метнуть объект? Как из одного скрипта запустить другой?
+ файл от пользователя нашего сайта Absolute . Здесь перечислены все вопросы из этой этой темы и ответы на них. Скачать |
|
| |
Ford |
Дата: Четверг, 18.11.2010, 12:35 | Сообщение # 1711 |
Группа: Проверенные
Сообщений: 190
Замечания: 20%
Статус: Offline |
Люди добрые помогите как компелировать маин или скрипт если в нем присудствуют ошибки, ведь ктото компелировал этот маин с ошибками. |
|
| |
dim1988 |
Дата: Четверг, 18.11.2010, 13:08 | Сообщение # 1712 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Когда его компилировали он был без ошибок. Лучше испраляй ошибки, я точно не знаю, можно ли компилировать с ошибками. Может что-то изменить в меню Отладочные опции.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Ford |
Дата: Четверг, 18.11.2010, 13:58 | Сообщение # 1713 |
Группа: Проверенные
Сообщений: 190
Замечания: 20%
Статус: Offline |
В том то и дело что таких скриптов и мэйнов куча, начинаешь компелировать через срочку выдает ошибки, вот и обращаюсь за помомощь как их назад компелировать настройки все менял (извиняюсь за легкий флуд). |
|
| |
dim1988 |
Дата: Четверг, 18.11.2010, 16:02 | Сообщение # 1714 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Ford) В том то и дело что таких скриптов и мэйнов куча Просто ошибки могут появится во время декомпиляции или если пытаться изменить код.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Ford |
Дата: Четверг, 18.11.2010, 18:06 | Сообщение # 1715 |
Группа: Проверенные
Сообщений: 190
Замечания: 20%
Статус: Offline |
Тогда небольшой вопрос, если позволите, Как этого избежать, чтобы компелировать? |
|
| |
Lost_forever |
Дата: Четверг, 18.11.2010, 18:23 | Сообщение # 1716 |
Скриптер
Группа: Проверенные
Сообщений: 705
Замечания: 0%
Статус: Offline |
Quote (Ford) Как этого избежать, чтобы компелировать? Компилировать * Исправлять ошибки
Forever |
|
| |
dim1988 |
Дата: Четверг, 18.11.2010, 19:10 | Сообщение # 1717 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Ford) Как этого избежать Не декомпилировать и не изменять. Особенно это касается мэйна, у скриптов я подобного не замечал. Либо потом придётся исправлять все ошибки.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Bugay |
Дата: Четверг, 18.11.2010, 20:16 | Сообщение # 1718 |
Группа: Пользователи
Сообщений: 10
Замечания: 20%
Статус: Offline |
Помогите!какие опкоды нужны чтобы по нажатию левого шифта, в определенном радиусе от сиджея появился самолет и начал кидать бомбы? какой опкод нужен чтоб кидать бомбы? какой номерок у левого шифта? какая модель у черной бомбы? можно вместо бомбы поставить ракету, но падающую? как сделать чтоб этот самолет улетал потом и прилетал опять по нажатию? и не пишите пожалуйста "смотри в учебнике"пожалуйста ответье!!!!!! |
|
| |
Bob |
Дата: Пятница, 19.11.2010, 12:26 | Сообщение # 1719 |
Группа: Пользователи
Сообщений: 4
Замечания: 20%
Статус: Offline |
Quote (Bugay) какой номерок у левого шифта? проверка на шифт 0AB0: key_pressed 16 Quote (Bugay) какая модель у черной бомбы? можно вместо бомбы поставить ракету, но падающую? как сделать чтоб этот самолет улетал потом и прилетал опять по нажатию? О каком именно самолёте идёт речь? |
|
| |
Bugay |
Дата: Пятница, 19.11.2010, 12:43 | Сообщение # 1720 |
Группа: Пользователи
Сообщений: 10
Замечания: 20%
Статус: Offline |
Я хочу сделать чтобы когда нажмешь на шифт, прилетала андромеда и скидывала бомбы(такие черные)и улетала. |
|
| |
Bob |
Дата: Пятница, 19.11.2010, 13:00 | Сообщение # 1721 |
Группа: Пользователи
Сообщений: 4
Замечания: 20%
Статус: Offline |
сначала задаёшь вайты и проверяешь на регулярный шифт опкодом 0AB0: key_pressed 16 затем задаёшь функцию с следующими параметрами вот пример как можно создать действие верта! load model #ANDROM / загружаем модель reqest loaded midels 04C4: store_coords_to $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 from_actor 215@ with_offset 1.0 3.0 1.0 00A5: 0@ = create_car #ANDROM at $TEMPVAR_FLOAT_1 $TEMPVAR_FLOAT_2 $TEMPVAR_FLOAT_3 // создание самолётак при помощи опкодов дальше переход в режим летания Actor.StorePos($PLAYER_ACTOR, $47, $46, $SELECTED_MENU_ITEM) 04A2: set_heli 0@ fly_to $47, $46, $SELECTED_MENU_ITEM altitude_between 0.0 and 363@(253@,16f) 07xF: get_radius_in_sphere $47, $46, $SELECTED_MENU_ITEM with_pedtype 27@ переход в режим атаки бомбами при помощи следущего опкода 0724: heli 0@ follow_and_attack_player $PLAYER_CHAR radius 27@ дальше енд и пробуй запускать скрипт если всё получилось скрипт успешно будет работать! |
|
| |
Colt_8 |
Дата: Пятница, 19.11.2010, 22:10 | Сообщение # 1722 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Хочу замутить вывод на экран координат, где находится актёр, и не знаю, какими опкодами вывести на экран переменную с координатами. Вот есть переменные: 31@ 32@ 33@ Я хочу вывести на экран эти значения. Помню в этом опкоде было слово draw, но посмотрев опкодник не понял с чем надо иметь дело. Помагите!
|
|
| |
DK22Pac |
Дата: Пятница, 19.11.2010, 23:21 | Сообщение # 1723 |
Группа: Проверенные
Сообщений: 205
Замечания: 0%
Статус: Offline |
Colt_8, переменные 32@, 33@ - это локальные таймеры=) А опкод вот 02FF: show_text_3numbers_GXT 'WHEEL02' numbers 0@ 1@ 2@ time 100 flag true Или на клео 4 0ACF: show_formatted_styled_text "%d %d %d" time 100 style 1 0@ 1@ 2@ PS Опкод поставить в цикл с небольшой задержкой, и перед ним использовать 03F0: enable_text_draw true
Мои скрипты Grand Theft Auto III HD Development Team
Сообщение отредактировал DK22Pac - Пятница, 19.11.2010, 23:22 |
|
| |
Den_spb |
Дата: Пятница, 19.11.2010, 23:32 | Сообщение # 1724 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Таймеры можно использовать и не по прямому назначению, но только при непрерывном исполнении скрипта. Пример: Так можно:Code wait 0 actor.StorePos($player_actor 31@ 32@ 33@) 0092: 31@ = float 31@ to_integer 0092: 32@ = float 32@ to_integer 0092: 33@ = float 33@ to_integer 03F0: enable_text_draw 1 045A: draw_text_1number 5.0 5.0 GXT 'NUMBER' number 31@ // ~1~ 045A: draw_text_1number 5.0 15.0 GXT 'NUMBER' number 32@ // ~1~ 045A: draw_text_1number 5.0 25.0 GXT 'NUMBER' number 33@ // ~1~ Так нельзя:Code actor.StorePos($player_actor 31@ 32@ 33@) 0092: 31@ = float 31@ to_integer 0092: 32@ = float 32@ to_integer 0092: 33@ = float 33@ to_integer wait 0 03F0: enable_text_draw 1 045A: draw_text_1number 5.0 5.0 GXT 'NUMBER' number 31@ // ~1~ 045A: draw_text_1number 5.0 15.0 GXT 'NUMBER' number 32@ // ~1~ 045A: draw_text_1number 5.0 25.0 GXT 'NUMBER' number 33@ // ~1~
Сообщение отредактировал Den_spb - Пятница, 19.11.2010, 23:34 |
|
| |
dim1988 |
Дата: Суббота, 20.11.2010, 09:57 | Сообщение # 1725 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Какая разница – таймеры или нет, всё равно же можно вывести на экран.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
Colt_8 |
Дата: Суббота, 20.11.2010, 19:43 | Сообщение # 1726 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (dim1988) Какая разница – таймеры или нет, всё равно же можно вывести на экран. вот именно, это же переменные. Quote (Den_spb) 045A: draw_text_1number 5.0 5.0 GXT 'NUMBER' number 31@ // ~1~ а можно узнать что где означает?
|
|
| |
Den_spb |
Дата: Суббота, 20.11.2010, 20:41 | Сообщение # 1727 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (Colt_8) вот именно, это же переменные. Это не обычные переменные. Значения, записанные в переменные 32@ и 33@ автоматически увеличиваются с каждой миллисекундой на единицу. Quote (Colt_8) а можно узнать что где означает? 5.0 и 5.0 - координаты экрана X и Y, в которых будет выводится число. Координаты отсчитываются из левого верхнего угла экрана: X - вправо, Y - вниз. Максимальные значения координат, насколько помню 640.0 x 480.0, т.е. если надо вывести число в центре экрана, то надо взять координаты 320.0 240.0 |
|
| |
Colt_8 |
Дата: Суббота, 20.11.2010, 21:27 | Сообщение # 1728 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (Den_spb) каждой миллисекундой на единицу Это очень плохо. 1. Как быть? 2. А если не число записано в них, а например модель? (#FAGGIO) Quote (Colt_8) GXT 'NUMBER' number 31@ // ~1~ А остальное?
|
|
| |
Den_spb |
Дата: Суббота, 20.11.2010, 21:57 | Сообщение # 1729 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Quote (Colt_8) 1. Как быть? Я уже ответил в предыдущем посте, что значение таймера автоматически обновляется при команде wait. Т.е. до тех пор, пока не используется wait, можно применять таймер в своих целях. Quote (Colt_8) 2. А если не число записано в них, а например модель? (#FAGGIO) Значение таймера обновляется независимо от того, что в него записано. Судя по вопросам, тебе не хватает локальных переменных. Если их никак не удаётся сэкономить, то можно воспользоваться специальными технологиями (битовые флаги, hex-буффер и т.д.). Quote (Colt_8) А остальное? 'NUMBER' - вид надписи, выводимой на экран. В данном случае будет выводиться просто число (то, которое указано в опкоде). 31@ - переменная, значение которой выводится на экран. |
|
| |
Colt_8 |
Дата: Воскресенье, 28.11.2010, 01:13 | Сообщение # 1730 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
спасибо) Есть новый вопрос у меня: есть ли такой скрипт, что при наведении на объект оружием над объектом появляется его айди? или если етсь чтото похожее, то можете поделиться? а если нет, то как его создать?
|
|
| |
DK22Pac |
Дата: Воскресенье, 28.11.2010, 01:18 | Сообщение # 1731 |
Группа: Проверенные
Сообщений: 205
Замечания: 0%
Статус: Offline |
Ну это легко сделать, если опкод 0458: player $player_char aiming_at_object 0@ действительно работает (перебор пула обьектов с применением этой проверки)
Мои скрипты Grand Theft Auto III HD Development Team |
|
| |
Colt_8 |
Дата: Воскресенье, 28.11.2010, 01:42 | Сообщение # 1732 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
что делает этот опкод?
|
|
| |
DK22Pac |
Дата: Воскресенье, 28.11.2010, 01:55 | Сообщение # 1733 |
Группа: Проверенные
Сообщений: 205
Замечания: 0%
Статус: Offline |
По ходу он проверяет, целится ли плеер в обьект с хэндлом 0@. Но я не уверен что он работает. Код бы так выглядел: Code ... object.Create(3@, #OBJ, 4@, 5@, 6@) ... while true wait 0 if or not actor.Defined($player_actor) 06B9: cutscene_data_loaded then continue end actor.StorePos($player_actor, 0@, 1@, 2@) if 0AE3: 3@ = random_object_near_point 0@ 1@ 2@ in_radius 2000.0 find_next 0 pass_deads 1 then repeat if 0458: player $player_char aiming_at_object 3@ then object.Destroy(3@) 0a93: end until 8AE3: not 3@ = random_actor_near_point 0@ 1@ 2@ in_radius 2000.0 find_next 1 pass_deads 1 end end
Мои скрипты Grand Theft Auto III HD Development Team |
|
| |
dim1988 |
Дата: Воскресенье, 28.11.2010, 13:45 | Сообщение # 1734 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (Colt_8) спасибо) Есть новый вопрос у меня: есть ли такой скрипт, что при наведении на объект оружием над объектом появляется его айди? или если етсь чтото похожее, то можете поделиться? а если нет, то как его создать? В клео4 есть опкод который записывает в переменную актёра, в которого целится игрок.
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
DK22Pac |
Дата: Воскресенье, 28.11.2010, 14:00 | Сообщение # 1735 |
Группа: Проверенные
Сообщений: 205
Замечания: 0%
Статус: Offline |
Quote (dim1988) В клео4 есть опкод который записывает в переменную актёра, в которого целится игрок. Хм ну он же спросил за обьект. А ведь есть в ексе т.н. "Поинтер на цель" (см. на gtamodding.ru), только я не понял почему там дано только actor, а не object или entity.
Мои скрипты Grand Theft Auto III HD Development Team |
|
| |
Den_spb |
Дата: Воскресенье, 28.11.2010, 16:47 | Сообщение # 1736 |
Мастер по скриптингу
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Видимо потому, что маркер создаётся только над актёром, в которого целится игрок. |
|
| |
Colt_8 |
Дата: Понедельник, 29.11.2010, 07:20 | Сообщение # 1737 |
Красавчик
Группа: Проверенные
Сообщений: 295
Замечания: 0%
Статус: Offline |
Не пойму, как пользоваться этим опкодом, вроде всё понятно, но может я чёто не так делаю, но он у мну не работает. Скорость у машины, остаётся базовой. Code 00AD: set_car 36@ max_speed_to 10.0
|
|
| |
DK22Pac |
Дата: Понедельник, 29.11.2010, 07:45 | Сообщение # 1738 |
Группа: Проверенные
Сообщений: 205
Замечания: 0%
Статус: Offline |
Ну он не действует на машину плеера.
Мои скрипты Grand Theft Auto III HD Development Team |
|
| |
dim1988 |
Дата: Понедельник, 29.11.2010, 17:02 | Сообщение # 1739 |
Создатель
Группа: Администраторы
Сообщений: 2242
Статус: Offline |
Quote (DK22Pac) Хм ну он же спросил за обьект. А, ну да, я неправильно понял. Quote (Colt_8) Скорость у машины, остаётся базовой. Code 00AD: set_car 36@ max_speed_to 10.0 Так ты же её не увеличиваешь, а устанавливаешь максимально возможную скорость. Попробуй код 04BA: set_car 34@ speed_to 0.0
Mortal Kombat Conquest for GTA SA V2.0 GTA Invasion V2.0 Частная собственность |
|
| |
gtacleo |
Дата: Среда, 01.12.2010, 12:11 | Сообщение # 1740 |
Группа: Проверенные
Сообщений: 157
Замечания: 0%
Статус: Offline |
А можно как нибудь создать актёра который будет ходить в хаатичном направлении?
|
|
| |
|