Hier sind 2 Versionen die Funktionieren, ohne das man die Config ändern muss.
Mit Antihack(Download im Anhang):
Beachtet werden muss:
- Verknüpfung des Antihacks muss im "Antihack" Ordner liegen (also im Programm Ordner einen Unterordner Antihack machen) und den Namen packetfilter(.lnk) haben.
- Server Namen müssen folgende sein:AccountServer.exe, DatabaseServer.exe, CoreServer.exe, Certifier.exe, LoginServer.exe, CacheServer.exe, WorldServer.exe
Server_Starter.bat
Server_Starter_Config.bat
Code:
@echo off &setlocal enabledelayedexpansion set /a LOOP=-1 :start mode CON: COLS=14 LINES=3 echo Starting up... call Server_Starter_Config.bat TITLE %TIT_01% COLOR %COL_01% if %ERRORAUSGABE%==Y md %FOL_ERROR% cls MODE CON: COLS=30 LINES=24 TITLE %TIT_02% COLOR %COL_02% if %KACCS%==Y taskkill /f /im %ACCP% > NUL if %ERRORLEVEL%==128 set ACCSKD=N if %ERRORLEVEL%==0 set ACCSKD=Y cls if %KDBS%==Y taskkill /f /im %DBP% > NUL if %ERRORLEVEL%==128 set DBSKD=N if %ERRORLEVEL%==0 set DBSKD=Y cls if %KCRS%==Y taskkill /f /im %CRP% > NUL if %ERRORLEVEL%==128 set CRSKD=N if %ERRORLEVEL%==0 set CRSKD=Y cls if %KCF%==Y taskkill /f /im %CFP% > NUL if %ERRORLEVEL%==128 set CFKD=N if %ERRORLEVEL%==0 set CFKD=Y cls if %KLS%==Y taskkill /f /im %LP% > NUL if %ERRORLEVEL%==128 set LSKD=N if %ERRORLEVEL%==0 set LSKD=Y cls if %KC%==Y taskkill /f /im %CP% > NUL if %ERRORLEVEL%==128 set CSKD=N if %ERRORLEVEL%==0 set CSKD=Y cls if %KWS%==Y taskkill /f /im %WP% > NUL if %ERRORLEVEL%==128 set WSKD=N if %ERRORLEVEL%==0 set WSKD=Y cls if %KAH%==Y taskkill /f /im %AHP% > NUL if %ERRORLEVEL%==128 set AHKD=N if %ERRORLEVEL%==0 set AHKD=Y cls if %KAH2%==Y taskkill /f /im %AH2P% > NUL if %ERRORLEVEL%==128 set AH2KD=N if %ERRORLEVEL%==0 set AH2KD=Y cls if %KOP%==Y taskkill /f /im %OPP% > NUL if %ERRORLEVEL%==128 set OPKD=N if %ERRORLEVEL%==0 set OPKD=Y cls if %KOP2%==Y taskkill /f /im %OP2P% > NUL if %ERRORLEVEL%==128 set OP2KD=N if %ERRORLEVEL%==0 set OP2KD=Y cls echo ÃÄÄÄServer Kill if %KACCS%==Y ( echo ³ ÀÄÄÄ%ACCP% if %ACCSKD%==N echo ³ ÀÄÄÄNot Killed if %ACCSKD%==Y echo ³ ÀÄÄÄKilled ) if %KACCS%==N ( echo ³ ÀÄÄÄ%ACCP% echo ³ ÀÄÄÄSkipped ) if %KDBS%==Y ( echo ³ ÀÄÄÄ%DBP% if %DBSKD%==N echo ³ ÀÄÄÄNot Killed if %DBSKD%==Y echo ³ ÀÄÄÄKilled ) if %KDBS%==N ( echo ³ ÀÄÄÄ%DBP% echo ³ ÀÄÄÄSkipped ) if %KCRS%==Y ( echo ³ ÀÄÄÄ%CRP% if %CRSKD%==N echo ³ ÀÄÄÄNot Killed if %CRSKD%==Y echo ³ ÀÄÄÄKilled ) if %KCRS%==N ( echo ³ ÀÄÄÄ%CRP% echo ³ ÀÄÄÄSkipped ) if %KCF%==Y ( echo ³ ÀÄÄÄ%CFP% if %CFKD%==N echo ³ ÀÄÄÄNot Killed if %CFKD%==Y echo ³ ÀÄÄÄKilled ) if %KCF%==N ( echo ³ ÀÄÄÄ%CFP% echo ³ ÀÄÄÄSkipped ) if %KLS%==Y ( echo ³ ÀÄÄÄ%LP% if %LSKD%==N echo ³ ÀÄÄÄNot Killed if %LSKD%==Y echo ³ ÀÄÄÄKilled ) if %KLS%==N ( echo ³ ÀÄÄÄ%LP% echo ³ ÀÄÄÄSkipped ) if %KC%==Y ( echo ³ ÀÄÄÄ%CP% if %CSKD%==N echo ³ ÀÄÄÄNot Killed if %CSKD%==Y echo ³ ÀÄÄÄKilled ) if %KC%==N ( echo ³ ÀÄÄÄ%CP% echo ³ ÀÄÄÄSkipped ) if %KWS%==Y ( echo ³ ÀÄÄÄ%WP% if %WSKD%==N echo ³ ÀÄÄÄNot Killed if %WSKD%==Y echo ³ ÀÄÄÄKilled ) if %KWS%==N ( echo ³ ÀÄÄÄ%WP% echo ³ ÀÄÄÄSkipped ) if %KAH%==Y ( echo ³ ÀÄÄÄ%AHP% if %AHKD%==N echo ³ ÀÄÄÄNot Killed if %AHKD%==Y echo ³ ÀÄÄÄKilled ) if %KAH%==N ( echo ³ ÀÄÄÄ%AHP% echo ³ ÀÄÄÄSkipped ) if %KAH2%==Y ( echo ³ ÀÄÄÄ%AH2P% if %AH2KD%==N echo ³ ÀÄÄÄNot Killed if %AH2KD%==Y echo ³ ÀÄÄÄKilled ) if %KAH2%==N ( echo ³ ÀÄÄÄ%AH2P% echo ³ ÀÄÄÄSkipped ) if %KOP%==Y ( echo ³ ÀÄÄÄ%OPP% if %OPKD%==N echo ³ ÀÄÄÄNot Killed if %OPKD%==Y echo ³ ÀÄÄÄKilled ) if %KOP%==N ( echo ³ ÀÄÄÄ%OPP% echo ³ ÀÄÄÄSkipped ) if %KOP2%==Y ( echo ³ ÀÄÄÄ%OP2P% if %OP2KD%==N echo ³ ÀÄÄÄNot Killed if %OP2KD%==Y echo ³ ÀÄÄÄKilled ) if %KOP2%==N ( echo ³ ÀÄÄÄ%OP2P% echo ³ ÀÄÄÄSkipped ) if %ASK_BEFORE_START%==Y ( if %LOOP%==-1 ( echo msgbox"Server geschlossen. Ok drücken, um Server zu starten. ",0 , "Server Restarter "> %TEMP%\temp.vbs %TEMP%\temp.vbs del %TEMP%\temp.vbs ) ) CLS TITLE %TIT_04% COLOR %COL_04% echo Server werden gestartet... echo. set /a STEP=0 :stepcheck set h=%time:~0,2%&set m=%time:~3,2% set /a STEP=%STEP%+1 if %STEP%==12 goto :skip__01 :SACCS if not %SACCS%==Y goto :SDBS if %OACC%==%STEP% ( if not exist %ACCS% ( if %ERRORAUSGABE%==Y echo AccountServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SDBS ) start %ACCS%&echo Account Server set KPJEZZ=%KPJEZZ%+ACCOUNTSERVER+ ping -n %W3% localhost > NUL ) :SDBS if not %SDBS%==Y goto :SCRS if %ODB%==%STEP% ( if not exist %DBS% ( if %ERRORAUSGABE%==Y echo DatabaseServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SCRS ) start %DBS%&echo DatabaseServer set KPJEZZ=%KPJEZZ%+DATABASESERVER+ echo waiting %W1% Seconds ping -n %W1% localhost > NUL ) :SCRS if not %SCRS%==Y goto :SCF if %OCR%==%STEP% ( if not exist %CRS% ( if %ERRORAUSGABE%==Y echo CoreServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SCF ) start %CRS%&echo CoreServer set KPJEZZ=%KPJEZZ%+CORESERVER+ ping -n %W3% localhost > NUL ) :SCF if not %SCF%==Y goto :SLS if %OCF%==%STEP% ( if not exist %CF% ( if %ERRORAUSGABE%==Y echo Certifier File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SLS ) start %CF%&echo Certifier set KPJEZZ=%KPJEZZ%+Certifier+ ping -n %W3% localhost > NUL ) :SLS if not %SLS%==Y goto :SCS if %OL%==%STEP% ( if not exist %LS% ( if %ERRORAUSGABE%==Y echo LoginServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SCS ) start %LS%&echo LoginServer set KPJEZZ=%KPJEZZ%+LOGINSERVER+ ping -n %W3% localhost > NUL ) :SCS if not %SCS%==Y goto :SWS if %OC%==%STEP% ( if not exist %CS% ( if %ERRORAUSGABE%==Y echo CacheServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SWS ) start %CS%&echo CacheServer set KPJEZZ=%KPJEZZ%+CACHESERVER+ echo waiting %W2% Seconds ping -n %W2% localhost > NUL ) :SWS if not %SWS%==Y goto :SAH if %OW%==%STEP% ( if not exist %WS% ( if %ERRORAUSGABE%==Y echo WorldServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SAH ) start %WS%&echo WorldServer set KPJEZZ=%KPJEZZ%+WORLDSERVER+ ping -n %W3% localhost > NUL ) :SAH if not %SAH%==Y goto :SAH2 if %OAH%==%STEP% ( if not exist %AH% ( if %ERRORAUSGABE%==Y echo Antihack1 File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SAH2 ) start %AH%&echo Antihack1 set KPJEZZ=%KPJEZZ%+AH1+ ping -n %W3% localhost > NUL ) :SAH2 if not %SAH2%==Y goto :SOP if %OAH2%==%STEP% ( if not exist %AH2% ( if %ERRORAUSGABE%==Y echo Antihack2 File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SOP ) start %AH2%&echo Antihack2 set KPJEZZ=%KPJEZZ%+AH2+ ping -n %W3% localhost > NUL ) :SOP if not %SOP%==Y goto :SOP2 if %OOP%==%STEP% ( if not exist %OP% ( if %ERRORAUSGABE%==Y echo %OP% File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SOP2 ) start %OP%&echo %OPP% set KPJEZZ=%KPJEZZ%+OP+ ping -n %W3% localhost > NUL ) :SOP2 if not %SOP2%==Y goto :skip__01 if %OOP2%==%STEP% ( if not exist %OP2% ( if %ERRORAUSGABE%==Y echo %OP2% File not found> %FOL_ERROR%/%h%_%M%.txt&goto :skip_01 ) start %OP2%&echo %OP2P% set KPJEZZ=%KPJEZZ%+OP2+ ping -n %W3% localhost > NUL ) :skip__01 cls echo Started Servers: echo %KPJEZZ% if not %STEP%==13 goto :stepcheck if not %RS%==Y exit :auto call Server_Starter_config.bat TITLE %TIT_03% COLOR %COL_03% MODE CON: COLS=45 LINES=21 set run=%TIME% set run2=%DATE% :start_auto if %LOOP% GEQ 100000 ( if %ERRORAUSGABE%==Y echo %LOOP% loops, setze loops auf 0. > %FOL_ERROR%/Loopreset.txt set /a LOOP=DELETE ) cls set /a loop=%LOOP% +1 echo ÃÄÄÄServer echo ³ ³ ÀÄÄÄÄLoopsÄÄÄÄÄÄLast Crash: echo ³ ³ À%LOOP% À%RUN2% echo ³ ³ À%RUN% if %SACCS%==Y ( echo ³ ÀÄÄÄ%ACCP% if %ACCSR%==Y echo ³ ÀÄÄÄRunning if %ACCSR%==N echo ³ ÀÄÄÄCrashed if %ACCSR%==C echo ³ ÀÄÄÄChecking ) if %SDBS%==Y ( echo ³ ÀÄÄÄ%DBP% if %DBSR%==Y echo ³ ÀÄÄÄRunning if %DBSR%==N echo ³ ÀÄÄÄCrashed if %DBSR%==C echo ³ ÀÄÄÄChecking ) if %SCRS%==Y ( echo ³ ÀÄÄÄ%CRP% if %CRSR%==Y echo ³ ÀÄÄÄRunning if %CRSR%==N echo ³ ÀÄÄÄCrashed if %CRSR%==C echo ³ ÀÄÄÄChecking ) if %SCF%==Y ( echo ³ ÀÄÄÄ%CFP% if %CFR%==Y echo ³ ÀÄÄÄRunning if %CFR%==N echo ³ ÀÄÄÄCrashed if %CFR%==C echo ³ ÀÄÄÄChecking ) if %SLS%==Y ( echo ³ ÀÄÄÄ%LP% if %LSR%==Y echo ³ ÀÄÄÄRunning if %LSR%==N echo ³ ÀÄÄÄCrashed if %LSR%==C echo ³ ÀÄÄÄChecking ) if %SCS%==Y ( echo ³ ÀÄÄÄ%CP% if %CSR%==Y echo ³ ÀÄÄÄRunning if %CSR%==N echo ³ ÀÄÄÄCrashed if %CSR%==C echo ³ ÀÄÄÄChecking ) if %SWS%==Y ( echo ³ ÀÄÄÄ%WP% if %WSR%==Y echo ³ ÀÄÄÄRunning if %WSR%==N echo ³ ÀÄÄÄCrashed if %WSR%==C echo ³ ÀÄÄÄChecking ) if %SAH%==Y ( echo ³ ÀÄÄÄ%AHP% if %AHR%==Y echo ³ ÀÄÄÄRunning if %AHR%==N echo ³ ÀÄÄÄCrashed if %AHR%==C echo ³ ÀÄÄÄChecking ) if %SAH2%==Y ( echo ³ ÀÄÄÄ%AH2P% if %AH2R%==Y echo ³ ÀÄÄÄRunning if %AH2R%==N echo ³ ÀÄÄÄCrashed if %AH2R%==C echo ³ ÀÄÄÄChecking ) if %SOP%==Y ( echo ³ ÀÄÄÄ%OPP% if %OPR%==Y echo ³ ÀÄÄÄRunning if %OPR%==N echo ³ ÀÄÄÄCrashed if %OPR%==C echo ³ ÀÄÄÄChecking ) if %SOP2%==Y ( echo ³ ÀÄÄÄ%OP2P% if %OP2R%==Y echo ³ ÀÄÄÄRunning if %OP2R%==N echo ³ ÀÄÄÄCrashed if %OP2R%==C echo ³ ÀÄÄÄChecking ) ping -n %LOOPTIME% localhost > NUL tasklist |find /i "%ACCP%" > NUL if %errorlevel%==1 set ACCSR=N&goto :DBSR set ACCSR=Y :DBSR tasklist |find /i "%DBP%" > NUL if %errorlevel%==1 set DBSR=N&goto :CSR set DBSR=Y :CSR tasklist |find /i "%CRP%" > NUL if %errorlevel%==1 set CRSR=N&goto :CFR set CRSR=Y :CFR tasklist |find /i "%CFP%" > NUL if %errorlevel%==1 set CFR=N&goto :LSR set CFR=Y :LSR tasklist |find /i "%LP%" > NUL if %errorlevel%==1 set LSR=N&goto :CSR set LSR=Y :CSR tasklist |find /i "%CP%" > NUL if %errorlevel%==1 set CSR=N&goto :WSR set CSR=Y :WSR tasklist |find /i "%WP%" > NUL if %errorlevel%==1 set WSR=N&goto :AHR set WSR=Y :AHR tasklist |find /i "%AHP%" > NUL if %errorlevel%==1 set AHR=N&goto :AH2R set AHR=Y :AH2R tasklist |find /i "%AH2P%" > NUL if %errorlevel%==1set AH2R=N&goto :OPR set AH2R=Y :OPR tasklist |find /i "%OPP%" > NUL if %errorlevel%==1 set OPR=N&goto :OP2R set OPR=Y :OP2R tasklist |find /i "%OP2P%" > NUL if %errorlevel%==1 set OP2R=N&goto :__skip set OP2R=Y :__skip ping -n %TD% localhost > NUL if not %SACCS%==Y goto :__01 if not %ACCSR%==Y set CRASH=AccountServer&goto :__exit_01 :__01 if not %SDBS%==Y goto :__02 if not %DBSR%==Y set CRASH=Databaseserver&goto :__exit_01 :__02 if not %SCRS%==Y goto :__03 if not %CRSR%==Y set CRASH=Coreserver&goto :__exit_01 :__03 if not %SCF%==Y goto :__04 if not %CFR%==Y set CRASH=Certifier&goto :__exit_01 :__04 if not %SWS%==Y goto :__05 if not %WSR%==Y set CRASH=Worldserver&goto :__exit_01 :__05 if not %SCS%==Y goto :__06 if not %CSR%==Y set CRASH=Cacheserver&goto :__exit_01 :__06 if not %SAH%==Y goto :__07 if not %AHR%==Y set CRASH=Antihack_1&goto :__exit_01 :__07 if not %SAH2%==Y goto :__08 if not %AH2R%==Y set CRASH=Antihack_2&goto :__exit_01 :__08 if not %SOP%==Y goto :__09 if not %OPR%==Y set CRASH=OtherProg_1&goto :__exit_01 :__09 if not %SOP2%==Y goto :__10 if not %OP2R%==Y set CRASH=OtherProg_2&goto :__exit_01 :__10 if not %SLS%==Y goto :start_auto if not %LSR%==Y set CRASH=Loginserver&goto :__exit_01 goto :start_auto :__exit_01 if %ERRORAUSGABE%==Y ( set h=%time:~0,2%&set m=%time:~3,2% echo %CRASH% Crashed at; %time%___%date% after %LOOP% Loops ^& last crash %RUN%_%RUN2% > %FOL_ERROR%/%CRASH%_%h%_%M%.txt ) goto :start Version 2.1 by Chiller1o1 http://www.elitepvpers.com/forum/flyff-pserver-guides-releases/2391169-release-server-autorestarter.html#post20955193
Code:
:TITLE set TIT_01=0//starting up set TIT_02=Server werden geschlossen. set TIT_03=Auto Server Restarter by Chiller set TIT_04=Loading... :COLOR set COL_01=14 set COL_02=24 set COL_03=24 set COL_04=56 :ERROR set ERRORAUSGABE=Y set FOL_ERROR=Log_Starter :FILES set ACCS=AccountServer.exe set DBS=DatabaseServer.exe Set CRS=CoreServer.exe set CF=Certifier.exe set LS=LoginServer.exe set CS=CacheServer.exe set WS=WorldServer.exe set AH=Antihack/packetfilter.lnk set AH2=SKIP set OP=SKIP set OP2=SKIP :START set SLS=Y set SACCS=Y set SDBS=Y set SCRS=Y set SCF=Y set SWS=Y set SCS=Y set SAH=Y set SAH2=N set SOP=N set SOP2=N :WAIT set /a W1=65 set /a W2=65 set /a W3=7 set ASK_BEFORE_START=Y set /a LOOPTIME=4 :KILL set KACCS=Y set KDBS=Y set KCRS=Y set KCF=Y set KLS=Y set KC=Y set KWS=Y set KAH=Y set KAH2=N set KOP=N set KOP2=N :PROCESS set ACCP=AccountServer.exe set DBP=DatabaseServer.exe set CRP=CoreServer.exe set CFP=Certifier.exe set LP=LoginServer.exe set CP=CacheServer.exe set WP=WorldServer.exe set AHP=Packetfilter.exe set AH2P=Antihack.exe set OPP=Neuz.exe set OP2P=wmplayer.exe :ORDER set /a OACC=2 set /a ODB=3 set /a OCR=4 set /a OCF=5 set /a OL=6 set /a OC=7 set /a OW=8 set /a OAH=1 set /a OAH2=SKIP set /a OOP=SKIP set /a OOP2=SKIP :RESTART set RS=Y :fix_crash_01 set OPR=C&set ACCSR=C&set DBSR=C&set CRSR=C&set CFR=C&set LSR=C&set CSR=C&set WSR=C&set AHR=C&set AH2R=C&set OPR=C&set OP2R=C&set /a CRASH=DELETE&set /a KPJEZZ=DELETE&set /a STEP=DELETE
Beachtet werden muss:
- Server Namen müssen folgende sein:AccountServer.exe, DatabaseServer.exe, CoreServer.exe, Certifier.exe, LoginServer.exe, CacheServer.exe, WorldServer.exe
Server_Starter.bat
Server_Starter_Config.bat
Code:
@echo off &setlocal enabledelayedexpansion set /a LOOP=-1 :start mode CON: COLS=14 LINES=3 echo Starting up... call Server_Starter_Config.bat TITLE %TIT_01% COLOR %COL_01% if %ERRORAUSGABE%==Y md %FOL_ERROR% cls MODE CON: COLS=30 LINES=24 TITLE %TIT_02% COLOR %COL_02% if %KACCS%==Y taskkill /f /im %ACCP% > NUL if %ERRORLEVEL%==128 set ACCSKD=N if %ERRORLEVEL%==0 set ACCSKD=Y cls if %KDBS%==Y taskkill /f /im %DBP% > NUL if %ERRORLEVEL%==128 set DBSKD=N if %ERRORLEVEL%==0 set DBSKD=Y cls if %KCRS%==Y taskkill /f /im %CRP% > NUL if %ERRORLEVEL%==128 set CRSKD=N if %ERRORLEVEL%==0 set CRSKD=Y cls if %KCF%==Y taskkill /f /im %CFP% > NUL if %ERRORLEVEL%==128 set CFKD=N if %ERRORLEVEL%==0 set CFKD=Y cls if %KLS%==Y taskkill /f /im %LP% > NUL if %ERRORLEVEL%==128 set LSKD=N if %ERRORLEVEL%==0 set LSKD=Y cls if %KC%==Y taskkill /f /im %CP% > NUL if %ERRORLEVEL%==128 set CSKD=N if %ERRORLEVEL%==0 set CSKD=Y cls if %KWS%==Y taskkill /f /im %WP% > NUL if %ERRORLEVEL%==128 set WSKD=N if %ERRORLEVEL%==0 set WSKD=Y cls if %KAH%==Y taskkill /f /im %AHP% > NUL if %ERRORLEVEL%==128 set AHKD=N if %ERRORLEVEL%==0 set AHKD=Y cls if %KAH2%==Y taskkill /f /im %AH2P% > NUL if %ERRORLEVEL%==128 set AH2KD=N if %ERRORLEVEL%==0 set AH2KD=Y cls if %KOP%==Y taskkill /f /im %OPP% > NUL if %ERRORLEVEL%==128 set OPKD=N if %ERRORLEVEL%==0 set OPKD=Y cls if %KOP2%==Y taskkill /f /im %OP2P% > NUL if %ERRORLEVEL%==128 set OP2KD=N if %ERRORLEVEL%==0 set OP2KD=Y cls echo ÃÄÄÄServer Kill if %KACCS%==Y ( echo ³ ÀÄÄÄ%ACCP% if %ACCSKD%==N echo ³ ÀÄÄÄNot Killed if %ACCSKD%==Y echo ³ ÀÄÄÄKilled ) if %KACCS%==N ( echo ³ ÀÄÄÄ%ACCP% echo ³ ÀÄÄÄSkipped ) if %KDBS%==Y ( echo ³ ÀÄÄÄ%DBP% if %DBSKD%==N echo ³ ÀÄÄÄNot Killed if %DBSKD%==Y echo ³ ÀÄÄÄKilled ) if %KDBS%==N ( echo ³ ÀÄÄÄ%DBP% echo ³ ÀÄÄÄSkipped ) if %KCRS%==Y ( echo ³ ÀÄÄÄ%CRP% if %CRSKD%==N echo ³ ÀÄÄÄNot Killed if %CRSKD%==Y echo ³ ÀÄÄÄKilled ) if %KCRS%==N ( echo ³ ÀÄÄÄ%CRP% echo ³ ÀÄÄÄSkipped ) if %KCF%==Y ( echo ³ ÀÄÄÄ%CFP% if %CFKD%==N echo ³ ÀÄÄÄNot Killed if %CFKD%==Y echo ³ ÀÄÄÄKilled ) if %KCF%==N ( echo ³ ÀÄÄÄ%CFP% echo ³ ÀÄÄÄSkipped ) if %KLS%==Y ( echo ³ ÀÄÄÄ%LP% if %LSKD%==N echo ³ ÀÄÄÄNot Killed if %LSKD%==Y echo ³ ÀÄÄÄKilled ) if %KLS%==N ( echo ³ ÀÄÄÄ%LP% echo ³ ÀÄÄÄSkipped ) if %KC%==Y ( echo ³ ÀÄÄÄ%CP% if %CSKD%==N echo ³ ÀÄÄÄNot Killed if %CSKD%==Y echo ³ ÀÄÄÄKilled ) if %KC%==N ( echo ³ ÀÄÄÄ%CP% echo ³ ÀÄÄÄSkipped ) if %KWS%==Y ( echo ³ ÀÄÄÄ%WP% if %WSKD%==N echo ³ ÀÄÄÄNot Killed if %WSKD%==Y echo ³ ÀÄÄÄKilled ) if %KWS%==N ( echo ³ ÀÄÄÄ%WP% echo ³ ÀÄÄÄSkipped ) if %KAH%==Y ( echo ³ ÀÄÄÄ%AHP% if %AHKD%==N echo ³ ÀÄÄÄNot Killed if %AHKD%==Y echo ³ ÀÄÄÄKilled ) if %KAH%==N ( echo ³ ÀÄÄÄ%AHP% echo ³ ÀÄÄÄSkipped ) if %KAH2%==Y ( echo ³ ÀÄÄÄ%AH2P% if %AH2KD%==N echo ³ ÀÄÄÄNot Killed if %AH2KD%==Y echo ³ ÀÄÄÄKilled ) if %KAH2%==N ( echo ³ ÀÄÄÄ%AH2P% echo ³ ÀÄÄÄSkipped ) if %KOP%==Y ( echo ³ ÀÄÄÄ%OPP% if %OPKD%==N echo ³ ÀÄÄÄNot Killed if %OPKD%==Y echo ³ ÀÄÄÄKilled ) if %KOP%==N ( echo ³ ÀÄÄÄ%OPP% echo ³ ÀÄÄÄSkipped ) if %KOP2%==Y ( echo ³ ÀÄÄÄ%OP2P% if %OP2KD%==N echo ³ ÀÄÄÄNot Killed if %OP2KD%==Y echo ³ ÀÄÄÄKilled ) if %KOP2%==N ( echo ³ ÀÄÄÄ%OP2P% echo ³ ÀÄÄÄSkipped ) if %ASK_BEFORE_START%==Y ( if %LOOP%==-1 ( echo msgbox"Server geschlossen. Ok drücken, um Server zu starten. ",0 , "Server Restarter "> %TEMP%\temp.vbs %TEMP%\temp.vbs del %TEMP%\temp.vbs ) ) CLS TITLE %TIT_04% COLOR %COL_04% echo Server werden gestartet... echo. set /a STEP=0 :stepcheck set h=%time:~0,2%&set m=%time:~3,2% set /a STEP=%STEP%+1 if %STEP%==12 goto :skip__01 :SACCS if not %SACCS%==Y goto :SDBS if %OACC%==%STEP% ( if not exist %ACCS% ( if %ERRORAUSGABE%==Y echo AccountServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SDBS ) start %ACCS%&echo Account Server set KPJEZZ=%KPJEZZ%+ACCOUNTSERVER+ ping -n %W3% localhost > NUL ) :SDBS if not %SDBS%==Y goto :SCRS if %ODB%==%STEP% ( if not exist %DBS% ( if %ERRORAUSGABE%==Y echo DatabaseServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SCRS ) start %DBS%&echo DatabaseServer set KPJEZZ=%KPJEZZ%+DATABASESERVER+ echo waiting %W1% Seconds ping -n %W1% localhost > NUL ) :SCRS if not %SCRS%==Y goto :SCF if %OCR%==%STEP% ( if not exist %CRS% ( if %ERRORAUSGABE%==Y echo CoreServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SCF ) start %CRS%&echo CoreServer set KPJEZZ=%KPJEZZ%+CORESERVER+ ping -n %W3% localhost > NUL ) :SCF if not %SCF%==Y goto :SLS if %OCF%==%STEP% ( if not exist %CF% ( if %ERRORAUSGABE%==Y echo Certifier File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SLS ) start %CF%&echo Certifier set KPJEZZ=%KPJEZZ%+Certifier+ ping -n %W3% localhost > NUL ) :SLS if not %SLS%==Y goto :SCS if %OL%==%STEP% ( if not exist %LS% ( if %ERRORAUSGABE%==Y echo LoginServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SCS ) start %LS%&echo LoginServer set KPJEZZ=%KPJEZZ%+LOGINSERVER+ ping -n %W3% localhost > NUL ) :SCS if not %SCS%==Y goto :SWS if %OC%==%STEP% ( if not exist %CS% ( if %ERRORAUSGABE%==Y echo CacheServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SWS ) start %CS%&echo CacheServer set KPJEZZ=%KPJEZZ%+CACHESERVER+ echo waiting %W2% Seconds ping -n %W2% localhost > NUL ) :SWS if not %SWS%==Y goto :SAH if %OW%==%STEP% ( if not exist %WS% ( if %ERRORAUSGABE%==Y echo WorldServer File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SAH ) start %WS%&echo WorldServer set KPJEZZ=%KPJEZZ%+WORLDSERVER+ ping -n %W3% localhost > NUL ) :SAH if not %SAH%==Y goto :SAH2 if %OAH%==%STEP% ( if not exist %AH% ( if %ERRORAUSGABE%==Y echo Antihack1 File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SAH2 ) start %AH%&echo Antihack1 set KPJEZZ=%KPJEZZ%+AH1+ ping -n %W3% localhost > NUL ) :SAH2 if not %SAH2%==Y goto :SOP if %OAH2%==%STEP% ( if not exist %AH2% ( if %ERRORAUSGABE%==Y echo Antihack2 File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SOP ) start %AH2%&echo Antihack2 set KPJEZZ=%KPJEZZ%+AH2+ ping -n %W3% localhost > NUL ) :SOP if not %SOP%==Y goto :SOP2 if %OOP%==%STEP% ( if not exist %OP% ( if %ERRORAUSGABE%==Y echo %OP% File not found> %FOL_ERROR%/%h%_%M%.txt&goto :SOP2 ) start %OP%&echo %OPP% set KPJEZZ=%KPJEZZ%+OP+ ping -n %W3% localhost > NUL ) :SOP2 if not %SOP2%==Y goto :skip__01 if %OOP2%==%STEP% ( if not exist %OP2% ( if %ERRORAUSGABE%==Y echo %OP2% File not found> %FOL_ERROR%/%h%_%M%.txt&goto :skip_01 ) start %OP2%&echo %OP2P% set KPJEZZ=%KPJEZZ%+OP2+ ping -n %W3% localhost > NUL ) :skip__01 cls echo Started Servers: echo %KPJEZZ% if not %STEP%==13 goto :stepcheck if not %RS%==Y exit :auto call Server_Starter_config.bat TITLE %TIT_03% COLOR %COL_03% MODE CON: COLS=45 LINES=21 set run=%TIME% set run2=%DATE% :start_auto if %LOOP% GEQ 100000 ( if %ERRORAUSGABE%==Y echo %LOOP% loops, setze loops auf 0. > %FOL_ERROR%/Loopreset.txt set /a LOOP=DELETE ) cls set /a loop=%LOOP% +1 echo ÃÄÄÄServer echo ³ ³ ÀÄÄÄÄLoopsÄÄÄÄÄÄLast Crash: echo ³ ³ À%LOOP% À%RUN2% echo ³ ³ À%RUN% if %SACCS%==Y ( echo ³ ÀÄÄÄ%ACCP% if %ACCSR%==Y echo ³ ÀÄÄÄRunning if %ACCSR%==N echo ³ ÀÄÄÄCrashed if %ACCSR%==C echo ³ ÀÄÄÄChecking ) if %SDBS%==Y ( echo ³ ÀÄÄÄ%DBP% if %DBSR%==Y echo ³ ÀÄÄÄRunning if %DBSR%==N echo ³ ÀÄÄÄCrashed if %DBSR%==C echo ³ ÀÄÄÄChecking ) if %SCRS%==Y ( echo ³ ÀÄÄÄ%CRP% if %CRSR%==Y echo ³ ÀÄÄÄRunning if %CRSR%==N echo ³ ÀÄÄÄCrashed if %CRSR%==C echo ³ ÀÄÄÄChecking ) if %SCF%==Y ( echo ³ ÀÄÄÄ%CFP% if %CFR%==Y echo ³ ÀÄÄÄRunning if %CFR%==N echo ³ ÀÄÄÄCrashed if %CFR%==C echo ³ ÀÄÄÄChecking ) if %SLS%==Y ( echo ³ ÀÄÄÄ%LP% if %LSR%==Y echo ³ ÀÄÄÄRunning if %LSR%==N echo ³ ÀÄÄÄCrashed if %LSR%==C echo ³ ÀÄÄÄChecking ) if %SCS%==Y ( echo ³ ÀÄÄÄ%CP% if %CSR%==Y echo ³ ÀÄÄÄRunning if %CSR%==N echo ³ ÀÄÄÄCrashed if %CSR%==C echo ³ ÀÄÄÄChecking ) if %SWS%==Y ( echo ³ ÀÄÄÄ%WP% if %WSR%==Y echo ³ ÀÄÄÄRunning if %WSR%==N echo ³ ÀÄÄÄCrashed if %WSR%==C echo ³ ÀÄÄÄChecking ) if %SAH%==Y ( echo ³ ÀÄÄÄ%AHP% if %AHR%==Y echo ³ ÀÄÄÄRunning if %AHR%==N echo ³ ÀÄÄÄCrashed if %AHR%==C echo ³ ÀÄÄÄChecking ) if %SAH2%==Y ( echo ³ ÀÄÄÄ%AH2P% if %AH2R%==Y echo ³ ÀÄÄÄRunning if %AH2R%==N echo ³ ÀÄÄÄCrashed if %AH2R%==C echo ³ ÀÄÄÄChecking ) if %SOP%==Y ( echo ³ ÀÄÄÄ%OPP% if %OPR%==Y echo ³ ÀÄÄÄRunning if %OPR%==N echo ³ ÀÄÄÄCrashed if %OPR%==C echo ³ ÀÄÄÄChecking ) if %SOP2%==Y ( echo ³ ÀÄÄÄ%OP2P% if %OP2R%==Y echo ³ ÀÄÄÄRunning if %OP2R%==N echo ³ ÀÄÄÄCrashed if %OP2R%==C echo ³ ÀÄÄÄChecking ) ping -n %LOOPTIME% localhost > NUL tasklist |find /i "%ACCP%" > NUL if %errorlevel%==1 set ACCSR=N&goto :DBSR set ACCSR=Y :DBSR tasklist |find /i "%DBP%" > NUL if %errorlevel%==1 set DBSR=N&goto :CSR set DBSR=Y :CSR tasklist |find /i "%CRP%" > NUL if %errorlevel%==1 set CRSR=N&goto :CFR set CRSR=Y :CFR tasklist |find /i "%CFP%" > NUL if %errorlevel%==1 set CFR=N&goto :LSR set CFR=Y :LSR tasklist |find /i "%LP%" > NUL if %errorlevel%==1 set LSR=N&goto :CSR set LSR=Y :CSR tasklist |find /i "%CP%" > NUL if %errorlevel%==1 set CSR=N&goto :WSR set CSR=Y :WSR tasklist |find /i "%WP%" > NUL if %errorlevel%==1 set WSR=N&goto :AHR set WSR=Y :AHR tasklist |find /i "%AHP%" > NUL if %errorlevel%==1 set AHR=N&goto :AH2R set AHR=Y :AH2R tasklist |find /i "%AH2P%" > NUL if %errorlevel%==1set AH2R=N&goto :OPR set AH2R=Y :OPR tasklist |find /i "%OPP%" > NUL if %errorlevel%==1 set OPR=N&goto :OP2R set OPR=Y :OP2R tasklist |find /i "%OP2P%" > NUL if %errorlevel%==1 set OP2R=N&goto :__skip set OP2R=Y :__skip ping -n %TD% localhost > NUL if not %SACCS%==Y goto :__01 if not %ACCSR%==Y set CRASH=AccountServer&goto :__exit_01 :__01 if not %SDBS%==Y goto :__02 if not %DBSR%==Y set CRASH=Databaseserver&goto :__exit_01 :__02 if not %SCRS%==Y goto :__03 if not %CRSR%==Y set CRASH=Coreserver&goto :__exit_01 :__03 if not %SCF%==Y goto :__04 if not %CFR%==Y set CRASH=Certifier&goto :__exit_01 :__04 if not %SWS%==Y goto :__05 if not %WSR%==Y set CRASH=Worldserver&goto :__exit_01 :__05 if not %SCS%==Y goto :__06 if not %CSR%==Y set CRASH=Cacheserver&goto :__exit_01 :__06 if not %SAH%==Y goto :__07 if not %AHR%==Y set CRASH=Antihack_1&goto :__exit_01 :__07 if not %SAH2%==Y goto :__08 if not %AH2R%==Y set CRASH=Antihack_2&goto :__exit_01 :__08 if not %SOP%==Y goto :__09 if not %OPR%==Y set CRASH=OtherProg_1&goto :__exit_01 :__09 if not %SOP2%==Y goto :__10 if not %OP2R%==Y set CRASH=OtherProg_2&goto :__exit_01 :__10 if not %SLS%==Y goto :start_auto if not %LSR%==Y set CRASH=Loginserver&goto :__exit_01 goto :start_auto :__exit_01 if %ERRORAUSGABE%==Y ( set h=%time:~0,2%&set m=%time:~3,2% echo %CRASH% Crashed at; %time%___%date% after %LOOP% Loops ^& last crash %RUN%_%RUN2% > %FOL_ERROR%/%CRASH%_%h%_%M%.txt ) goto :start Version 2.1 by Chiller1o1 http://www.elitepvpers.com/forum/flyff-pserver-guides-releases/2391169-release-server-autorestarter.html#post20955193
Code:
:TITLE set TIT_01=0//starting up set TIT_02=Server werden geschlossen. set TIT_03=Auto Server Restarter by Chiller set TIT_04=Loading... :COLOR set COL_01=14 set COL_02=24 set COL_03=24 set COL_04=56 :ERROR set ERRORAUSGABE=Y set FOL_ERROR=Log_Starter :FILES set ACCS=AccountServer.exe set DBS=DatabaseServer.exe Set CRS=CoreServer.exe set CF=Certifier.exe set LS=LoginServer.exe set CS=CacheServer.exe set WS=WorldServer.exe set AH=SKIP set AH2=SKIP set OP=SKIP set OP2=SKIP :START set SLS=Y set SACCS=Y set SDBS=Y set SCRS=Y set SCF=Y set SWS=Y set SCS=Y set SAH=N set SAH2=N set SOP=N set SOP2=N :WAIT set /a W1=65 set /a W2=65 set /a W3=7 set ASK_BEFORE_START=Y set /a LOOPTIME=4 :KILL set KACCS=Y set KDBS=Y set KCRS=Y set KCF=Y set KLS=Y set KC=Y set KWS=Y set KAH=N set KAH2=N set KOP=N set KOP2=N :PROCESS set ACCP=AccountServer.exe set DBP=DatabaseServer.exe set CRP=CoreServer.exe set CFP=Certifier.exe set LP=LoginServer.exe set CP=CacheServer.exe set WP=WorldServer.exe set AHP=Packetfilter.exe set AH2P=Antihack.exe set OPP=Neuz.exe set OP2P=wmplayer.exe :ORDER set /a OACC=1 set /a ODB=2 set /a OCR=3 set /a OCF=4 set /a OL=5 set /a OC=6 set /a OW=7 set /a OAH=SKIP set /a OAH2=SKIP set /a OOP=SKIP set /a OOP2=SKIP :RESTART set RS=Y :fix_crash_01 set OPR=C&set ACCSR=C&set DBSR=C&set CRSR=C&set CFR=C&set LSR=C&set CSR=C&set WSR=C&set AHR=C&set AH2R=C&set OPR=C&set OP2R=C&set /a CRASH=DELETE&set /a KPJEZZ=DELETE&set /a STEP=DELETE
Version 2.1(Download im Anhang!)
Alte Versionen:
.
(alt)
(sehr buggy)
TuT/erklärter Code der Config:
Code:
:TITLE - Titel des Fensters beim... set TIT_01=0//starting up - Starten set TIT_02=Server werden geschlossen. - Server schließen set TIT_03=Auto Server Restarter by Chiller - Server überwachen set TIT_04=Loading... - Server Starten :COLOR - Farbe des Fensters beim... set COL_01=14 - Starten set COL_02=24 - Server schließen set COL_03=24 - Server überwachen set COL_04=56 - Server Starten :ERROR set ERRORAUSGABE=Y - Sollen Errors/Logs ausgegeben werden, z.b. "File not found" set FOL_ERROR=Log_Starter - Wenn ja, in welchen Ordner? hier: Programm/Log_Starter :FILES - Die Dateinamen(/-pfade) der Server... set ACCS=AccountServer.exe - AccountServer set DBS=DatabaseServer.exe - DatabaseServer Set CRS=CoreServer.exe - CoreServer set CF=Certifier.exe - Certifier set LS=LoginServer.exe - LoginServer set CS=CacheServer.exe - CacheServer set WS=WorldServer.exe - WorldServer set AH=packetfilter.lnk - Antihack/Gameguard set AH2=SKIP - Antihack/Gameguard set OP=SKIP - Andere Programme set OP2=SKIP - Falls keine erwünscht, SKIP hinschreiben. :START - Welche Server gestartet werden sollen... set SLS=N - LoginServer set SACCS=N - AccountServer set SDBS=N - DatabaseServer set SCRS=N - CoreServer set SCF=Y - Certifier set SWS=N - WorldServer set SCS=N - CacheServer set SAH=N - Antihack/Gameguard set SAH2=N - Antihack/Gameguard set SOP=N - Andere Programme set SOP2=N - Wenn gestartet werden soll, Y eintragen, wenn nicht, N eintragen. :WAIT - Wartezeiten... set /a W1=65 - Zwischen Database/Core set /a W2=65 - Zwischen Cache/World set /a W3=7 - Nach den anderen set ASK_BEFORE_START=Y - Bevor die Server gestartet werden ok drücken (Y/N) set /a LOOPTIME=4 - Zwischen Loops, d.h. so würde alle 4 Sekunden gecheckt werden, ob ein Server gecrasht ist. - weniger als 3 nicht empfelenswert, weil sonst ram verbaucht werden könnte. :KILL - Welche Server geschlossen werden sollen... set KACCS=N - AccountServer set KDBS=N - DatabaseServer set KCRS=N - CoreServer set KCF=Y - Certifier set KLS=N - LoginServer set KC=N - CacheServer set KWS=N - WorldServer set KAH=N - Antihack/Gameguard set KAH2=N - Antihack/Gameguard set KOP=N - Andere Programme set KOP2=N - Wie oben, Y/N :PROCESS - Prozessnamen vder Server... set ACCP=AccountServer.exe - AccountServer set DBP=DatabaseServer.exe - DatabaseServer set CRP=CoreServer.exe - CoreServer set CFP=Certifier.exe - Certifier set LP=LoginServer.exe - LoginServer set CP=CacheServer.exe - CacheServer set WP=WorldServer.exe - WorldServer set AHP=Packetfilter.exe - Antihack/Gameguard set AH2P=Antihack.exe - Antihack/Gameguard set OPP=Neuz.exe - Andere Programme set OP2P=wmplayer.exe - Wie oben kann auch SKIP eingetragen werden. :ORDER - Reihenfolge in der die Server gestartet werden... set /a OACC=2 - AccountServer set /a ODB=3 - DatabaseServer set /a OCR=4 - CoreServer set /a OCF=5 - Certifier set /a OL=6 - LoginServer set /a OC=7 - CacheServer set /a OW=8 - WorldServer set /a OAH=1 - Antihack/Gameguard set /a OAH2=SKIP - Antihack/Gameguard set /a OOP=SKIP - Andere Programme set /a OOP2=SKIP - Same shit, just type SKIP :RESTART set RS=Y - Ob die Server neu gestartet werden sollen. - Wenn N eingetragen wurde, werden die Server nur geschlossen - und gestartet, nicht automatisch neu gestartet! :fix_crash_01 - Benötigte Crash fixes set OPR=C&set ACCSR=C&set DBSR=C&set CRSR=C&set CFR=C&set LSR=C&set CSR=C&set WSR=C&set AHR=C&set AH2R=C&set OPR=C&set OP2R=C&set /a CRASH=DELETE
Demonstrationsvideo:
Server_Starter.batQuote:
Welche Datei muss ich Starten?
Generell gilt: Am besten keine Leerzeichen verwenden(weder Pfad, noch Dateiname).Quote:
Ich bekomme errors obwohl alle Dateien richtig geschrieben sind.
Falls es nötig ist, kannst du den Pfad in " " setzen, allerdings nicht den kompletten Pfad, sondern nur den Teil mit Leerzeichen.
Sonst kommt es erneut zu Errors.
Downloade dir die Dateien neu, falls es dann immernoch auftritt, kontaktiere mich.Quote:
Es kommen Syntaxfehler im Fenster
Schreib mich an und bring Geduld mit falls ich nicht sofort antworte.Quote:
Ich habe spezielle fragen oder ähnliches was ich nicht alleine lösen kann?
Posts wie "unnöttig" usw. könnt ihr unterlassen, wenn ihr es nicht braucht ignoriert es einfach.
Verbesserungsvorschläge (Code, Funktionen, Rechtschreibfehler etc.) sowie feedback könnt ihr gerne posten.