[VIP] Core

[VIP] Core 3.0.1R

Нет прав для скачивания

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #1
Пользователь R1KO разместил новый ресурс:

[VIP] Core - Ядро VIP-плагина

Плагин позволяет выдавать игрокам VIP-статус навсегда или на определенный срок.
Учитывая модульную систему плагина вы всегда имеете возможность расширить функционал плагина.
Плагин очень гибкий и удобный в настройке.

Плагин может работать как SQL так и с MySQL базой.



Для благодарностей:
Многие подумают что я наглею, я не требую что либо мне платить, но я трачу много своего времени и сил на этот плагин. А мог бы потратить на приватные плагины, за которые получу плату....

Узнать больше об этом ресурсе...


Сборка для CS:S от Steammerr: [VIP] Core (не актуально)

[VIP] Core

Текущая версия: 1.1.4 R


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

Подробнее об установке и настройке -> F.A.Q.





Видео инструкция (Кликабельно)

Все файлы сохраняйте в кодировке UTF-8 Без BOM Редактором notepad++


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

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

Если равно 1:
C-подобный:
Выводится будет построчно в меню.

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

Настраивается в addons/sourcemod/data/vip/cfg/sort_menu.ini
Вписываете в нужно порядке уникальные имена ф-й и подменю.
Пример:
C-подобный:
HP
Armor
Money
Speed
Всё что не вписано в данный файл будет идти поле отсортированых пунктов в случайном порядке.

Для начала введем базовые понятия и определения:
И того мы имеем 3 секции: NAMES, ADMIN_GROUPS, ADMIN_FLAGS.
В каждой из них и отдельно от них может быть сколько угодно ключей.
Каждый ключ это идентификатор VIP-игрока.
Вне секций - это Steam ID или IP-адрес, внутри секции NAMES - это ник игрока, внутри ADMIN_GROUPS - это имя админ-группы, в ADMIN_FLAGS – один или несколько админ-флагов.
Внутри каждого ключа имеются параметры, которые имеют свое значение.
Каждый параметр является уникальным.

Изначально ядро имеет такие встроенные параметры:
  1. "expires" – Параметр указывает срок окончания VIP-статуса. (unix время). Если равен 0 или не указан – срок неограничен. Подробнее о unix времени http://www.cy-pr.com/tools/time/
  2. "name" – Имя игрока. Может отсутствовать. Нужно для отображения игрока в меню.
  3. "vip_group" – VIP-группа, которую получает игрок.
  4. "client_cvar" – Указывает ключ для ввода пароля (Пояснение ниже).
  5. "password" – Пароль.

Пояснение: Если указано
C-подобный:
"password"        "qwerty123456"        // Пароль
"client_cvar"    "vip_password"        // Ключ пароля
То перед входом игрок должен написать в консоль:
setinfo "vip_password" "qwerty123456"
Если "client_cvar" не указан он будет иметь значение "vip".

C-подобный:
"VIP_USERS"
{
    "STEAM_0:1:935667"    // Ключ (Steam ID игрока)
    {
        // Параметры
        "expires"    "1416749999"    // Время, когда истекает срок
        "name"        "Player 1"        // Ник
        "vip_group"    "vip1"            // VIP-группа
    }

    "84.45.23.325"    // Ключ (IP-адрес игрока)
    {
        // Параметры
        "expires"    "0"                // Время, когда истекает срок
        "name"        "Player 2"      // Ник
        "vip_group"    "vip2"          // VIP-группа
    }

    "ADMIN_FLAGS"    // Секция
    {
        "abcef"    // Админ-флаги
        {
            // Параметры
            "vip_group"        "vip1"    // VIP-группа
        }
        "zmnop"    // Админ-флаги
        {
            // Параметры
            "vip_group"        "vip2"    // VIP-группа
        }
    }

    "ADMIN_GROUPS"    // Секция
    {
        "s_admin"    // Админ-группа
        {
            // Параметры
            "vip_group"        "vip1"    // VIP-группа
        }
        "Full_Admin"    // Админ-группа
        {
            // Параметры
            "vip_group"        "vip2"    // VIP-группа
        }
    }

    "NAMES"    // Секция
    {
        "rak"    // Ник игрока
        {
            // Параметры
            "vip_group"        "vip1"        // VIP-группа
            "password"        "pas123"    // Пароль
        }
        "bot"    // Ник игрока
        {
            // Параметры
            "vip_group"        "vip2"            // VIP-группа
            "password"        "0123456789"    // Пароль
        }
        "lalka"    // Ник игрока
        {
            // Параметры
            "vip_group"        "vip1"        // VIP-группа
            "password"        "kl325l"    // Пароль
        }
    }
}

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

