Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной

Таблица лидеров


Популярные публикации

Отображаются публикации с наибольшей репутацией на 12/04/18 во всех областях

  1. 1 балл
    adler14k

    Всё о луте и ивентах

    Всем привет сейчас я постараюсь быстро и не нудно рассказать про лут и ивенты в dayz ps Ребят не во всем разобрался и где то мог ошибиться. Рассчитываю на ваше понимание Файл types отвечает заколичество лута на карте Файл mapGroupProto Отвечает за спаун лута и координаты в зданиях Файл mapGroupPos Дает координаты в каких здания будет появляться лут Файл cfgRandomPresets и cfgSpawnableTypes Отвечают за появления лута в вещах, рюкзаках, зомби и т.д Файл events и cfgEventSpawns --- Отвечают за Краши, машины, Ёлки и т.д Спасибо за внимание
  2. 1 балл
    123new

    'Перемотка' игрового времени

    В данной теме опубликую скриптик, который уже давно лежит на форуме в разделе помощи. Установка: 1. Открываем Mpmissions - dayzOffline.chernarusplus - init.c 2. В самом начале файла добавляем: #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\Correct_InGame_time.c" И после строки weather.SetWindFunctionParams(0, 0, 0); добавляем: GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(Correct_InGame_time, 1000, true); где 1000 - 1 секунда 3. Создаем вручную файл с именем "Correct_InGame_time.c" и заполняем его следующим текстом: static void Correct_InGame_time() { private int year, month, day, hour, minute; GetGame().GetWorld().GetDate( year, month, day, hour, minute ); if (hour < 7) { GetGame().GetWorld().SetDate(year, month, day, 7, 3); } if (hour >= 20) { GetGame().GetWorld().SetDate(year, month, (day + 1), 7, 3); } } 4. Настраиваем файл как нам нужно. Т.е. как видим, с 7 утра и до 8 вечера время на сервере внутриигровое не трогается, при наступлении от 20:00 и до 7 утра у нес автопромотка на 7:03 утра идет. Тупо, банально, дешево, но работает.
  3. 1 балл
    adler14k

    Увеличить шанс выпадения

    Да они прочитываются один раз, далее их можно править и со следующим рестартом опять прочитает
  4. 1 балл
    123new

    [Dayz 0.63] Миссия и Админка в игре

    На основе админки по ссылке Github из шапки темы: Моя мини-админка без всяких наворотов и годмодов на текущую чистую steam-версию сервера игры. Это пакет минимум" (с вырезанной частью функций). Установка: 1. Открыть 'mpmissions\dayzOffline.chernarusplus\init.c' и добавить в самом начале файла 1 строкой #include "$CurrentDir:\mpmissions\dayzOffline.chernarusplus\Scripts\AdminTool\AdminTool_functions.c" ref AdminTool_PlugIn AdminTool = new AdminTool_PlugIn(); 2. Найти в классе 'CustomMission: MissionServer' и добавить: override void OnInit() { AdminTool.Init(); //Call for admin tool scripts } Если есть функция 'OnInit()', то добавить в ее конец код: AdminTool.Init(); //Call for admin tool scripts Пример: Затем ниже в теле этого же класса добавляем функцию (если есть уже, заменяем или дописываем недостающее) override void OnEvent(EventType eventTypeId, Param params) { super.OnEvent(eventTypeId,params); switch(eventTypeId) { case ChatMessageEventTypeID: ChatMessageEventParams chat_params = ChatMessageEventParams.Cast(params); if (chat_params.param1 == 0 && chat_params.param2 != "") //trigger only when channel is Global == 0 and Player Name does not equal to null { Param4<int,string,string,string> request_info = new Param4<int,string,string,string>(chat_params.param1, chat_params.param2, chat_params.param3, chat_params.param4); AdminTool.RequestHandler(request_info); //Send the param to Admintools } break; } } 3. Создаем в 'mpmissions\dayzOffline.chernarusplus' папку 'Scripts', а в ней папку 'AdminTool'. 4. Создаем файл с именем и расширением 'AdminTool_functions.c' и заполняем его следующим содержимым typedef Param4<int, string, string, string> AdminChatParams; class AdminTool_PlugIn { protected string Dir_Locations_Configs = "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\Scripts\\AdminTool\\"; protected string FileName_AdminList = "Admins.txt"; protected string FileName_TPLocationsList = "Locations_TP.txt"; protected bool Enable_check_nickNames_Admin = false; protected ref map<string, string> m_AdminList; protected ref map<string, vector> m_TPLocations; protected ref map<string, int> m_ExtendedCommands; protected bool m_FreeCamera; protected bool m_IsDebugRunning = false; protected PlayerBase Admin; protected PlayerIdentity identityT; protected string PlayerUID; protected string GUID; void Init() { Print("AdminTool:: Init():: Loading AdminTool Mods..."); m_AdminList = new map<string, string>; //UID, name m_TPLocations = new map<string, vector>; //name of town, pos m_ExtendedCommands = new map<string,int>; //Command, length string line_content = ""; array<string> temp_massive = new array<string>; //-----Add Admins from txt----- FileHandle AdminUIDSFile = OpenFile(Dir_Locations_Configs + FileName_AdminList,FileMode.READ); if (AdminUIDSFile != 0) { line_content = ""; while ( FGets(AdminUIDSFile,line_content) > 0 ) { if (line_content.Contains("|")) { temp_massive.Clear(); line_content.Split( "|", temp_massive ); private string Getted_UID_PL = temp_massive.Get(0); private string Getted_Name_PL = "null"; if (Enable_check_nickNames_Admin) { Getted_Name_PL = temp_massive.Get(1); m_AdminList.Insert(Getted_UID_PL,Getted_Name_PL); //UID , NAME Print("Adding Admin: "+ Getted_Name_PL + "(uid=" + Getted_UID_PL + ") To the Admin List!"); } else { m_AdminList.Insert(Getted_UID_PL,Getted_Name_PL); //UID , NAME Print("Adding Admin: "+ Getted_UID_PL + " To the Admin List!"); } temp_massive.Clear(); } } CloseFile(AdminUIDSFile); } FileHandle TPLocsFile = OpenFile(Dir_Locations_Configs + FileName_TPLocationsList,FileMode.READ); if (TPLocsFile != 0) { line_content = ""; while ( FGets(TPLocsFile,line_content) > 0 ) { if ((line_content.Contains("|")) && (line_content.Contains(" "))) { temp_massive.Clear(); line_content.Split( "|", temp_massive ); private string Getted_Namne_Location = temp_massive.Get(0); private string Getted_Coord_Location = temp_massive.Get(1); m_TPLocations.Insert(Getted_Namne_Location,Getted_Coord_Location.ToVector()); //UID , NAME Print("Adding Location: "+ Getted_Namne_Location + "(" + Getted_Coord_Location + ") To the TP Locations List!"); } } CloseFile(TPLocsFile); } //Init Commands m_ExtendedCommands.Insert("/readcfg",8); m_ExtendedCommands.Insert("/strip",6); m_ExtendedCommands.Insert("/tpm",5); m_ExtendedCommands.Insert("/tpp",4); m_ExtendedCommands.Insert("/tpto",5); m_ExtendedCommands.Insert("/spi",4); m_ExtendedCommands.Insert("/spg",4); m_ExtendedCommands.Insert("/tpc",4); //Sub commands m_ExtendedCommands.Insert("/ammo",1); m_ExtendedCommands.Insert("/stamina",1); m_ExtendedCommands.Insert("/LoadoutType",1); m_ExtendedCommands.Insert("/CustomLoadouts",1); m_ExtendedCommands.Insert("/SpawnArmed",1); m_ExtendedCommands.Insert("/freecam",1); m_ExtendedCommands.Insert("/debug",1); m_ExtendedCommands.Insert("/nighttime",1); m_ExtendedCommands.Insert("/daytime",1); m_ExtendedCommands.Insert("/godmode",1); m_ExtendedCommands.Insert("/heal",1); m_ExtendedCommands.Insert("/kill",1); m_ExtendedCommands.Insert("/tpalltome",1); m_ExtendedCommands.Insert("/killall",1); m_ExtendedCommands.Insert("/spawncar",1); } int TeleportAllPlayersTo(PlayerBase Admin) { array<Man> players = new array<Man>; GetGame().GetPlayers( players ); vector AdminPos; AdminPos = Admin.GetPosition(); for ( int i = 0; i < players.Count(); ++i ) { PlayerBase Target = players.Get(i); Target.SetPosition( AdminPos ); } return i; } void oSpawnItemFunc(bool ground, PlayerBase player, string ClassName) { EntityAI item; ItemBase itemBs vector NewPosition; vector OldPosition; if (ground) { OldPosition = player.GetPosition(); NewPosition[0] = OldPosition[0] + 1.5; NewPosition[1] = OldPosition[1] + 0.1; NewPosition[2] = OldPosition[2] + 1.5; item = GetGame().CreateObject( ClassName, NewPosition, false, true ); }else{ item = player.GetInventory().CreateInInventory( ClassName ); itemBs = ItemBase.Cast(item); itemBs.SetQuantity(1); } } vector SnapToGround(vector pos) { float pos_x = pos[0]; float pos_z = pos[2]; float pos_y = GetGame().SurfaceY( pos_x, pos_z ); vector tmp_pos = Vector( pos_x, pos_y, pos_z ); tmp_pos[1] = tmp_pos[1] + pos[1]; return tmp_pos; } ref array<string> CheckCommand(string CommandLine) { ref array<string> ret = new array<string>; string strRplce,mKey; int cmdLength; strRplce = CommandLine; for (int i = 0; i < m_ExtendedCommands.Count(); ++i) { mKey = m_ExtendedCommands.GetKey(i); cmdLength = m_ExtendedCommands.Get(mKey); if (CommandLine.Contains(mKey)) { strRplce.Replace(mKey + " ",""); ret.Insert(mKey); //0 = Command 1 = Data if (strRplce != "") { ret.Insert(strRplce); } return ret; } } return NULL; } //--------------------------------------------------------------------------------- void RequestHandler( Param request_info ) { AdminChatParams chat_params = AdminChatParams.Cast(request_info); if (chat_params) { array<Man> players = new array<Man>; GetGame().GetPlayers( players ); PlayerBase Admin; PlayerIdentity AdminIdentity; string AdminUID; PlayerBase selectedPlayer; PlayerIdentity selectedIdentity; string selectedUID; string chatLine = chat_params.param3; string strMessage; Param1<string> Msgparam; for (int i = 0; i < players.Count(); ++i) { private string temp_name_pl = players.Get(i).GetIdentity().GetName(); if (!Enable_check_nickNames_Admin) { temp_name_pl = players.Get(i).GetIdentity().GetPlainId(); } if (players.Get(i).GetIdentity().GetName() == chat_params.param2 && m_AdminList.Contains(players.Get(i).GetIdentity().GetPlainId()) && m_AdminList.Contains(temp_name_pl)) { Admin = players.Get(i); AdminIdentity = Admin.GetIdentity(); AdminUID = AdminIdentity.GetPlainId(); } } if (Admin && AdminUID != "") { if (chatLine.Contains("/")) { ref array<string> chatData = CheckCommand(chatLine); string cCommand, cData; if (chatData != NULL) { cCommand = chatData.Get(0); cData = chatData.Get(1); } else { cCommand = "UnknownCommand" } Run_Command(cCommand,cData,players,selectedPlayer,selectedIdentity,selectedUID,Admin,AdminIdentity,AdminUID); } } } } ///////////////////// void Run_Command(string cCommand,string cData,array<Man> players,PlayerBase selectedPlayer,PlayerIdentity selectedIdentity,string selectedUID,PlayerBase Admin,PlayerIdentity AdminIdentity, string AdminUID) { string strMessage; Param1<string> Msgparam; switch(cCommand) { case "/readcfg": { Init(); Msgparam = new Param1<string>( "Configs Readed Again!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } case "/strip": { for ( int a = 0; a < players.Count(); ++a ) { selectedPlayer = players.Get(a); selectedIdentity = selectedPlayer.GetIdentity(); if ( selectedIdentity.GetName() == cData ) { selectedPlayer.RemoveAllItems(); Msgparam = new Param1<string>( "Player "+cData +" Stripped!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } } break; } case "/tpm": { for ( int zm = 0; zm < players.Count(); ++zm ) { if ( players.Get(zm).GetIdentity().GetName() == cData ) { Admin.SetPosition(players.Get(zm).GetPosition()); strMessage = "You were teleported to player " + cData; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } } break; { case "/tpp": { for ( int z = 0; z < players.Count(); ++z ) { selectedPlayer = players.Get(z); selectedIdentity = selectedPlayer.GetIdentity(); if ( selectedIdentity.GetName() == cData ) { selectedPlayer.SetPosition(Admin.GetPosition()); Msgparam = new Param1<string>( "You were teleported by the admin!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, selectedIdentity); strMessage = "Player " + cData + " was teleported to your location!"; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } } break; } case "/tpto": { vector position = "0 0 0"; if (m_TPLocations.Contains(cData)) { m_TPLocations.Find( cData, position ); vector ofixPlayerPos; ofixPlayerPos[0] = position[0]; ofixPlayerPos[2] = position[2]; ofixPlayerPos = SnapToGround( ofixPlayerPos ); Admin.SetPosition(ofixPlayerPos); strMessage = "Teleported To Location: " + cData; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } else { strMessage = "Teleport Failed! Location: " + cData + " Is not on the list!"; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } break; } case "/spi": { oSpawnItemFunc(false,Admin,cData); strMessage = "Admin Commands: Item " + cData + " Added in Inventory!"; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } case "/spg": { oSpawnItemFunc(true,Admin,cData); strMessage = "Admin Commands: Item " + cData + " Spawned around you!"; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } case "/tpc": { vector tpPos = cData.ToVector(); vector fixPlayerPos; fixPlayerPos[0] = tpPos[0]; fixPlayerPos[2] = tpPos[2]; fixPlayerPos = SnapToGround( fixPlayerPos ); Admin.SetPosition(fixPlayerPos); strMessage = "Teleported to:: " + tpPos; Msgparam = new Param1<string>( strMessage ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } case "/ammo": { EntityAI CurrentWeapon = Admin.GetHumanInventory().GetEntityInHands(); if( CurrentWeapon ) { CurrentWeapon.SetHealth( CurrentWeapon.GetMaxHealth( "", "" ) ); Magazine foundMag = ( Magazine ) CurrentWeapon.GetAttachmentByConfigTypeName( "DefaultMagazine" ); if( foundMag && foundMag.IsMagazine()) { foundMag.ServerSetAmmoMax(); } Object Suppressor = ( Object ) CurrentWeapon.GetAttachmentByConfigTypeName( "SuppressorBase" ); if( Suppressor ) { Suppressor.SetHealth( Suppressor.GetMaxHealth( "", "" ) ); } string displayName = CurrentWeapon.ConfigGetString("displayName"); Msgparam = new Param1<string>( "Weapon " + displayName + "Reloaded and Repaired" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } break; } case "/freecam": { PlayerBase pBody = Admin; if (m_FreeCamera) { GetGame().SelectPlayer(Admin.GetIdentity(), pBody); m_FreeCamera = false; Msgparam = new Param1<string>( "Exiting FreeCam!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } else { GetGame().SelectPlayer(Admin.GetIdentity(), NULL); GetGame().SelectSpectator(Admin.GetIdentity(), "freedebugcamera", Admin.GetPosition()); m_FreeCamera = true; Msgparam = new Param1<string>( "FreeCam Spawned!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } break; } case "/debug": { if (m_IsDebugRunning) { Msgparam = new Param1<string>( "DeBug Monitor (Status Monitor) Disabled!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); GetGame().SetDebugMonitorEnabled(0); m_IsDebugRunning = false; } else { Msgparam = new Param1<string>( "DeBug Monitor (Status Monitor) Enabled!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); GetGame().SetDebugMonitorEnabled(1); m_IsDebugRunning = true; } break; } case "/nighttime": { GetGame().GetWorld().SetDate( 1988, 9, 23, 22, 0 ); Msgparam = new Param1<string>( "NIGHT TIME!!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } case "/daytime": { GetGame().GetWorld().SetDate( 1988, 5, 23, 12, 0 ); Msgparam = new Param1<string>( "DAY TIME!!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } /*case "/godmode": { string GmodeCheck; GUID = AdminUID; g_Game.GetProfileString("SafeZoneStatus"+GUID,GmodeCheck); if (GmodeCheck == "true") { g_Game.SetProfileString("SafeZoneStatus"+GUID,"false"); Msgparam = new Param1<string>( "God Mode DISABLED!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } else { g_Game.SetProfileString("SafeZoneStatus"+GUID,"true"); Msgparam = new Param1<string>( "God Mode ENABLED!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } break; } */ case "/heal": { Msgparam = new Param1<string>( "Player Healed!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); Admin.SetHealth( Admin.GetMaxHealth( "", "" ) ); Admin.SetHealth( "","Blood", Admin.GetMaxHealth( "", "Blood" ) ); break; } case "/kill": { Admin.SetHealth(0); break; } case "/tpalltome": { int tpCount = TeleportAllPlayersTo(Admin); string msgc = "All " + tpCount.ToString() + " Players Teleported to my POS!"; Msgparam = new Param1<string>( msgc ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } case "/killall": { for ( int ig = 0; ig < players.Count(); ++ig ) { PlayerBase Target = players.Get(ig); if ( Target.GetIdentity() != AdminIdentity ) { Target.SetHealth(0); } } break; } case "/spawncar": { EntityAI MyV3S; vector NewPosition; vector OldPosition; OldPosition = Admin.GetPosition(); NewPosition[0] = OldPosition[0] + 1.5; NewPosition[1] = OldPosition[1] + 0.2; NewPosition[2] = OldPosition[2] + 1.5; MyV3S = GetGame().CreateObject( "OffroadHatchback", NewPosition, false, true, true ); MyV3S.GetInventory().CreateAttachment("HatchbackHood"); MyV3S.GetInventory().CreateAttachment("HatchbackTrunk"); MyV3S.GetInventory().CreateAttachment("HatchbackDoors_CoDriver"); MyV3S.GetInventory().CreateAttachment("HatchbackWheel"); MyV3S.GetInventory().CreateAttachment("HatchbackWheel"); MyV3S.GetInventory().CreateAttachment("HatchbackWheel"); MyV3S.GetInventory().CreateAttachment("HatchbackWheel"); MyV3S.GetInventory().CreateAttachment("SparkPlug"); MyV3S.GetInventory().CreateAttachment("EngineBelt"); MyV3S.GetInventory().CreateAttachment("CarBattery"); auto carfluids = Car.Cast( MyV3S ); carfluids.Fill( CarFluid.FUEL, 1000 ); carfluids.Fill( CarFluid.OIL, 1000 ); carfluids.Fill( CarFluid.BRAKE, 1000 ); carfluids.Fill( CarFluid.COOLANT, 1000 ); break; break; } default: { Msgparam = new Param1<string>( "Error: The following command is Unknown." ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); break; } } } } или поместить готовый файл AdminTool_functions.c 5. Рядом с файлом разместить 2 следующих файла: Admins.txt Locations_TP.txt Заполнять их аналогично примеру. Папку чтения этих файлов можно сменить, см ниже. 6. В строках protected string Dir_Locations_Configs = "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\Scripts\\AdminTool\\"; protected string FileName_AdminList = "Admins.txt"; protected string FileName_TPLocationsList = "Locations_TP.txt"; protected bool Enable_check_nickNames_Admin = false; Написаны мини-настроечки. 'Dir_Locations_Configs' - папка расположения 2-х текстовых файлов с вашими настройками. Это может быть относительный путь, как в примере, либо абсолютный путь, например protected string Dir_Locations_Configs = "C:\\DayZ_Server\\AdminTool\\"; В 'FileName_AdminList' и 'FileName_TPLocationsList' соответственно указаны имена файлов с настройками UID и локаций для телепорта. Примеры файлов выше были даны. В 'Enable_check_nickNames_Admin' параметр точной проверки ника к добавленному UID в файл с админами. 'true' - включен, 'false' - выключен. 7. Запускаем сервер и радуемся. Авторизуемся через '#login {пароль админа сервера}' в чате и используем команды. Для совсем уж рукожопов, миссия сервера с админкой: dayzOffline.chernarusplus.rar P.S. Команды видны всем игрокам! P.P.S. Список комманд вынесет в функции Init класса админки, а их действия внизу файла в отдельной функции для простоты добавления своих комманд и их редактирования. Ну и для желающих годмод, так сказать мини-дополнение: 1. Ставим все как и выше. 2. Распаковываем в корень сервера папку из архива: ModdedScripts.rar 3. В параметры запуска сервера добавляем -mod=ModdedScripts 4. В файле 'AdminTool_functions.c' меняем /*case "/godmode": { string GmodeCheck; GUID = AdminUID; g_Game.GetProfileString("SafeZoneStatus"+GUID,GmodeCheck); if (GmodeCheck == "true") { g_Game.SetProfileString("SafeZoneStatus"+GUID,"false"); Msgparam = new Param1<string>( "God Mode DISABLED!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } else { g_Game.SetProfileString("SafeZoneStatus"+GUID,"true"); Msgparam = new Param1<string>( "God Mode ENABLED!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } break; } */ на case "/godmode": { string GmodeCheck; GUID = AdminUID; g_Game.GetProfileString("GodModeEnabledFor:"+GUID,GmodeCheck); if (GmodeCheck == "true") { g_Game.SetProfileString("GodModeEnabledFor:"+GUID,"false"); Msgparam = new Param1<string>( "God Mode DISABLED!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } else { g_Game.SetProfileString("GodModeEnabledFor:"+GUID,"true"); Msgparam = new Param1<string>( "God Mode ENABLED!" ); GetGame().RPCSingleParam(Admin, ERPCs.RPC_USER_ACTION_MESSAGE, Msgparam, true, AdminIdentity); } break; } P.S. Если у вас в корне сервера лежала папка scripts и она читалась сервером, после этого она может перестать считываться!
×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.

Поддержка