Пятница, 22 Ноября 2024, 09:48

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
База данных по MMORPG
DoGGyДата: Понедельник, 13 Августа 2018, 00:37 | Сообщение # 1
был не раз
Сейчас нет на сайте
Доброго времени суток. Существует большое количество БД по онлайн играм. Lineage2, WoW, Aion, Terra и список можно продолжать ещё долго. Собственно, суть этих БД заключается в том, что они хранят информацию о всех(или о многих) игровых предметах/квестах/локациях и т.д. И у меня не так давно возник вопрос: как, собственно, люди их поднимают? Гугл и Яндекс не привели меня абсолютно никуда, так что пытаю счастье здесь. Может быть кто-то обладает хоть какой-нибудь информацией по этому поводу.
martukДата: Понедельник, 13 Августа 2018, 06:22 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
DoGGy, способов может быть множество, и каждый разработчик волен выбрать свой. Совсем не проблема хранить тучу информации на SSD, когда сервер не запущен. Интересности начинаются тогда, когда требуется, как ты сказал, "Поднять это все". Естественно сервер не вгружает в оперативную память всю информацию, но подгружает ее по мере необходимости и отправляем игрокам. Многие крупные проекты не обходятся лишь одним сервером, а работают сразу на нескольких.

Может я не понял вопроса конечно, ты спрашивал про БД, хотя не не пойму где могут быть здесь проблемы =)

Давай приведем пример:

У Самого обыкновенного игрового ммо стартапа когда нибудь встанет вопрос о написании сервера. Про прототипирования вполне сойдет python. Сам на форумах читал что данный язык хоть и относительно медленный, но при должной реализации вполне потянет несколько сотен тысяч подключений, или даже миллион, все зависит от характеристик серверной машины. Сам сервер, написанный на Python, вполне вероятно будет обрабатывать, условно, "комнаты" - уровень, где бегают игроки, и игрокам отправляются только те данные, которые относятся только к данному уровню, не затрагивая при этом всю БД. Особо крупные проекты действительно делят мир (если он большой) на несколько серверов, для снижения нагрузки на отдельно взятого. Но а вся информация, т.е. о игровых предметах хранится именно в оперативной памяти сервера, для быстрого доступа разумеется. Как сервер выключается, или через равные промежутки времени, сервер снимает дамп данных в долговременную память, для последующей загрузки от туда. Естественно это колоссальные объемы данных, но и сервера являются довольно не слабыми.
DoGGyДата: Понедельник, 13 Августа 2018, 10:45 | Сообщение # 3
был не раз
Сейчас нет на сайте
martuk, ты, действительно, немного не понял вопроса :)
Речь шла не о БД самой игры, а о "энциклопедии". Названий, на самом деле, у таких проектов множество. Найди в яндексе/гугле l2central или l2db для примера.
martukДата: Понедельник, 13 Августа 2018, 12:32 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
DoGGy, Вот оно что =)
Сталкивался с Вики по игре только от SCP Foundation. Было действительно интересно посмотреть список всех предметов и почитать описание.
Так в каком смысле поднимают? Имеешь в виду собирают информацию как?
DoGGyДата: Понедельник, 13 Августа 2018, 14:09 | Сообщение # 5
был не раз
Сейчас нет на сайте
martuk, я имею ввиду в общем. Как вообще делают такие базы предметов? Откуда вся эта информация? Не в ручную же её добавляют туда.
ЭргалонДата: Понедельник, 13 Августа 2018, 15:35 | Сообщение # 6
Вездесущий
Сейчас нет на сайте
Через спец. парсеры. У WoW почти все игровые данные хранятся в формате mpq на клиентской стороне вроде как. Всё что нужно сделать, это написать парсер этого файла, который вытаскивает данные в нужных форматах и кладет в отдельные папки. Но это как вариант, не знаю на сколько действенный, но я бы так и сделал.

Кубариум
Rise of the dark lords


