Стилист (скрипт), Найди Поринга (эвент)

Предложения по улучшениям, новым командам.

Модераторы: Emiko, Emperio-Armani

Ответить
  • Автор
  • Сообщение
Не в сети
Аватара пользователя
Сообщения: 17
Зарегистрирован: 23 май 2012, 10:04

Стилист (скрипт), Найди Поринга (эвент)

Сообщение Shinigami »

Скрипт Стилиста можно значительно улучшить, вот мои предложения по этому поводу:
1) Будем считать главным меню то, которое возникает после первого выбора (что будем красить). Далее я буду описывать всё исходя из выбора пункта "Цвет одежды".
2) Итак, главное меню у нас содержит три пункта: "выбрать перебором", "выбрать перебором с указанного номера", я знаю номер покраски". Начнем с переделки этого меню - достаточно лишь двух пунктов: "Смотреть с начала" и "Я назову номер".
3) Различие двух пунктов меню, указанных выше в том, что первый устанавливает палитру персонажа равной 0, а второй - номеру выбранной палитры. В остальном разницы нет, и следующее меню общее. В нём четыре пункта: "Следующая палитра", "Предыдущая палитра", "Ввести номер", "Мне нравится этот цвет".
4) Действие этих пунктов:
"Следующая палитра" - переходит к следующей палитре, меню прежнее.
"Предыдущая палитра" - переходит к предыдущей палитре, в меню меняются местами 1 и 2 пункты.
"Ввести номер" - перейти к указанному номеру палитры, меню как в п.3.
"Мне нравится этот цвет" - выход из диалога.

Этого уже будет достаточно, чтобы стилистом было удобно пользоваться. Но можно в корневое меню добавить опции сохранения / загрузки стилей, с привязкой к персонажу и/или аккаунту.
Скрипт могу написать сам, если понадобится (есть старые уже написанные, их просто надо будет доделать).


В эвенте Найди Поринга (возможно не только там, недавно играю) довольно забавно реализовано снятие оружия - статусом стрипа. Который по завершению эвента сохраняется, если не перезаходить. Вообще, для этого обычно делают мапфлаг, который и запрещает использование экипировки на локации - например, такой. Или как вариант, бывает флаг, который запрещает экипировку но не снимает её. В этом случае перед варпом на локацию, где проходит эвент, можно добавить одну из этих строчек:
unequip 3; unequip 4; // Обе руки
for (set .i,1; .i<11; set .i,.i+1) unequip .i; // Снимает все вещи
В конце концов, если вам так нравится вариант с статусом стрипа, пропишите его завершение при уходе с эвента:)

Не в сети
Аватара пользователя
Администратор
Сообщения: 4909
Зарегистрирован: 13 июл 2009, 08:02
Контактная информация:

Re: Стилист (скрипт), Найди Поринга (эвент)

Сообщение Lazybloke »

Shinigami,
1. Стилист делался уже очень давно и я уже не помню как он сейчас точно работает. По этой причине я не могу понять чем ваше предложение отличается от того, что есть сейчас. В чем конкретно оптимизация в вашем варианте? Если я не ошибаюсь, то отличие лишь в отключении лишней опции "я знаю номер покраски"?
Опция "выбрать перебором" и так должна устанавливать палитру в 0 и открыть меню для перебора цветов (вперёд/назад/сохранить).
Опция "выбрать перебором с указанного номера" делает тоже самое, только не с 0 палитры, а с указанной.

2. Ваш вариант с мапфлагом, если я не ошибаюсь, не был реализован по какой-то из причин. Если не ошибаюсь раньше (или до сих пор?) на одной и той же локации проводилось много разных ивентов, где установка/привязка/смена мапфлагов была нежелательна. В целом ваш вариант тоже неплох, возьмем на вооружение. Но с другой стороны, зачем изобретать велосипед, когда можно обойтись простейшим и уже существующим статусом?
Основная функция стрипа на данном ивенте - возможность бить всем только вплотную к порингу, например чтобы лучники не получали преимущество. В нашем же случае, даже если игроки одновременно найдут цель, то решающим фактором будет расстояние до цели, которое придется пробежать.

В каком случае стрип не отменяется? Как повторить ошибку, чтобы стрип сохранился?
_________________
[MOTR] [Helper] Lazybloke - Sura 175/60

Администратор сервера LazyRO.
Рекомендуемый игровой сервер с рейтами 1x: https://motr-online.com

Не в сети
Аватара пользователя
Сообщения: 17
Зарегистрирован: 23 май 2012, 10:04

