Jump to content
Sign in to follow this  
Shenna

Elysium Launcher, с приветом из 90-х :)

Recommended Posts

unknown.png

К нам ежедневно обращаются игроки, которые испытывают проблемы с игровым клиентом или не знают, как редактировать realmlist. Более того, некоторые игроки играют сразу на нескольких серверах и ищут инструмент для быстрого переключения между ними, который не будет засорять кеш.                                          

Для таких пользователей мы представляем свой ".bat" лаунчер, который раньше использовался только командой Elysium Project. Данный лаунчер имеет открытый исходный код и крайне прост в использовании.

Преимущества данного лаунчера:          

  • Лаунчер основан на простейшем .bat скрипте, следовательно Вы можете прочитать/изменить код;        
  • Никаких скрытых вредоносных скриптов. Исходный код открыт и каждый может это проверить;                                  
  • Легко задаются различные настройки (например, автоматическая очистку кеша при запуске или использовании OpenGL);  
  • Автоматически исправляет проблемы со стороны клиента (например, мгновенное отключение после входа в аккаунт);    
  • Позволяет сделать микро-сброс данных клиента, если Вы заметили необычное поведение;                                            
  • Запускает диагностику клиента для нахождения возможных проблем;                                                                            
  • Включает/отключает пользовательских MPQ файлов по требованию; 
  • Маленький размер файла (12 кб).        

Минусы данного лаунчера:                                                                          

  • Выглядит довольно старомодно;                        
  • Автоматически не обновляется;          
  • Работает только с клавиатурой.      
  • Совместимые версии: Vanilla и TBC.          

Совместимые операционные системы: Windows  2k/XP/Vista/7/8/10
Последняя версия: v10 Апрель 2018 (v1 выпущена в Июне 2006)

Скачать: https://cdn.discordapp.com/attachments/338421792026656768/452585654761816075/LaunchWoW.zip

Spoiler

REM Based on: Crogge's Simple Realmlist Switching Script V8
REM Coding quality: Horrible and outdated but working properly :)
REM Version 8 - 29.01.2014
REM Version 9 - 10.03.2018 for Elysium Project (Vanilla and TBC)
REM Version 10 - 07.04.2018 added feature to autocorrect WTF issues
REM --- OPEN SOURCE ---
@ECHO OFF

REM To enable/disable MPQ files (Optional)
REM 1st Custom MPQ file has to be named patch-C.mpq
REM 2nd Custom MPQ file has to be named patch-D.mpq



REM --- EDIT THIS CONFIGURATION PART ---

REM Realmlist of Elysium Project (Without "set realmlist"!)

SET REALMLIST_ELY=logon.elysium-project.org

REM You can add a 2nd Vanilla server here (Without "set realmlist"!)

SET SERVERNAME_OTHER=Official WoW Classic
SET REALMLIST_OTHER=127.0.0.1

REM You can add a 3rd Vanilla server here (Without "set realmlist"!)

SET SERVERNAME_OTHER2=Localhost
SET REALMLIST_OTHER2=127.0.0.1

REM --- END OF CONFIGURATION ---



GOTO Startup

:Startup
CLS
COLOR 0e
ECHO Starting...
IF not exist Wow.exe GOTO Error
IF not exist Data/patch.MPQ GOTO Error

REM Set auto cache cleaning, OpenGL engine and WTF fix by default DISABLED
SET setCacheClean=0
SET setGraphicEngine=0
SET setRealmNameFix=0

REM Read settings if existing from file or create new one
IF exist csl_settings.ini (
	for /f %%S in (csl_settings.ini) do set %%S
) else (
	REM Write default settings to new file
	set setCacheClean > csl_settings.ini
	set setGraphicEngine >> csl_settings.ini
	set setRealmNameFix >> csl_settings.ini
)
	
ECHO Detecting client language (TBC only)...
set language=0
set language_shown=0
IF exist data/deDE/base-deDE.MPQ set language=deDE
IF exist data/frFR/base-deDE.MPQ set language=frFR
IF exist data/ruRU/base-ruRU.MPQ set language=ruRU
IF exist data/enGB/base-enGB.MPQ set language=enGB
IF exist data/enUS/base-enUS.MPQ set language=enUS
IF exist data/base.MPQ set language=vanilla
IF %language% EQU 0 (
	set language_shown=unknown
) else (
	set language_shown=%language%_TBC
)
IF %language% == vanilla (
	set language_shown=Default_Vanilla
    set language=0
)

GOTO Selection

:Selection
CLS
COLOR 0a
ECHO ::: Shell Launcher by Crogge V10 - Client: %language_shown% :::
ECHO.
ECHO [ 1 ] - Play on Elysium Project
ECHO.
IF DEFINED SERVERNAME_OTHER (
ECHO [ 2 ] - Play on %SERVERNAME_OTHER%
ECHO. )
IF DEFINED SERVERNAME_OTHER2 (
ECHO [ 3 ] - Play on %SERVERNAME_OTHER2%
ECHO. )
ECHO [ 4 ] - Clean your cache and fix realm selection
ECHO.
ECHO [ 5 ] - Options
ECHO.
ECHO [ 6 ] - Create Account on Elysium Project
ECHO.
ECHO [ 0 ] - Exit
ECHO.
set /p REALM="Please enter your selection: "
IF %REALM% EQU 0 GOTO End
IF %REALM% EQU 1 GOTO setREALM1
IF DEFINED SERVERNAME_OTHER (
IF %REALM% EQU 2 GOTO setREALM2
)
IF %REALM% EQU 3 GOTO setREALM3
IF %REALM% EQU 4 GOTO CleanWDB
IF %REALM% EQU 5 GOTO Options
IF %REALM% EQU 6 GOTO CreateAcc
IF %REALM% GTR 6 GOTO End
IF NOT DEFINED %REALM% GOTO End

:setREALM1
ECHO set realmlist %REALMLIST_ELY%>realmlist.wtf
ECHO set patchlist %REALMLIST_ELY%>>realmlist.wtf
ECHO Realmlist set to %REALMLIST_ELY%
GOTO StartWoW

:setREALM2
ECHO set realmlist %REALMLIST_OTHER%>realmlist.wtf
ECHO set patchlist %REALMLIST_OTHER%>>realmlist.wtf
ECHO Realmlist set to %REALMLIST_OTHER%
GOTO StartWoW

:setREALM3
ECHO set realmlist %REALMLIST_OTHER2%>realmlist.wtf
ECHO set patchlist %REALMLIST_OTHER2%>>realmlist.wtf
ECHO Realmlist set to %REALMLIST_OTHER2%
GOTO StartWoW

:StartWoW
IF %setCacheClean%==1 (
    IF not %language%==0 (
        rmdir /q /s Cache
    ) else (
	    rmdir /q /s WDB
    )
)
IF %setRealmNameFix%==1 (
		cd WTF
		DEL /s Config.wtf.bak
		DEL /s Config.wtf.temp
		REN Config.wtf Config.wtf.bak
	    findstr /V "realmName" Config.wtf.bak > Config.wtf.temp
		findstr /V "realmList" Config.wtf.temp > Config.wtf
		cd..
    )
IF %setGraphicEngine%==0 (
    START Wow.exe
) else (
    START Wow.exe -opengl
)
)
GOTO End

:CleanWDB
IF not %language%==0 (
    rmdir /q /s Cache
) else (
    rmdir /q /s WDB
)

cd WTF
DEL /s Config.wtf.bak
DEL /s Config.wtf.temp
REN Config.wtf Config.wtf.bak
findstr /V "realmName" Config.wtf.bak > Config.wtf.temp
findstr /V "realmList" Config.wtf.temp > Config.wtf
cd..
CLS
COLOR 0b
ECHO Your WTF file has been fixed and your cache has been cleaned up
ECHO The client will force read the realmlist file again
ECHO This can fix for example the instant disconnect issue
PAUSE
GOTO :Selection

:Options
CLS
COLOR 0a
ECHO ::: Shell Launcher by Crogge V10 - Options :::
ECHO.
IF %setCacheClean%==0 (
ECHO [ 1 ] - ENABLE cache deletion on start [Disabled]
) else (
ECHO [ 1 ] - DISABLE cache deletion on start [Enabled]
)
ECHO.
IF not exist Data/patch-C.MPQ (
    IF exist Data/patch-C.MPQ.off (
		ECHO [ 2 ] - ENABLE Custom Patch C [Disabled]
	)
) else (
	ECHO [ 2 ] - DISABLE Custom Patch C [Enabled]
)
ECHO.
IF not exist Data/patch-D.MPQ (
	IF exist Data/patch-D.MPQ.off (
		ECHO [ 3 ] - ENABLE Custom Patch D [Disabled]
	)
) else (
	ECHO [ 3 ] - DISABLE Custom Patch D [Enabled]
)
ECHO.
ECHO [ 4 ] - RESET client [Restore original condition] 
ECHO.
ECHO [ 5 ] - Information / Diagnosis
ECHO.
IF %setGraphicEngine%==0 (
ECHO [ 6 ] - USE OpenGL graphics - Not recommended [Cur: Direct3D]
) else (
ECHO [ 6 ] - USE Direct3D graphics - Recommended [Cur: OpenGL]
)
ECHO.
IF %setRealmNameFix%==0 (
ECHO [ 7 ] - ENABLE realm name autofix on start [Disabled]
) else (
ECHO [ 7 ] - DISABLE realm name autofix on start [Enabled]
)
ECHO.
ECHO [ 0 ] - Go back
ECHO.
set /p REALMX="Please enter your selection: "
IF not exist Data/patch-C.MPQ (
	IF %REALMX% EQU 2 GOTO CustomCON
) else (
	IF %REALMX% EQU 2 GOTO CustomCOFF
)
IF not exist Data/patch-D.MPQ (
	IF %REALMX% EQU 3 GOTO CustomDON
) else (
	IF %REALMX% EQU 3 GOTO CustomDOFF
)
IF %REALMX% EQU 0 GOTO Selection
IF %REALMX% EQU 1 GOTO SetAutoDelCache
IF %REALMX% EQU 4 GOTO ResetClient
IF %REALMX% EQU 5 GOTO Information
IF %REALMX% EQU 6 GOTO GraphicEngine
IF %REALMX% EQU 7 GOTO RealmNameFix
IF %REALMX% GTR 7 GOTO Selection
IF NOT DEFINED %REALMX% GOTO Selection

:CustomCON
cd Data
IF exist patch-C.MPQ (
	CLS
	COLOR 0e
	ECHO For unknown reasons the custom patch C was already enabled.
	ECHO.
	PAUSE
	cd..
	GOTO :Options
)
REN patch-C.MPQ.off patch-C.MPQ
cd..
GOTO :Options

:CustomCOFF
cd Data
IF exist patch-C.MPQ.off (
	CLS
	COLOR 0e
	ECHO For unknown reasons the custom patch C was already Dislabed.
	ECHO.
	PAUSE
	cd..
	GOTO :Options
)
REN patch-C.MPQ patch-C.MPQ.off
cd..
GOTO :Options

:CustomDON
cd Data
IF exist patch-D.MPQ (
	CLS
	COLOR 0e
	ECHO For unknown reasons the custom patch D was already enabled.
	ECHO.
	PAUSE
	cd..
	GOTO :Options
)
REN patch-D.MPQ.off patch-D.MPQ
cd..
GOTO :Options

:CustomDOFF
cd Data
IF exist patch-D.MPQ.off (
	CLS
	COLOR 0e
	ECHO For unknown reasons the custom patch C was already disabled.
	ECHO.
	PAUSE
	cd..
	GOTO :Options
)
REN patch-D.MPQ patch-D.MPQ.off
cd..
GOTO :Options

:SetAutoDelCache
IF %setCacheClean%==0 (
REM Change the variable
SET setCacheClean=1
) else (
REM Change the variable
SET setCacheClean=0
)

REM Write settings to file
set setCacheClean > csl_settings.ini
set setGraphicEngine >> csl_settings.ini
set setRealmNameFix >> csl_settings.ini
GOTO :Options

:GraphicEngine
IF %setGraphicEngine%==0 (
REM Change the variable
CLS
COLOR 0e
ECHO Please note that this option should be only used if you got graphic issues
ECHO Your framerate will be probably noticeable lower now
ECHO Simply use this option again to switch back to Direct3D [Higher FPS]
ECHO.
PAUSE
SET setGraphicEngine=1
) else (
REM Change the variable
SET setGraphicEngine=0
)

REM Write settings to file
set setCacheClean > csl_settings.ini
set setGraphicEngine >> csl_settings.ini
set setRealmNameFix >> csl_settings.ini
GOTO :Options

:RealmNameFix
IF %setRealmNameFix%==0 (
REM Change the variable
SET setRealmNameFix=1
) else (
REM Change the variable
SET setRealmNameFix=0
)

