Перейти к содержанию

Работа со скриптами в Arcanum


Blake

Рекомендуемые сообщения

Опубликовано
1. Можно ли сделать так, чтобы скрипт выводил только нужные нам сообщения, а ненужные проводил в "фоновом" режиме

Нет. Впрочем, лечение через скрипт и так будет в "фоновом" режиме.

 

2. Скрипт, прикрепленный на "HIT" активируется при критическом попадании?

Да.

Борітеся – поборете, Вам Бог помагає!

За вас Правда, за вас Слава і Воля святая!

  • Ответов 96
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Опубликовано

Хм-м, я опять ничего не понимаю. Два раза пересмотрел все команды для скриптов, однако так и не нашел, каким образом можно увидеть то, сколько урона оружие нанесло существу. :scratch_one-s_head: Что-то у меня плохие предчувствия на этот счет. Можно в скрипте увидеть, сколько жизней отняло наше оружие при попадании во врага?

Опубликовано
Можно в скрипте увидеть, сколько жизней отняло наше оружие при попадании во врага?

Нет, поскольку скрипт запускается ДО нанесения урона оружием.

Борітеся – поборете, Вам Бог помагає!

За вас Правда, за вас Слава і Воля святая!

Опубликовано

Мдэ-э, то-то я и думаю: "а что это до сих пор полноценный скрипт на бронебойность никто не реализовал - с учетом нанесенного урона и сопротивления соперников. Легко вроде". :lol:

У меня снова 2 вопроса по механике скриптов:

1. Если мы вешаем скрипт на "HIT", а в конце скрипта пишем "RETURN AND SKIP DEFAULT" то, насколько я понял, это удар по противнику из оружия не предотвратит? То есть "RETURN AND SKIP DEFAULT" на "HIT-е" не работает?

2. Если мы вешаем на оружие сразу 2 скрипта: на "HIT" и на "CRITICAL HIT" то, при критическом ударе активируются сразу оба скрипта?

Опубликовано
1. Если мы вешаем скрипт на "HIT", а в конце скрипта пишем "RETURN AND SKIP DEFAULT" то, насколько я понял, это удар по противнику из оружия не предотвратит? То есть "RETURN AND SKIP DEFAULT" на "HIT-е" не работает?

Не работает.

 

2. Если мы вешаем на оружие сразу 2 скрипта: на "HIT" и на "CRITICAL HIT" то, при критическом ударе активируются сразу оба скрипта?

Да.

Борітеся – поборете, Вам Бог помагає!

За вас Правда, за вас Слава і Воля святая!

  • 3 недели спустя...
Опубликовано

Опять я приперся. :)

Можем ли мы, через скрипт, уменьшать амуницию (пули, батарейки и т.д.) из инвентаря ГГ? Скажем, выстрел - минус один патрон.

Опубликовано
Опять я приперся. :)

Я тоже :)

 

Можем ли мы, через скрипт, уменьшать амуницию (пули, батарейки и т.д.) из инвентаря ГГ?

Для батареек разработчики такое предусмотрели: drain (num) charges from (obj)

 

 

С остальной амуницией сложнее. Теоретически, можно использовать: destroy item named (num) in inventory of (obj). Разумеется, перед этим придется присвоить прототипу амуниции новое internal name.

Борітеся – поборете, Вам Бог помагає!

За вас Правда, за вас Слава і Воля святая!

Опубликовано

Спасибо!

Интересно получается! Допустим мы хотим сделать так, чтобы заряженный меч ел батарейки, а если батареек нет - то дополнительного урона электричеством не будет, а будет лишь обычный урон. Посмотрим в общих чертах.

1. В протосе заряженного меча убираем урон электричеством, оставляем лишь обычный.

2. В скрипте сначала смотрим, есть ли батарейки: IF (obj) has item named (num). Если нет - return and RUN default.

3. Далее выкачиваем одну штуку: drain (num) charges from (obj).

4. Наносим урон электричеством сколько нужно.

Вроде выглядит правильно. :scratch_one-s_head: А это означает, что я опять где-то накосячил, или что-то спутал. :lol: Это должно работать?

Да, снова вопросы:

1. destroy item named (num) in inventory of (obj) - он будет их поштучно убирать? Или никто не проверял?

