Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 6 из 6
  1. #1
    Аватар для yuriy5022
    Пользователь

    Статус
    Оффлайн
    Регистрация
    25.09.2016
    Сообщений
    8
    Репутация:
    0 ±

    Мультисерверная UCP

    Связь со мной: https://vk.com/id421534614
    Тестовый URL [Мониторинг серверов не работает по понятным причинам](На бесплатном хостинге, возможны перебои): http://test-site-yuriy5022.tk
    Стоимость: 800 рублей копия | 1800 рублей в одни руки
    Мониторинг онлайна на всех серверах, в виде графика за последние 24 часа
    Присутствует защита от большинства видов атак: CSFR, XSS, защита от SQL инъекций.
    Есть гибкая игровая рулетка, призы которой легко настроить.
    Возможность добавления N количества своих серверов (Конфиг для каждого разный).
    Онлайн карта, на которой показываются бизнесы, дома, гангзоны.
    API методы позволяют сделать свой клиент на мобильные приложения.
    Скриншоты: Кликабельно
     Обновления (New! 16.07)

     Обновление от 16.07.17
    Добавлена админ панель, со временем будут добавляться новые функции,а пока что только список игроков и их редактирование. http://imgur.com/a/lcqds

     Обновление от 15.07.17
    Добавлен мониторинг онлайна на всех серверах в виде графика, с кнопкой подключения. [Показывает данные за последние 24 часа, в дальнейшем можно будет смотреть в периодах: месяц, неделя]

    Добавлен фон, изменен дизайн мини-игры. [Спасибо Wrestler]
     Скриншот

     Обновление от 13.07.17
    Добавлена страница доната и модифицированный обработчик (UnitPay), который позволит донатить на разные сервера (Сервера проекта, их добавлять в конфиге)
    http://imgur.com/a/ERe4H

     Обновление от 12.07.17

    Новые API методы: game.getPrices и game.start
     Мониторинг организаций

    Добавлен мониторинг организаций
    (Все работает без перезагрузки страницы, т.е экономит трафик пользователя).


     Мини игра (Рулетка)

    Добавлена рулетка, вся настройка (Призы, шансы, стоимость) производиться в конфигурационном файле, вычисление приза происходит на стороне сайта.



     API методы


     account.create

    Создает аккаунт.

    Параметры:
    nickname - ник аккаунта
    password - пароль аккаунта
    gender - пол персонажа
    server - ID сервера (1, 2, 3 etc.)

    Возвращает json массив с user_id созданного аккаунта.
    Пример: {"success":"true","response":{"user_id":"4"}}

     session.create

    Создает сессию.

    Параметры:
    nickname - ник аккаунта
    password - пароль аккаунта
    server - ID сервера (1, 2, 3 etc.)

    Возвращает, в случае валидности данных, json массив с ключом доступа, который привязан к IP адресу.
    Пример: {"success":"true","response":{"hash":"82c851c213fec5ae0e2c3cee2f28dc64"}}

     session.get

    Возвращает информацию о сессии:
    Параметры:
    hash - ключ доступа, полученный при создании сессии[/CODE]
    server - ID сервера (1, 2, 3 etc.)

    Возвращает json массив с user_id, в случае если ключ доступа валидный и сессия не закрыта
    Пример: {"success":"true","response":{"user_id":4}}

     session.close

    Закрывает текущую сессию.

    hash - ключ доступа, полученный при создании сессии
    server - ID сервера (1, 2, 3 etc.)

    Возвращает success true в случае удачи.
    Пример: {"success":"true","response":[]}

     session.closeAll

    Закрывает все сессии, кроме текущей.

    hash - ключ доступа, полученный при создании сессии
    server - ID сервера (1, 2, 3 etc.)

    Возвращает success true в случае удачи.
    Пример: {"success":"true","response":[]}

     account.get

    Возвращает некоторую информацию об аккаунте.

    Параметры:

    id - ID аккаунта
    server - ID сервера (1, 2, 3 etc.)

    Возвращает массив с данными.

    Пример: {"success":"true","response":{"id":1,"nickname":"Yuriy_Abramov","name":"Yuriy Abramov","org":"Мэрия г.Лос-Сантос","gender":"Мужской","skin":48,"money":876653,"health":95,"level":1,"wanted":3,"ak47":100,"deagle":100,"shotgun":100,"m4":100,"mp5":100,"sdpistol":100,"drugs":0,"vip":1,"skills":600}}

     account.changePassword

    Меняет пароль аккаунта

    Параметры:

    oldpassword - Старый пароль
    newpassword - Новый пароль
    hash - ключ доступа, полученный при создании сессии
    server - ID сервера (1, 2, 3 etc.)

    Возвращает success true в случае удачи.
    Пример: {"success":"true","response":[]}

     session.getList

    Возвращает массив с информацией о всех сессиях.

    Параметры: -

    hash - ключ доступа, полученный при создании сессии
    server - ID сервера (1, 2, 3 etc.)

    Пример: {"success":"true","response":[{"ip_open":"127.0.0.1","ip_close":"Сессия не закрыта","date_open":"сегодня в 10:40","date_close":"-"},{"ip_open":"127.0.0.1","ip_close":"127.0.0.1","date_open":"вчера в 23:35","date_close":"сегодня в 12:49"}]}

     servers.list

    Возвращает массив с информацией обо всех серверах проекта.

    Параметры: -

    Пример: {"success":"true","response":[{"id":1,"ip":"localhost:7778","hostname":"SA:MP Platinum Project | Classic 1"},{"id":2,"ip":"localhost:7778","hostname":"SA:MP Platinum Project | Classic 1"}]}

     map.getHouses

    Возвращает массив с информацией об домах.

    Параметры:
    server - ID сервера (1, 2, 3 etc.)

    Пример:
    {"success":"true","response":[{"owner":{"id":"0"},"id":3,"cost":1000,"enter_x":2486.27,"enter_y":-1644.62}]}

     map.getBizz

    Возвращает массив с информацией об бизнесах.

    Параметры:
    server - ID сервера (1, 2, 3 etc.)

    Пример:
    {"success":"true","response":[{"owner":{"id":1,"nickname":"Yuriy_Abramov"},"id":1,"name":"Филиал Maze Bank","cost":100000,"enter_x":1456.71,"enter_y":-1010.32},{"owner":{"id":0},"id":2,"name":"Grove Street Shop","cost":12000,"enter_x":2481.66,"enter_y":-1757.94},{"owner":{"id":0},"id":3,"name":"Grove maxCmax","cost":12000,"enter_x":2424.07,"enter_y":-1742.86},{"owner":{"id":0},"id":4,"name":"Fuel Shop","cost":12000,"enter_x":1928.67,"enter_y":-1776.49},{"owner":{"id":0},"id":5,"name":"Los Santos Salon","cost":20000,"enter_x":1419.22,"enter_y":-1623.84},{"owner":{"id":0},"id":6,"name":"Mayor LS shop","cost":10000,"enter_x":1352.51,"enter_y":-1759.17}]}

     map.getGzones

    Возвращает массив с информацией об гангзонах.

    Параметры:
    server - ID сервера (1, 2, 3 etc.)

    Пример:
    {"success":"true","response":[{"id":1,"gang":4,"min_x":1625.3,"max_x":1755.3,"min_y":-2176.51,"max_y":-2036.51}]}

     info.getTitle

    Возвращает название проекта

    Параметры:
    server - ID сервера (1, 2, 3 etc.)

    Пример:
    {"success":"true","response":{"title":"SAMP"}}

     info.getOrg

    Возвращает массив с названиями всех организаций.

    Параметры:
    server - ID сервера (1, 2, 3 etc.)

    Пример:
    {"success":"true","response":["Мэрия г.Лос-Сантос","Мэрия г.Сан-Фиерро","Мэрия г.Лас-Вентурас","Федеральное бюро расследований","Полиция г.Лос-Сантос","Полиция г.Сан-Фиерро","Полиция г.Лас-Вентурас","База сухопутных войск","Больница г.Лос-Сантос","Больница г.Сан-Фиерро","Больница г.Лас-Вентурас","Grove Street Families","The Ballas","Los Santos Vagos","Varrios Los Aztecas","San Fierro Rifa","La Cosa Nostra","Yakudza","Русская мафия"]}

     info.getMember

    Возвращает информацию об игроках, состоящих в организации.

    Параметры:
    server - ID сервера (1, 2, 3 etc.)
    id - ID организации (1, 2, 3 etc.)

    Пример:
    {"success":"true","response":[{"id":1,"nickname":"Yuriy_Abramov","rank":10,"online":"online"},{"id":2,"nickname":"Yuriy_Test","rank":1,"online":"offline"}]}

     game.getPrices

    Возвращает массив с названиями призов и стоимость одной игры.

    Параметры:
    server - ID сервера (1, 2, 3 etc.)
    id - ID организации (1, 2, 3 etc.)

    Пример: {"success":"true","response":{"prices":["$1000","$5000","$10000","$50000","$100000"],"cost":15}}

     game.start

    Начинает игру, в случае, если ключ доступа валидный и есть на счету донат больше cost из getPrices, то возвращает ID ячейки выигрыша, текущее состояние донат-счета и текущие наличные персонажа.
    Параметры:
    server - ID сервера (1, 2, 3 etc.)
    id - ID организации (1, 2, 3 etc.)
    hash - Ключ доступа, полученный при авторизации.

    Последний раз редактировалось yuriy5022; 16.07.2017 в 21:39.

  2. #2
    Аватар для Fallen A.
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Адрес
    Минск, БССР
    Сообщений
    236
    Репутация:
    19 ±
    Состояние сессии проверяешь по актуальным кукам?


    Имхо. Не за чем это.

  3. #3
    Аватар для yuriy5022
    Пользователь

    Статус
    Оффлайн
    Регистрация
    25.09.2016
    Сообщений
    8
    Репутация:
    0 ±
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Состояние сессии проверяешь по актуальным кукам?


    Имхо. Не за чем это.
    Имхо, если не знаешь, не лезь.
    Все данные сессий хранятся в БД, при завершении сессии (Выходе из аккаунта) - в БД добавляется дата и ип завершения, также сессия завершается по истечении времени куков

    - - - Добавлено - - -

    Обновление от 15.07
    Последний раз редактировалось yuriy5022; 15.07.2017 в 14:41.

  4. #4
    Аватар для Fallen A.
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Адрес
    Минск, БССР
    Сообщений
    236
    Репутация:
    19 ±
    Цитата Сообщение от yuriy5022 Посмотреть сообщение
    Имхо, если не знаешь, не лезь.
    Все данные сессий хранятся в БД, при завершении сессии (Выходе из аккаунта) - в БД добавляется дата и ип завершения, также сессия завершается по истечении времени куков

    - - - Добавлено - - -

    Обновление от 15.07
    При чем здесь знаю или не знаю? Я задал конкретный вопрос.

    А если куки истекли до посещения сайта еще раз? Тогда что записывается?

  5. #5
    Аватар для yuriy5022
    Пользователь

    Статус
    Оффлайн
    Регистрация
    25.09.2016
    Сообщений
    8
    Репутация:
    0 ±
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    При чем здесь знаю или не знаю? Я задал конкретный вопрос.

    А если куки истекли до посещения сайта еще раз? Тогда что записывается?
    Когда игрок создает сессию, то время жизни куки с ключом доступа ограничено, задание на cron, завершает сессии с пометкой, что истекло время сессии и записывает только дату

  6. #6
    Аватар для yuriy5022
    Пользователь

    Статус
    Оффлайн
    Регистрация
    25.09.2016
    Сообщений
    8
    Репутация:
    0 ±
    Обновление от 16.07.17

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •