-
Последние посетители 0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От x4reo
EPOCH ROLE PLAY | ВОЗВРАЩЕНИЕ В 90-Е Создаем атмосферный Full RP проект без «фарма» и лишней «дичи» О ПРОЕКТЕ Epoch Role Play — это площадка для тех, кто ценит качество, а не статистику. Мы строим живой мир, где каждое действие имеет последствия, а экономика строится на социальном взаимодействии. КОГО МЫ ИЩЕМ? • Lead Developer (Pawn/C#/JS): Создание ядра мода, БД, оптимизация. • Mapper/Level Designer: Создание аутентичных интерьеров 90-х. • Game Designer: Проработка ролевых правил и сценариев. • SMM-менеджер: Ведение соцсетей, создание контента. • Дизайнер: Оформление медиа и UI проекта. • Discord-архитектор: Настройка каналов и безопасности. • Web-разработчик: Сайт и форум проекта. • Bot-developer (VK/TG): Безопасность: 2FA, привязка аккаунтов. НАШИ УСЛОВИЯ 1. Энтузиазм: Проект стартует без бюджета. Мы ищем единомышленников. 2. Соавторство: Каждый участник — полноценный совладелец проекта. 3. Партнерство: Вся прибыль от монетизации распределяется пропорционально вкладу. КОНТАКТЫ ДЛЯ СВЯЗИ Telegram: x4reoo -
От Gabriel C
Всем привет. Ищу клиентскую сборку Flin RP для ПК.
Нужна полноценная версия клиента со всеми необходимыми файлами для запуска игры и подключения к серверу.
Желательно сборку примерно 2023 года, так как по имеющимся файлам видно, что обновления клиента и систем Real Cars / Real Skins были сделаны в начале 2023 года.
Нужна именно ПК-сборка/клиент Flin RP:
лаунчер (если был); папка с игрой; ASI/плагины; cache/modpack с моделями. Если у кого-то осталась рабочая сборка или архив клиента — буду благодарен за помощь.
-
От Gabriel C
Здравствуйте.
У меня есть gamemode и серверные файлы Flin RP, в которых используется система проверки клиента через auth_key для определения версии клиента и включения функций вроде Real Cars, Real Skins и других кастомных возможностей.
В gamemode используется проверка через RPC_ClientJoin и сравнение полученного auth_key со списком разрешённых версий клиента.
Мне нужно понять, как работает эта система и что именно отвечает за отправку данного ключа от клиента к серверу.
Интересует помощь в создании или настройке ASI-модуля, который будет корректно отправлять нужный auth_key, чтобы сервер определял клиент как поддерживаемую версию и включал необходимые функции.
Также хотелось бы понять как правильно сделать совместимость с системой проверки клиента для Flin RP.
Буду благодарен за объяснение принципа работы или пример реализации.
Прикрепил архив с необходимыми include-файлами
В архиве находятся файлы:
custom_models.inc custom_packets.inc custom_sync.inc perplayer.inc Это файлы, которые используются в gamemode для работы с кастомным клиентом, моделями, пакетами и синхронизацией.
Прикладываю их для ознакомления, чтобы было проще разобраться в структуре системы и понять, как реализована связь между сервером и клиентом.
raknet.rar
-
Viktor2000 Новичок 1
Здравствуйте, как сделать чтобы игрок мог активировать несколько промокодов, так - как сейчас он может только 1.
public CheckPromo(playerid) { new rows,fields; cache_get_data(rows, fields); if(rows) return SendClientMessage(playerid,-1,"Вы уже активировали один из промокодов!"); new qstring[128],code[16]; GetPVarString(playerid,"CODE",code,sizeof(code)); mysql_format(connects, qstring, sizeof(qstring), "SELECT * FROM `promo` WHERE `name`='%s'", code); mysql_tquery(connects, qstring, "ActivatePromo", "is", playerid, code); return 1; } public ActivatePromo(playerid,code[]) { new rows,fields; cache_get_data(rows, fields); printf("Не существует 2"); if(!rows) return SendClientMessage(playerid,-1,"Ошибка: {FFFFFF}промокода не существует."); new typepriz,amountpriz,nactivations,string[1024],activate,block,data[24],typetext[34],typetext1[24]; new year,month,day; new current_date = getdate(year, month, day); for(new i; i < rows; i++) { typepriz = cache_get_row_int(i, 5, connects); amountpriz = cache_get_row_int(i, 6, connects); nactivations = cache_get_row_int(i, 3, connects); activate = cache_get_row_int(i, 1, connects); block = cache_get_row_int(i, 2, connects); cache_get_row(i, 4, data, connects, 24); switch(typepriz) { case 1: typetext = "VIP аккаунт сроком на",typetext1 = " дней",Player[playerid][pVIP] = current_date + amountpriz; case 2: typetext = "Игровая валюта в количестве",typetext1 = " руб",Player[playerid][pMoney] += amountpriz; case 3: typetext = "Кредиты в количестве",typetext1 = " кр.",Player[playerid][pBonus] += amountpriz; } } if(block > 0) return SendClientMessage(playerid,-1,"Ошибка: {FFFFFF}промокод заблокирован."); if(activate != 0) { format(string,sizeof(string),"{FFFFFF}Промокод '%s' {FFFFFF}уже активирован {65A0D0}%s\n{FFFFFF}К сожалению, Вы опоздали. Но ничего, получится в другой раз..",code,data); ShowPlayerDialog(playerid,9999,DIALOG_STYLE_MSGBOX,"{FE0000}Ошибка",string,"Закрыть",""); return true; } format(string,sizeof(string),"INSERT INTO `promo_activations` (`account_id`,`name_promo`) VALUES ('%d','%s')",Player[playerid][ID],code); mysql_function_query(connects, string, false, "", ""); SendClientMessage(playerid,COLOR_ORANGE,"Поздравляем! Вы активировали промокод!"); format(string,sizeof(string),"Промокод содержал: %s %d%s",typetext,amountpriz,typetext1),SendClientMessage(playerid,COLOR_BLUE,string); nactivations--; format(string, sizeof(string), "UPDATE promo SET `nactivations`='%d' WHERE name='%s'", nactivations, code); mysql_function_query(connects, string, false, "", ""); if(nactivations == 0) { new hourss,minn,secc; gettime(hourss,minn,secc); format(string,100,"%s / %02d:%02d:%02d",date("%dd.%mm.%yyyy",gettime()),hourss,minn,secc); format(string, sizeof(string), "UPDATE promo SET `activate`='1',`date`='%s' WHERE name='%s'", string,code); mysql_function_query(connects, string, false, "", ""); return true; } DeletePVar(playerid,"CODE"); return 1; }Поделиться сообщением
Ссылка на сообщение