1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

Electronic Games Information Base (EGIB) - Информационная База по Электронным Играм

Тема в разделе "Мастерская", создана пользователем Gamerun, 7 янв 2020.

?

Нужна ли такая база?

  1. Да

    8 голосов
    80,0%
  2. Нет

    0 голосов
    0,0%
  3. ?

    2 голосов
    20,0%
  1. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    8.372
    Идея: собрать единую информационную базу по играм на начало 2020 года с функционалом Old-Games.RU.
    Метод сбора данных: обработка страниц HTML-формата, хранящихся локально.
    Обновляемость: после реализации на базе собранного на текущий момент материала посредством парсинга ряда сайтов.
    Формат информационных страниц: Обложка, базовая информация [Жанр, Разработчик, Со-Разработчик, Портирование, Издатель, Распространение, Год выхода, Год анонса, Плановый год, Платформа, Другие версии], Описание, Скриншоты, Видео, Обложки, Фотографии, Издания, Сетевые экземпляры, Дополнения, Материалы, Свойства [Old-Games.RU], Теги [остальные сайты].
    Навигационно-поисковый функционал: по аналогии с Old-Games.RU.
    Архив баз данных (список)

    Сайты, чьи базы данных по играм было бы желательно включить в обработку или сравнительный парсинг в последующем:

    О вложениях:

    Текущий статус (To Do):
    1) Разбор формата(ов) хранения/расположения названий игр, свойств/тегов к ним.
    2) Разбор формата(ов) хранения/расположения иной информации (разработчик, издатель, год выхода и так далее).
    3) Разработка инструментария для автоматизации процесса перевода различных форматов данных в общий единый формат (см. выше).
    4) Разработка инструментария для автоматизации процесса поиска дубликатов и иных именований, различий.
     

    Вложения:

    Последнее редактирование: 7 янв 2020
    AndyFox, Corak и WERTA нравится это.
  2.  
  3. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    @Gamerun, полностью поддерживаю начинание, поскольку сам я уже давно составляю подобные ограниченные базы по различным сегментам игростроения: национальные игры (китайские, польские, тайские...) и отмененные игры.

    В качестве простейшего способа сбора разнородных текстовых данных я использовал MS Excell и MS Acess. Первый - для подготовки и "сращивания" различных текстовых таблиц, второй - уже для хранения, сортировок, фильтрации и удаления дубликатов названий. Сразу скажу, что программно распознавать дубликаты и варианты названий игры, скорее всего, не выйдет: это полностью ручной труд, но его можно ускорить и оптимизировать. Скорее всего, программные средства нужны для вытягивания (эксктракции) баз данных с сайтов. наибольшую сложность представляет неполнота данных разных баз (текстовых таблиц): могут не указать год, разработчика и(или) издателя, жанр, платформу и пр. Всё вместе это сводить в единую таблицу ( а в единую таблицу единой базы данных по-любому придётся сводить) - задача не из лёгких.

    Почему-то в списке желаемых сайтов я не увидел "могучую и непогрешимую" базу данных игр - Mobygames.com.
     
    Corak нравится это.
  4. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    8.372
    @WERTA, mobygames включен в архив баз сайтов.
    Мой опыт пользования как Mobygames, так и Steam показывает, что ручная работа требует много времени и все равно будут погрешности, не говоря уже о недостатках поиска что одного сайта, что другого.
    Для mobygames один знакомый написал по моей просьбе программные средства, значительно упростившие просмотр сайта, однако возможность поделиться хоть и есть, но не факт, что будет работать у других, так как комплект написан на Qt, а выборка из базы делает через sqLiteBrowser. И это не говоря о github и статьи на хабре, ссылками на которые знакомый так и не поделился. Программа для просмотра самой выборки тоже есть (MobyView).
    Зависит от кода и знаний как могут именовать ту или иную игру в сети (сложности касаются альтернативных названий и иеролографики).
    --- добавлено 7 янв 2020, предыдущее сообщение размещено: 7 янв 2020 ---
    Steam
     

    Вложения:

    • SteamTags.7z
      Размер файла:
      617,5 КБ
      Просмотров:
      25
    Corak и WERTA нравится это.
  5. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Чисто теоретически, мысли вслух… (гуманитарии, не гневайтесь...)

    1) Простейший для понимания вариант структуры базы данных (одна таблица-ядро, минимальный набор полей)

    tblGames=[
    GAME_ID – числовой идентификатор игры
    TITLE – основное название игры
    TITLE_ALT – альтернативный вариант названия (не всегда будет заполняться)
    YEAR – год издания
    STATUS – (офиц. издана, отменена, не издана, утрачена, издана на части платформ) будет браться из соответствующей таблицы-справочника refStatus.
    GENRE – составная строка (через слэши), могут быть несколько жанров
    LANGUAGE* – составная строка (через слэши), могут быть несколько языков
    REGION – национальный регион игростроения (англо-саксы, Германия, Япония, Корея…) будет браться из соответствующей таблицы-справочника refRegion.
    DEVELOPER – разработчик, из соответствующей таблицы-справочника refDevelopers.
    PUBLISHER – издатель, из соответствующей таблицы-справочника refPublishers
    PLATFORMS
    – составная строка (через слэши), могут быть несколько платформ
    ]
    * – не особо важные поля таблицы

    Данный вариант примитивен, неуклюж, но удобно представляет собой единственную таблицу. Годы издания (YEAR) и сам статус игры (STATUS) могут варьироваться от платформы к платформе и это невозможно точно учесть в данной архитектуре базы. Также невозможен вариант указания нескольких разработчиков (если таковые были), поскольку поле одно. А создавать по несколько запасных полей DEVELOPER2, DEVELOPER3, которые будут заполнены на 1-2%, это есть совсем неразумно. Один плюс - использование составных строк хоть и неудобно при занесении данных в таблицу, но позволяет в MS Access выполнять фильтрацию (платформа, язык, жанр), просто выделив нужное слово в строке.

    2) Сложный для понимания многотабличный вариант, классическая реализация средствами MS Access

    Таблица-список игр (основной справочник)
    refGames=[
    GAME_ID – числовой идентификатор игры
    TITLE – основное имя игры
    TITLE_ALT– альтернативное имя игры
    ]

    Таблицы дополнительных справочников:
    Справочник «Статус игры»
    refStatus=[
    STATUS_ID – числовой идентификатор статуса
    STATUS_NAME – название состояния игры (издана, отменена, не издана, утрачена)
    ]

    Справочник «Издатели»
    refPublishers=[
    PUBLISHER_ID – числовой идентификатор издателя
    PUBLISHER_NAME – строка названия издателя (можно 2 варианта: длинная и короткая строки)
    ]

    Справочник «Разработчики»
    refDevelopers=[
    DEVELOPER_ID – числовой идентификатор разработчика
    DEVELOPER_NAME – строка названия разработчика (можно 2 варианта: длинная и короткая строки)
    ]

    Справочник «Платформы»
    refPlatforms=[
    PLATFORM_ID – числовой идентификатор платформы
    PLATFORM_NAME – строка названия платформы (PC, xBox, GBA, PS1, Sega Dreamcast…)
    ]

    Справочник «Жанры»
    refGenres=[
    GENRE_ID – числовой идентификатор жанра
    GENRE_NAME – строка названия жанров (FPS, Quest, Adventure, RTS, Simulator)
    ]

    Справочник «Языки»
    refLanguages=[
    LANG_ID – числовой идентификатор языка
    LANG_NAME – строка названия языка (англ., русск., франц.,кит., яп., кор. …)
    ]

    А вот теперь, самое сложное для восприятия:

    Таблица «Версии игр»
    tblGamesVersions=[
    GAMEVERSION_ID – числовой идентификатор версии игры
    GAME_ID – числовой идентификатор игры из справочника тайтлов игр
    PLATFORM_ID – числовой идентификатор платформы для этой версии игры
    DEVELOPER_ID – числовой идентификатор разработчика этой версии игры
    PUBLISHER_ID – числовой идентификатор издателя этой версии игры
    YEAR – год издания этой версии игры
    ]

    Таблица «Жанры игр»
    tblGamesGenres=[
    GAME_ID – числовой идентификатор игры из справочника тайтлов игр
    GENRE_ID – числовой идентификатор жанра, встречающегося в этой игре
    ]

    Таблица «Языковые локализации платформенных версий игр»
    tblGamesLanguages=[
    GAMEVERSION_ID – числовой идентификатор игры из справочника версий игр
    LANG_ID – числовой идентификатор языка для этой версии игры
    ]
    и так далее…

    Следует помнить, что количество строк в таблице refGames будет существенно меньше количества строк в таблице tblGamesVersions.

    Т.е. используя сочетание таблиц-справочников и основных таблиц, можно разветвлено и однозначно хранить данные о самых разных играх. А выводить всю информацию можно в таблицах-запросах (Querry). К сожалению, запросы MS Access не позволят, например, в одну строчку скомпоновать несколько жанров (или платформ) для одной игры. Допустим, в базе данных, в таблице «Жанры игр» (tblGamesGenres) хранится информация о нескольких присутствующих жанрах в игре Alpha Storm (у нее сильное смешение жанров почти в равных пропорциях):
    Column 1 Column 2 Column 3
    0 6210291 Alpha Storm FPS
    1 6210292 Alpha Storm Adventure
    2 6210293 Alpha Storm Strategy
    3 6210293 Alpha Storm SpaceSim

    однако, средства формирования запроса MS Access не смогут вывести в результате вот такую удобную строку в результирующей таблице запроса:
    Column 1 Column 2
    0 Alpha Storm (FPS/Adventure/Strategy/SpaceSim).

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

    Надеюсь, что по технической части организации БД игр всё было понятно…
     
    Последнее редактирование: 7 янв 2020
    Corak и Gamerun нравится это.
  6. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Мне кажется, не использовать наработке piper было бы неразумно.
     
    Corak и Dimouse нравится это.
  7. Dimouse King of Mice

    Dimouse

    Администратор Переводчик

    Регистрация:
    18 апр 2003
    Сообщения:
    34.659
    Согласен. После того, как мы с Павлом продумывали модель БД для Пайпера, я через пару лет фактически то же самое использовал для базы данных ПСОДДИ - игр с дискетными релизами. Главное, на мой взгляд, не переусердствовать с углублением всего этого вширь. Заносить только игра (с ее атрибутами) -компания (разработчик, издатель и т.д.) - релиз. Больше ничего не нужно. Жаль, что у нас на сайте нет такого понятия, как релиз.
     
  8. Corak

    Corak

    Регистрация:
    7 фев 2011
    Сообщения:
    765
    Офигенно! Полностью поддерживаю.. Тоже возникала такая же идея довольно давно.
    Но возникла и вполне логичное продолжение - мысль. о если делать полноценную базу, то стоит включить еще игры на мобильные платформы:
    j2me, android, ios, winmobile, коих вышло тоже овердофига.
    И конечно же игры на flash движке (коих уже более 38к)...
    Существует даже проект презервации всего творчества на Flash - BlueMaxima Flashpoint:
    BlueMaxima's Flashpoint
    (на данный момент у них там архив проектов + база данных на 259 гигов в архиве)
    Также возможно стоит включить веб игры на html+javascript. Тоже думаю актуально, хотя их существование зависимо от серверов.

    Возможно также порты на портативные плееры (те же порты на Rockbox) и пожалуй не забыть всякие портабельные ручные Тетрисы, Ну-погоди и Тамагочи (удивительно, что про них забывают, хотя эмулировать их полноценно дело такое).)
     
    Последнее редактирование: 1 мар 2020
    AndyFox, Gamerun и WERTA нравится это.
  9. Corak

    Corak

    Регистрация:
    7 фев 2011
    Сообщения:
    765
    Мне кажется было полезно еще скооперироваться сервисом: Old Games Finder
    Они как раз планомерно перехватом ссылей на старые игры и тоже многое отпарсили для быстрого поиска.
     
    Последнее редактирование: 16 мар 2020
    WERTA нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление