Перейти к содержанию
Авторизация  
wizzzo

Как создать временный бафф итем?

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

Друзья, всем привет!

Нашел несколько тем на данном форуме касаемо создания временного итема, но на некоторых из них либо ссылки на видеоинструкцию битые, либо ТС не раскрывает тему о том, как решил данный вопрос.

Заранее приношу извинения, если задаю довольно распространенный вопрос - но тем не менее.

Как я могу создать временный бафф итем, который исчезнет из инвентаря игрока например через несколько дней?

Сборка Lucera 2
Хроники Interlude 

С меня куча +++

Заранее спасибо за ответ)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По аналогии со свитком на баф, только сделать этот предмет временным.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, iKindness сказал:

По аналогии со свитком на баф, только сделать этот предмет временным.

Если не сложно, можешь объяснить как сделать его временным? В принципе я понял как создать предмет, но не понял как сделать его временным?
Например чтобы писал - Предмет на 7 дней, ну и соответственно через 7 дней он исчезал

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, wizzzo сказал:

Если не сложно, можешь объяснить как сделать его временным? В принципе я понял как создать предмет, но не понял как сделать его временным?
Например чтобы писал - Предмет на 7 дней, ну и соответственно через 7 дней он исчезал

Взять за пример существующий временный предмет и сделать по аналогии.

 

Почти любая механика, которую хочет народ - уже существует, просто нужно посмотреть с правильной стороны.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, wizzzo сказал:

Если не сложно, можешь объяснить как сделать его временным? В принципе я понял как создать предмет, но не понял как сделать его временным?
Например чтобы писал - Предмет на 7 дней, ну и соответственно через 7 дней он исчезал

нужно сделать так чтобы бафф лежал в инвентаре постоянно, и после 7 дней исчезал?

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
6 часов назад, SteveDogs сказал:

нужно сделать так чтобы бафф лежал в инвентаре постоянно, и после 7 дней исчезал?

Приветствую) Всё верно, я смотрел пример с Shadow Weapon, но там вроде как есть особенность - у них время истекает только тогда, когда они надеты на персонажа. А именно etcitem - на Interlude временных нет(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добавить не обязательный атрибут к итему, например (duration), в месте парсинга итемов, добавить условие, если аттрибут существует и это число и больше 0, значит рассчитываем по формуле (какую для себя выберите, перевод из миллисекунд или с секунд или с минут, дней, часов), не важно. Все эти алгоритмы уже присутствуют, вы можете рассмотреть как это сделано у теневых вещей и взять необходимые функции.

Также за основу взять и ShadowItemTaskManager и сделать ItemTaskManager который будет отслеживать ваш duration. Или если может хорошо порыться, получится прикрутить к существующим каким-то, которые постоянно отслеживают, в любом случае, попробовать найти TaskManager.java и регистрацию всех демонов (планировщиков), чтобы хотя-бы понимать, что уже есть вообще.

Изменено пользователем Saltfire
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 минут назад, Saltfire сказал:

Добавить не обязательный атрибут к итему, например (duration), в месте парсинга итемов, добавить условие, если аттрибут существует и это число и больше 0, значит рассчитываем по формуле (какую для себя выберите, перевод из миллисекунд или с секунд или с минут, дней, часов), не важно. Все эти алгоритмы уже присутствуют, вы можете рассмотреть как это сделано у теневых вещей и взять необходимые функции.

Также за основу взять и ShadowItemTaskManager и сделать ItemTaskManager который будет отслеживать ваш duration. Или если может хорошо порыться, получиться прикрутить к существующим каким-то, которые постоянно отслеживают, в любом случае, попробовать найти TaskManager.java и регистрацию всех демонов (планировщиков), чтобы хотя-бы понимать, что уже есть вообще.

Я приношу извинения, по глупости указал сборку Lucera 2, искал в интернете решения на вторую люсю и машинально указал вторую версию. У меня сборка Lucera 1.7, в ней нет TaskManager, по крайней мере я не нашел вообще упоминаний TaskManager в сборке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
19 минут назад, wizzzo сказал:

Я приношу извинения, по глупости указал сборку Lucera 2, искал в интернете решения на вторую люсю и машинально указал вторую версию. У меня сборка Lucera 1.7, в ней нет TaskManager, по крайней мере я не нашел вообще упоминаний TaskManager в сборке

у вас же в сборке есть свитки бафов  9150 Id вроде одного из них вот по его типу можно сделать баф итем

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 минут назад, KiberGen сказал:

у вас же в сборке есть свитки бафов  9150 Id вроде одного из них вот по его типу можно сделать баф итем

Свитки есть, но они не временные) Да и бафать чара через предмет мне не нужно, мне нужен именно предмет, который будет исчезать через время. Предмет, который нужен будет для доступа в раздел премиум баффов 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

по типу рун нужно делать, если сборка пв софт - нужно переписывать инвентарь ибо можно багать временные предметы. Цена вопроса рун 20$ (временных предметов)

Изменено пользователем Imperial
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возьми за основу руну 9210 она 5 часовая. Соответственно <set name="durability" value="300"/> нужно будет увеличить в нужное кол-во раз.

К этой руне привязан скил 90050. Ты меняешь, и:

  • Привязываешь активные скилы - если хочешь чтобы твой итем давал возможность именно бафаться персонажу в течении 7 дней. И тогда в это случае у тебя каждый игрок будет таскать за собой свежесозданного чара AllInOne бафера.
  • Привязываешь 1 скил который будет повышать статы повышаемые набором бафа который ты хочешь - и тогда получается возможность "овер"бафа - допустим скорость бега поднята руной и дополнительно на чара кладется ww/bers/wind, и так со всеми бафами.
  • Привязываешь тобой созданные активные скилы - копии необходимых бафов, но исправляешь КАЖДУЮ эту копию на TARGET_SELF

 

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
23 минуты назад, Hotaka сказал:

Возьми за основу руну 9210 она 5 часовая. Соответственно <set name="durability" value="300"/> нужно будет увеличить в нужное кол-во раз.

К этой руне привязан скил 90050. Ты меняешь, и:

  • Привязываешь активные скилы - если хочешь чтобы твой итем давал возможность именно бафаться персонажу в течении 7 дней. И тогда в это случае у тебя каждый игрок будет таскать за собой свежесозданного чара AllInOne бафера.
  • Привязываешь 1 скил который будет повышать статы повышаемые набором бафа который ты хочешь - и тогда получается возможность "овер"бафа - допустим скорость бега поднята руной и дополнительно на чара кладется ww/bers/wind, и так со всеми бафами.
  • Привязываешь тобой созданные активные скилы - копии необходимых бафов, но исправляешь КАЖДУЮ эту копию на TARGET_SELF

 

Благодарю за подробное разъяснение!)
Дело в том, что в Interlude нет рун, но тем не менее, в принципе я понял как реализовать данную механику.

Привязывать к скиллам предмет мне не нужно, доступ в премиум раздел баффера открывается при наличии определенного предмета в инвентаре.
Я так понял, мне просто необходимо добавить предмет в itemnamegrp - клиент, etcgrp - клиент, etc_items - в БД и в этой БД установить время duration, верно?

Значение 300 = 5 часам

Вопрос исходя из этого, в дополнительных файлах нет необходимости добавлять этот предмет, верно?
То-есть в /data/stats/items/ - в файлах xml дополнительно добавлять ничего не нужно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
23 часа назад, wizzzo сказал:

Сборка Lucera 2
Хроники Interlude 

У тебя Люцера от Дизерта?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, Hotaka сказал:

У тебя Люцера от Дизерта?

 

Эта сборка
 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 30.11.2022 в 14:58, wizzzo сказал:

Я приношу извинения, по глупости указал сборку Lucera 2, искал в интернете решения на вторую люсю и машинально указал вторую версию. У меня сборка Lucera 1.7, в ней нет TaskManager, по крайней мере я не нашел вообще упоминаний TaskManager в сборке

Получше ничего не мог скачать? Скачал динозавра =)

19 часов назад, wizzzo сказал:

Дело в том, что в Interlude нет рун, но тем не менее, в принципе я понял как реализовать данную механику.

Возьми ThreadPoolManager.java и сделай, что нужно, на скорую руку, поймешь как работает, в будущем сделаешь по уму, на самом деле, вариантов как минимум 3 насчитал уже, сильно не углубляясь, из них некоторые даже уже упомянули выше.

Можно и выше хроник подсмотреть как сделано и переместить себе.

Изменено пользователем Saltfire

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
10 часов назад, Saltfire сказал:

Получше ничего не мог скачать? Скачал динозавра =)

Возьми ThreadPoolManager.java и сделай, что нужно, на скорую руку, поймешь как работает, в будущем сделаешь по уму, на самом деле, вариантов как минимум 3 насчитал уже, сильно не углубляясь, из них некоторые даже уже упомянули выше.

Можно и выше хроник подсмотреть как сделано и переместить себе.

Да, про динозавра понял, но слишком поздно, уже всё настроил)))
Читал отзывы, вроде как большинство людей положительно отзывались именно об этой сборке.

Решение проблемы было банальным, очень странно что об этом никто нигде не писал.

Все указывают на то, что в бд необходимо прописать параметр duration - якобы отвечающий за время, через которое предмет пропадет. Однако это относится исключительно к экипировке, ибо время начинает уходить только тогда, когда предмет одет.

Мне же, в моем случае, помог параметр lifetime.

Установив этот параметр (время указывается в минутах) - предмет благополучно исчезает из инвентаря пользователя через указанное время)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Создать учетную запись

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

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

Войти

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

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...