Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
cjanton

VIP Core/Ядро плагина Вип

Рекомендованные сообщения

Плагин позволяет выдавать игрокам VIP-статус навсегда или на определенный срок.

Плагин очень гибкий и удобный в настройке. Плагин может работать как SQL так и с MySQL базой.
В архиве только ядро меню, Модули нужно ставить отдельно. 
 

Установка:
1)
 Распаковать архив и раскидать файлы по папкам на сервере.

Расположение файлов и краткое описанние

Скрытый текст

Путь: addons/sourcemod/data/vip/cfg/
Файлы:
users.ini - Файл с VIP-игроками
groups.ini - Файл с VIP-группами
times.ini - Файл с временем в админ-меню
sort_menu.ini - Файл сортировки пунктов в VIP-меню

Путь: addons/sourcemod/data/vip/info/
Файлы:
expired_info.txt - Файл с информацией о истекшем VIP-статусе
no_access_info.txt - Файл с информацией об отсутствии VIP-статуса

Путь: addons/sourcemod/data/vip/modules/
Файлы:
downloadlist.txt - Файл со списком файлов для загрузки клиентам.

Путь: addons/sourcemod/plugins/vip/
Файлы:
VIP_Core.smx - Основной плагин-ядро.

Путь: addons/sourcemod/scripting/include/
Файлы:
vip_core.inc - Библиотека для компиляции.

Путь: addons/sourcemod/translations/
Файлы:
vip_core.phrases.txt - Файл перевода ядра.
vip_modules.phrases.txt - Файл перевода модулей.

Путь: cfg/vip/
Файлы:
vip_core.cfg - Файл с настройками ядра.

2) Если хотите использовать MySQL базу, необходимо в databases.cfg прописать:

"vip"
{
    "driver"        "mysql"
    "host"            "ip"        // ip сервера где находится ваш mysql
    "database"        "vip"        // название базы данных
    "user"            "root"        // имя пользователя базы данных
    "pass"            "pass"        // пароль для этого пользователя
}

При использовании SQLite базы она будет храниться здесь: addons/sourcemod/data/sqlite/vip.sq3

3) Настроить конфиг cfg/vip/VIP_Core.cfg(будет создан автоматически после первого запуска)

4) Установить необходимые модули(будут добавлены чучуть позднее)

5) Для тех кто любит поковырять представлена глубокая настройка и конфигурация:

Настройка информации

Скрытый текст

Настраивается в addons/sourcemod/data/vip/info/
expired_info.txt - Файл с информацией о истекшем VIP-статусе
no_access_info.txt - Файл с информацией об отсутствии VIP-статуса

Зависит от переменной sm_vip_info_show_mode
Если равно 0

Вывод будет происходить построчно в чат. Цвета: {DEFAULT} - золотой {LIGHTGREEN} - салатовый {GREEN} - зеленый HTML цвета, например: #FFFFAA

Если равно 1

Выводится будет построчно в меню.

Если равно 2

Необходимо просто указывать ссылку на страницу, которую необходимо открыть. Например: http://mysite.com/vip_noaccess.html

Сортировка меню
 

Скрытый текст

Настраивается в addons/sourcemod/data/vip/cfg/sort_menu.ini
Вписываете в нужно порядке уникальные имена файлов и подменю.
Пример:

HP

Armor

Money

Speed

Всё что не вписано в данный файл будет идти поcле отсортированых пунктов в случайном порядке.

Настройка groups.ini
 

Скрытый текст

В группах секции отсутствуют.
Каждый ключ – это имя группы.
Параметры в ней такие же как и в индивидуальных правах.
Пример настройки файла

Скрытый текст