REM Write settings to file
set setCacheClean > csl_settings.ini
set setGraphicEngine >> csl_settings.ini
set setRealmNameFix >> csl_settings.ini
GOTO :Options

:ResetClient
CLS
COLOR 0e
ECHO This option will delete:
ECHO "Cache, Errors, Logs, Addons, Settings..., keep Screenshots"
ECHO.
ECHO [ 1 ] - YES, I confirm the reset of the client
ECHO.
ECHO [ 2 ] - NO, please go back to the menu
ECHO.
set /p DELCON="Press 1 or 2: "
IF %DELCON% EQU 1 GOTO ResetClientOK
IF %DELCON% EQU 2 GOTO Options
IF NOT DEFINED %DELCON% GOTO Options

:ResetClientOK
rmdir /q /s WTF
rmdir /q /s WDB
rmdir /q /s Cache
rmdir /q /s Errors
rmdir /q /s Interface
rmdir /q /s Logs
rmdir /q /s WTF
rmdir /q /s Data/patch-3.MPQ
rmdir /q /s Data/patch-4.MPQ
rmdir /q /s Data/patch-5.MPQ
rmdir /q /s Data/patch-6.MPQ
rmdir /q /s Data/patch-7.MPQ
rmdir /q /s Data/patch-8.MPQ
rmdir /q /s Data/patch-9.MPQ
rmdir /q /s Data/patch-A.MPQ
rmdir /q /s Data/patch-B.MPQ
rmdir /q /s Data/patch-C.MPQ
rmdir /q /s Data/patch-D.MPQ
rmdir /q /s Data/patch-X.MPQ
rmdir /q /s Data/patch-Y.MPQ
rmdir /q /s Data/patch-Z.MPQ
rmdir /q /s reshade
rm /q /s d3d9.dll
ECHO.
ECHO Done! Press any button to go back to the options!
PAUSE
GOTO :Options

:Information
CLS
COLOR 0f
ECHO The base of this launcher got created by Crogge [Realmlist Switching Script V3]
ECHO Crogge is the server founder of CroggesServer which is since 2006 online
ECHO Based on: Crogge's Simple Realmlist Switching Script V3
ECHO Version 10 - 07.04.2018 for Elysium Project
ECHO.
ECHO Client check:
ECHO.
ECHO Language or Client: %language_shown%
IF exist realmlist.wtf (
	ECHO Realmlist - OK
) else (
	ECHO Realmlist - NOT EXISTING
)
SET check=0
IF not exist dbghelp.dll SET check=1
IF not exist divxdecoder.dll SET check=1
IF not exist Scan.dll SET check=1
IF not exist Data/patch.MPQ SET check=1

REM Language detected so most likely TBC
IF not %language%==0 (
	IF not exist Data/%language%/backup-%language%.MPQ SET check=1
	IF not exist Data/%language%/base-%language%.MPQ SET check=1
	IF not exist Data/%language%/expansion-locale-%language%.MPQ SET check=1
	IF not exist Data/%language%/expansion-speech-%language%.MPQ SET check=1
	IF not exist Data/%language%/locale-%language%.MPQ SET check=1
	IF not exist Data/%language%/patch-%language%.MPQ SET check=1
	IF not exist Data/%language%/patch-%language%-2.MPQ SET check=1
	IF not exist Data/%language%/speech-%language%.MPQ SET check=1
)
IF %check%==0 (
	ECHO Client basefiles - ALL OK
) ELSE (
	COLOR 0c
	ECHO Client basefiles - ERROR, FILES MISSING!
)
ECHO.
ECHO Operation system:
ver
ECHO.
REM XP doesnt support certutil to check hashes
ver | find "5" > nul
if errorlevel = 1 (
    certutil -hashfile WoW.exe MD5
    certutil -hashfile Scan.dll MD5
)
ECHO.
PAUSE
GOTO :Options

:CreateAcc
START https://elysium-project.org/
GOTO :Selection

:Error
COLOR 0c
ECHO.
ECHO Please check if you placed this file in the correct folder!
ECHO e.g. C:\Program Files\World of Warcraft
ECHO e.g. C:\Program Files (x86)\World of Warcraft
ECHO e.g. C:\Games\World of Warcraft
ECHO.
PAUSE
EXIT

:End
ECHO Bye!
EXIT

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×