Ñâåðíóòü ↑
@echo off
REM ##############################################
REM ## L2JDP Database Installer - (by DrLecter) ##
REM ##############################################
REM ## Interactive script setup - (by TanelTM) ##
REM ##############################################
REM Copyright (C) 2012 L2J DataPack
REM This program is free software; you can redistribute it and/or modify
REM it under the terms of the GNU General Public License as published by
REM the Free Software Foundation; either version 3 of the License, or (at
REM your option) any later version.
REM
REM This program is distributed in the hope that it will be useful, but
REM WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
REM or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
REM for more details.
REM
REM You should have received a copy of the GNU General Public License along
REM with this program; if not, write to the Free Software Foundation, Inc.,
REM 675 Mass Ave, Cambridge, MA 02139, USA. Or contact the Official L2J
REM DataPack Project at
http://www.l2jdp.com,
http://www.l2jdp.com/forum or
REM #l2j @ irc://irc.freenode.net
set config_file=vars.txt
set config_version=0
set workdir="%cd%"
set full=0
set stage=0
set logging=0
set upgrade_mode=0
set backup=.
set logdir=.
set safe_mode=1
set cmode=c
set fresh_setup=0
:loadconfig
cls
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
if not exist %config_file% goto configure
ren %config_file% vars.bat
call vars.bat
ren vars.bat %config_file%
call :colors 17
if /i %config_version% == 2 goto ls_backup
set upgrade_mode=2
echo ±z¦ü¥G¬O²Ä¤@¦¸¨Ï¥Î³o-Óª©¥»ªº database_installer
echo ¦ý¬O§Úµo²{¦w¸Ë¸ê®Æ®wªº³]©wÀɤw¸g¦s¦b
echo ¦]¦¹§Ú±N°Ý±z´X-Ó°ÝÃD¡A¤Þ¾É±zÄ~Äò¦w¸Ë
echo.
echo §ó·s³]©w¿ï¶µ¡G
echo.
echo (1) ¾É¤J¡®Ä~Äò¨Ï¥Îªº³]©w¡G±N¨Ï¥Î-쥻ªº¸ê®Æ¨Ã¥B¶i¦æ§ó·s§@·~
echo.
echo (2) ¾É¤J¡®¨Ï¥Î·sªº³]©w¡G¾É¤J·sªº¸ê®Æ¨Ã¥B-«·s³]©w¸ê®Æ
echo.
echo (3) ¾É¤J¥þ·sªº¸ê®Æ¡G©Ò¦³Âªº¸ê®Æ±N·|²¾°£¨Ã¥B¾É¤J·sªº¸ê ®Æ
echo.
echo (4) ¬d¬Ý¦s¨úªº³]©w-È
echo.
echo (5) °h¥X
echo.
set /P upgrade_mode="¿é¤J¼Æ¦r«á¡A½Ð«ö Enter¡]¹w³]-Ȭ°¡u%upgrade_mode%¡v¡^: "
if %upgrade_mode%==1 goto ls_backup
if %upgrade_mode%==2 goto configure
if %upgrade_mode%==3 goto configure
if %upgrade_mode%==4 (cls&type %config_file%&pause&goto loadconfig)
if %upgrade_mode%==5 goto :eof
goto loadconfig
:colors
if /i "%cmode%"=="n" (
if not "%1"=="17" ( color F ) else ( color )
) else ( color %1 )
goto :eof
:configure
cls
call :colors 17
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
set config_version=2
if NOT %upgrade_mode% == 2 (
set fresh_setup=1
set mysqlBinPath=%ProgramFiles%\MySQL\MySQL Server 5.0\bin
:_MySQL51
if not exist "%ProgramFiles%\MySQL\MySQL Server 5.1\bin\mysql.exe" goto _MySQL55
set mysqlBinPath=%ProgramFiles%\MySQL\MySQL Server 5.1\bin
:_MySQL55
if not exist "%ProgramFiles%\MySQL\MySQL Server 5.5\bin\mysql.exe" goto _MySQL60
set mysqlBinPath=%ProgramFiles%\MySQL\MySQL Server 5.5\bin
:_MySQL60
if not exist "%ProgramFiles%\MySQL\MySQL Server 6.0\bin\mysql.exe" goto _AppServ
set mysqlBinPath=%ProgramFiles%\MySQL\MySQL Server 6.0\bin
:_AppServ
if not exist "%SystemDrive%\AppServ\MySQL\bin\mysql.exe" goto _other
set mysqlBinPath=%SystemDrive%\AppServ\MySQL\bin
:_other
set lsuser=root
set lspass=
set lsdb=l2jls
set lshost=localhost
set cbuser=root
set cbpass=
set cbdb=l2jcs
set cbhost=localhost
set gsuser=root
set gspass=
set gsdb=l2jgs
set gshost=localhost
set cmode=c
set backup=.
set logdir=.
)
set mysqlPath=%mysqlBinPath%\mysql.exe
echo ·sªº³]©w-È¡G
echo.
echo 1.MySql µ{¦¡
echo --------------------
echo ½Ð³]©w mysql.exe ©M mysqldump.exe ªº¦ì¸m
echo.
if "%mysqlBinPath%" == "" (
set mysqlBinPath=use path
echo ¨S¦³§ä¨ì MySQL ªº¦ì¸m
) else (
echo ½Ð´ú¸Õ¥H¤U©Ò§ä¨ìªº MySQL ¦ì¸m¡A¬O§_¥i¥H¶i¦æ¾É¤J§@·~
echo.
echo %mysqlPath%
)
if not "%mysqlBinPath%" == "use path" call :binaryfind
echo.
path|find "MySQL">NUL
if %errorlevel% == 0 (
echo ¤W-±¬O§ä¨ìªº MySQL¡A¦¹¦ì¸m±N·|³Q³]¬°¹w³]-È¡A¦pªG·Q´«¦ì¸m½Ð-קï...
set mysqlBinPath=use path
) else (
echo µLªk§ä¨ì MySQL¡A½Ð¿é¤J mysql.exe ªº¦ì¸m...
echo.
echo ¦pªG¤£½T©w³o¬O¤°»ò·N«ä©M¦p¦ó¾Þ§@¡A½Ð¨ì¬ÛÃöºô¯¸¬d¸ß ©ÎªÌ¦Ü L2JTW ©x¤èºô¯¸µo°Ý©Î´M§ä¬ÛÃö¸ê°T
)
echo.
echo ½Ð¿é¤J mysql.exe ªº¦ì¸m¡G
set /P mysqlBinPath="(default %mysqlBinPath%): "
cls
echo.
echo 2.µn¤J¦øªA¾¹³]©w
echo --------------------
echo ¦¹§@·~±N·|³s½u¦Ü©Ò«ü©wªº MySQL ¦øªA¾¹¡A¨Ã¥B¶i¦æ¾É¤J§@·~
echo.
set /P lsuser="¨Ï¥ÎªÌ¦WºÙ¡]¹w³]-È¡u%lsuser%¡v¡^: "
:_lspass
set /P lspass="¨Ï¥ÎªÌ±K½X¡]¹w³]-È¡u%lspass%¡v¡^: "
if "%lspass%"=="" goto _lspass
set /P lsdb="¸ê®Æ®w¡]¹w³]-È¡u%lsdb%¡v¡^: "
set /P lshost="¦ì¸m¡]¹w³]-È¡u%lshost%¡v¡^: "
echo.
cls
echo.
echo 3-°Q½×ª©¦øªA¾¹³]©w
echo --------------------
echo ¦¹§@·~±N·|³s½u¦Ü¡u°Q½×ª©±M¥Î¡vªº MySQL ¦øªA¾¹¡A¨Ã¥B¶i¦æ¾É¤J§@·~
echo.
set /P cbuser="¨Ï¥ÎªÌ¦WºÙ¡]¹w³]-È¡u%cbuser%¡v¡^: "
:_cbpass
set /P cbpass="¨Ï¥ÎªÌ±K½X¡]¹w³]-È¡u%cbpass%¡v¡^: "
if "%cbpass%"=="" goto _cbpass
set /P cbdb="¸ê®Æ®w¡]¹w³]-È¡u%cbdb%¡v¡^: "
set /P cbhost="¦ì¸m¡]¹w³]-È¡u%cbhost%¡v¡^: "
echo.
cls
echo.
echo 4.¹CÀ¸¦øªA¾¹³]©w
echo --------------------
set /P gsuser="¨Ï¥ÎªÌ¦WºÙ¡]¹w³]-È¡u%gsuser%¡v¡^: "
:_gspass
set /P gspass="¨Ï¥ÎªÌ±K½X¡]¹w³]-È¡u%gspass%¡v¡^: "
if "%gspass%"=="" goto _gspass
set /P gsdb="¸ê®Æ®w¡]¹w³]-È¡u%gsdb%¡v¡^: "
set /P gshost="¦ì¸m¡]¹w³]-È¡u%gshost%¡v¡^: "
echo.
cls
echo.
echo 5.¨ä¥L³]©w
echo --------------------
set /P cmode="ÃC¦â¼Ò¦¡ (c)¬°ÃC¦â ©Î (n)¬°µLÃC¦â¡]¹w³]-È¡u%cmode%¡v¡^: "
set /P backup="³Æ¥÷¦ì¸m¡]¹w³]-È¡u%backup%¡v¡^: "
set /P logdir="Logs°T®§¦ì¸m¡]¹w³]-È¡u%logdir%¡v¡^: "
:safe1
set safemode=y
set /P safemode="Debug ¼Ò¦¡¡]y/n¡A ¹w³]-È¡u%safemode%¡v¡^: "
if /i %safemode%==y (set safe_mode=1&goto safe2)
if /i %safemode%==n (set safe_mode=0&goto safe2)
goto safe1
:safe2
cls
echo.
if "%mysqlBinPath%" == "use path" (
set mysqlBinPath=
set mysqldumpPath=mysqldump
set mysqlPath=mysql
) else (
set mysqldumpPath=%mysqlBinPath%\mysqldump.exe
set mysqlPath=%mysqlBinPath%\mysql.exe
)
echo @echo off > %config_file%
echo set config_version=%config_version% >> %config_file%
echo set cmode=%cmode%>> %config_file%
echo set safe_mode=%safe_mode% >> %config_file%
echo set mysqlPath=%mysqlPath%>> %config_file%
echo set mysqlBinPath=%mysqlBinPath%>> %config_file%
echo set mysqldumpPath=%mysqldumpPath%>> %config_file%
echo set lsuser=%lsuser%>> %config_file%
echo set lspass=%lspass%>> %config_file%
echo set lsdb=%lsdb%>> %config_file%
echo set lshost=%lshost% >> %config_file%
echo set cbuser=%cbuser%>> %config_file%
echo set cbpass=%cbpass%>> %config_file%
echo set cbdb=%cbdb%>> %config_file%
echo set cbhost=%cbhost% >> %config_file%
echo set gsuser=%gsuser%>> %config_file%
echo set gspass=%gspass%>> %config_file%
echo set gsdb=%gsdb%>> %config_file%
echo set gshost=%gshost%>> %config_file%
echo set logdir=%logdir%>> %config_file%
echo set backup=%backup%>> %config_file%
echo.
echo ³]©w¦¨¥\¡I
echo §Aªº³]©w-ȱN·|Àx¦s¦b¡u%config_file%¡v¡A©Ò¦³ªº±b¸¹±K½X±N¥H©ú ¤åÅã¥Ü
echo.
pause
goto loadconfig
:ls_backup
cls
call :colors 17
set cmdline=
set stage=1
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b³Æ¥÷µn¤J¦øªA¾¹ªº¸ê®Æ®w...
set cmdline="%mysqldumpPath%" --add-drop-table -h %lshost% -u %lsuser% --password=%lspass% %lsdb% ^> "%backup%\ls_backup.sql" 2^> NUL
%cmdline%
if %ERRORLEVEL% == 0 goto ls_db_ok
:ls_err1
cls
set lsdbprompt=y
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ³Æ¥÷¥¢±Ñ¡I
echo -ì¦]¬O¦]¬°¸ê®Æ®w¤£¦s¦b
echo ²{¦b¥i¥HÀ°§A«Ø¥ß %lsdb%¡A©ÎªÌÄ~Äò¨ä¥¦³]©w
echo.
echo «Ø¥ßµn¤J¦øªA¾¹ªº¸ê®Æ®w¡H
echo.
echo (y)½T©w
echo.
echo (n)¨ú®ø
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p lsdbprompt=½Ð¿ï¾Ü¡]¹w³]-È-½T©w¡^:
if /i %lsdbprompt%==y goto ls_db_create
if /i %lsdbprompt%==n goto cs_backup
if /i %lsdbprompt%==r goto configure
if /i %lsdbprompt%==q goto end
goto ls_err1
:ls_db_create
cls
call :colors 17
set cmdline=
set stage=2
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b«Ø¥ßµn¤J¦øªA¾¹ªº¸ê®Æ®w...
set cmdline="%mysqlPath%" -h %lshost% -u %lsuser% --password=%lspass% -e "CREATE DATABASE %lsdb%" 2^> NUL
%cmdline%
if %ERRORLEVEL% == 0 goto ls_db_ok
if %safe_mode% == 1 goto omfg
:ls_err2
cls
set omfgprompt=q
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo µn¤J¦øªA¾¹ªº¸ê®Æ®w«Ø¥ß¥¢±Ñ¡I
echo.
echo ¥i¯àªº-ì¦]¡G
echo 1.¿é¤Jªº¸ê®Æ¿ù»~¡A¨Ò¦p¡G¨Ï¥ÎªÌ¦WºÙ/¨Ï¥ÎªÌ±K½X/¨ä¥L¬ÛÃö¸ê®Æ
echo 2.¨Ï¥ÎªÌ¡u%lsuser%¡vªºÅv--¤£¨¬
echo 3.¸ê®Æ®w¤w¦s¦b
echo.
echo ½ÐÀˬd³]©w¨Ã¥B-×¥¿¡A©ÎªÌª½±µ-«·s³]©w
echo.
echo (c)Ä~Äò
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p omfgprompt=½Ð¿ï¾Ü¡]¹w³]-È-°h¥X¡^:
if /i %omfgprompt%==c goto cs_backup
if /i %omfgprompt%==r goto configure
if /i %omfgprompt%==q goto end
goto ls_err2
:ls_db_ok
cls
set loginprompt=u
call :colors 17
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo µn¤J¦øªA¾¹ªº¸ê®Æ®w¦w¸Ë¡G
echo.
echo (f) §¹¾ã¡G±N²¾°£©Ò¦³Âªº¸ê®Æ¡A-«·s¾É¤J·sªº¸ê®Æ
echo.
echo (u) §ó·s¡G§Ú·|ºÉ¤O«O«ùµn¿ýªº©Ò¦³¸ê®Æ
echo.
echo (s) ¬Ù²¤¡G¸õ¹L¦¹¿ï¶µ
echo.
echo (r) -«·s³]©w
echo.
echo (q) °h¥X
echo.
set /p loginprompt=½Ð¿ï¾Ü¡]¹w³]-È-§ó·s¡^:
if /i %loginprompt%==f goto ls_cleanup
if /i %loginprompt%==u goto ls_upgrade
if /i %loginprompt%==s goto cs_backup
if /i %loginprompt%==r goto configure
if /i %loginprompt%==q goto end
goto ls_db_ok
:ls_cleanup
call :colors 17
set cmdline=
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b²¾°£µn¤J¦øªA¾¹ªº¸ê®Æ®w¡AµM«á¾É¤J·sªº¸ê®Æ®w...
set cmdline="%mysqlPath%" -h %lshost% -u %lsuser% --password=%lspass% -D %lsdb% ^< ls_cleanup.sql 2^> NUL
%cmdline%
if not %ERRORLEVEL% == 0 goto omfg
set full=1
echo.
echo µn¤J¦øªA¾¹¸ê®Æ®w¤w³Q§R°£
goto ls_install
:ls_upgrade
cls
echo.
echo §ó·sµn¤J¦øªA¾¹¸ê®Æ®wµ²ºc
echo.
echo @echo off> temp.bat
if exist ls_errors.log del ls_errors.log
for %i in (..\sql\login\updates\*.sql) do echo "%mysqlPath%" -h %lshost% -u %lsuser% --password=%lspass% -D %lsdb% --force ^< %i 2^>^> ls_errors.log >> temp.bat
call temp.bat> nul
del temp.bat
move ls_errors.log %workdir%
goto ls_install
:ls_install
cls
set cmdline=
if %full% == 1 (
title L2JTW ¥¿¦b¦w¸Ëµn¤J¦øªA¾¹ªº¸ê®Æ®w...
echo.
echo ¥¿¦b¦w¸Ë·sªºµn¤J¦øªA¾¹ªº¸ê®Æ®w¤º®e
echo.
) else (
title L2JTW ¥¿¦b§ó·sµn¤J¦øªA¾¹ªº¸ê®Æ®w...
echo.
echo ¥¿¦b§ó·sµn¤J¦øªA¾¹ªº¸ê®Æ®w¤º®e
echo.
)
if %logging% == 0 set output=NUL
set dest=ls
for %i in (..\sql\login\*.sql) do call :dump %i
echo §¹¦¨...
echo.
goto cs_backup
:cs_backup
cls
call :colors 17
set cmdline=
set stage=3
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b³Æ¥÷¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w...
set cmdline="%mysqldumpPath%" --add-drop-table -h %cbhost% -u %cbuser% --password=%cbpass% %cbdb% ^> "%backup%\cs_backup.sql" 2^> NUL
%cmdline%
if %ERRORLEVEL% == 0 goto cs_db_ok
:cs_err1
cls
set cbdbprompt=y
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ³Æ¥÷¥¢±Ñ¡I
echo -ì¦]¬O¦]¬°¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w¤£¦s¦b
echo ²{¦b¥i¥HÀ°§A«Ø¥ß %cbdb%¡A©ÎªÌÄ~Äò¨ä¥¦³]©w
echo.
echo «Ø¥ß¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w¡H
echo.
echo (y)½T©w
echo.
echo (n)¨ú®ø
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p cbdbprompt=½Ð¿ï¾Ü¡]¹w³]-È-½T©w¡^:
if /i %cbdbprompt%==y goto cs_db_create
if /i %cbdbprompt%==n goto gs_backup
if /i %cbdbprompt%==r goto configure
if /i %cbdbprompt%==q goto end
goto cs_err1
:cs_db_create
cls
call :colors 17
set cmdline=
set stage=4
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b«Ø¥ß¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w...
set cmdline="%mysqlPath%" -h %cbhost% -u %cbuser% --password=%cbpass% -e "CREATE DATABASE %cbdb%" 2^> NUL
%cmdline%
if %ERRORLEVEL% == 0 goto cs_db_ok
if %safe_mode% == 1 goto omfg
:cs_err2
cls
set omfgprompt=q
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w«Ø¥ß¥¢±Ñ¡I
echo.
echo ¥i¯àªº-ì¦]¡G
echo 1.¿é¤Jªº¸ê®Æ¿ù»~¡A¨Ò¦p¡G¨Ï¥ÎªÌ¦WºÙ/¨Ï¥ÎªÌ±K½X/¨ä¥L¬ÛÃö¸ê®Æ
echo 2.¨Ï¥ÎªÌ¡u%cbuser%¡vªºÅv--¤£¨¬
echo 3.¸ê®Æ®w¤w¦s¦b
echo.
echo ½ÐÀˬd³]©w¨Ã¥B-×¥¿¡A©ÎªÌª½±µ-«·s³]©w
echo.
echo (c)Ä~Äò
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p omfgprompt=½Ð¿ï¾Ü¡]¹w³]-È-°h¥X¡^:
if /i %omfgprompt%==c goto gs_backup
if /i %omfgprompt%==r goto configure
if /i %omfgprompt%==q goto end
goto cs_err2
:cs_db_ok
cls
set communityprompt=u
call :colors 17
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w¦w¸Ë¡G
echo.
echo (f)§¹¾ã¡G±N²¾°£©Ò¦³Âªº¸ê®Æ¡A-«·s¾É¤J·sªº¸ê®Æ
echo.
echo (u)§ó·s¡G±N«O¯d©Ò¦³Âªº¸ê®Æ¡A¨Ã¥B¶i¦æ§ó·s§@·~
echo.
echo (s)¬Ù²¤¡G¸õ¹L¦¹¿ï¶µ
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p communityprompt=½Ð¿ï¾Ü¡]¹w³]-È-§ó·s¡^:
if /i %communityprompt%==f goto cs_cleanup
if /i %communityprompt%==u goto cs_upgrade
if /i %communityprompt%==s goto gs_backup
if /i %communityprompt%==r goto configure
if /i %communityprompt%==q goto end
goto cs_db_ok
:cs_cleanup
call :colors 17
set cmdline=
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b²¾°£¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w¡AµM«á¾É¤J·sªº¸ê®Æ®w ...
set cmdline="%mysqlPath%" -h %cbhost% -u %cbuser% --password=%cbpass% -D %cbdb% ^< cs_cleanup.sql 2^> NUL
%cmdline%
if not %ERRORLEVEL% == 0 goto omfg
set full=1
echo.
echo ¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®w¤w³Q§R°£
goto cs_install
:cs_upgrade
cls
echo.
echo §ó·s¡u°Q½×ª©±M¥Î¡vªº¸ê®Æ®wµ²ºc
echo.
echo @echo off> temp.bat
if exist cs_errors.log del cs_errors.log
for %i in (..\sql\community\updates\*.sql) do echo "%mysqlPath%" -h %cbhost% -u %cbuser% --password=%cbpass% -D %cbdb% --force ^< %i 2^>^> cs_errors.log >> temp.bat
call temp.bat> nul
del temp.bat
move cs_errors.log %workdir%
goto cs_install
:cs_install
cls
set cmdline=
if %full% == 1 (
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¦w¸Ë·sªº¡u°Q½×ª©±M¥Î¡v¸ê®Æ®w...
echo.
) else (
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo §ó·s¡u°Q½×ª©±M¥Î¡v¸ê®Æ®w...
echo.
)
if %logging% == 0 set output=NUL
set dest=cb
for %i in (..\sql\community\*.sql) do call :dump %i
echo done...
echo.
goto gs_backup
:gs_backup
cls
call :colors 17
set cmdline=
set stage=5
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b³Æ¥÷¹CÀ¸¦øªA¾¹ªº¸ê®Æ®w...
set cmdline="%mysqldumpPath%" --add-drop-table -h %gshost% -u %gsuser% --password=%gspass% %gsdb% ^> "%backup%\gs_backup.sql" 2^> NUL
%cmdline%
if %ERRORLEVEL% == 0 goto gs_db_ok
:gs_err1
cls
set gsdbprompt=y
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ³Æ¥÷¥¢±Ñ¡I
echo -ì¦]¬O¦]¬°¸ê®Æ®w¤£¦s¦b
echo ²{¦b¥i¥HÀ°§A«Ø¥ß %gsdb%¡A©ÎªÌÄ~Äò¨ä¥¦³]©w
echo.
echo «Ø¥ß¹CÀ¸¦øªA¾¹ªº¸ê®Æ®w¡H
echo.
echo (y)½T©w
echo.
echo (n)¨ú®ø
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p gsdbprompt=½Ð¿ï¾Ü¡]¹w³]-È-½T©w¡^:
if /i %gsdbprompt%==y goto gs_db_create
if /i %gsdbprompt%==n goto eof
if /i %gsdbprompt%==r goto configure
if /i %gsdbprompt%==q goto end
goto gs_err1
:gs_db_create
cls
call :colors 17
set stage=6
set cmdline=
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b«Ø¥ß¹CÀ¸¦øªA¾¹ªº¸ê®Æ®w...
set cmdline="%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -e "CREATE DATABASE %gsdb%" 2^> NUL
%cmdline%
if %ERRORLEVEL% == 0 goto gs_db_ok
if %safe_mode% == 1 goto omfg
:gs_err2
cls
set omfgprompt=q
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¹CÀ¸¦øªA¾¹ªº¸ê®Æ®w«Ø¥ß¥¢±Ñ¡I
echo.
echo ¥i¯àªº-ì¦]¡G
echo 1.¿é¤Jªº¸ê®Æ¿ù»~¡A¨Ò¦p¡G¨Ï¥ÎªÌ¦WºÙ/¨Ï¥ÎªÌ±K½X/¨ä¥L¬ÛÃö¸ê®Æ
echo 2.¨Ï¥ÎªÌ¡u%gsuser%¡vªºÅv--¤£¨¬
echo 3.¸ê®Æ®w¤w¦s¦b
echo.
echo ½ÐÀˬd³]©w¨Ã¥B-×¥¿¡A©ÎªÌª½±µ-«·s³]©w
echo.
echo (r)-«·s°õ¦æ¨Ã¥B¶i¦æ³]©w
echo.
echo (q)°h¥X
echo.
set /p omfgprompt=½Ð¿ï¾Ü¡]¹w³]-È-°h¥X¡^:
if /i %omfgprompt%==r goto configure
if /i %omfgprompt%==q goto end
goto gs_err2
:gs_db_ok
cls
set installtype=u
call :colors 17
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¹CÀ¸¦øªA¾¹ªº¸ê®Æ®w¦w¸Ë¡G
echo.
echo (f)§¹¾ã¡G±N²¾°£©Ò¦³Âªº¸ê®Æ¡A-«·s¾É¤J·sªº¸ê®Æ
echo.
echo (u)§ó·s¡G±N«O¯d©Ò¦³Âªº¸ê®Æ¡A¨Ã¥B¶i¦æ§ó·s§@·~
echo.
echo (s)¬Ù²¤¡G¸õ¹L¦¹¿ï¶µ
echo.
echo (q)°h¥X
echo.
set /p installtype=½Ð¿ï¾Ü¡]¹w³]-È-§ó·s¡^:
if /i %installtype%==f goto gs_cleanup
if /i %installtype%==u goto gs_upgrade
if /i %installtype%==s goto custom_ask
if /i %installtype%==q goto end
goto gs_db_ok
:gs_cleanup
call :colors 17
set cmdline=
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥¿¦b²¾°£¹CÀ¸¦øªA¾¹ªº¸ê®Æ®w¡AµM«á¾É¤J·sªº¸ê®Æ®w...
set cmdline="%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% ^< gs_cleanup.sql 2^> NUL
%cmdline%
if not %ERRORLEVEL% == 0 goto omfg
set full=1
echo.
echo ¹CÀ¸¸ê®Æ®w²¾°£§¹¦¨
goto gs_install
:gs_upgrade
cls
echo.
echo §ó·s¹CÀ¸¸ê®Æ®wµ²ºc
echo.
echo @echo off> temp.bat
if exist gs_errors.log del gs_errors.log
for %i in (..\sql\game\updates\*.sql) do echo "%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% --force ^< %i 2^>^> gs_errors.log >> temp.bat
call temp.bat> nul
del temp.bat
move gs_errors.log %workdir%
goto gs_install
:gs_install
cls
set cmdline=
if %full% == 1 (
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¦w¸Ë·sªº¹CÀ¸¸ê®Æ®w...
echo.
) else (
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo §ó·s¹CÀ¸¸ê®Æ®w...
echo.
)
if %logging% == 0 set output=NUL
set dest=gs
for %i in (..\sql\game\*.sql) do call :dump %i
for %i in (..\sql\game\mods\*.sql) do call :dump %i
for %i in (..\sql\L2JTW\*.sql) do call :dump %i
echo §¹¦¨...
echo.
set charprompt=y
set /p charprompt=¦w¸Ë¡u§Þ¯à/ª««~/¾·~/NPC»¡¸Ü¡v¤¤¤å¤Æ: (y) ½T©w ©Î (N) ¨ú®ø¡H¡]¹w³]-È-½T©w¡^:
if /i %charprompt%==n goto custom_ask
for %i in (..\sql\L2JTW_2\*.sql) do call :dump %i
echo §¹¦¨...
echo.
echo ¡¸ª`·N¡G³¡¤À¨t²Î¦w¸Ë¤¤¤å¤Æ·|¥¢±Ñ¡A¾É-P¹CÀ¸¤¤¥X²{¶Ã½X
echo ¡@¡@¡@¡@¦pªG¹J¨ì³oºØ±¡§Î¡A½Ð¦A¤â°Ê¾É¤J SQL ¸Ì-±ªº
echo ¡@¡@¡@¡@skill_tw.sql / item_tw.sql / messagetable /
echo ¡@¡@¡@¡@auto_chat_text_tw / char_templates_tw ³o 5 -Ó SQL
goto custom_ask
:dump
set cmdline=
if /i %full% == 1 (set action=¦w¸Ë) else (set action=§ó·s)
echo %action% %1>>"%output%"
echo %action% %~nx1
if "%dest%"=="ls" set cmdline="%mysqlPath%" -h %lshost% -u %lsuser% --password=%lspass% -D %lsdb% ^< %1 2^>^>"%output%"
if "%dest%"=="cb" set cmdline="%mysqlPath%" -h %cbhost% -u %cbuser% --password=%cbpass% -D %cbdb% ^< %1 2^>^>"%output%"
if "%dest%"=="gs" set cmdline="%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% ^< %1 2^>^>"%output%"
%cmdline%
if %logging%==0 if NOT %ERRORLEVEL%==0 call
mfg2 %1
goto :eof
mfg2
cls
set ntpebcak=c
call :colors 47
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo ¥X²{¿ù»~¡G
echo %mysqlPath% -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb%
echo.
echo ÀÉ®× %~nx1
echo.
echo ³B²z¤è¦¡¡H
echo.
echo (l)«Ø¥ß°T®§Àɮפè«K¬d¸ß
echo.
echo (c)Ä~Äò
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p ntpebcak=½Ð¿ï¾Ü¡]¹w³]-È-Ä~Äò¡^:
if /i %ntpebcak%==c (call :colors 17 & goto :eof)
if /i %ntpebcak%==l (call :logginon %1 & goto :eof)
if /i %ntpebcak%==r (call :configure & exit)
if /i %ntpebcak%==q (call :end)
goto omfg2
:logginon
cls
call :colors 17
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
set logging=1
if %full% == 1 (
set output=%logdir%\install-%~nx1.log
) else (
set output=%logdir%\upgrade-%~nx1.log
)
echo.
echo «Ø¥ß°T®§ÀÉ®×...
echo.
echo Àɮ׬°¡u%output%¡v
echo.
echo ¦pªG¦¹Àɮפw¦s¦b¡A½Ð¶i¦æ³Æ¥÷¡A§_«h±N·|Âл\¹L¥h
echo.
pause
set cmdline="%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% ^<..\sql\%1 2^>^>"%output%"
date /t >"%output%"
time /t >>"%output%"
%cmdline%
echo «Ø¥ß°T®§¸ê®Æ...
call :colors 17
set logging=0
set output=NUL
goto :eof
:custom_ask
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
cls
set cstprompt=y
echo.
echo custom ¦Û-q¸ê®Æªí¥[¤J¸ê®Æ®w§¹¦¨
echo ©Ò¦³¿ù»~¸ê°T±N©ñ¤J¡ucustom_errors.log¡v
echo.
echo ½Ðª`·N¡A¦pªG-n¨Ï³o¨Ç¦Û-q¸ê®Æªí¯à°÷±Ò¥Î
echo §A¥²¶·-קï config ªºÀɮ׳]©w
echo.
set /p cstprompt=¦w¸Ë custom ¦Û-q¸ê®Æªí: (y) ½T©w ©Î (N) ¨ú®ø¡]¹w³]-È-½T©w¡^:
if /i %cstprompt%==y goto custom_install
if /i %cstprompt%==n goto mod_ask
:custom_install
cls
echo.
echo ¦w¸Ë custom ¦Û-q¤º®e
echo @echo off> temp.bat
if exist custom_errors.log del custom_errors.log
for %i in (..\sql\game\custom\*.sql) do echo "%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% ^< %i 2^>^> custom_errors.log >> temp.bat
call temp.bat> nul
del temp.bat
move custom_errors.log %workdir%
goto mod_ask
:mod_ask
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
cls
set cstprompt=y
echo.
echo Mod ¦Û-q¸ê®Æªí¥[¤J¸ê®Æ®w§¹¦¨
echo ©Ò¦³¿ù»~¸ê°T±N©ñ¤J¡umod_errors.log¡v
echo.
echo ½Ðª`·N¡A¦pªG-n¨Ï³o¨Ç¦Û-q¸ê®Æªí¯à°÷±Ò¥Î
echo §A¥²¶·-קï config ªºÀɮ׳]©w
echo.
echo.
set /p cstprompt=¦w¸Ë Mods ¦Û-q¸ê®Æªí: (y) ½T©w ©Î (N) ¨ú®ø¡]¹w³]-È-½T©w¡^:
if /i %cstprompt%==y goto mod_install
if /i %cstprompt%==n goto end
:mod_install
cls
echo.
echo ¦w¸Ë Mods ¦Û-q¤º®e
echo @echo off> temp.bat
if exist mods_errors.log del mods_errors.log
for %i in (..\sql\game\mods\*.sql) do echo "%mysqlPath%" -h %gshost% -u %gsuser% --password=%gspass% -D %gsdb% ^< %i 2^>^> mods_errors.log >> temp.bat
call temp.bat> nul
del temp.bat
move mods_errors.log %workdir%
goto end
mfg
set omfgprompt=q
call :colors 57
cls
title L2JTW Datapack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
echo.
echo °õ¦æ®É¥X²{¿ù»~¡G
echo.
echo "%cmdline%"
echo.
echo «ØijÀˬd¤@¤U³]©wªº¸ê®Æ¡A¥H½T«O©Ò¦³¿é¤Jªº¼Æ-ȨS¦³¿ù»~¡I
echo.
if %stage% == 1 set label=ls_err1
if %stage% == 2 set label=ls_err2
if %stage% == 3 set label=cs_err1
if %stage% == 4 set label=cs_err2
if %stage% == 5 set label=gs_err1
if %stage% == 6 set label=gs_err2
echo.
echo (c)Ä~Äò
echo.
echo (r)-«·s³]©w
echo.
echo (q)°h¥X
echo.
set /p omfgprompt=½Ð¿ï¾Ü¡]¹w³]-È-°h¥X¡^:
if /i %omfgprompt%==c goto %label%
if /i %omfgprompt%==r goto configure
if /i %omfgprompt%==q goto end
goto omfg
:binaryfind
if EXIST "%mysqlBinPath%" (echo §ä¨ìªº MySQL) else (echo ¨S¦³§ä¨ì MySQL¡A½Ð¦b¤U-±¿é¤J¥¿½Tªº¦ì¸m...)
goto :eof
:end
call :colors 17
title L2JTW DataPack ¦w¸Ë - For¡GL2JTW GameServer HighFive Alpha
cls
echo.
echo L2JTW DataPack ¦w¸Ëµ{§Ç - For¡GL2JTW GameServer HighFive Alpha
echo (C) 2007-2012 L2JTW DataPack ¶}µo¹Î¶¤
echo.
echo ·PÁ¨ϥΠL2JTW ¦øªA¾¹
echo ¬ÛÃö¸ê°T¥i¥H¦b
http://www.l2jtw.com ¬d¸ß¨ì
echo.
pause