2. По поводу internal name. Насколько я понял, они присваиваются в gameoname.mes? Что-то я посмотрел этот файл, а там одни категории, ни одного internal name. :dntknw: Так и должно быть? Или они присваиваются в oname.mes? Или и там, и там?

Опубликовано
Это должно работать?

Должно.

 

1. destroy item named (num) in inventory of (obj) - он будет их поштучно убирать? Или никто не проверял?

Лично я это не проверял, потому и сказал "теоретически" :)

 

Или они присваиваются в oname.mes?

Нужен только oname.mes

Борітеся – поборете, Вам Бог помагає!

За вас Правда, за вас Слава і Воля святая!

Опубликовано

А я притащил с собой ложку дегтя! :confusion: Будем разбавлять вкусовую гамму. :)

Пока наш электро-урон висит на протосе, то при критическом ударе он множится (+50% урон, +100% урон). Если же мы снимаем его с протоса и наносим через скрипт, то он перестает увеличиваться при крит. ударе. Собственно, вопросы:

1. Я конечно догадываюсь, что ответ будет "обломись", :) ну да все равно спрошу: кто-нибудь видел эти таблицы вариаций при критическом попадании, которые висят на протосах? (CriticalHitChart: 0 (cutting); CriticalHitChart: 2 (impaling); CriticalHitChart: 4 (Fire) и т.д.)

2. Если мы вешаем на оружие 2 скрипта - на флаги "HIT" и "CRITICAL HIT", то какой из них будет обрабатываться первым? Собственно, варианты ответов:

2.1 Тот, который первый "висит" на протосе.

2.2 Тот, чей номер меньше в "data\scr".

2.3 Всегда "HIT", потому что его "ATTACHMENT NUMBER" меньше (7 против 34 у "CRITICAL HIT").

2.4 Всегда "CRITICAL HIT", потому что, э-эм, ну просто так, в общем. :)

2.5 "У тебя вообще адекватные вопросы бывают? Кому, по-твоему, могла в голову придти идея проверять эту фигню?" :lol:

 

Да, еще один момент. Предположим, мы вешаем на ГГ (или спутника) скрипт, на HEARTBEAT. В описании сказано: when called: every two seconds on all NPC’s in loaded sectors. Допустим мы хотим, чтобы через 20 минут происходило какое-то событие. Ну, например, чтобы Магнус начинал диалог и говорил: "слушай, говорю же тебе: в кузню этого Кергана, пойдем лучше напьемся!". Значит, мы вешаем на скрипт счетчик, который при каждом запуске скрипта будет увеличиваться на единицу, пока не достигнет значения "600" (20 минут). Не знаю, будет ли это работать, ну да ладно. :scratch_one-s_head: Что тут мне не понятно:

1. when called: every two seconds on all NPC’s in loaded sectors. Это о чем вот они? Скрипт будет проверяться на каждом неписе каждые 2 секунды?

2. when called: every two seconds on all NPC’s in loaded sectors. "В загруженном секторе"? Скрипт будет сохраняться (если он недосчитал нам до 600 еще) при переходе из сектора в сектор?

Опубликовано
1. Я конечно догадываюсь, что ответ будет "обломись", :) ну да все равно спрошу: кто-нибудь видел эти таблицы вариаций при критическом попадании, которые висят на протосах?

Правильно догадываешься :)

 

2. Если мы вешаем на оружие 2 скрипта - на флаги "HIT" и "CRITICAL HIT", то какой из них будет обрабатываться первым?

Первым всегда "HIT", вторым - "CRITICAL HIT". Проверял "эту фигню" на практике.

 

1. when called: every two seconds on all NPC’s in loaded sectors. Это о чем вот они?

О том что у каждого NPC запускается свой скрипт (если он есть), при условии что этот NPC находится на загруженном секторе.

 

2. when called: every two seconds on all NPC’s in loaded sectors. "В загруженном секторе"? Скрипт будет сохраняться (если он недосчитал нам до 600 еще) при переходе из сектора в сектор?

Конечно. Сохранение же данных - это область счётчиков и переменных (у них разные свойства и ограничения - см. мануал).

Борітеся – поборете, Вам Бог помагає!

За вас Правда, за вас Слава і Воля святая!

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...