Re: Стилист (скрипт), Найди Поринга (эвент)

Сообщение Shinigami »

1. Я собственно перечислял действия текущего стилиста, но попробую объяснить только различия:)
Во-первых, "Я знаю номер покраски". Если вы его выбираете, то палитра меняется на палитру с введённым номером, а далее предлагается выбор - взять эту палитру или ввести новый номер, т.е. нельзя пролистать на пару вперёд/назад, если потребуется. Это просто неудобный способ.
Во-вторых да, перебор с начала и с указанного номера сохраняются, но изменяется последующий набор действий. Я предложил добавить в меню во время перебора возможность "прыгнуть" на другой номер палитры, а так же менять местами первые два пункта меню при смене "направления" (Пример: я листаю палитры "вперёд", первые два пункта меню - "следующая палитра":"предыдущая палитра", решил пролистать несколько назад - после первого выбора пункта "предыдущая палитра", первые два пункта меню - "предыдущая палитра":"следующая палитра") - это позволяет удобно просматривать палитры в обе стороны.
Ну и сохранение стиля тоже может кому-то пригодиться, но это я предложил уже опционально, а вот вышеперечисленное точно сделает использование стилиста более удобным:)
2. Велосипед стоит изобрести ввиду его универсальности. Статусом можно снять только некоторые детали экипировки - теоретически, как насчёт персонажа с очень низким уроном и картой касы в накидке (автокаст огненного болта и шара, последний бьёт по площади), который может "унести" с собой огромное количество порингов, в том числе возможно и "правильного"?:) Ну и просто полезно иметь такой флаг под рукой, так же как ГМ-команду типа @unequip <on/off> (установка флага на локации).
Стрип не отменяется просто по завершении эвента, во всяком случае дважды я на него пришёл, эвент закончился, применился mapwarp в Пронтеру - стрип сохранился. Почему - точно сказать не могу, но по идее если игроки после эвента отправляются "домой" командой mapwarp, то скрипт к игрокам не "привязывается" и не знает с кого снимать статус, даже если снятие прописано (правда тогда сервер выдавал бы ворнинги:)

Забыл ещё один вариант полного снятия вещей, вместо цикла просто:
nude;
Хотя без мапфлага всё равно смысла нет:)

Не в сети
Аватара пользователя
Администратор
Сообщения: 4909
Зарегистрирован: 13 июл 2009, 08:02
Контактная информация:

Re: Стилист (скрипт), Найди Поринга (эвент)

Сообщение Lazybloke »

Shinigami писал(а):Стрип не отменяется просто по завершении эвента, во всяком случае дважды я на него пришёл, эвент закончился, применился mapwarp в Пронтеру - стрип сохранился.
Да, действительно. Правда исправление этой ошибки, "по сложности" будет почти альтернативой для предложенного вами варианта :smile: . Так что данная ошибка действительно аргумент в вашу пользу.
Впрочем, можно исправить обе проблемы "дёшево и сердито". Порингам на ивенте оставляем по 1 хп и делаем рескилл участников по завершению ивента :smile: .
_________________
[MOTR] [Helper] Lazybloke - Sura 175/60

Администратор сервера LazyRO.
Рекомендуемый игровой сервер с рейтами 1x: https://motr-online.com

Не в сети
Аватара пользователя
Сообщения: 17
Зарегистрирован: 23 май 2012, 10:04

Re: Стилист (скрипт), Найди Поринга (эвент)

Сообщение Shinigami »

Lazybloke писал(а):Впрочем, можно исправить обе проблемы "дёшево и сердито". Порингам на ивенте оставляем по 1 хп и делаем рескилл участников по завершению ивента :smile: .
Возможно и так, я ведь просто предложил некоторые из вариантов)
Что скажете насчёт стилиста? Можно доработать его в течение дня, особенно если дадите ваш вариант скрипта (у вас всё-таки там другие цифры для количества палитр и, возможно, стоит сохранить некоторые детали диалога).

Не в сети
Аватара пользователя
Администратор
Сообщения: 4909
Зарегистрирован: 13 июл 2009, 08:02
Контактная информация:

Re: Стилист (скрипт), Найди Поринга (эвент)

Сообщение Lazybloke »

Введено/поправлено.
_________________
[MOTR] [Helper] Lazybloke - Sura 175/60

Администратор сервера LazyRO.
Рекомендуемый игровой сервер с рейтами 1x: https://motr-online.com
Ответить