C-подобный:
"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"        // Сколько едениц брони в секунду будет восстанавливаться
    }
}

C-подобный:
"TIMES"
{
    "0"    // Время в секундах
    {
        "ru"    "Навсегда"    // Отображение в меню
        "en"    "Permanent"    // Отображение в меню
    }

    "3600"    // Время в секундах
    {
        "ru"    "1 Час"    // Отображение в меню
    }

    "86400"    // Время в секундах
    {
        "ru"    "1 Сутки"    // Отображение в меню
    }

    "604800"    // Время в секундах
    {
        "ru"    "1 Неделя"    // Отображение в меню
    }

    "2592000"    // Время в секундах
    {
        "ru"    "1 Месяц"    // Отображение в меню
    }

    "15552000"    // Время в секундах
    {
        "ru"    "6 Месяцев"    // Отображение в меню
    }
}

Для сортировки пунктов админ меню в addons/sourcemod/configs/adminmenu_sorting.txt добавьте
C-подобный:
    "vip_admin"
    {
        "item"        "add_vip"
        "item"        "edit_vip"
        "item"        "del_vip"
        "item"        "list_vip"
        "item"        "reload_vip_players"
        "item"        "reload_vip_cfg"
    }

Все команды работают в чате через ![/B] и /

Команды вызова VIP-меню:
  • vip
  • vipmenu
  • sm_vip
  • sm_vipmenu
  • мшз

Команды перезагрузки списока VIP-игроков
  • sm_vip_reload
  • sm_reload_vip

Команды перезагрузки конфигов
  • sm_vip_reload_cfg
  • sm_vip_cfg_reload
  • sm_reload_vip_cfg

Команда для удаления VIP-игроков:
sm_delvip <идентификатор>

Индентификатором может быть: стим, ник, айпи, админ-флаги, админ-группа.

Команда для добавления VIP-игроков:

sm_addvip <identity type> <name|#userid|identity> [time] [group]


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

Берите все параметры в кавычки "


СПИСОК МОДУЛЕЙ

C-подобный:
1.0.0 R -    Релиз (2.01.2015)

1.0.1 R -    Обновление (2.01.2015)
            Исправлен баг с исчезанием админки.
            Исправлено неудаление VIP-статуса во время игры.
            Исправлена ошибка [SM] Native "VIP_IsClientFeatureUse" reported: Client 1 is not VIP.
            Изменен натив VIP_CheckClient.
            Изменен натив VIP_RegisterFeature.
            Изменен натив VIP_GetFeature.
            Исправлена ошибка с возвращение не в то меню.
            Исправлены все ошибки с продлением/сокращением времени.
            Время отображения информационных меню установлено в 30 секунд.
            Оптимизирован код.
            Полностью весь текст вынесен в перевод.
            Добавлен перевод на немецкий.
            Добавлен отдельный файл перевода для модулей (vip_modules.phrases.txt).
            Изменены имена структур конфигов (для устранения бага с пропажей админки).

1.0.2 R -    Обновление (9.01.2015)
            Исправлена проблема при выдаче VIP по админ-флагам.
            Добавлен квар sm_vip_delete_expired

1.0.3 R -    Обновление (14.01.2015)
            Исправлены найденные баги и ошибки.
            Сделана зависимость форвардов от нативов (теперь при вызове натива смены статуса ф-и будет вызываться форвард).
            Добавлен квар sm_vip_admin_flag.
            Добавлен файл со списком файлов для загрузки клиентам.
            Выключен дебаг режим.

1.0.4 R -    Обновление (23.01.2015)
            Исправлена проблема с кваром sm_vip_admin_flag.
            Добавлены нативы:
                VIP_GetClientAccessTime
                VIP_SetClientVIP
                VIP_IsValidVIPGroup
            В файл перевода модулей vip_modules.phrases.txt добавлены фразы из всех существующих модулей.

1.1.0 R -    Обновление (13.03.2015)
            Добавлены квары: sm_vip_info_show_mode, sm_vip_kick_not_authorized, sm_vip_spawn_delay.
            Изменен натив: VIP_RegisterFeature.
            Удалены нативы:
                VIP_GetFeature,
                VIP_RegisterMenuOption,
                VIP_GetMenuOption,
                VIP_IsValidMenuOption.
            Добавлен натив:
                VIP_GetClientVIPGroup
            Добавлен форард:
                VIP_OnVIPClientExpired
            Исправлены найденные ошибки и недоработки (в том числе не обнаруженные в процессе тестирования).
            Оптимизирован код.
            Исправлена проблема с выдачей VIP по админ-флагам.
            Испрвлены баги из-за кавычек в нике игрока.
            Расширен функционал информационных сообщений.
            Исправлен перевод.
            Ощищены конфиги в архиве ядра.
            Исправлено меню изменения срока VIP-игрока.
            Добавлена возможность сортировки пунктов в меню ([i]addons/sourcemod/data/vip/cfg/sort_menu.ini[/i])
            Добавлена возможность добавления для скачки целых папок (просто указываете путь к папке)
1.1.1 R -    Обновление (21.03.2015)
            Пофикшены мелкие недоработки.
            Добавлены нативы:
                VIP_TimeToSeconds,
                VIP_SecondsToTime.
            Исправлены ошибки в описании функций в библиотеке.
            Расширены возможные значения: sm_vip_time_mode
