Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Система достижений в Альт+Б
#1
Всех приветствую! Давно ушел из темы л2, по этому не следил не за чем, а сейчас появился интерес дальше поковырять л2. Увидел на некоторых серверах некую систему достижений для каждого персонажа. Стало интересно, как это все реализовано. Подскажите, где можно подсмотреть? Smile
Хочу на эпилог это попробовать прикрутить ради интереса, но с 0 не смогу написать, я объективно оцениваю свои возможности) А вот посмотреть, как сделано - очень интересно! Или же это все только продается?
Ответ
#2
Продается, например, тут, если это то, что Вы имели ввиду. Правда там далеко не в КБ реализация.
Закручивать такую систему не долго, требуется лишь общая абстракция требований для ачивок, расставить где нужно слушатели, впилить какой-нибудь хмл с описанием ачивок и профит. Как выводить текст/картинку в КБ надеюсь все знают Smile
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#3
Спасибо, примерно это то.
А вообще я вот про это говорил(взято с одного сервера, вроде ХФ):[Изображение: YNWYY1e97vU.jpg]

Я так понимаю, прогресс в достижениях же должен записываться в базу, а для этого нужно же отслеживать за игроком еще больше информации, собирать ее и записывать в бд ?
Ответ
#4
itcry Написал:Я так понимаю, прогресс в достижениях же должен записываться в базу, а для этого нужно же отслеживать за игроком еще больше информации, собирать ее и записывать в бд ?

Достаточно писать только сами полученные ачивки, а не записывать процесс их получения (ибо это уже процесс геймплея). Сами ачивки намекают на то что, они одноразовые. Например: забафать Баюма до смерти или убить игрока вилд валком. Вся эта логика и события происходят непосредственно в игре и сохранять сколько раз мы бафнули Баюма - нет смысла. Достаточно повесить событийные слушатели на те или иные вещи и по определенному событию/группе событий уже выдавать ачивку, которая же, в свою очередь, будет сейвится в базу. Just simple.
Очки и т.д. вещи уже можно вычислять в рантайме, без сейва, т.к. сами выполненные ачивки у нас есть соотв. дата сколько какая ачивка дает очков. Аналогично с максимальным/выполненным количеством и другой мишурой.

Дальше додумывайте сами.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#5
А как быть, например, с ачивкой убить 10 раз баюма. Ведь нужно же запоминать, сколько раз его убил каждый персонаж. Ну в общем тут все более менее понятно. под каждую такую ачивку придется писать свой код с сохранением в бд... В общем все таки сложно это все для меня. Точно подсмотреть негде?))
Ответ
#6
Ну хотите делать так - делайте. Каждый крутит, как хочет.

P.S: для кратковременного сейва данных можно посмотреть в сторону записи прогресса квестов, либо serverdata.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Ответ
#7
зачем?
просто в таблице у игрока где хранится инфа о ачивках завести еще одно поле для подобных ачивок, где и хранить в виде числа прогресс. ну и естественно ставить флаг того что ачивка получена тогда, когда прогресс достигнет желаемого значения.

т.е. структура записей в эту таблицу должна быть к примеру такой.

ид_игрока
ид_ачивки
статус (получена/не получена)
прогресс
время_получения

реализация самого механизма для работы с ачивками то по сути дело плевое. самый геморрой - это как раз придумывать, за что их давать, расставлять везде где надо вызовы этого всего и т.п.
Ответ
#8
Если и делать, то нормально отдельной подсистемой. Всё остальное это костыли костылей. Можно поставить слушатели повсюду, что позволит собирать полную статистику, которая даст возможность придумывать "на ходу" новые ачивки.
Родился, живу и когда-нибудь умру.
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Система достижений Map 2 1,507 03-06-2015, 02:05 PM
Последний пост: ProDev
  Система переменных игрока Johnson 36 6,448 01-16-2015, 02:00 AM
Последний пост: Deazer
  [ШАРА]Система рейтинга GOD для HF (частичные сурсы/компил) OneThunder 0 1,393 08-05-2014, 11:34 AM
Последний пост: OneThunder
  Система аванпостов L2J 0 1,051 04-16-2014, 03:24 PM
Последний пост: L2J
  Система Атрибутов Auri 15 2,786 01-28-2014, 05:50 PM
Последний пост: Auri
  Система тиккетов (Support) Frozenn 8 2,504 03-14-2013, 07:49 PM
Последний пост: KilRoy
  Система переходов из зоны в зону [CORE] -Lex- 0 1,980 12-17-2011, 08:09 PM
Последний пост: -Lex-
  Альт+б High Five "Phoenix" 5698390 3 3,098 11-22-2011, 09:13 PM
Последний пост: cokol
  Система крафта APKO 1 1,309 09-23-2011, 08:22 PM
Последний пост: Azagthtot
  Неработает донат система! bladKiller 1 2,139 03-28-2010, 07:33 PM
Последний пост: Array

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)