
Недавно открыл сервер или просто не хватает активности на сервере и игроки долго не задерживаются из-за этого?
IQFakeActive - был создан для помощи в решение этой проблемы!
Автоматическая генерация на основе собранных данных с популярных серверов RUST, с возможностью корректировки в конфигурационном файле.
Обширное API, которое позволит разработчикам плагинов подвязывать свои плагины к IQFakeActive!
Плагин умеет создавать активность в чате и в других плагинах которые связаны с ним
Генерация игроков:
- Генерация основывается на шаблоне созданном после анализа большинства популярных серверов в RUST, были собраны их суточные показатели и округлены до средних значений
Корректировки генерации игроков:
- Изменить отступы +N и -N от сгенерированного игроков конфигурации
- Изменить и добавить принудительное количество игроков после генерации
- Потолок генерации, например у вас 150 слотов, и вы хотите установить потолок генерации не выше 120 слотов
- Уменьшение генерации игроков в зависимости от пройденных дней после вайпа
Активность в чате :
- Плагин автоматически будет отправлять сообщения в чате (поддерживается IQChat)
- Если установлен IQChat - будет поддерживаться сообщение в личные сообщения игрокам
- Если установлен IQChat - будет поддерживать сообщения о подключении и отключении фейковых игроков
Отображение количества игроков в инфо-панелях :
- В плагине имеется API с поддержкой получения цифры игроков, разработчики уже могут подключить свои панели к моему плагину, из подключившихся уже есть : IQMenu, XMenu (Monster), InfoPanel (Mevent), MicroPanel (LAGZYA)
Поддержка других плагинов :
- Уже имеется поддержка множества плагинов, некоторые из них : IQChat, IQReportSystem, IQMenu, XMenu, XDStatistics, но любой из разработчиков всегда может подключить мой плагин к своему с помощью обширного API
В будущем я собираюсь собрать большое количество разработчиков, и договориться о связке их плагинов со своим
Базы данных :
- Для генерации игроков и генерации сообщений имеется 2 типа баз данных, облачный и локальный
Облачная база данных - в ней собраны данные с настоящих серверов от настоящих игроков
Локальная база данных - вы заполняете ее вручную в конфигурации под свои желания
Проверка статуса инициализации плагина :
C#:
// Важное API, дабы все данные подтягивались без проблем - используйте проверку готовности по API
// генерация базы данных занимает некоторое время, поэтому в других API возможны - null
// чтобы такого не было - используйте это API перед обращением к другому API
Boolean IsReady - возвращает true, если плагин полностью инициализирован, иначе false
// Пример использования:
public Boolean IsReadyIQFakeActive()
{
if (IQFakeActive != null && config.UseIQFakeActive)
return IQFakeActive.Call<Boolean>("IsReady");
return false;
}
C#:
JObject GetListPlayers() - возвращает JObject со списком фейковых и настоящих игроков
// Требуется класс List с классом FakePlayer - List<FakePlayer>
public class FakePlayer
{
[JsonProperty("userId")]
public String userId;
[JsonProperty("displayName")]
public String displayName;
public Boolean isMuted;
}
// Пример использования:
private List<FakePlayer> GetCombinedPlayerList()
{
if (!IsReadyIQFakeActive()) return null;
JObject jsonData = IQFakeActive.Call<JObject>("GetListPlayers");
if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
return playerList;
}
// IsReadyIQFakeActive() - проверяет активен ли плагин с помощью API "IsReady" и включена ли функция поддержки плагина
// Пример IsReadyIQFakeActive
public Boolean IsReadyIQFakeActive()
{
if (IQFakeActive != null && config.UseIQFakeActive)
return IQFakeActive.Call<Boolean>("IsReady");
return false;
}
C#:
//Принцип аналогичен с API GetListPlayers
JObject GetOnlyListFakePlayers() - возвращает JObject со списком фейковых и настоящих игроков
//Требуется класс List с классом FakePlayer - List<FakePlayer>
//Пример использования :
private List<FakePlayer> GetFakePlayerList()
{
if (!IsReadyIQFakeActive()) return null;
JObject jsonData = IQFakeActive.Call<JObject>("GetOnlyListFakePlayers");
if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
return playerList;
}
C#:
Int32 GetOnline - возвращает текущий онлайн, фейковые игроки и настоящие
Int32 GetOnlyFakeOnline - возвращает текущий онлайн только фейковых игроков
C#:
Boolean IsFakeUser(String idOrName) - возвращает true, если игрок сгенерирован плагином, иначе false если игрок настоящий
C#:
String GetFakeName(String userId) - возвращает ник фейкового игрока
//Если плагин не инициализирован полностью - вернет "initializePlugin"
//Если фейкового игрока нет с данным userid - вернет "notFindedUser"
C#:
JObject GetDatabase - возвращает JObject с полными данными плагина
// Потребуется полный класс базы данных
// В базу входит :
// - Все сгенерированные сообщения
// - Все сгенерированные игроки
// - Все сгенерированные игроки и настоящие игроки
// - Количество фейковых игроков
// - Количество фейковых и настоящих игроков
// - Сгенерированные пресеты для чата (С поддержкой IQChat)
// -- Префикс в чате
// -- Цвет ника в чате
// -- Цвет сообщения в чате
// -- Размер ника в чате
// -- Размер сообщения в чате
// Класс базы данных :
public FakeDatabase fakeDatabase = new();
public class FakeDatabase
{
public OnlineDatabase onlineDatabase = new();
public ChatPresetFakePlayer chatPresetFakePlayer = new();
public List<FakePlayer> fakePlayerList = new();
public List<FakePlayer> fakePlayerConnection = new();
public List<FakePlayer> fakePlayerDisconnection = new();
public List<FakePlayer> realAndFakePlayerList = new();
public List<Messages> fakeMessageList = new();
public class Messages
{
[JsonProperty("message")]
public String message;
}
public class OnlineDatabase
{
public Int32 currentFakeOnline;
public Int32 currentOnline;
}
public class FakePlayer
{
[JsonProperty("userId")]
public String userId;
[JsonProperty("displayName")]
public String displayName;
public Boolean isMuted;
}
public class ChatPresetFakePlayer
{
public String chatPrefix;
public String chatColor;
public String nickColor;
public Int32 sizeMessage;
public Int32 sizeNick;
}
}