Сообщение отредактировал Эргалон - Понедельник, 13 Августа 2018, 15:37
DoGGyДата: Понедельник, 13 Августа 2018, 15:44 | Сообщение # 7
был не раз
Сейчас нет на сайте
Эргалон, у меня была немного другая мысль - есть объединённый WoWHead и посредствами скриптов парсить данные оттуда себе на сайт, как вариант. Но тут есть несколько камней преткновения: 1. На вовхеде, на сколько я могу предпологать, храниться информация, актуальная для текущего патча игры. Для предшествующих версий информация отсутствует впринципе. 2. Когда просматривал исходный код других баз, то не заметил отсылок к вовхеду или другим ресурсам, значит информация лежит где-то в базе конкретного сайта, что навело меня на мысль о исходниках/открытой базе предметов где-то на просторах интернета.
ЭргалонДата: Понедельник, 13 Августа 2018, 16:25 | Сообщение # 8
Вездесущий
Сейчас нет на сайте
DoGGy, Странный вопрос. Ты говоришь о изначальных исходниках, так они вот, в файлах игры. Когда игры только выходили, они были достаточно уязвимы, чтобы их можно было перекопировать. Это требовало конечно очень много сил, но тем не менее нашлись группы людей, которые этим занялись. Так появились древние движки вроде Mangos TrinityCore для пиратских WoW серверов, которые хранили базу данных всех игровых объектов и предметов и еще кучу всего, что позволяло запускать сервер на своей машине. От них уже стали плодиться переписанные ядра, которые есть на данный момент. Так делали и исправляли баги, которые были в исходных пиратках. Сейчас используют уже вытянутую древними разрабами всю базу, никто естественно не станет сейчас вытаскивать конфиги и базы, когда они уже вытянуты другими людьми. Остается только правильно поддерживать новые версии и правильно интегрировать клиент-серверную систему, на фундаменте источников.

Кубариум
Rise of the dark lords


Сообщение отредактировал Эргалон - Понедельник, 13 Августа 2018, 16:31
DoGGyДата: Понедельник, 13 Августа 2018, 16:37 | Сообщение # 9
был не раз
Сейчас нет на сайте
Эргалон, мы, видимо, про разные вещи говорим. Мне не нужно ядро сервера, да и сам сервер-то мне не нужен. Меня интересует создание "энциклопедии" по той же WoW.
Не думаю, что эти сайты используют ядро самой игры. БД у них, скорее всего, отдельная.
ЭргалонДата: Понедельник, 13 Августа 2018, 16:49 | Сообщение # 10
Вездесущий
Сейчас нет на сайте
DoGGy отдельная, которая скопировалась у источника, в виде ядра, в котором и энциклопедия в базы забита

Кубариум
Rise of the dark lords


Сообщение отредактировал Эргалон - Понедельник, 13 Августа 2018, 16:49
DoGGyДата: Понедельник, 13 Августа 2018, 16:52 | Сообщение # 11
был не раз
Сейчас нет на сайте
Эргалон, то есть, по сути, это дамп одного сайта, перезалитый на другой? Тогда вопрос в следующем, как делают дамп базы сайта? Это же не просто скрипты, а БД, хранящаяся где-то, к которой просто-так доступ не получить.
ЭргалонДата: Понедельник, 13 Августа 2018, 16:54 | Сообщение # 12
Вездесущий
Сейчас нет на сайте
DoGGy, Этот вопрос не ко мне. То что из базы сайта уже можно сделать дамп = уязвимость. Просто каждый ограничивает ее по желанию. А в опенсорсе куда более важные вещи лежат, нежели какая-то энциклопедия, особенно игровая, которой обычно разрабы сами и делятся.

Кубариум
Rise of the dark lords


Сообщение отредактировал Эргалон - Понедельник, 13 Августа 2018, 16:57
DoGGyДата: Понедельник, 13 Августа 2018, 16:58 | Сообщение # 13
был не раз
Сейчас нет на сайте
Эргалон, по этому, не думаю, что это именно дамп. Всё делается как-то иначе. Вот и пытаюсь до сути докопаться.
TLTДата: Понедельник, 13 Августа 2018, 20:15 | Сообщение # 14
Сейчас нет на сайте
DoGGy, ресурсы игры распаковываются и списываются описания и параметры предметов и пр. И уже геймеры сами дополняют по опыту.

Дао, выраженное словами, не есть истинное Дао.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг