Этот скрипт будет полезен для админов, так как будет показывать статистику убившего игрока прямо в игре в центре экрана, во время камеры смерти, и поможет в выявлении читеров. Изначально этот скрипт создавался, для точго чтобы определить с чего убил игрок, т.к. были моменты во времена запуска Battlefield 4, когда киллкам не показывал с чего вас убили. Была добавлена некоторая дополнительная информация и переведена на Русский язык для удобства.
Вот так это выглядит в игре:
АДРЕС НАШЕГО САЙТА ВЫРЕЗАН ИЗ СКРИПТА, вместо этого добавлено просто ИНФОРМАЦИЯ, вы можете заменить на любое другое слово или свой сайт.
Будет показана информация о стране игрока, оружии, общее кол-во убийств на этом оружии, точность этого оружия, процент от общего кол-ва убийств, так же информацию за раунд, У/С, убийств в голову, КД и убийств в минуту.
Скрипт добавляем в Insane Limits; (как добавлять лимиты, описано тут Insane limits)
создаем первый лимит, и в limit_evaluation выставляем OnAnyChat, затем добавляем следующий скрипт в limit_first_check Expression
в limit_second_check добавялем Code
Создаем второй лимит, limit_evaluation ставим на OnDeath и добавляем следующий скрипт в limit_first_check_code
Должно получиться вот так:
После этого, в настройках InsaneLimits обязательно установите значения use_direct_fetch и use_slow_weapon_stats на True
Эту информацию без проблем можно отключить командой в игровой чат !killerstats off
Вот так это выглядит в игре:
АДРЕС НАШЕГО САЙТА ВЫРЕЗАН ИЗ СКРИПТА, вместо этого добавлено просто ИНФОРМАЦИЯ, вы можете заменить на любое другое слово или свой сайт.
Будет показана информация о стране игрока, оружии, общее кол-во убийств на этом оружии, точность этого оружия, процент от общего кол-ва убийств, так же информацию за раунд, У/С, убийств в голову, КД и убийств в минуту.
Скрипт добавляем в Insane Limits; (как добавлять лимиты, описано тут Insane limits)
создаем первый лимит, и в limit_evaluation выставляем OnAnyChat, затем добавляем следующий скрипт в limit_first_check Expression
Код:
player.LastChat.StartsWith("!killerstats")
в limit_second_check добавялем Code
Код:
if (!player.Data.issetBool("NoYell")) {
player.Data.setBool("NoYell", true);
plugin.SendPlayerYell(player.Name, plugin.R ("\nMessages on"),5);
return false;
}
if(player.Data.getBool("NoYell")) {
player.Data.setBool("NoYell", true);
plugin.SendPlayerYell(player.Name, plugin.R ("\nMessages on"),5);
}
else {
player.Data.setBool("NoYell", true);
plugin.SendPlayerYell(player.Name, plugin.R ("\nПодробная статистика: ОТКЛЮЧЕНА"),5);
}
return false;
Создаем второй лимит, limit_evaluation ставим на OnDeath и добавляем следующий скрипт в limit_first_check_code
Код:
if (!player.Data.issetBool("NoYell"))
player.Data.setBool("NoYell", false);
if (player.Data.getBool("NoYell"))
return false;
else {
if (killer.Name != null) {
BattlelogWeaponStatsInterface WeaponStats = killer.GetBattlelog(kill.Weapon);
if (WeaponStats != null) {
double WeaponTotalKills = WeaponStats.Kills;
if (WeaponTotalKills > 0) {
double WeaponUsagePercentage = Convert.ToInt32(WeaponTotalKills/killer.Kills*100);
double ServiceStars = Convert.ToInt32(WeaponTotalKills/100);
plugin.SendPlayerYell(player.Name, plugin.R ("[ИНФОРМАЦИЯ]" + "\nКИЛЛЕР: " +killer.Name+ " из " +killer.CountryName+ " оружие: " + (plugin.FriendlyWeaponName(kill.Weapon).Name) + "\nУбийств: " + WeaponTotalKills + " | " + "Точ: " + Math.Round(killer.GetBattlelog(kill.Weapon).Accuracy, 2) + "%" + " | " + WeaponUsagePercentage + "% из " + killer.Kills + " убийств." + "\n" + "За раунд: " + "Убил: " + killer.KillsRound + " | " + "Умер: " + killer.DeathsRound + " |" + " В хэд: " + killer.HeadshotsRound + " |" + " КД: " + Math.Round(killer.KdrRound, 2) + " | " + "Уб.М: " + Math.Round(killer.KillsRound/killer.TimeRound*60, 2)), 10);
}
}
}
}
return false;
Должно получиться вот так:
После этого, в настройках InsaneLimits обязательно установите значения use_direct_fetch и use_slow_weapon_stats на True
Эту информацию без проблем можно отключить командой в игровой чат !killerstats off