1.1.2 R -    Обновление (02.07.2015)
            Вырезан список VIP-игроков онлайн.
            Исправлен не работаютщий sm_vip_delete_expired.
            Удалены cvar`s:
                sm_vip_admin_flag (Временно),
                sm_vip_list_online,
                sm_vip_menu_commands (Временно).
            Пофикшены мелкие недоработки.
            Изменена работа функции отображения пункта в меню.
            Изменены нативы:
                VIP_GetClientAccessTime - теперь от возвращает время окончания VIP-прав у игрока (unix),
                VIP_SetClientVIP.
            Изменен форвард:
                VIP_OnVIPClientRemoved.
            Добавлены нативы:
                VIP_SetClientAccessTime,
                VIP_SetClientVIPGroup,
                VIP_GetClientAuthType,
                VIP_GetVIPClientTrie,
                VIP_PrintToChatClient,
                VIP_PrintToChatAll,
                VIP_LogMessage,
                VIP_RemoveClientVIP,
                VIP_UnregisterFeature,
                VIP_GetTimeFromStamp,
                VIP_AddStringToggleStatus.
            Добавлено полное описание ф-й в библиотеке.
            Исправлены ошибки в описании функций в библиотеке.
            Оптимизирован код.
            Теперь при входе VIP-игрока и при окончании прав у игрока для ф-й типа TOGGLABLE будет вызываться ItemSelectCallback.
            Добавлен финский перевод.
            Теперь управление VIP доступно только по флагу z. Для изменения используйте [URL="https://wiki.alliedmods.net/Ru:Overriding_Command_Access_(SourceMod)"][B]это[/B][/URL].
            VIP-меню вызывается консольными командами:
                vip, vipmenu, sm_vip, sm_vipmenu, мшз (так же через ! и / в чате).
            Добавлено несколько админских команд:
                sm_vip_reload, sm_reload_vip - Перезагрузить список VIP-игроков.
                sm_vip_reload_cfg, sm_vip_cfg_reload, sm_reload_vip_cfg - Перезагрузить конфиги.
1.1.3 R -    Обновление (04.07.2015)
            Исправлены ошибки:
                Native "..." reported: Client 5 is not loaded - при входе.
                Native "..." reported: Client 5 is not VIP - при входе.
                Native "GetArrayCell" reported: Invalid index 0 (count: 0) - при пустых информационных сообщениях.
            Исправлено не удаление прав у игрока с временным VIP-статусом (VIP TEST).
            Изменен алгоритм удаления игрока с истекшими правами.
            Оптимизирован код.
            Теперь точно исправлен не работаютщий sm_vip_delete_expired.
            В перевод добавлены фразы из новых модулей.
1.1.4 R -    Обновление (02.02.2016)
            Многочисленные исправления и доработки
            Вернул квар настройки команд вызова VIP-меню
            Оптимизирован код.
            В перевод добавлены фразы из новых модулей.


Обо всех проблемах писать СЮДА.
Все предложения по улучшению и идеи для модулей писать СЮДА.


Благодарности:
Хочу выразить огромную благодарность всем, кто меня вдохновлял и помогал тестировать.
Отдельное спасибо:
The Night Fury - за перевод на немецкий и исправление английского
FrozDark, Reiko1231 - за помощь в решении ошибок и консультации
Andy Freeman - за тестирование и перевод на финский.
максимка27, hanson, Sam_Fisher, komashchenko, Александр Радаев, pokypka20, Razor - за тестирование
Кого не написал - не обижайтесь, я искреннее благодарен, просто не всех сразу вспомнил и нашел.


Для благодарностей:
Многие подумают что я наглею, я не требую что либо мне платить, но я трачу много своего времени и сил на этот плагин. А мог бы потратить на приватные плагины, за которые получу плату. Поэтому если кто-то хочет выразить благодарность в материальном виде:



R408894298752
U503894224829




41001661357845

Скачать ресурс: Посмотреть вложение VIP_Core_1.1.4 R.zip
 
Последнее редактирование модератором:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #2
Re: [VIP] Core

Плагин обновлен до верси 1.0.1 R

Список изменений:
C-подобный:
1.0.1 R - Обновление (8.01.2015)
			Исправлен баг с исчезанием админки.
			Исправлено неудаление VIP-статуса во время игры.
			Исправлена ошибка [SM] Native "VIP_IsClientFeatureUse" reported: Client 1 is not VIP.
			Изменен натив VIP_CheckClient.
			Изменен натив VIP_RegisterFeature.
			Изменен натив VIP_GetFeature.
			Исправлена ошибка с возвращением не в то меню.
			Исправлены все ошибки с продлением/сокращением времени.
			Время отображения информационных меню установлено в 30 секунд.
			Оптимизирован код.
			Полностью весь текст вынесен в перевод.
			Добавлен перевод на немецкий.
			Добавлен отдельный файл перевода для модулей (vip_modules.phrases.txt).
			Изменены имена структур конфигов (для устранения бага с пропажей админки).


Старые конфиги использовать нельзя!


P.S. Тему почистил
 
Последнее редактирование:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #3
Re: [VIP] Core

Обновил плагин до версии 1.0.3 R

Список изменений:
C-подобный:
1.0.3 R - Обновление (14.01.2015)
			Исправлена найденные баги и ошибки.
			Сделана зависимость форвардов от нативов (теперь при вызове натива смены статуса ф-и будет вызываться форвард).
			Добавлен квар sm_vip_admin_flag.
			Добавлен файл со списком файлов для загрузки клиентам.
			Выключен дебаг режим.
 
Последнее редактирование:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #4
Re: [VIP] Core

Обновил плагин до версии 1.0.4 R

Список изменений:
C-подобный:
1.0.4 R - Обновление (23.01.2015)
			Исправлена проблема с кваром sm_vip_admin_flag.
			Добавлены нативы:
				VIP_GetClientAccessTime
				VIP_SetClientVIP
				VIP_IsValidVIPGroup
			В файл перевода модулей vip_modules.phrases.txt добавлены фразы из всех существующих модулей.
 

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #5
Re: [VIP] Core

Плагин обновлен до версии 1.1.0 R.

C-подобный:
1.1.0 R - Обновление (13.03.2015)
			Добавлены квары: sm_vip_info_show_mode, sm_vip_kick_not_authorized, sm_vip_spawn_delay.
			Изменен натив: VIP_RegisterFeature.
			Удалены нативы:
				VIP_GetFeature,
				VIP_RegisterMenuOption,
				VIP_GetMenuOption,
				VIP_IsValidMenuOption.
			Добавлен натив:
				VIP_GetClientVIPGroup
			Добавлен форард:
				VIP_OnVIPClientExpired
			Исправлены найденные ошибки и недоработки (в том числе не обнаруженные в процессе тестирования).
			Оптимизирован код.
			Исправлена проблема с выдачей VIP по админ-флагам.
			Испрвлены баги из-за кавычек в нике игрока.
			Расширен функционал информационных сообщений.
			Исправлен перевод.
			Ощищены конфиги в архиве ядра.
			Исправлено меню изменения срока VIP-игрока.
			Добавлена возможность сортировки пунктов в меню ([i]addons/sourcemod/data/vip/cfg/sort_menu.ini[/i])
			Добавлена возможность добавления для скачки целых папок (просто указываете путь к папке)
 

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #6
Re: [VIP] Core

Плагин обновлен до версии 1.1.1 R.

C-подобный:
1.1.1 R - Обновление (21.03.2015)
			Пофикшены мелкие недоработки.
			Добавлены нативы:
				VIP_TimeToSeconds,
				VIP_SecondsToTime.
			Исправлены ошибки в описании функций в библиотеке.	
			Расширены возможные значения: sm_vip_time_mode
 
Последнее редактирование:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #7
Re: [VIP] Core 1.1.1 R

Пробуйте такой вариант для CS:GO

Указываете ссылку так:
C-подобный:
http://r1ko_vip.ua/expired_info_ex.html

На самой странице expired_info_ex.html
Такой код:
PHP:
<html>
<head>
<script type="text/javascript">
window.onload = function(){
    var popup=window.open("http://r1ko_vip.ua/expired_info.html","Title","height=720,width=1280");
};
</script>
</head>
<body>
</body>
</html

Где http://r1ko_vip.ua/expired_info.html - уже сама страница с нужной инфой.

Для остальных инфо так же.

Отпишитесь работает ли.
 

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #8
Re: [VIP] Core 1.1.1 R

Плагин обновлен до версии 1.1.2 R

Список изменений:
C-подобный:
1.1.2 R - Обновление (02.07.2015)
            Вырезан список VIP-игроков онлайн.
            Исправлен не работаютщий sm_vip_delete_expired.
            Удалены cvar`s:
                sm_vip_admin_flag,
                sm_vip_list_online,
                sm_vip_menu_commands.
            Пофикшены мелкие недоработки.
            Изменена работа функции отображения пункта в меню.
            Изменены нативы:
                VIP_GetClientAccessTime - теперь от возвращает время окончания VIP-прав у игрока (unix),
                VIP_SetClientVIP.
            Изменен форвард:
                VIP_OnVIPClientRemoved.
            Добавлены нативы:
                VIP_SetClientAccessTime,
                VIP_SetClientVIPGroup,
                VIP_GetClientAuthType,
                VIP_GetVIPClientTrie,
                VIP_PrintToChatClient,
                VIP_PrintToChatAll,
                VIP_LogMessage,
                VIP_RemoveClientVIP,
                VIP_UnregisterFeature,
                VIP_GetTimeFromStamp,
                VIP_AddStringToggleStatus.
            Добавлено полное описание ф-й в библиотеке.
            Исправлены ошибки в описании функций в библиотеке.
            Оптимизирован код.
            Теперь при входе VIP-игрока и при окончании прав у игрока для ф-й типа TOGGLABLE будет вызываться ItemSelectCallback.
            Добавлен финский перевод.
            Теперь управление VIP доступно только по флагу z. Для изменения используйте [URL="https://wiki.alliedmods.net/Ru:Overriding_Command_Access_(SourceMod)"][B]это[/B][/URL].
            VIP-меню вызывается консольными командами:
                vip, vipmenu, sm_vip, sm_vipmenu, мшз (так же через ! и / в чате).
            Добавлено несколько админских команд:
                sm_vip_reload, sm_reload_vip - Перезагрузить список VIP-игроков.
                sm_vip_reload_cfg, sm_vip_cfg_reload, sm_reload_vip_cfg - Перезагрузить конфиги.
 
