Плагин "сколько человек побывало на сервере"

Тема в разделе "Программирование / Скриптинг", создана пользователем GuSenoK, 30 июн 2014.

  1. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Можете написать плагин, чтобы при вводе какой-либо команды в чат писало "на сервере побывало столько то человек".
    Вместо этого плагин я использую sodstats.
    Но вот проблема: на моем зомби сервере, да и не только на моем, люди играют на стату, за зомбов боятся умирать и стараться скушать людей. Они просто стоят и ждут окончания раунда, а потом за людей набирают фраги.
    Приходится мне использовать плагин статистики, чтобы узнать, сколько человек побывало на сервере. Вот плагин такой бы написал кто-нибудь, хорошо было бы. Думаю, не очень он и сложный!
     
  2. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Плагин "Сколько человек побывало на сервере"

    GuSenoK, работает лишь для админов с флагом z!
    Команды в чате: !people или /people, либо в консоли клиента sm_people.
    [​IMG]
    Считает всех людей, которые заходили на сервер (одних и тех же тоже, если заходили ни раз).
    Считает до тех пор, пока ты не проверишь количество побывавших на сервере людей командами выше. Далее счёт идёт сначала.
     

    Вложения:

    • PeopleServer.sp
      Размер файла:
      439 байт
      Просмотров:
      45
    Последнее редактирование: 30 июн 2014
  3. Danyas

    Danyas Спасибо, браток © yand3xmail Модератор

    Сообщения:
    1.714
    Симпатии:
    451
    Re: Плагин "Сколько человек побывало на сервере"

    исходник - бомба!
    сейчас попобую счет по дням сделать :)
     
  4. Danyas

    Danyas Спасибо, браток © yand3xmail Модератор

    Сообщения:
    1.714
    Симпатии:
    451
    простой и доступный (яб не додумался)
    и интересно, и понадобиться)

    тебе бы сделать тему отдельную, и плагин усовершенствовать)
     
  5. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Re: Плагин "Сколько человек побывало на сервере"

    Так получается, если один игрок 10 раз зашел на сервер за последний час, то ,если я напишу !people, мне будет написано "на сервере побывало 10 человек"? Так? Или я что-то не понял. Я просто хочу, чтобы не повторялись игроки. Вот если я раз зашел на сервер, всё, меня больше не добавляет в этот список. То есть я просто хочу, чтобы как в sodstats: я просто написал rank(ну в данном случае !people) и мне вывело: ваш ранк 13 из 2000, всё, я понимаю, что на сервак посетило 2000 человек, неплохо. Вот также можешь сделать, только чтобы без статистики этой. Просто надпись"всего на сервере побывало 1000 человек".
    А так, спасибо тебе огромное, от души прямо.
     
  6. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Да кому оно надо? Только исходник и нужен, всё.
    Именно так. Не различных человек, а количество людей вообще. Иначе нужно каждого человека записывать в файл, любо проверять его "куки".
     
  7. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Ну а переделать ты не можешь? А то я хочу знать, сколько различных вообще людей побывало, а не столько, сколько раз одни и теже люди на сервак заходили.
     
  8. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Danyas, работает лишь для админов с флагом z!
    Команды в чате: !people или /people, либо в консоли клиента sm_people.
    [​IMG]
    Считает количество людей, побывавших на сервере за день (день - 24 часа, до начала ночи по местному времени сервера).
    Ниже самый простой способ.
     

    Вложения:

    Последнее редактирование: 30 июн 2014
    Danyas нравится это.
  9. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Re: People Server Day v1.0.1

    Ну а не можешь сделать не за 1 день, а вообще за все время? "Всего на вашем сервере побывало 1337 человек" Вот так я хочу. И чтобы не удалялись из базы они.
     
  10. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.977
    sql
     
  11. Danyas

    Danyas Спасибо, браток © yand3xmail Модератор

    Сообщения:
    1.714
    Симпатии:
    451
    sodstats к мусклю прикручен?
    можно вывести кол-во игрокоа через колво записей в таблице
     
  12. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Re: People Server All Day v1.0.0

    Вот теперь тебя люблю я! Вот теперь тебя хвалю я! :victory:
     
  13. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Работает все, но корректней, с точки зрения русского языка, написать так:

    Всего на сервере побывало человек: x

    А то пишет вот так:
    Всего на сервере побывало: 1 человек.
    Всего на сервере побывало: 2 человек.

    Некорректно. Спасибо.
     
  14. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Это ты такой особенный, а всем нравится, когда сначала идёт число, а после "человек".
    Всего на сервере побывало: двое человек. Я ж специально : поставил, чтобы меньше придирались.
    Могу вообще файл перевода прикрутить - напишешь сам, что пожелаешь.
    Ещё пожелания? Что-то в файлы писать? Например, я предлагал последний ник Стима игрока и дату/время.
     
  15. GuSenoK

    GuSenoK

    Сообщения:
    144
    Симпатии:
    5
    Всего на сервере побывало: 31 человек (к примеру ),
    надо тогда уже: Всего на сервере побываЛ: 31 человек.
    Поэтому лучше : Всего человек побывало на сервере: 31.

    Ну еще из предложений- чтобы можно было видеть этих людей, написав ещё какую-то команду. То есть список всех человек, которые побывали на сервак. Например командой !people_list:

    1)Agentik73 rus steam:123621622
    2)Vampir steam:249492929
    3)Killer steam:41254051
    4)Unnamed steam: 25119515919191191
    5)Niqitos wh off# <3 Mashy steam: 2151051950511
     
  16. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Если бы двоеточия не было, то да. А так ещё ничего. Всё не пропишешь, чтобы нужные буквы подставляло.
    Тогда напишу: "...сервере: x чел." - я так обычно делаю.
    Представь, 2000 человек и тебе расписать все их Стимы с никами?! Где?? Даже в консоли - это бред + нагрузка будет уже немалая. На хостинг в папку сервера зайди - там итак всё видно.
    Я такое точно делать не буду, тебе не понравятся последствия - глюки от полного извлечения такой базы.
     
    GuSenoK нравится это.
  17. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.972
    Симпатии:
    2.977
    GuSenoK,
    AlmazON, как вариант сделать как в ранкми:
    команду top x
    где x - число отображаемых игроков (деф. 10).
     
  18. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    People Server All Days v1.0.0

    Оффтоп
    Плагин работает лишь для админов с флагом z!
    Команды в чате: !people или /people, либо в консоли клиента sm_people.
    [​IMG]
    Для плагина без файла перевода:
    [​IMG]
    Считает количество людей, побывавших на сервере за всё время его существования, начиная с момента запуска плагина. База данных не удаляется и не обнуляется: не важно, падал сервер или нет - отображает количество отдельных (т.е. различных: 1 человек = любое количество визитов на сервер) заходивших на сервер людей в чате, которое никогда не будет меньше предыдущего (или 0), если не затронута база.
    Базируется на механизме, не содержащем даже глобальных переменных (ни одной). Никак не нагружает сервер в простое, очень мало нагружает в работе.
    База данных будет находиться по пути cfg/sourcemod/people_server_all_day сервера. Там в свободном виде можно увидеть все Steam_ID и ник каждого, за кем он закреплён.
    Также, не знаю, как на хостинге, но при наличии сервера на ПК можно узнать дату и время первого захода этого человека на сервер (не внутри файла). При желании - переделать на время последнего захода и его ника в этот момент (либо все ники игрока, но это занимает место на диске).
    При желании, (только!) серверадмин может искусственно завысить или занизить показатель количества игроков.
    Файл PeopleServerAllDays_full.smx или PeopleServerAllDays.smx положить в cstrike\addons\sourcemod\plugins.
    Только для PeopleServerAllDays.smx файл PeopleServerAllDays.phrases.txt положить по пути cstrike\addons\sourcemod\translations.
    P.S. Тестируем.
     

    Вложения:

    GuSenoK нравится это.
  19. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
    AlmazON,
    Просто бредовые плагины просят, вот и не нужны исходники. Качают так, для тестирования.
     
  20. Reiko1231

    Reiko1231 AlexTheRegent

    Сообщения:
    235
    Симпатии:
    568
    Написал плагин два дня назад, проверял на сервере. Вроде работает правильно.

    Название плагина:
    [ PeopleCount ]
    Описание плагина:
    Плагин ведет подсчет всех игроков, посетивших сервер, в SQLite базе. О каждом игроке сохраняется следующая информация: его стим, его время последнего подключения. При входе на сервер игрок видит информацию о том, сколько всего человек посетило сервер, и сколько человек посетило за последние сутки (подробнее в консольных переменных).
    Консольные переменные:
    sm_peoplecount_showonconnect - показывать (1) или нет (0) игроку информацию о посещении сервера игроками при подключении. По умолчанию: 1.
    sm_peoplecount_allowcommands - разрешить (1) или нет (0) игрокам использовать команду 'sm_peoples'. По умолчанию: 1.
    sm_peoplecount_showclientnum - показывать (1) или нет (0) игроку его номер по счету. По умолчанию: 1.
    sm_peoplecount_lastdayonline - показывать (1) или нет (0) игрокам онлайн за последний день. По умолчанию: 1.
    Команды плагина:
    sm_peoples - выводит в чат информацию:
    Код:
    На сервере побывало: X игроков
    За последний день: Y игроков
    Вы Z по счету игрок
    где вместо X, Y, Z будут соответствующие цифры. Если что-то отключено через консольные переменные, то показано не будет.
     

    Вложения:

    • peoplecount.sp
      Размер файла:
      7,6 КБ
      Просмотров:
      30
    • peoplecount.smx
      Размер файла:
      6,6 КБ
      Просмотров:
      12
    gravestal, GuSenoK, Leckter Hannibal и ещё 1-му нравится это.