1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Идея вообщем, кто знает или может сделать плагин на время:

Тема в разделе "Запросы на разработку плагинов", создана пользователем LeoJGameSpigot, 29 май 2021.

  1. Автор темы
    LeoJGameSpigot

    LeoJGameSpigot Активный участник

    Баллы:
    61
    Имя в Minecraft:
    LeoJGame
    Существуют такие плагины как "OnlineTime", "PlayTime","WTime" и т.д, но в них абсолютно нет того, чего я ищу. У них одна и та же функция, показывать сколько игрок наиграл времени за всё время на сервере. Вообщем расскажу что мне нужно: Мне нужно чтобы показывалось не только время которое игрок наиграл за всё время, а сам сеанс нахождения на сервере, как это умеет показывать плагин "Essentials" (/seen). Можно ещё сделать сколько игрок наиграл за неделю или две недели времени, но это уже другая мелочь, но могу кнч передумать.

    Вообщем очн надеюсь что вы поняли смысл моего текста.
     
  2. Автор темы
    LeoJGameSpigot

    LeoJGameSpigot Активный участник

    Баллы:
    61
    Имя в Minecraft:
    LeoJGame
    И разумеется по желанию, кто может сделать такой плагин.
     
  3. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Какая версия?
     
  4. Автор темы
    LeoJGameSpigot

    LeoJGameSpigot Активный участник

    Баллы:
    61
    Имя в Minecraft:
    LeoJGame
    1.16.5
     
  5. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Ну потому что это 100500 записей будет, потому ограничиваются общим временем в игре.
     
  6. imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Текущий онлайн и общее время игры высчитываются без БД. Впрочем, "за неделю" и прочее действительно займут мильон записей.
     
  7. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Текущее да, общее идет из файла статистики.
     
  8. deadanykey

    deadanykey Активный участник Пользователь

    Баллы:
    96
    Пишем в БД ник (или UUID), потом суточный таймстамп, потом время, наигранное за сутки.
    Запись делаем один раз в сутки. Получаем 365 записей в год, если игрок играл каждый день, что редкость.
    Для того, чтобы количество записей приблизилось к миллиону, нужно, чтобы на сервере целый год играло 2700 человек ежедневно. К тому же миллион записей - это совсем немного для БД.

    Но я бы писал время входа и время выхода. И отдельно колонка AFK. Так проще получается.
     
  9. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    И получил бы еще больше бесполезных записей в базе ага. Ведь игрок может 90 раз за день перезайти.
     
  10. Lemar98

    Lemar98 Активный участник Пользователь

    Баллы:
    76
    А зачем тебе каждый раз спамить инсертом новых значений, когда каждую сессию можно эти данные тупо апдейтить?
     
  11. deadanykey

    deadanykey Активный участник Пользователь

    Баллы:
    96
    Может. Но я таких ни разу не видел. И что с того, что добавится ещё несколько сотен записей?
    Ну хорошо, можно писать один раз при остановке сервера, если уж так беспокоит количество строк в БД. Но этот вариант так себе, потому что сервер может помереть внезапно.
     
  12. deadanykey

    deadanykey Активный участник Пользователь

    Баллы:
    96
    Потому что ТС нужны данные по дням.
     
  13. Lemar98

    Lemar98 Активный участник Пользователь

    Баллы:
    76
    Не прочитал.
     
  14. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Ну вот этот вариант имеет место быть.
     
  15. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Сказал тот кто никогда не держал свой сервер. Игроки по много раз входят и выходят в течение дня.
     
  16. deadanykey

    deadanykey Активный участник Пользователь

    Баллы:
    96
    Много - это сколько? Мой опыт (а он есть у меня) показывает мне, что в среднем игроки входят/выходят 3-5-7 раз в сутки, не больше (при условии, что технически у игроков с сетью всё в порядке).
    Второе. Чего вы привязались к количеству строк в БД? Эти данные вытаскиваются из БД 1 (один) раз при старте. Ну да, вычитать миллион строк или 10 - разница, безусловно, будет. Но эта разница будет настолько мала, что спокойно можно плюнуть на это.
     
  17. Автор темы
    LeoJGameSpigot

    LeoJGameSpigot Активный участник

    Баллы:
    61
    Имя в Minecraft:
    LeoJGame
    Ребят, у меня сервер частный, а сколько будет всяких разных ненужных заметок, то это не волнует. Главное чтобы было.
     

Поделиться этой страницей