wizzzo 8 Опубликовано 29 ноября, 2022 Друзья, всем привет! Нашел несколько тем на данном форуме касаемо создания временного итема, но на некоторых из них либо ссылки на видеоинструкцию битые, либо ТС не раскрывает тему о том, как решил данный вопрос. Заранее приношу извинения, если задаю довольно распространенный вопрос - но тем не менее. Как я могу создать временный бафф итем, который исчезнет из инвентаря игрока например через несколько дней? Сборка Lucera 2 Хроники Interlude С меня куча +++ Заранее спасибо за ответ) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iKindness 88 Опубликовано 29 ноября, 2022 По аналогии со свитком на баф, только сделать этот предмет временным. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 29 ноября, 2022 2 часа назад, iKindness сказал: По аналогии со свитком на баф, только сделать этот предмет временным. Если не сложно, можешь объяснить как сделать его временным? В принципе я понял как создать предмет, но не понял как сделать его временным? Например чтобы писал - Предмет на 7 дней, ну и соответственно через 7 дней он исчезал Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iKindness 88 Опубликовано 29 ноября, 2022 Только что, wizzzo сказал: Если не сложно, можешь объяснить как сделать его временным? В принципе я понял как создать предмет, но не понял как сделать его временным? Например чтобы писал - Предмет на 7 дней, ну и соответственно через 7 дней он исчезал Взять за пример существующий временный предмет и сделать по аналогии. Почти любая механика, которую хочет народ - уже существует, просто нужно посмотреть с правильной стороны. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SteveDogs 1077 Опубликовано 29 ноября, 2022 3 часа назад, wizzzo сказал: Если не сложно, можешь объяснить как сделать его временным? В принципе я понял как создать предмет, но не понял как сделать его временным? Например чтобы писал - Предмет на 7 дней, ну и соответственно через 7 дней он исчезал нужно сделать так чтобы бафф лежал в инвентаре постоянно, и после 7 дней исчезал? 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 30 ноября, 2022 6 часов назад, SteveDogs сказал: нужно сделать так чтобы бафф лежал в инвентаре постоянно, и после 7 дней исчезал? Приветствую) Всё верно, я смотрел пример с Shadow Weapon, но там вроде как есть особенность - у них время истекает только тогда, когда они надеты на персонажа. А именно etcitem - на Interlude временных нет( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Saltfire 88 Опубликовано 30 ноября, 2022 (изменено) Добавить не обязательный атрибут к итему, например (duration), в месте парсинга итемов, добавить условие, если аттрибут существует и это число и больше 0, значит рассчитываем по формуле (какую для себя выберите, перевод из миллисекунд или с секунд или с минут, дней, часов), не важно. Все эти алгоритмы уже присутствуют, вы можете рассмотреть как это сделано у теневых вещей и взять необходимые функции. Также за основу взять и ShadowItemTaskManager и сделать ItemTaskManager который будет отслеживать ваш duration. Или если может хорошо порыться, получится прикрутить к существующим каким-то, которые постоянно отслеживают, в любом случае, попробовать найти TaskManager.java и регистрацию всех демонов (планировщиков), чтобы хотя-бы понимать, что уже есть вообще. Изменено 30 ноября, 2022 пользователем Saltfire 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 30 ноября, 2022 10 минут назад, Saltfire сказал: Добавить не обязательный атрибут к итему, например (duration), в месте парсинга итемов, добавить условие, если аттрибут существует и это число и больше 0, значит рассчитываем по формуле (какую для себя выберите, перевод из миллисекунд или с секунд или с минут, дней, часов), не важно. Все эти алгоритмы уже присутствуют, вы можете рассмотреть как это сделано у теневых вещей и взять необходимые функции. Также за основу взять и ShadowItemTaskManager и сделать ItemTaskManager который будет отслеживать ваш duration. Или если может хорошо порыться, получиться прикрутить к существующим каким-то, которые постоянно отслеживают, в любом случае, попробовать найти TaskManager.java и регистрацию всех демонов (планировщиков), чтобы хотя-бы понимать, что уже есть вообще. Я приношу извинения, по глупости указал сборку Lucera 2, искал в интернете решения на вторую люсю и машинально указал вторую версию. У меня сборка Lucera 1.7, в ней нет TaskManager, по крайней мере я не нашел вообще упоминаний TaskManager в сборке Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
KiberGen 82 Опубликовано 30 ноября, 2022 19 минут назад, wizzzo сказал: Я приношу извинения, по глупости указал сборку Lucera 2, искал в интернете решения на вторую люсю и машинально указал вторую версию. У меня сборка Lucera 1.7, в ней нет TaskManager, по крайней мере я не нашел вообще упоминаний TaskManager в сборке у вас же в сборке есть свитки бафов 9150 Id вроде одного из них вот по его типу можно сделать баф итем 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 30 ноября, 2022 12 минут назад, KiberGen сказал: у вас же в сборке есть свитки бафов 9150 Id вроде одного из них вот по его типу можно сделать баф итем Свитки есть, но они не временные) Да и бафать чара через предмет мне не нужно, мне нужен именно предмет, который будет исчезать через время. Предмет, который нужен будет для доступа в раздел премиум баффов Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Imperial 7 Опубликовано 30 ноября, 2022 (изменено) по типу рун нужно делать, если сборка пв софт - нужно переписывать инвентарь ибо можно багать временные предметы. Цена вопроса рун 20$ (временных предметов) Изменено 30 ноября, 2022 пользователем Imperial 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Hotaka 769 Опубликовано 30 ноября, 2022 Возьми за основу руну 9210 она 5 часовая. Соответственно <set name="durability" value="300"/> нужно будет увеличить в нужное кол-во раз. К этой руне привязан скил 90050. Ты меняешь, и: Привязываешь активные скилы - если хочешь чтобы твой итем давал возможность именно бафаться персонажу в течении 7 дней. И тогда в это случае у тебя каждый игрок будет таскать за собой свежесозданного чара AllInOne бафера. Привязываешь 1 скил который будет повышать статы повышаемые набором бафа который ты хочешь - и тогда получается возможность "овер"бафа - допустим скорость бега поднята руной и дополнительно на чара кладется ww/bers/wind, и так со всеми бафами. Привязываешь тобой созданные активные скилы - копии необходимых бафов, но исправляешь КАЖДУЮ эту копию на TARGET_SELF 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 30 ноября, 2022 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 дополнительно добавлять ничего не нужно? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Hotaka 769 Опубликовано 30 ноября, 2022 23 часа назад, wizzzo сказал: Сборка Lucera 2 Хроники Interlude У тебя Люцера от Дизерта? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 30 ноября, 2022 2 минуты назад, Hotaka сказал: У тебя Люцера от Дизерта? Эта сборка Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Saltfire 88 Опубликовано 1 декабря, 2022 (изменено) В 30.11.2022 в 14:58, wizzzo сказал: Я приношу извинения, по глупости указал сборку Lucera 2, искал в интернете решения на вторую люсю и машинально указал вторую версию. У меня сборка Lucera 1.7, в ней нет TaskManager, по крайней мере я не нашел вообще упоминаний TaskManager в сборке Получше ничего не мог скачать? Скачал динозавра =) 19 часов назад, wizzzo сказал: Дело в том, что в Interlude нет рун, но тем не менее, в принципе я понял как реализовать данную механику. Возьми ThreadPoolManager.java и сделай, что нужно, на скорую руку, поймешь как работает, в будущем сделаешь по уму, на самом деле, вариантов как минимум 3 насчитал уже, сильно не углубляясь, из них некоторые даже уже упомянули выше. Можно и выше хроник подсмотреть как сделано и переместить себе. Изменено 1 декабря, 2022 пользователем Saltfire Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wizzzo 8 Опубликовано 1 декабря, 2022 10 часов назад, Saltfire сказал: Получше ничего не мог скачать? Скачал динозавра =) Возьми ThreadPoolManager.java и сделай, что нужно, на скорую руку, поймешь как работает, в будущем сделаешь по уму, на самом деле, вариантов как минимум 3 насчитал уже, сильно не углубляясь, из них некоторые даже уже упомянули выше. Можно и выше хроник подсмотреть как сделано и переместить себе. Да, про динозавра понял, но слишком поздно, уже всё настроил))) Читал отзывы, вроде как большинство людей положительно отзывались именно об этой сборке. Решение проблемы было банальным, очень странно что об этом никто нигде не писал. Все указывают на то, что в бд необходимо прописать параметр duration - якобы отвечающий за время, через которое предмет пропадет. Однако это относится исключительно к экипировке, ибо время начинает уходить только тогда, когда предмет одет. Мне же, в моем случае, помог параметр lifetime. Установив этот параметр (время указывается в минутах) - предмет благополучно исчезает из инвентаря пользователя через указанное время) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты