Setup mod on steam:ko

From Valve Developer Community
Jump to: navigation, search
Icon-broom.png
This article or section needs to be cleaned up to conform to a higher standard of quality because:
mac/Linux 운영체제에서도 이용할 수 있게 문서를 새로 정리해야 합니다.
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.


모드 파일

모드를 구동할려면 steamapps폴더에 몇몇 파일들이 필요합니다. 예를 들어 Source SDK 2013은 game/ 경로에 몇가지 기본 파일을 제공합니다. 이 폴더에는 모드 구동에 필요한 필수 정보 및 스크립트 파일등이 포함되어져 있으며 이중 가장 중요한 것은 gameinfo.txt, bin/client.dllbin/server.dll 파일입니다.

  • 싱글플레이어 : <your mod>/sp/game/mod_hl2 (혹은 mod_episodic) 에서 <steam_path>/steamapps/sourcemods/<your mod> 경로로 파일들을 복사하세요.
  • 멀티플레이어 : <your mod>/mp/game/mod_hl2mp 에서 <steam_path>/steamapps/sourcemods/<your mod> 경로로 파일들을 복사하세요

이후 스팀을 완전히 재시작하면 스팀 라이브러리에 당신의 모드가 추가될 것입니다. 이후에 기본파일들(예: client.dll, server.dll)의 변동 사항이 있을때마다 수동으로 위의 경로로 이동해 파일을 교체해주셔야 합니다.

Symlink 모드 경로

파일에 변동 사항이 있을 때마다 이를 수동으로 교체하는 작업이 다소 귀찮을 수 있으므로 mod_ 폴더로 경로를 설정해 자동으로 파일이 교체되도록 할 수 있습니다. 먼저, 이전에 만든 steamapps/sourcemods/ 안에 있는 파일들을 모두 제거하십시오.(다른 모드가 설치되지 않는 한 ""sourcemods/""에는 파일이 아무것도 없어야 합니다.

  • 터미널을 엽시다. (Windows: 명령 프롬프트{cmd.exe}, OS X: Applications/Utilities/Terminal, Linux: xterm 혹은 terminal)
  • <스팀경로>/sourcemods/로 경로를 변경합니다.
  • 당신의 모드경로에 대한 symlink를 만들어야 합니다.
    • Windows: mklink /J <mod_name> <path_to_source>/<sp|mp>/game/<mod_hl2mp|mod_hl2|mod_episodic>
    • Linux: mkdir <mod_name> && sudo mount --bind <path_to_source>/<sp|mp>/game/<mod_hl2mp|mod_hl2|mod_episodic> <mod_name>

이 작업이 다 끝나셨다면 이제 해당 파일에 변동사항이 생길때마다 자동으로 당신의 모드폴더 파일도 교체될 것입니다.

출력 경로 변경

당신은 출력 경로를 mod_hl2, mod_episodic 혹은 mod_hl2mp이 아닌 본인 재량에 따른 경로로 바꿀 수 있습니다. 프로젝에 우클릭을 한다음 Project -> Properties -> Build events -> Post build events 를 누른 후 본인 재량에 따라 경로를 지정하면 됩니다. 이 작업은 Client와 Server 프로젝트 둘다 진행해야 합니다.

예시

if not exist "..\..\..\game\MY_MOD\bin\." mkdir "..\..\..\game\MY_MOD\bin\."
copy "$(TargetDir)$(TargetFileName)" "..\..\..\game\MY_MOD\bin\.\$(TargetFileName)"
if ERRORLEVEL 1 goto BuildEventFailed
if exist "$(TargetDir)$(TargetName).map" copy "$(TargetDir)$(TargetName).map" ..\..\..\game\MY_MOD\bin\.\$(TargetName).map
copy "$(TargetDir)$(TargetName).pdb" ..\..\..\game\MY_MOD\bin\.\$(TargetName).pdb
if ERRORLEVEL 1 goto BuildEventFailed
goto BuildEventOK
:BuildEventFailed
echo *** ERROR! PostBuildStep FAILED for $(ProjectName)! EXE or DLL is probably running. ***
del /q "$(TargetDir)$(TargetFileName)"
exit 1
:BuildEventOK


당신의 모드에서 생길 수 있는 오류 해결방법

만약 시작할 때, 인트로 영상이 재생된 후, 당신의 모드가 충돌을 일으키지만, 반대로 스팀을 끄고 실행했을때는 정상적으로 구동될때, 이 지침을 사용하십시오:


1 - (src\public\steam)경로에서 steam_api.h 파일을 열어줍니다.

2. - DELETE/COMMENT (Lines 551 - 562)을 찾은 다음 해당 문구를 삭제해 줍니다.


	m_pSteamMusicRemote = SteamClient()->GetISteamMusicRemote( hSteamUser, hSteamPipe, STEAMMUSICREMOTE_INTERFACE_VERSION );
	if ( !m_pSteamMusicRemote )
	{
		return false;
	}
	
	m_pSteamHTMLSurface = SteamClient()->GetISteamHTMLSurface( hSteamUser, hSteamPipe, STEAMHTMLSURFACE_INTERFACE_VERSION );
	if ( !m_pSteamHTMLSurface )
	{
		return false;
	}