"VIP_GROUPS"
{
    "vip1" // Имя группы
    {
        // Параметры
        "HP"            "120"    // Сколько хп будет при спавне
        "Armor"            "100"    // Сколько брони будет при спавне
        "Money"            "16000"    // Сколько денег будет при спавне
        "QuickDefuse"    "1"        // Включает опцию быстрого дефуза
        "Speed"            "1.3"    // Дает установленную скорость (1.0 - норма)
        "RegenHP"        "5"        // Сколько едениц хп в секунду будет восстанавливаться
        "RegenArmor"    "5"        // Сколько едениц брони в секунду будет восстанавливаться
    }

    "vip2" // Имя группы
    {
        // Параметры
        "HP"            "120"    // Сколько хп будет при спавне
        "Speed"            "1.3"    // Дает установленную скорость (1.0 - норма)
        "RegenHP"        "5"        // Сколько едениц хп в секунду будет восстанавливаться
        "RegenArmor"    "5"        // Сколько едениц брони в секунду будет восстанавливаться
    }

 

Сортировка пунктов в Админ меню

Скрытый текст

 "vip_admin"
    {
        "item"        "add_vip"
        "item"        "edit_vip"
        "item"        "del_vip"
        "item"        "list_vip"
        "item"        "reload_vip_players"
        "item"        "reload_vip_cfg"
    }

Команды:
<параметр> - обязательный параметр.
[параметр] - необязательный параметр.

sm_refresh_vips - Перезагружает список VIP-игроков.

sm_reload_vip_cfg - Перезагружает настройки VIP (обновляет группы и выполняет sm_refresh_vips).

sm_delvip <steam_id> - удаляет VIP-игрока

sm_addvip <identity type> <name|#userid|identity> [time] [group] - добавляет VIP-игрока.(Пример sm_addvip file_delete 10 1)

<identity type> это метод идентификации: steam, ip, name.
<name|#userid|identity> это идентификатор ник или юзер айди если игрок на сервере, иначе либо стим/ип/ник.
[time] - время в единицах указанных в конфиге VIP_Core.cfg (Смотрите внимательно sm_vip_time_mode)
[group] - VIP-группа.

 

Модули для данного ядра будут добавлены в сообщениях ниже этого

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах





Установка модулей для ядра

 

1) Распаковать архив и разложить файлы по папкам на сервере.

2) Дописать фразы в файл перевода модулей addons/sourcemod/translations/vip_modules.phrases.txt (Написано в описании к каждому модулю. Если отсутствует - пропустите этот пункт)

3) Настроить конфиг модуля. Находится addons/sourcemod/data/vip/modules/ (Написано в описании к каждому модулю. Если отсутствует - пропустите этот пункт)

4) Прописать нужным VIP-группам параметры, которые добавляет модуль. Находится addons/sourcemod/data/vip/cfg/groups.ini (Написано в описании к каждому модулю. Если отсутствует - пропустите этот пункт)

5) После запуска модуля, будет создан конфиг. Находится cfg/vip/ (Написано в описании к каждому модулю. Если отсутствует - пропустите этот пункт)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

[VIP] Admin

Описание:
Позволяет выдавать игрокам VIP-статус по админ-группе и админ-флагам.

Настройка:
Настройка в файле addons/sourcemod/data/vip/cfg/vip_admin_users.ini
 

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

[VIP] Test

Описание:
Позволяет игрокам получить VIP-статус на пробный период.

Cvar`s:

sm_vip_test_time "120" - На сколько времени выдавать тестовый VIP-статус (значение зависит от sm_vip_time_mode)
sm_vip_test_group "test_vip" - Группа для тестового VIP-статуса
sm_vip_test_interval "3600" - Через сколько времени можно повторно брать тестовый VIP-статус (значение зависит от sm_vip_time_mode) (0 - Запретить брать повторно)

Конфиг генерируется автоматически /cfg/vip/vip_test.cfg

Команды:
В чате:
!testvip, /testvip, !viptest, /viptest

В консоль:
sm_testvip, sm_viptest

Для админа:
sm_clear_viptest - очищает базу данных, с игроками бравшими пробный VIP-статус.

Если вы хотите переключить плагин на работу с MySQL нужно в databases.cfg прописать:

"vip_test"
{
    "driver"        "mysql"
    "host"            "ip"            // ip сервера где находится ваш mysql
    "database"        "vip_test"        // название базы данных
    "user"            "root"            // имя пользователя базы данных
    "pass"            "pass"            // пароль для этого пользователя
}

Если у вас версия Sourcemod ниже 1.6.0

Замените строку 

GetClientAuthId(iClient, AuthId_Steam2, sAuth, sizeof(sAuth));

на

GetClientAuthString(iClient, sAuth, sizeof(sAuth));

Если у вас показывает ошибку

Native "KeyValues.SetString" was not found

нужно перекомпилировать плагин на версии Sourcemod выше 1.6.3 Компиляция плагина

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Irkutsk86
      Что делает скрипт :

      Скрипт добавляет на ваш сервер систему выдачи лута при появлении игрока, либо определенного лута человеку по steamid64 (донатеру к примеру).

      Как это сделать?
      Для этого нам понадобится зайти в главную папку с вашей картой, к примеру чернарусь (Путь: DayZServer\mpmissions\dayzOffline.chernarusplus)

      После того как вы зашли, в этой папке нужно найти файл с названием init.c

      Открываем файл и видим строки кода, нам нужна строчка с началом ( class CustomMission: MissionServer ).

      Начиная с нее нам нужно вставить код до строчки как на скриншоте клик
      class CustomMission : MissionServer { private const static string m_SpawnLoadoutDirectory = "$profile:SpawnLoadout/"; // root directory for SpawnLoadout private const static string m_DonatorDirectory = m_SpawnLoadoutDirectory + "Donators/"; // directory for donator loadout text files private const static string m_RegularLoadout = m_SpawnLoadoutDirectory + "Regular.txt"; // file for regular loadout private const static string m_CommonItems = m_SpawnLoadoutDirectory + "CommonItems.txt"; // file for in common items for both regular and donator void CustomMission() { FileHandle templateFile; if (!FileExist(m_SpawnLoadoutDirectory)) { MakeDirectory(m_SpawnLoadoutDirectory) // create default CommonItems.txt templateFile = OpenFile(m_CommonItems, FileMode.WRITE); FPrintln(templateFile, "Rag 4\nHuntingKnife\nMatchbox\nHatchet\nFlashlight\nBattery9V\nSodaCan_Cola\nBakedBeansCan"); CloseFile(templateFile); // create default Regular.txt templateFile = OpenFile(m_RegularLoadout, FileMode.WRITE); FPrintln(templateFile, "BomberJacket_Grey\nJeans_Black\nTaloonBag_Blue\nAthleticShoes_Grey"); CloseFile(templateFile); } if (!FileExist(m_DonatorDirectory)) { string template = GetDonatorFile("STEAMIDHERE"); MakeDirectory(m_DonatorDirectory); // create template donator file templateFile = OpenFile(template, FileMode.WRITE); FPrintln(templateFile, "BomberJacket_Blue\nJeans_Grey\nTaloonBag_Orange\nAthleticShoes_Brown"); CloseFile(templateFile); } } //!!! REPLACES EXISTING METHOD override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { player.RemoveAllItems(); // clear all default spawning items FileHandle donatorFile; string line; TStringArray contents = new TStringArray(); string file = GetDonatorFile(player.GetIdentity().GetPlainId()); if (FileExist(file)) { SpawnLoadout(player, ReadFileLines(file)); // spawn donator loadout return; } SpawnLoadout(player, ReadFileLines(m_RegularLoadout)); // spawn regular player loadout } private void SpawnLoadout(PlayerBase player, ref TStringArray loadout) { FileHandle loadoutFile; string line; // creates clothes loadout foreach (string clothes : loadout) player.GetInventory().CreateInInventory(clothes); // creates common items TStringArray items = ReadFileLines(m_CommonItems); foreach (string item : items) { if (item.Contains(" ")) // check for space, which signifies a quantity item { CreateQuantityItem(player, item); continue; } player.GetInventory().CreateInInventory(item); } } private void CreateQuantityItem(PlayerBase player, string item) { TStringArray quantity = new TStringArray(); item.Split(" ", quantity); ItemBase quantityItem = player.GetInventory().CreateInInventory(quantity[0]); quantityItem.SetQuantity(quantity[1].ToFloat()); } private string GetDonatorFile(string id) { return string.Format("%1%2.txt", m_DonatorDirectory, id); } private TStringArray ReadFileLines(string path) { FileHandle file; string line; TStringArray contents = new TStringArray(); file = OpenFile(path, FileMode.READ); while (FGets(file, line) > 0) { line.Trim(); if (line != string.Empty) { contents.Insert(line); line = string.Empty; } } CloseFile(file); return contents; } }; После того как вы вставили код, сохраняйте файл. И запускайте сервер!

      Если ничего не вылезло и сервер нормально запустился, в папке profiles появится папка Spawnloadout.
      В ней вы видите файлы: Regular.txt ; CommonItems.txt
      Эти файлы нужны для стартового снаряжения игрока при спавне. Regular - Для одежды ; CommonItems - Для предметов

      Папка Donator отвечает за кастомные сета игрокам по SteamID64. В этой папке будет файл STEAMIDHERE.txt
      Чтобы прописать сет по SteamID64 нужно изменить название файла и в нем прописать все что нужно выдавать игроку, тут нету разделения на файлы, все нужно писать в 1 файл (Чтобы небыло багов пишите сначало одежду а потом предметы)

      Все обновляется в реальном времени ничего перезапускать не нужно.
       
      P.S: Автор не я !!!
    • Автор: TokZe
      Добрый вечер, знающие подскажите как реализовать продажу через сайт, без очереди и вип!
      также как вывести топ игроков на сайт
    • Автор: Plusiq
      Искал, нигде не нашёл... В общем идея такова- нужно чтобы трейдеры могли продавать только VIP игрокам (Донат) по айди, как это сделать? Помогите.. Заранее спасибо
    • Автор: ZizionarD
      Приветствую, сейчас вы узнаете как настроить плагин DynMap 
      Первым делом конечно же нам нужно его скачать
       
      Далее бросаем его в папку Plugins, за тем запускаем наш сервер, ждём пока прогрузится и​ выключаем, установка завершена!!! =)​ Переходим к настройке:​ 1) Идём в папку Ваш сервер/plugins/DynMap​ 2) Ищем файл "configuration.txt" и открываем.​ 3) Находим строку: cyrillic-support: false Меняем на:
      cyrillic-support: true (Это нужно сделать для того, что бы нормально отображались Русские символы)
      4) Далее ищем строки:
      #scrollback: 100 #visiblelines: 10 Раскомментируем их, то есть убираем "#"
      Получиться:
      scrollback: 100 visiblelines: 10 5) Потом ищем строку:
      webserver-port: Меняем на желаемый порт (Внимание, ни когда не ставьте порт соответствующий порту сервера!!! Пример: ip сервера - 0.0.0.0:25565, не ставьте 25565 на вебсервер - порт (Будут конфликты и нечего не будет работать!)
      6) На DynMap нельзя банить кого-то! В таком случае я отключил чат и советую всем! Вот инструкция: ищем allowwebchat: true Меняем на:
      allowwebchat: false 7) В панели есть слой "Cave" он отображает пещеры карты, что бы его удалить: Ищем файл: plugins/dynmap/templates/normal-hires.txt Копируем и создаем такой же файл с названием "custom-normal-hires.txt" Потом заходим в "custom-normal-hires.txt" Ищем строки: - class: org.dynmap.hdmap.HDMap name: cave title: "Cave" prefix: ct perspective: iso_SE_60_lowres shader: cave lighting: default mapzoomin: 3 И удаляем их
      8) Задаётесь вопросом "Как скрыть игрока на карте ?" Ответ: в чат введите команду "/dynmap hide Имя Игрока" Тем вы скроете игрока на карте. 9) Задаётесь вопросом "Как же скрыть всех игроков кроме определённых?" Ответ: В файле конфигураций (configuration.txt) ищем строчку "display-whitelist:" И просто ставим "True" Но как же отобразить определённых игроков, спросите вы? Легко! Просто надо в чат ввести великолепную команду: "/dynmap show Имя Игрока" 10) Если на вашем сервере есть моды, ищите строчку с началом "ic2" после этой строки будут функции для включения модов в DynMap (Перед функцией уберите "#") 11) Если карта плохо прогружается введите в чат /dynmap fullrender   Источник: Rubukkit.org Понравился гайд? Не поленись и поставь +
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.