How To Add Steam Integration and Achievements to your Game - Unity Tutorial - YouTube

이 영상이 제일 잘 되어 있더라 ㅇㅇ 기본적으로 이 영상 따라가면 되고, 아래 부분은 영상 보면서 참조용으로 보면 좋을 듯.


1. FacePunch.Steamworks 이용.


2. Install Page > Git 들어가서, zip 파일 다운받음.


3. Extract 하고, 3개 폴더가 있을 텐데. 이 중 Unity 폴더만 쓸 것.


4. Steamworks 파일을 Script 폴더로 끌어다 둠.


5. 이제 SteamManager 를 만들건데,
    1. Initialize Steam.
    2. Disconnecting Properly.
    3. 잘 연결 됐을 때 작동확인.
    - 이 세 가지를 중점적으로 신경 쓸 것.


6. Singleton 으로 만들고. APPID 입력해두고.  (이거 찾는 방법은 따로 찾아놔야) ConnectedToSteam 을 따로 만들어서, 따른 곳에서도 호환 될 수 있도록 하는 게 좋음.


7. INIT 은 try catch 로 하고, 만약 안 됐다면, connectedtosteam vari 를 false 로 만드는 것으로 대응.

8. 이제 실제 도전과제 만들어야 되는데 [스팀] 도전 과제(업적)를 등록하자 - 인디 게임 개발 마이너 갤러리 이거 참고 ㅇㅇ

9. Achievement 를 보통 어떻게 만드나? : Index base 로 만드는 케이스가 많음 이를 보임. (Steamworks 에서 Achievement 만드는 건 거기서 써야 겠고.)
    - List 되어 있는 대로 enum 을 설정해 진행하는 편임.



참고로 Mac 에서는 에러가 존재하는데, Mac 에서 Mac 빌드하는 경우는 상관 없음. 혹시 발생하는 사람은

- Facepunch.Steamworks.Win32.dll  
- Facepunch.Steamworks.Win32.pdb  
- Facepunch.Steamworks.Win32.xml
- 위 세 가지를 지우고, linux32 folder 를 지움으로써 해결할 수 있음 ㅇㅇ.


걍 출시하려는 사람들 참고 ㅇㅇ

그리고 Stove 도 해봤는데 StoveSDK 가 문서가 어렵게 작성되어 있어서 그렇지 적용은 더 쉽더라~ 필요한 사람 있으면 나중에 써봄.