Требование: Любая игра на движке Source Sourcemod 1.3 или выше Не обязательно - Updater, чтобы плагин был всегда актуальным
Описание: Основной плагин внутриигрового магазина. Поддержка MySQL, SQLite
[13.12.12] - Начало создания плагина
Версия 1.0 [15.12.12] - Первый выход плагина Версия 1.1 [17.12.12] - Увеличена длина буфера и мелкие неисправности Версия 1.2 [18.12.12] - Добавлена возможность продавать предметы. Некоторые исправления Версия 1.3 [19.12.12] - Значительная оптимизация на базу данных. Исправление ошибок Версия 1.3.1 [19.12.12] - Добавлена поддержка для поздней загрузке плагина Версия 1.4 [20.12.12] - Значительная оптимизация. Сохранение включенных вещей. Подкорректирована поддержка поздней загрузки. Расширение библиотеки. Версия 1.5 [21.12.12] - Устранены утечки памяти. Библиотека изменена и расширена (Требуется обновить модули) Версия 1.6 [22.12.12] - Устранены утечки памяти. Библиотека изменена и расширена. Добавлены команды takecredits и setcredits Версия 1.7 [23.12.12] - Изменена библиотека. Добавлены нативы. Добавлены забытые нативы UseItem и UseItemId. Возможность вывести в меню дополнительную информацию Версия 1.7.1 [24.12.12] - Улучшены последние нативы для удобной работы Версия 1.7.2 [26.12.12] - Исправлена одна маленькая ошибка, вводящая в заблуждение модуль Trails Версия 1.8 [02.01.13] - Большие изменения в плагине. Изменена библиотека. Добавлены нативы. Исправлены все возможные ошибки. Добавлена возможность мульти-язычного перевода. Версия 1.8.1 [02.01.13] - Добавлен multi-targets в командах Версия 1.8.2 [03.01.13] - Добавлен вывод кол-во предметов категории в покупке. Поправлен неверный перевод, когда выводилось "Кол-во" вместо "Цена" Версия 1.8.3 [03.01.13] - Исправлен баг, который выдавал покупки одного игрока всем Версия 1.8.4 [04.01.13] - Добавил бэкап предметов игроков, у которых покупки не были занесены в базу по причине отсутствия соединения Версия 1.8.5 [05.01.13] - Теперь UnregisterMe и RemoveItemFromCategory функционируют полностью и утечка памяти (хоть и очень редкая, при выгрузке модуля) устранена. Поправил библиотеку. Исправил натив SetItemSellPrice (выставлял покупаемую цену). Добавил GiveItem и SellItem натив и немного изменил натив SetItemSellPrice Версия 1.8.6 [03.03.13] - Выведены все возможные настройки в папку "shop". Добавлен иммунитет админов. Добавлен натив Shop_ToggleCategoryOff. Добавлен натив Shop_IsAdmin. Добавлены несколько форвардов Добавлен в меню пункт "Панель Администратора" с возможностью редактирования каждого клиента на сервере. Добавлена поддержка последнего обновления CS:GO. Добавлены ещё 2 пункта в меню (Передача кредитов с комиссией и Испытать удачу) Добавлена новая команда для добавления игрока в базу данных. Добавлены дополнительные проверки функции. Добавлены расширенные настройки. Исправлена ошибка с нативом Shop_UnregisterMe. (Рекомендуется обновить модули) Исправлены некоторые ошибки в коде и в документации. Убрана требуемость натива "GetUserMessageType" (Для sourcemod ниже версии 1.5.0) Значительные исправления багов. Изменены данные о включенных предметах игроков. (Рекомендуется удалить файл "data/shop.txt") Папку Shop с файлами настроек иметь не обязательно!
Версия 1.8.7 [03.03.13] - Исправлен баг с нативами Shop_UseItem и Shop_UseItemId
Версия 1.8.8 [03.03.13] - Исправлен баг с файлом database.cfg и если отсутствуют конфигурации базы данных
Версия 1.9.0 [11.08.13] - Добавлено множество функции такие как: Описание категории и предметов; Возможность мультиперевода предметов; Возможность передавать предметы от игрока игроку; Длительность предмета; Доступность предмета определенной команде;
Добавлено в настройки параметр Database Prefix, где указывается префикс баз данных Добавлено в настройки параметр Validate, для включения или отключения ожидания проверки SteamID на кражу аккаунта Steam. Работает если "SteamAuthStringValidation" установлен на "yes" в "configs/core.cfg" Добавлено в настройки параметр Item Transfer, для включения или отключения возможности игрокам передавать предметы Добавлено в настройки параметр Item Transfer Credits, цена передачи предмета
Изменено оформление меню
Изменена библиотека, теперь AddItemToCategory разделена на 3 натива: Shop_StartItem; Shop_SetItemInfo; Shop_SetItemCallbacks; Можно устанавливать дополнительную информацию о предмете с помощью: Shop_SetItemCustomInfo; Shop_SetItemCustomInfoFloat; Shop_SetItemCustomInfoString; И заканчивать устанавливать параметры предмета нужно с помощью: Shop_EndItem Все параметры устанавливаются только после Shop_StartItem и обязательно должны заканчиваться с помощью Shop_EndItem.
Добавлены нативы для получения дополнительной информации о предмете: Shop_GetItemCustomInfo; Shop_GetItemCustomInfoFloat; Shop_GetItemCustomInfoString;
Добавлены нативы для добавления функции в меню: Shop_AddToFunctionsMenu Shop_RemoveFromFunctionsMenu Shop_AddToAdminMenu Shop_RemoveFromAdminMenu
Нативы для открытия меню: Shop_ShowMainMenu Shop_ShowInventory Shop_ShowFunctions Shop_ShowAdminMenu
Нативы для получения или установки длительности предмета: Shop_GetItemDuration Shop_SetItemDuration
Версия 1.9.1 [12.08.13] - Исправлен баг с предметами типа Item_Finite, позволяя предметам быть использованы бесконечное кол-во раз
Версия 1.9.2 [16.08.13] - Исправлен баг с параметром Luck Credits заставляя его быть минимум 1
Версия 1.9.3 [26.08.13] - Исправлен баг с параметром Credits Tranfser. Не выключал возможность передавать кредиты
Версия 1.9.4 [05.09.13] - Исправлен баг с параметром Credits Tranfser. Не выключал возможность передавать кредиты
Версия 1.9.4 [05.09.13] - Исправлен баг с параметром Item Transfer Credits. Не выключал возможность передавать кредиты
Версия 1.9.5 [27.09.13] - Добавлена команда sm_shop_dump. Для вывода информации о предметах в виде KeyValues Добавлена команда shop_save, чтобы сохранить инвентарь не выходя с сервера или не перезагружая карту. Цена продажа теперь не может быть выше чем цена покупки. Некоторые исправления
Версия 1.9.6 [04.12.13] - Надеюсь исправил баг с раздвоением аномального предмета Исправлен баг с регистрацией предмета несколько раз Форвард Shop_OnConnected вызывается теперь 1 раз после загрузки Shop
Версия 1.9.7 [06.12.13] - Исправлен баг, когда пункт "Дополнительные функции" не отображался в главном меню
Версия 1.9.8 [10.02.14] - Добавлен натив Shop_ShowCategory
Версия 1.9.9 [16.02.14] - Добавлен форвард Shop_OnItemLoaded. Вызывается при загрузке предмета игроку из базы данных Добавлен форвард Shop_OnItemEquipped. Вызывается, когда игрок включает предмет Добавлен форвард Shop_OnItemDequipped. Вызывается, когда игрок выключает предмет Добавлен форвард Shop_OnItemElapsed. Глобальный вызов, когда предмет истек Добавлен форвард Shop_OnCreditsReceive. Вызывается, когда игрок получает кредиты Добавлен форвард Shop_OnItemBuy. Вызывается перед тем, как игрок покупает предмет Добавлен натив Shop_GetClientItemDuration. Для получения времени предмета игрока Добавлен натив Shop_SetClientItemDuration. Для установки длительности предмета игроку Добавлен натив Shop_GetClientItemPrice. Для получения абсолютной цены продажи предмет (У тех, у кого выставляется длительность предмета) Испавлен натив Shop_GiveCredits, чтобы возвращал кредиты, которые были выданы игроку
Версия 1.9.10 [16.02.14] - Вернул кнопку Назад в меню покупок Исправлен натив Shop_GetClientItemPrice, который всегда возвращал 0
Версия 2.0.0 [20.03.14] - Переписание плагина Изменение структуры базы данных Изменение всех настроек. Настройки из settings.txt перевелись в convars Изменение всей библиотеки Исправление многочисленных багов. Теперь доступ к предметам происходит по их иденту Новый метод передачи кредитов и предметов Добавлено несколько больше форвардов Добавлена возможность превью предмета Добавлен тип предмета BuyOnly. Который не попадает в инвентарь при покупке, а вызывает функцию покупки для модуля. Возможность указать 2 метода отсчета. По использованию (по умолчанию) и реальное время. Регистрация категории происходит моментально Переход с ветки 1.х до 2.х происходит автоматически и множество других изменений которые могли быть не внесены в этот список
Версия 2.0.1 [22.03.14] - Исправлена ошибка при выборе категории Исправлено неверное показание количества предметов в категории покупок Исправлено передача уникального названия предмета в функции
Версия 2.0.2 [23.03.14] - Добавлен натив Shop_ShowFunctionsMenu Исправлена библиотека
Версия 2.0.3 [23.03.14] - Исправлен вывод предметов в категории регистрированные несколькими плагинами
Версия 2.0.4 [23.03.14] - Вызов форварда Shop_OnItemToggled при истечении времени предмета Исправлено многочисленный вызов Shop_OnItemToggled при включении предмета
Версия 2.0.5 [23.03.14] - Исправлена работа с MySQL
Версия 2.0.6 [23.03.14] - Исправлено бесконечное время действия предметов, истекала при покупке (Метод отсчета - Реальный) Исправлена структура keyvalues
Версия 2.0.7 [24.03.14] - Добавлена переменная sm_shop_start_credits и sm_advenced_shop_version
Версия 2.0.8 [24.03.14] - Исправлено не запускавшийся таймер для предметов типа None
Версия 2.0.9 [29.03.14] - Исправлена ошибка с таймерами
Версия 2.0.10 [30.03.14] - Окончательное решение ошибки с таймером Исправлено проблема с ToggleCategoryOff
Версия 2.0.11 [31.03.14] - Исправлена проблема с предметами Item_Finite Добавлены нативы Shop_IsAdmin и Shop_ShowAdminMenu
Версия 2.0.12 [05.04.14] - Небольшой фикс Добавлены нативы Shop_AddToAdminMenu и Shop_RemoveFromAdminMenu Немного поправлена библиотека
Версия 2.0.13 [07.04.14] - Исправлен натив Shop_GetClientCredits, ничего не возвращал при вызове Исправлена функция OnItemShouldDisplay
Версия 2.0.14 [11.04.14] - Исправлена ошибка с испытанием удачи
Версия 2.0.15 [14.04.14] - Исправлена ошибка с нативом Shop_SetItemSellPrice
Версия 2.0.16 [18.04.14] - Исправлена баг с комиссией при передачи кредитов Добавлен натив Shop_SetClientItemTimeleft
Версия 2.0.17 [19.04.14] - Убрано восстановление полной продаваемой цены при уменьшении длительности предмета
Версия 2.0.18 [22.04.14] - Исправлен баг с ценой б/у Исправлен баг с информацией о полной длительности предмета Добавлен забытый натив в библиотеку Shop_GetItemCategoryId
Версия 2.0.19 [25.04.14] - Исправлен баг с передачей кредитов больше, чем имеется
Версия 2.0.20 [11.01.15] - Исправлен баг с методом отсчета времени по использованию. Когда при включенном предмете у игрока сохранялось прежнее время предмета при перезаходе на сервер Удалено авто-обновление плагина до смены локации сервера обновлений
Версия 2.0.21 [31.01.15] - Устранена утечка памяти Исправлено неверное очищение бд
Версия 2.0.22 [04.06.15] - Добавлен натив Shop_GetClientItemCount Добавлен параметр by_who в нативы GiveCredits и TakeCredits и соответствующие ему форварды, где указывается кем было выдано или забраны кредиты или вообще не вызывать соответствующий форвард. В связи с этим требуется перекомпилировать плагины использующие эти нативы с актуальными библиотеками этой версии плагина
Установка: 1) Распаковать архив в папку sourcemod 2) Настроить файлы настроек в файле sourcemod/configs/shop/settings.txt - Если требуется 3) Настроить переменные в файле cfg/shop/shop.cfg - Если требуется 4) Установить модули (см. пункт Модули ниже)
Заметка: 1)Не обязательно, если вы не знаете что это! Настройки подключения к БД с sourcemod файла databases.cfg (Вкладка "shop") 2) Если пункт 1 не прошел валидность или не настроен вовсе, тогда используется SQLite подключение к базе данных shop
Настройки: Не обязательно: Чтобы открыть пункт "Информация" в главное меню, создайте файл sourcemod/configs/shop/shop_info.txt с содержимым, которое будет выведено в меню при выборе пункта. Скачать:
sm_shop_clear_db - Если не указать параметр, а просто ввести sm_shop_clear_db, то будет выставлено полная очистка базы данных. Важно! сервер должен быть пустым! Если же выставить sm_shop_clear_db <дни>, то будет очистка игроков, кто не был активен за этот период дней
После того, как вы введете sm_shop_clear_db, нужно будет ввести sm_shop_clear_db ok, чтобы произвести очистку или sm_shop_clear_db deny для отмены
Переменные (ConVars - cfg/shop/shop.cfg):
sm_shop_admin_flags - Флаги, необходимые для панели администратора. Можно выставлять сразу несколько флагов (Например: "abz")
sm_shop_item_transfer_credits - Цена передачи предмета. 0 бесплатно и -1 чтобы выключить
sm_shop_trans_credits - Цена или комиссия передачи кредитов. Выставляйте перед цифрами символ "%", чтобы передача стоила комиссии (Например: %5 - комиссия 5 процентов). Или без символа (Например: 100 - Цена передачи 100 кредитов). -1 чтобы выключить эту функцию
sm_shop_luck_credits - Цена испытания удачи. 0 - бесплатно
sm_shop_luck_chance - Шанс выпадения предмета
sm_shop_start_credits - Количество начальных кредитов новому игроку
sm_shop_timer_method - Метод отсчета предметов. 0 - по использованию и 1 - реальное время
Команды плагина:
Команды в чате (По умолчанию): !shop или /shop или !store или /store - для открытия главного меню магазина !inv или /inv или !inventory или /inventory - для открытия инвентаря
Админс флагом Root (z) (По умолчанию): !givecredits или /givecredits <ник> <кол-во кредитов> - Чтобы дать кредиты игроку !takecredits или /takecredits <ник> <кол-во кредитов> - Чтобы забрать кредиты у игрока !setcredits или /setcredits <ник> <кол-во кредитов> - Чтобы установить кредиты игроку
---------------
Команды в консоле (По умолчанию): sm_shop, sm_store - для открытия главного меню магазина sm_inv, sm_inventory - для открытия инвентаря
Админ с флагом Root (z) (По умолчанию): sm_givecredits <ник> <кол-во кредитов> - Чтобы дать кредиты игроку sm_takecredits <ник> <кол-во кредитов> - Чтобы забрать кредиты у игрока sm_setcredits <ник> <кол-во кредитов> - Чтобы установить кредиты игроку
Описание: Дополнение к плагину SHOP. Даёт возможность игрокам обменивать кредиты в магазине SHOP на кредиты в rpg. Примечание, в обмене присутствует комиссия заданная в настройках shop.
Установка: Поместить файл shop_exchange.smx в папку addons/sourcemod/plugins Файл с настройками: exchange_thc_rpg.txt поместить в папку addons/sourcemod/configs/shop
Описание: Добавляет в раздел "Способности " пункт "Длинные прыжки".
Список изменений:
Код
Версия 1.0 - Релиз Версия 1.1 - Добавлен квар "sm_shop_longjump_duration" - длительность действия Версия 1.2 - Плагин переписан под Shop 2.0.X Версия 1.3 - Исправлена ошибка: Native "Shop_SetItemValue" reported: Item id 0 is invalid
Описание: Прибавка к хп при респавне - таже и брони при респавне. Все настройки по прибавке хп и брони прямо в исходнике потом компилируйте Скачать shop_HP.rar
Требование: Sourcemod 1.3 или выше [Shop]Core - не ниже версии 2.0.0
Описание: Добавляет возможность покупать скины в магазине
Настройки: Создать файл sourcemod/configs/shop/skins_downloads.txt с путями до файлов для скачивании игрокам. Можно указывать папки Создать файл sourcemod/configs/shop/skins.txt в таком виде (Пример во вложениях): Пример: "Skins" { "vip" // Идентификатор в бд { "name" "VIP" // Название скинов "description" "" // Описание скинов "ModelT" "models/player/kzjp/vip/t/t_guerilla.mdl" // Путь до модели террориста "ModelT_Arms" " " // Путь к модели рук террориста "ModelCT" "models/player/kzjp/vip/ct/ct_gign.mdl" // Путь до модели спецназа "ModelCT_Arms" " " // Путь к модели рук спецназа "price" "23000" // Цена "sell_price" "9000" // Продаваемая цена или -1, чтобы сделать не продаваемым. "color" "255 255 255 255" // Цвет скина "duration" "604800" // Длительность использования скина } }
Требование: Sourcemod 1.3 или выше SDKHooks [Shop]Core - не ниже версии 2.0.0
Описание: Добавляет возможность покупать шапки, маски, очки в магазине Поддержка Zombie:Riot, Zombie:Reloaded
Переменные: sm_shop_equipments_preview - Включение превью от третьего лица (По умолчанию: 1) sm_shop_equipments_remove_on_death - Очистка вещей игрока после его смерти (По умолчанию: 1)
Админские команды: equipments_reload - Для перезагрузки конфигурации
Настройки: Создать файл (или использовать из архива) файл equipments_downloads.txt с путями до файлов загрузок Редактировать файл sourcemod/configs/shop/equipments.txt. В архиве является уже готовый вариант для моделей из пункта установки этого поста (models.rar)
Пример настройки:
"Equipments" { "glasses" // Идентификатор категории { "en" "Glasses" // Перевод на английском "ru" "Очки" // Перевод на русском
"3d"" // Идентификатор предмета { "name" "3D очки" // Название предмета в меню "price" "7000" // Цена "sell_price" "3500" // Продаваемая цена "duration" "604800" // Длительность использования предмета "model" "models/gmod_tower/3dglasses.mdl" // Путь до модели
// Незнающим людям рекоммендуется не редактировать следующие 2 параметра "attachment" "forward" // Точка присоединения "alt_attachment" "primary" // Альтернативная точка присоединения (если предыдущая не найдена
"position" "0.0 0.5 2.0" // Позиция от точки присоединения "angles" "0.0 0.0 0.0" // Вращение от точки присоединения
"classes" // Для определенных моделей { "models\player\techknow\left4dead\zoey.mdl" // Обязательно использовать слэш влево { "attachment" "forward" "alt_attachment" "primary"
Версия 1.0.1 - Добавлены параметры точек присоединения. Вывод файла загрузок equipments_downloads.txt Отдельные параметры для определенных моделей
Версия 2.0.0 - Работа Shop Core v1.9.0 Добавлен превью предметов при одевании
Версия 2.0.1 - Исправлен баг с classes, используя в заголовке слэш влево
Версия 2.0.2 - Исправлен баг игнорирующий общие параметры
Версия 2.0.3 - Добавлены переменные sm_shop_equipments_remove_on_death и sm_shop_equipments_preview
Версия 2.1.0 - Работа с Shop Core v2 Версия 2.1.1 - Добавлен targetname для объектов.
Установка: 1) Распаковать архив shop_equipments в папку sourcemod 2) Распаковать архив models.rar в коренную директорию игры, где лежат папки materials и models 3) Запустить сервер. Если запущен, то сменить карту!
Полезные ссылки: http://www.garrysmod.org/downloads/?tag=hats - Сайт с содержанием моделей Заметка! Не рекомендуется использовать данный плагин с анти-читами вроде smac_wallhack Скачать shop_equipments_2.1.1.zip
sm_shop_s4_price 10000 // по умолчанию - Стоимость покупки. sm_shop_s4_sellprice 8000 // по умолчанию - Стоимость продажи. sm_shop_s4_duration 86400 //по умолчанию - Длительность в секундах после активации покупки
Описание: Добавляет в магазин (в раздел "Способности") возможность покупки вампиризма. Это значит что указанный процент нанесенного игроком урона будет переходить в его хп.