Последнее редактирование:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #9
Плагин обновлен до версии 1.1.3 R

Список изменений:
C-подобный:
1.1.3 R - Обновление (04.07.2015)
            Исправлены ошибки:
                Native "..." reported: Client 5 is not loaded - при входе.
                Native "..." reported: Client 5 is not VIP - при входе.
                Native "GetArrayCell" reported: Invalid index 0 (count: 0) - при пустых информационных сообщениях.
            Исправлено не удаление прав у игрока с временным VIP-статусом (VIP TEST).
            Изменен алгоритм удаления игрока с истекшими правами.
            Оптимизирован код.
            Теперь точно исправлен не работаютщий sm_vip_delete_expired.
            В перевод добавлены фразы из новых модулей.
 
Последнее редактирование:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #10
Версия 2.0.0 будет использовать SQL/MySQL базу.

Добавлять/удалять/изменять випов можно будет только из админки или командой. Нельзя будет управлять или через файл.
Это даже лучше - будет защита от криворукости.
Если консольные команды не удобные - предлагайте свои варианты. Постараюсь сделать максимально просто и гибко. Чтобы каждый был доволен.
Все модули будут полностью совместимы.

Для использования MySQL в databases.cfg прописать:
C-подобный:
"vip"
{
    "driver"        "mysql"
    "host"            "ip"        // ip сервера где находится ваш mysql
    "database"        "vip"        // название базы данных
    "user"            "root"        // имя пользователя базы данных
    "pass"            "pass"        // пароль для этого пользователя
}

Структура БД:
PHP:
if (g_bDBMySQL)
    {
        SQL_TQuery(g_hDatabase, SQL_Callback_ErrorCheck,    "CREATE TABLE IF NOT EXISTS `vip_users` (\
                                                                        `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, \
                                                                        `auth` VARCHAR(64) UNIQUE NULL default NULL, \
                                                                        `name` VARCHAR(64) NOT NULL default 'unknown', \
                                                                        `auth_type` TINYINT(2) UNSIGNED NOT NULL default '0', \
                                                                        `pass_key` VARCHAR(64) default NULL, \
                                                                        `password` VARCHAR(64) default NULL, \
                                                                        PRIMARY KEY (`id`), \
                                                                        UNIQUE KEY `auth_id` (`auth`)) ENGINE=InnoDB default CHARSET=utf8 AUTO_INCREMENT=1;");

        SQL_TQuery(g_hDatabase, SQL_Callback_ErrorCheck,    "CREATE TABLE IF NOT EXISTS `vip_overrides` (\
                                                                        `user_id` INT(10) UNSIGNED NOT NULL, \
                                                                        `server_id` INT(10) UNSIGNED NOT NULL, \
                                                                        `group` VARCHAR(64) default NULL, \
                                                                        `expires` INT(10) UNSIGNED NOT NULL default '0', \
                                                                        PRIMARY KEY (`user_id`, `server_id`), \
                                                                        UNIQUE KEY `user_id` (`user_id`, `server_id`), \
                                                                        CONSTRAINT `vip_overrides_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `vip_users` (`id`)  ON DELETE CASCADE ON UPDATE CASCADE\
                                                                        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
    }
    else
    {
        SQL_TQuery(g_hDatabase, SQL_Callback_ErrorCheck,    "CREATE TABLE IF NOT EXISTS `vip_users` (\
                                                                        `id` INTEGER PRIMARY KEY AUTOINCREMENT, \
                                                                        `auth` VARCHAR(32) UNIQUE NULL default NULL, \
                                                                        `name` VARCHAR(64) NOT NULL default 'unknown', \
                                                                        `ip` VARCHAR(32) default NULL, \
                                                                        `auth_type` INTEGER UNSIGNED NOT NULL default '0', \
                                                                        `pass_key` VARCHAR(64) default NULL, \
                                                                        `password` VARCHAR(64) default NULL, \
                                                                        `group` VARCHAR(64) default NULL, \
                                                                        `expires` INTEGER UNSIGNED NOT NULL default '0');");
    }


Как перевести старых випов на новую випку -> Портирование VIP-игроков

Changelog:
C-подобный:
Обновление 2.0.0 DEV - 16.07.2015:
Сделано удаление VIP-игроков консольной командой.
Исправлена работа MySQL.
Исправлены и оптимизированы запросы создания таблиц (спасибо Argonavt и Onotole).
Проведено первичное тестирование всего сделанного.
Исправлена ошибка Client 1 is not VIP (Спасибо September за тестирование).
Мелкие коррекции кода.

Обновление 2.0.0 DEV - 6.09.2015:
Переработано добавление VIP-игроков. Теперь перед добавлением игрока он не создается повторно, а проверяется его сущевствование.
Исправлены некоторые баги.
Изменена структура бд.
Изменен запрос выборки игрока.
Для устранения путаницы в версию плагина вставлена дата обновления.
Начал перерабатывать список VIP-игроков.

Обновление 2.0.0 DEV - 25.09.2015:
Полностью переведен на работу с SQL/MySQL
Исправлены некоторые баги.
Исправлена ошибка SQL_Callback_OnVIPClientAdded: Unknown column 'expires' in 'field list'
Исправлена ошибка SQL_Callback_ErrorCheck: Duplicate key name 'auth'
Переработан список VIP-игроков.
Добавлено несколько нативов, исправлены старые.

Обновление 2.0.0 DEV - 13.10.2015:
Исправлено отсутствие сообщение при добавлении VIP-игрока
Почистил код от не нужных переменных
Исправлен перевод
Исправлена работа некоторых нативов
Исправлена работа переменной sm_vip_server_id
Добавлены нативы:
VIP_GetClientPassword
VIP_SetClientPassword
VIP_UnregisterFeature
Отключен дебаг

Обновление 2.0.0 DEV - 15.10.2015:
Исправлен баг http://hlmod.ru/forums/index.php?threads/%D0%9E%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-2-0-0.30261/page-7#post-216002
Попытался исправить проблему с кодировкой.
 

Вложения

  • VIP_Core_2.0.0_dev.zip
    64.8 КБ · Просмотры: 688
  • VIP_Core_2.0.0_dev_debug.zip
    66.1 КБ · Просмотры: 283
Последнее редактирование модератором:

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #11
Вопрос №2 Нужно ли обновлять ник игрока в бд при каждом перезаходе или оставить постоянным (какой был при добавлении) ???
 

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #12
Вопрос №3
В списке вип игроков (в админке) делать как было раньше:
1. Стим
2. ип
3. ник
При выборе - списки игроков.
или сделать так:
1. [STEAM] Игрок1
2. [STEAM] Игрок2
3. [IP] Игрок3
4. [NAME] Игрок4
 

SaInT.P

Участник
Сообщения
1,276
Реакции
226
Вопрос 1, Ответ,Может лучше все что выберут сделать отдельными модулями?
Вопрос 2, Ответ , обновлять ник мне так кажется
Вопрос 3, Ответ, лучше так
1. [STEAM] Игрок1
2. [STEAM] Игрок2
3. [IP] Игрок3
4. [NAME] Игрок4
 
N

NiGaByte

1) согласен с SaInT.P, каждую авторизацию на модули, захотел стим, подключил, захотел ник, подключил, и т.д.
2) сделай квар, если я правильно понял, то обновление нужно если игрок например сменил ник, а авторизация установлена по стиму, то нужно, а если сервер делает авторизацию по нику, то наверное и обновление не нужно. (Ну чувствую что что-то, не да понял.)
3) Всегда юзал admins.cfg, не пользовался меню, нафиг оно нужно, обнова выйдет, см слетит, поставишь снапшот, а там меню не работает. Другое дело если будет Web-страничка, со всеми причиндалами, но меню не как не хочу юзать.

А вообще я третьего вопроса не понял, а точнее вот этого:
или сделать так:
1. [STEAM] Игрок1
2. [STEAM] Игрок2
3. [IP] Игрок3
4. [NAME] Игрок4
Как так? Что это? Меню со списком игроков? Ну ок, тогда почему у них авторизация разная? nie rozumiem
 

gibs

Фитиль народного волненья
Сообщения
721
Реакции
266
Политика форума No steam = No support. Перестань разводить довольно дыбильные темы, Рико. Даже коню понятно, что следует делать авторизацию только через стим айди. Ну или скопируй с сорсмода и сделай стимайди, айпи и пароль+ник. Два варианта.
 

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #17
2) сделай квар, если я правильно понял, то обновление нужно если игрок например сменил ник, а авторизация установлена по стиму, то нужно, а если сервер делает авторизацию по нику, то наверное и обновление не нужно. (Ну чувствую что что-то, не да понял.)
Ник обновляется только если авторизация по стиму/ип.

Политика форума No steam = No support. Перестань разводить довольно дыбильные темы, Рико. Даже коню понятно, что следует делать авторизацию только через стим айди. Ну или скопируй с сорсмода и сделай стимайди, айпи и пароль+ник. Два варианта.
Но есть раздел No-Steam. Я автор, и я имею полное право поддерживать все игры, котрые хочу, в том числе и в34. Не я виновен в том что она сущевствует, что в неё играют и на ней держат серверы. Просто потом начнут писать и просить сделать по ип и прочее.

