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

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

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

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

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

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


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

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

  1. 2 балла
    BorizzK

    Кастом спавн машины с топливом и тп

    Проблема решена Car car = Car.Cast(m_Car); car.Fill(CarFluid.FUEL, 1); car.Fill(CarFluid.COOLANT, 1); car.Fill(CarFluid.OIL, 1); Кол-во жижи имеет тип float и считается в тысячных от 1.000 максимум до 0.001 минимум Все заводится и ездит )))
  2. 1 балл
    123new

    Авторестартер для сервера

    Господа, ну я сильно удивлен, что такие вещи, как авторестарт сервера многим даются сложно для понимания. Ведь все довольно легко, да и способов море в сети. Опишу в теме парочку своих способов. Способ I: 1. Создаем в папке с сервером игры файл с именем 'AutoRestartScript.bat' и заполняем его следующими данными: @echo off cd /d %~dp0 ::CODE FILE UTF-8 + Russian OEM 866 ::: Здесь указываем имя серверного exe (обязательно, он проверяется на запущенность) set PROC_SERVER=DayZServer_x64.exe ::: Здесь указываем параметры запуска сервера для запуска сервера с exe напрямую set PROC_SERVER_PARAMS=-port=2302 -config=Instance_1\server.cfg -cfg=Instance_1\basic.cfg -profiles=Instance_1 -user=Instance_1 -name=Server -nologs -adminlog -freezecheck -noFilePatching ::: Здесь указываем путь до папки с сервером set Patch_server=C:\servers\DayZServer_063 ::: Здесь указываем имя файла, в который будут писаться логи рестарта set LOGFILE=log_restarter_server.txt ::: Здесь указываем время между проверками на запущенность процесса сервера (в секундах) set TIME_CHECK=60 ::: Указываем 1 если хотим запускать сервер в режиме запуска через SmartSteamEmu set Start_server_with_smartsteamemu=1 ::: Указываем путь до папки с SmartSteamLoader set NAME_DIR_smartsteamemu=C:\servers\DayZServer_063\SmartSteamEmu ::: Указываем имя запускаемого файла SmartSteamLoader set NAME_LOADER_smartsteamemu=SmartSteamLoader_x64.exe ::: Указываем путь и имя конфиг-файла SmartSteamLoader set NAME_CONFIG_smartsteamemu=C:\servers\DayZServer_063\SmartSteamEmu\Test_config.ini ::: Указываем 1 если хотим контролировать BEC на запущенность (чтобы вкл. параметры ниже указать 1) set Use_BEC_AutoRestarter=1 ::: Здесь указываем имя BEC exe set PROC_BEC=Bec_063.exe ::: Здесь указываем параметры запуска BEC set PROC_BEC_PARAMS=--dsc -f config.cfg ::: Здесь указываем путь до папки с BEC set Patch_bec=C:\servers\DayZServer_063\Instance_1\bec ::: ДАЛЕЕ НИЧЕГО НЕ ТРОГАЕМ!!! setlocal EnableDelayedExpansion echo. echo. AutoRestart Script started! echo. :check COLOR 0C timeout /t 10 /nobreak > nul set FLAG=0 set PROC_SERVER_START_EXE=%PROC_SERVER% set PROC_SERVER_START_Patch=%Patch_server% for /f %%i in ('tasklist /FI "IMAGENAME eq %PROC_SERVER%" /FI "STATUS eq RUNNING"') do ( set /a FLAG += 1 ) if %Start_server_with_smartsteamemu% == 1 ( set PROC_SERVER_START_Patch=%NAME_DIR_smartsteamemu% set PROC_SERVER_START_EXE=%NAME_LOADER_smartsteamemu% set PROC_SERVER_PARAMS=%NAME_CONFIG_smartsteamemu% ) if %FLAG% == 1 ( TIMEOUT /T %TIME_CHECK% /NOBREAK > nul cd "%Patch_server%" start "" "%PROC_SERVER_START_Patch%\%PROC_SERVER_START_EXE%" %PROC_SERVER_PARAMS%> nul^ && (set MSG=[%date% %time%] %PROC_SERVER% restarted echo !MSG! echo !MSG! >> %LOGFILE% timeout /t %TIME_CHECK% /nobreak > nul)^ || (set MSG=[%date% %time%] Error restarting PROC_SERVERess echo !MSG! echo !MSG! >> %LOGFILE%) ) if (%Use_BEC_AutoRestarter% != 1) goto :check set FLAG_BEC=0 for /f %%i in ('tasklist /FI "IMAGENAME eq %PROC_BEC%" /FI "STATUS eq RUNNING"') do ( set /a FLAG_BEC += 1 ) if %FLAG_BEC% == 1 ( TIMEOUT /T %TIME_CHECK% /NOBREAK > nul cd "%Patch_bec%" start "" "%Patch_bec%\%PROC_BEC%" %PROC_BEC_PARAMS%> nul^ && (set MSG=[%date% %time%] %PROC_BEC% restarted echo !MSG! echo !MSG! >> %LOGFILE% timeout /t %TIME_CHECK% /nobreak > nul)^ || (set MSG=[%date% %time%] Error restarting PROC_BECess echo !MSG! echo !MSG! >> %LOGFILE%) ) goto :check exit Кому лень создавать, вот готовый: _AutoRestarter1.bat 2. Заменяем и правим параметры в файле на свои, в данном случае это параметры запуска сервера, местонахождение сервера на компьютере и т.п., пояснения есть, как видим. Крайне не рекоммендую в названиях файлах и расположениях сервера указывать пробелы, bat-файлы их не любят! Если вы используете 'SmartSteamEmu', можно активировать опцию запуска сервера через него. Также в батничке есть контролер 'BEC' на случай и его падений (произвольного выключения) 3. Сохраняем, запускаем, и спустя время, обозначенное в параметре: set TIME_CHECK=60 сервер у вас запустится, если он отсутствует в процессах windows (при условии, если не напортачили в параметрах). Способ II: 1. Создаем в папке с сервером игры файл с именем 'AutoRestartScript.bat' и заполняем его следующими данными: @echo off cd /d %~dp0 ::CODE FILE UTF-8 + Russian OEM 866 ::: Здесь указываем имя серверного exe (обязательно, он проверяется на запущенность) set PROC_SERVER=DayZServer_x64.exe ::: Здесь указываем параметры запуска сервера для запуска сервера с exe напрямую set PROC_SERVER_PARAMS=-port=2302 -config=Instance_1\server.cfg -cfg=Instance_1\basic.cfg -profiles=Instance_1 -user=Instance_1 -name=Server -nologs -adminlog -freezecheck -noFilePatching ::: Здесь указываем путь до папки с сервером set Patch_server=C:\servers\DayZServer_063 ::: Здесь указываем имя файла, в который будут писаться логи рестарта set LOGFILE=log_restarter_server.txt ::: Здесь указываем время между проверками на запущенность процесса сервера (в секундах) set TIME_CHECK=60 ::: Указываем 1 если хотим запускать сервер через свой batch-файл, 0 если хотим запускать сервер напрямую с exe-файла сервера с параметрами выше set USE_BATCH_FILE__FOR_START_SERVER=1 ::: Указываем путь до папки с SmartSteamLoader set BATCH_FILE_START_SERVER=C:\servers\DayZServer_063\Start_server_game.bat ::: ДАЛЕЕ НИЧЕГО НЕ ТРОГАЕМ!!! setlocal EnableDelayedExpansion echo. echo. AutoRestart Script started! echo. :check COLOR 0C timeout /t 10 /nobreak > nul set FLAG=0 set PROC_SERVER_START_Patch=%Patch_server%\%PROC_SERVER% set PROC_SERVER_START_PARAMS=%PROC_SERVER_PARAMS% for /f %%i in ('tasklist /FI "IMAGENAME eq %PROC_SERVER%" /FI "STATUS eq RUNNING"') do ( set /a FLAG += 1 ) if %USE_BATCH_FILE__FOR_START_SERVER% == 1 ( set PROC_SERVER_START_Patch=%BATCH_FILE_START_SERVER% set PROC_SERVER_START_PARAMS= ) if %FLAG% == 1 ( TIMEOUT /T %TIME_CHECK% /NOBREAK > nul cd "%Patch_server%" start "" "%PROC_SERVER_START_Patch%" %PROC_SERVER_START_PARAMS%> nul^ && (set MSG=[%date% %time%] %PROC_SERVER% restarted echo !MSG! echo !MSG! >> %LOGFILE% timeout /t %TIME_CHECK% /nobreak > nul)^ || (set MSG=[%date% %time%] Error restarting PROC_SERVERess echo !MSG! echo !MSG! >> %LOGFILE%) ) goto :check exit Кому лень создавать, вот готовый: _AutoRestarter2.bat 2.Заменяем и правим параметры в файле на свои, в данном случае это параметры запуска сервера, местонахождение сервера на компьютере и т.п., пояснения также есть, как видим. Крайне не рекоммендую в названиях файлах и расположениях сервера указывать пробелы, bat-файлы их не любят! Если вы используете BEC, Whitelister, еще что-либо, запускаете сервер игры не напрямую, а через loader crack (как в smartsteamemu), или вовсе хотите делать при рестарте что-то свое, можно запускать сервер не с exe-файла сервера, а с указанного bat-файла. (примеры файлов: Start_server.bat test SmartSteamEmu.bat) 3. Сохраняем, запускаем, и спустя время, обозначенное в параметре: set TIME_CHECK=60 сервер у вас запустится, если он отсутствует в процессах windows (при условии, если не напортачили в параметрах). Способ III: 1. Создаем, если отсутствует, простенький батничек, который будет запускать сервер ваш со всем необходимым. Если имеется такой, переходим далее. Примеры есть в п. 3 ниже! 2. Скачиваем и запускаем простенькую программку: https://yadi.sk/d/k1Jk3sByqzczAQ RestartOnCrash.rar 3. Запускаем программку и добавляем новое правило нажатием Add, настраиваем: 6 - Указываем сам bat-файл, запускающий наш сервер (создавали в п. 1)(примеры файлов test SmartSteamEmu.bat Start_server.bat) 7 - Указываем папку с вашим сервером Настройки на скриншоте рабочие для сервера DayZ 0.63 4. Сохраняем настройки кнопкой OK 5. Ставим галочку, если не стоит в списке рядом с созданным нами заданием 6. Готово, сервер сам перезапустится, спустя время в секундах, обозначенное в настройках прграммы + время в правиле, созданном нами. Указанные выше способы далеко не единственные, и пойдут наверняка не только для сервера DayZ 0.63, но и для остальных игр и версий издателя Bohemia Interactive, а может и вовсе для других серверов и программ, но я надеюсь, что данная тема будет для вас полезна и поможет внести понимание того как и что работает!
  3. 1 балл
    BorizzK

    Админка

    Sancezz063 Ты сделай #logout и потом #login
  4. 1 балл
  5. 1 балл
    elanc

    Кастом спавн машины с топливом и тп

    Нашёл метод Fill у класса Car: void Fill( CarFluid fluid, float amount ); Ну и по соседству: float GetFluidCapacity( CarFluid fluid ); — чтоб узнать сколько какой жидкости помещается..
  6. 1 балл
    BorizzK

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

    Вобщем починил godmode сообщения о смертях (выложу в теме) итд итп ничего особенного нет только даункаст и GetStatStomachSolid стал GetStatStomachVolume ну и по мелочи правда эти косячные символы s и d перед сообщениями, но это походу глюк либо клиента, либо сервера обработка ущерба (я так понял одна из обработок) в PlayerBase.c в контексте вышеуказанной админки override void EEHitBy(TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos) { PlayerIdentity p_identity = this.GetIdentity(); //получаем cущность игрока string p_Name = p_identity.GetName(); // Получим имя игрока string p_UID = p_identity.GetPlainId(); // UID в нашем знакомом виде 7656119********** string p_XUID = p_identity.GetId(); // получим UID в не знакомом виде Ue7dyagee34********* int p_ID = p_identity.GetPlayerId(); // получим порядковый номер объекта типа игрок string AdminGmodeCheck, PlayerGmodeCheck, SafeZoneGmodeCheck; //ref SurvivorBase SBPlayer = this; ref SurvivorBase SBPlayer = SurvivorBase.Cast(this); //string GUID = SBPlayer.GetPlayerID(); //see 4_World\Entities\ManBase\PlayerBase\SurvivorBase.c string GUID = p_UID; g_Game.GetProfileString("AdminGmode"+GUID,AdminGmodeCheck); g_Game.GetProfileString("SafeZoneStatus"+GUID,SafeZoneGmodeCheck); if (AdminGmodeCheck == "true" || PlayerGmodeCheck == "true" || SafeZoneGmodeCheck == "true") { if (SafeZoneGmodeCheck == "true") //SafeZone { Print("PlayerBase.c : EEHitBy : SafeZoneGmodeCheck = true : Player GUID: " + GUID); Print("PlayerBase.c : EEHitBy : Func input: this = " + this.ToString() + ", p_Name = " + p_Name + ", p_UID = " + p_UID + ", p_XUID = " + p_XUID); if ( damageResult != null ) { float HlthdmgDone = damageResult.GetDamage(dmgZone, ""); float BlddmgDone = damageResult.GetDamage(dmgZone, "Blood"); float ShcdmgDone = damageResult.GetDamage(dmgZone, "Shock"); //We dont want to give players full heath on each hit, as that would make safezone a heal centre... SetHealth( GetHealth("","") + HlthdmgDone ); SetHealth( "","Blood", GetHealth("","Blood") + BlddmgDone); SetHealth( "","Shock", GetHealth( "","Shock") + ShcdmgDone); } } else if (AdminGmodeCheck == "true" || PlayerGmodeCheck == "true") //For admins or special player give heal on each hit. { Print("PlayerBase.c : EEHitBy : AdminGmodeCheck = true || PlayerGmodeCheck = true : Player UID: " + GUID + ", this:" + this.ToString()); Print("PlayerBase.c : EEHitBy : Func input: this = " + this.ToString() + ", p_Name = " + p_Name + ", p_UID = " + p_UID + ", p_XUID = " + p_XUID); SetHealth( GetMaxHealth( "", "") ); SetHealth( "","Blood", GetMaxHealth( "", "Blood" ) ); SetHealth( "","Shock", GetMaxHealth( "","Shock") ); GetStatStamina().Set(1000); GetStatEnergy().Set(1000); GetStatWater().Set(1000); GetStatStomachVolume().Set(300); GetStatStomachWater().Set(300); GetStatStomachEnergy().Set(300); GetStatHeatComfort().Set(0); } } else { //native super.EEHitBy(damageResult, damageType, source, component, dmgZone, ammo, modelPos); //! melee specific stuff if (damageType == 0) { //! save melee source for further processing (eg. ADM log) m_MeleeLastHitTime = GetGame().GetTime(); m_MeleeSource = source; } if( damageResult != null && damageResult.GetDamage(dmgZone, "Shock") > 0) { m_LastShockHitTime = GetGame().GetTime(); } //DamagePlayer(damageResult, source, modelPos, ammo); //new bleeding computation //--------------------------------------- if ( damageResult != null && GetBleedingManagerServer() ) { float dmg = damageResult.GetDamage(dmgZone, "Blood"); GetBleedingManagerServer().ProcessHit(dmg, component, dmgZone, ammo, modelPos); } //Print(damageResult.GetDamage(dmgZone,"Health")); //--------------------------------------- //if( GetBleedingManagerServer() ) GetBleedingManagerServer().ProcessHit(dmgZone, ammo, modelPos); #ifdef DEVELOPER if(DiagMenu.GetBool(DiagMenuIDs.DM_MELEE_DEBUG_ENABLE)) { Print("EEHitBy() | Charater " + GetDisplayName() + " hit by " + source.GetDisplayName() + " to " + dmgZone); } PluginRemotePlayerDebugServer plugin_remote_server = PluginRemotePlayerDebugServer.Cast( GetPlugin(PluginRemotePlayerDebugServer) ); if(plugin_remote_server) { plugin_remote_server.OnDamageEvent(this, damageResult); } #endif if (GetGame().IsDebugMonitor()) m_DebugMonitorValues.SetLastDamage(source.GetDisplayName()); //native } } код между каментами //native - чистый оригинальный код функции и в него изменения не вносились те я действовал методом добавления, не меняя основной код
×
×
  • Создать...

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

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

Поддержка