# 모드 제작 과정

1. 디아블로상의 고쳐야할 점이나 추가할 점, 개선할 여지가 있는 것, 그리고 개인적으로 마음에 안드는 것을 여러곳 지적한다.
2. 모드 제작에 필요한 프로그램을 다운 받는다.
3. patch_d2.mpq파일을 풀어 헤치고 디아블로 폴더내에 넣어둔 뒤 모드전용 단축키를 만들어서 테스트에 대비한다.
4. 각종 게임내 파일들의 역할과 정확한 경로, 또 그에 따른 여러 프로그램의 사용법을 가능한한 터득한다.
5. PhrozenKeep Forum에서 필요한 정보를 취득한다.
6. 얻은 정보를 바탕으로 모드 에디트에 쓰일 데이터를 나름대로 정리 한다. (예: Property List, Skill code List)
7. 다소 손이 많이가는 작업엔 프로그래밍의 힘을 빌린다. (예: 아이템 에디트에 VBA)
8. 텍스트 형식의 데이터 파일을 분석하고 각 필드마다 어떤 역할을 하는지, 값의 변화에 따라 어떠한 반응이 있는지 실험및 검토를 해 본다. ※숙달되기 가장 까다로움.
9. 데이터를 추가해 보거나 복사하여 수정한 뒤 그 값이 제대로 표현되는지 게임을 실행시켜 테스트 한다.
10. 때에 따라 스킬 아이콘이나 아이템 이미지를 수정, 추가할 시엔 따로 그래픽 프로그램을 사용하여 해결한다.
11. 최종 테스트를 하여서 txt파일을 bin으로 자동변환 해 주고, 작업한 폴더를 patch_d2.mpq파일로 다시 묶어준다.
12. 기존의 patch_d2.mpq를 백업하고 자신의 모드 파일을 디아블로 폴더내에 덮어 씌운다.
...그리고 완성 ^^)/



# 사용된 프로그램들
- WinMPQ: 디아블로 뿐만 아니라 블리자드의 대부분 게임들은 mpq라는 파일로 통합되어 있다. 이것을 풀어 헤쳐서 수정할 파일을 골라쓴다.
- MS Excel: 게임내의 텍스트 형식의 데이터 파일을 다루기엔 가장 최적의 프로그램이다. 데이터베이스에 대한 지식이 조금 요구된다. 그리고 다소 편리하게 쓰기 위해선 엑셀에 대한 사용법을 알고 다루는 것이 좋다.
- AFJ tbl Edit 1.11u: 게임내의 텍스트를 표현하기 위한 데이터 파일을 수정한다. 스킬의 이름과 설명, 아이템 이름과 설명등 실제 플레이어가 보고 알 수 있는 정보들로 구성되어 있다. 그것들을 통칭 스트링(String) 파일이라 부르며, 그것은 AFJ와 같은 전용 에디터를 이용하여 편집한다.
- DC6 Creator 1.02: 게임내의 비트맵을 표현하기 위해 디아블로는 dc6이란 포멧을 쓴다. 정해진 팔레트 색상에 맞춰진 이미지와 필요에 따라 그런 이미지들을 하나의 파일에 여러개를 순서대로 묶어 놓았다. 그것을 직접 보고 import, export할 수 있게 해주는 프로그램. 이미지 자체를 편집하기 위해선 포토샵같은 전용 프로그램을 거칠 필요가 있다.
- Cv52: 애니메이션을 표현하기 위한 파일이 존재하는데, 이것은 dcc 포멧으로 묶여 있다. 이것을 미리 보기 하거나 비트맵, 혹은 gif애니메이션 포멧으로 export할 수 있으며 반대로 사용자가 수정한 gif애니메이션을 dcc포멧으로 변경할 수 있게 해 준다. 애니메이션 데이터 역시 전용 팔레트 색상으로 구성되어 있으므로 포토샵에서 마무리하는 것이 좋다.
- UdieToo: 모드작업 테스트를 편하게 하기 위해 캐릭터를 에디터 할 필요가 있다. 이 때 쓰이는 디아블로 에디터.
- Photoshop CS3: 아이템 이미지를 수정하거나 편집할 때 유용하다. 작업 후 Export할 때는 가능한한 D2PAL.act를 이용하여 디아블로 전용 팔레트 색상에 맞추는 것이 좋다. 특히 CS3 버전부터는 간편한(?) 애니메이션 관련 기능도 갖추고 있으므로 수정후 전용 팔레트에 맞춰서 export 하기에 용의하다.
- Flash 8: 플래시는 주로 모션 이미지를 수정하거나 디아블로의 스킬 아이콘등 깔끔한 벡터 작업이 필요할 때 쓰이므로 버전은 크게 상관이 없다. 단, 여기서 벡터를 따 온 뒤 그라데이션을 먹이고 포토샵에서 마무리를 주로 하였다. 플래쉬는 Index 모드가 없어서 전용 팔레트로 작업할 수 없기 때문.