Оффтоп

Скорее всего сделаю стим, а остальное модулями (прийдется продумать еще это...)

А насчет обновления ника. Так удобно тем что когда игрок заходит под другим ником то в випке он будет уже под ним. Но некоторым лучше чтобы как в сб с админами. Добавил и этот ник остался за ним. Просто не знаю как будет всем удобно.

А что насчет нового синтаксиса:
PHP:
BAILOPAN:
It is no longer legal to store functions inside arrays. This will be fixed in a future release, but we will need to introduce a new array type.
 
Последнее редактирование:

White Wolf

Uber momentum
Команда форума
Сообщения
2,122
Реакции
1,712
gibs, в правилах ясно написано:
1.22. Запрещено обсуждение NoSteam (включая v34) и других кряков в темах не предназначенных для этого. Создание новых тем о проблемах с NoSteam запрещено. Задавайте вопросы в темах про эмуляторы.

И где здесь обсуждение nosteam а? Покажи-ка мне пост.
 

AZA

/reset
Сообщения
888
Реакции
135
R1KO, может стоит подождать,пока какие нибудь умельцы портируют sm 1.7 для старухи?
 

R1KO

fuck society
Команда форума
Сообщения
8,997
Реакции
6,758
  • Автор ресурса
  • #20
vaxa, и что мне это даст?
 
Сверху