[모드팩만들기#3] 나만의 모드팩을 만들어보자~!!

안녕하세요 까만땅콩입니다.

이제 모드팩만들기의 뼈대를 세울시간입니다.

기초공사가 튼튼해야 사상누각이 안되겠죠...

사실 이부분이 잘 설계가 되어 있으면 뒤에 월탱이 업데이트가 되더라도

크게 손볼곳이 없습니다는 사실이 아니고....

네, 노가다하는 시간이 조금 많이 줄어듭니다....

시작해보죠~~~

6번, 7번 이 기초 설계 부분입니다.


---------------- 나만의 모드팩을 만들어 보자 연재 목록 ----------------

1. 설치형 모드팩의 화면구성

2. 모드팩을 만들기 위하여 기본적으로 알아야 할것은??

3. 모드팩의 인스톨 진행 순서 및 화면 설명

4. 까만땅콩 모드팩의 구조

5. 모드팩을 만들기 위해 필요한 프로그램 및 설정

6. 내가 원하는 모드팩 만들기 - 인스톨 화면 설계 편

7. 내가 원하는 모드팩 만들기 - 모드팩 구성 트리 설계 편

8. 내가 원하는 모드팩 만들기 - 모드 설명 이미지 파일과 사운드 넣기

9. 내가 원하는 모드팩 만들기 - 선택한 모드의 기능 설정 ON & OFF 설정하기

10. 대표적인 모드들의 공식 제작자 또는 꾸준한 팬 업데이트 사이트 링크

--------------------------------------------------------------

6. 내가 원하는 모드팩 만들기 - 인스톨 화면 설계 편

    인스톨 화면 설계는 본인이 만들고자 하는 모드팩의 성격을 드러낸다고 생각하면 됩니다.

    제가 추구하는 모드팩은 다음과 같은 목표를 두고 개발을 하였습니다.

    1) 모드를 인스톨 하더라도 윈도우의 레지스트리에 모드팩이 깔린 흔적이 남지 않아야 한다.

    2) 모드 설치를 위해서 나타나는 셋업화면의 갯수가 최소화 되어야 한다.

    3) 모드 선택시 시간이 걸리니까 배경음악이 들어 갔으면 좋겠다.

    4) 설치하고자 하는 모드의 텍스트 설명에 마우스커서가 올라가면 해당 모드의 샘플 이미지를 출력한다.

    5) 사운드 파일의 경우 해당 사운드 클릭시 샘플사운드가 나오도록 한다.

    6) 인스톨이 완료 되면 엔딩 페이지가 있어야한다.

    7) 모드팩을 만든사람과 도움을 준사람 그리고 사용자 라이센스에 대한 내용을 표시한다.

    이제부터 화면의 구성(갯수)을 시작해 보도록 하죠~

    INNO SETUP에서 인스톨러를 만들때 가장 기본적으로 나오는 페이지는 아래와 같습니다.
  

    a. Welcome Page

       - 인스톨 시작시 제일 처음 나오는 페이지





    b. Select Dir Page

       - 프로그램이 설치될 디렉토리를 지정하는 페이지




    c. Ready Page

       - 인스톨 되는 방식 및 디렉토리, 인스톨 되는 콤포넌트등 설치 정보를 확인하는 페이지.




    d. Installing Page

       - 파일이 인스톨되는 진행상황을 보여주는 페이지.




    e. Finished Page

       - 설치가 정상적으로 종료되었음을 알려주는 페이지.




    위 다섯개의 페이지가 기본페이지로 사용이 됩니다.

    이에 여기 기본에서 뺄것과 추가 해야 하는것을 생각해봅시다~

    WelcomePage는 뽀대가 안나니까 패쓰~!! 사실 '다음' 버튼 한번 누르는게 귀찮음....

    흠 내가 맹글었으니 사용자 라이센스는 알려줘야 겠죠...

    LicensePage는 제가 추가 한 페이지 입니다.

    모드의 저작권 관련 및 기타 권리사항들이 여기에 다 표기 되어야 그나마 시비 걸지는 않겠죠 -0-

    뭐 이런것도 귀찬다~!! 이 페이지도 빼도 됩니다. -_-;;;;;

    SelectDirPage는 왠만하면 손대지 맙시다...

    모드팩 소스안에 보면 월탱이 설치된 디렉토리의 정보를 윈도우 레지스트리 검색으로

    자동으로 찾아서 디렉토리가 나오도록 되어 있습니다.

    그런데~!! 디렉토리 자동 설정 기능이 모든 PC환경에서 자~~알 동작하지는 않습니다.

    특히나 PC방에 있는 PC들은 요즘 대부분 프로그램 설치 정보를 서버에 두고 숨켜두기에

    못찾습니다...

    어 그런데 제일 중요한 뭔가가 빠졌네요...

    모드 선택형 인스톨러를 만드는데 왜 선택 페이지는 어디갔지? 라고 생각하신다면

    흠 일단 100점 추가~!!

    흐름을 잘 이해하고 있다고 보시면 됩니다.

    INNO SETUP 에서 콤포넌트 선택 부분은 옵션기능인 것이었습니다~~~!!!

    요 아래에 나오는 모드팩 구성 트리 설계를 마치고 넣도록 하죠~

    모드를 선택하는 페이지의 이름은 SelectComponentPage로 기억해두세요.

    다음은 ReadyPage인데요 뭐 눈으로 한번 확인하고 설치하라는 나름의 배려인데

    이 페이지도 귀찮다 싶으면 빼면되요~

    이제 실제로 프로그램이 설치되는 과정을 보여주는 InstallingPage 입니다.

    이 페이지도 안보이게 해서 선택된 모드를 설치할 수 있습니다.

    그래도 보는게 조금은 안심이 되겠죠...

    마지막 페이지인 FinishedPage는 설치과정이 모두 완료 되었다고 알려주는 페이지이니

    내버려두도록하죠~

    위에서 얘기한 페이지를 넣고 빼고 안보이도록 숨기고 하는 기능은 모드팩 소스의 중심에 있는

    BlackPeanut.iss 파일에서 해당 명령어를 넣으면 됩니다.

    이렇게 저렇게 내맘대로 사용되는 페이지를 조정하고 싶다는 분은 공개한 소스를 가지고 먼저 만들어 본 다음에

    페이지 사용 설정과 관련되어서는 따로 설명할 부분을 기다리시면 됩니다.

    아니면 먼저 선행학습을 하셔도 되구요~

    자 요약해 봅시다.

    설치형 모드팩 프로그램에서 사용되는 기본 페이지는 아래와 같습니다.

    - LicensePage

    - SelectDirPage

    - SelectComponentsPage

    - ReadyPage

    - InstallingPage

    - FinishedPage
   
    WelcomePage는 스플래쉬 화면으로 대체를 하는것이니 빼버렸습니다.



7. 내가 원하는 모드팩 만들기 - 모드팩 구성 트리 설계 편

    지금부터 본인이 만들고자 하는 모드팩의 구성 트리를 만드는 방법을 알아보겠습니다.

    사람마다 같은 모드들을 사용하더라도 이 기능은 ON 저 기능은 OFF~

    네 참으로 다양합니다. 그래서 이 트리 부분의 설계가 어찌보면 제일 짜증나는 작업이죠

    이런 기능은 기본적으로 쓰면되지 왜 넣었다 뺏다 해서리...

    뭐 모드 제작자들이 그런 기능 온/오프 설정을 하도록 만들었으니

    모드팩 제작자도 최대한 반영하는것이 원칙이나.......

    그렇게 되면 모드의 종류가 많아질 수록 선택 옵션은 기하 급수적으로 늘어나니 본인이 잘 판단하기를 바랍니다.

    제가 봤을때 가장 옵션부분에 신경을 많이 쓴것이 아슬란 모드팩입니다.

    저는 선뜻 아슬란 같이 무지많은 옵션을 주기가 꺼려지더군요....

    노가다 해야하니까...

    잡설은 여기까지 하고 이제 부터 진짜 실전입니다.

    앞으로 실전 부분은 제가 올린 소스를 기준으로 설명되며

    제꺼에는 너무 많은 모드들이 들어가 있으니 차근차근 쉽게 할 수 있도록 대부분의 모드들을 지우고

    단순화시킨 다음에 단계별로 진행 해보겠습니다.

    XVM 모드를 예를 들면 좋겠으나 머리가 아프도록 옵션이 많으니 단순하게 모드별 설정을 하지 않고

    사용을 할지 하지 않을지만 결정하면 선택된 모드들만 인스톨이 되는 간단한 부분 부터 해보죠~

    이제 부터 만들어질 모드팩은 아래의 그림에 있는 탱크아이콘으로 하겠습니다.

    

    이제 트리 구조에 대하여 먼저 설명을 하고 진행을 해야 본인의 모드팩 구성 트리를 만들때

    쉽게 할 수 있을듯합니다.

    위에 사용될 탱크 아이콘의 트리구조는 실제 소스코드에서는 아래와 같이 두가지를 정의해야 합니다.




    이해가 어려울수도 있지만 INNO SETUP은 외부에 보여지는 디스크립션을 한번 정의하고

    내부의 트리구조를 만드는 콤포넌트 네임에 이 디스크립션을 매칭하는것입니다.

    모드팩 프로그램에 보여지는 모드의 설명은 위의 그림에서 보듯이

    CustomMessages.iss 파일에서 정해놓은 문구가 그대로 출력이 됩니다.

    CompDesc163 이라는 배열에 '까만땅콩 Contour Icon' 이라고 문구가 정의가 되면

    Components.iss 파일에서는 TANKICON\BP 라는 콤포넌트 네임에 CompDesc163을

    사용한다라고 지정을 합니다.

    쉽게 구분하면 외부에 보여지는 이름은 CustomMessages.iss 에 지정하고

    프로그램 내부에서 해당 모드를 부를때 사용하는 이름을 Components.iss 파엘에서 지정하는 겁니다.

    일단 여기까지 이해를 하였으면 이제 소스 파일들을 위에서 언급한 대로 수정해 보겠습니다.

    소스 수정을 하는것은 제가 수정을 해서 첨부파일로 배포를 하는것이 가장 좋을듯 하나~!!!

    그렇게 하면 자기 스스로 해보는 학습의 효과가 없다고 판단되기 때문에

    특정파일의 몇 라인부터 몇라인까지 지우세요~!! 이렇게 하면서 진행 하도록 하겠습니다.


    이번은 여기까지 하고 커피한잔 드시고 다음 연재까지 트리구조 한번 생각해보세요~!!

    Bye Bye~!

    

   
Lv26
찐땅콩
18%
 
경험치
5,273
베니
60
이니
25,667
  • 명성치6939
  • 제니16
  • 1

코멘트

새로고침
새로고침
인증글 3추글 즐겨찾기
최근 방문한 게시판
    초기화
    번호             제목             글쓴이 등록일 조회 추천
    4088      [일반]  아시아서버에서 한국 계정으로 페이팔 결..  [9] Hinero 04-24  1799 26
    4086      [일반]  핑도배하는사람 빠르게 차단하기  [8] 블루니스 04-23  1876 20
    4085      [일반]  [모드팩만들기#3] 나만의 모드팩을 만..       찐땅콩 04-21  358 9
    4084      [전술]    발사되는 탄을 막는 주포 방어술 (추가.. [19] 에스메랄다 04-20  4701 32
    4082      [일반]  [모드팩만들기 #2] 나만의 모드팩을 ..  [4] 찐땅콩 04-19  413 30
    4081      [일반]   [모드팩만들기#1] 나만의 모드팩을 만..  [5] 찐땅콩 04-18  1555 68
    4076      [일반]  내가 좋아하는 탱크를 쉽게 그려보자.  [20] 다르타냥공방 04-10  4287 16
    4075      [일반]  월탱을 처음하는 분들을 위한 아주 소소..  [4] Luckyxstrik 04-09  3325 23
    4074      [일반]  자신의 플레이 다시보기, 고수 영상 보.. [3] 히이잌이 04-09  1596 0
    4072      [일반]   자주포에 관하여  [15] 시오그 04-09  2523 28
    4070      [일반]    DW_Basak(Batignolles_..  [10] 결투의대가 04-09  1383 36
    4069      [일반]  9.18 경전차 리벨런싱으로 얻는 크레..  [13] Kshroach 04-09  4009 4
    4068      [일반]   인벤 유저 팁/공략 인벤 5년간 총정리..  [25] 유형권 04-09  3883 183
    4066      [일반]   본섭M53/M55 vs 테섭M53/M5..  [12] Strv103d 04-08  2134 14
    4065      [일반]  신규 유저를 위한 미세먼지 팁 9가지 [4] 에리카사마 04-08  1686 3
    4064      [일반]  아시아섭 계정탈퇴하는법 [6] 길향 04-07  1153 1
    4063      [일반]  스팟 메커니즘에 대해서(초보자분 추천)  [9] 뜻밖에행운아 04-07  1413 27
    4062      [일반]  로레인 8티 vs 9티 시절 스탯 비교  [7] 창고 04-07  2159 14
    4060      [일반]  탱크들의 스펙순위를 알아보자.  [22] 룰크 04-04  5010 27
    4059      [일반]   해치공략개론:T110편  [18] Hellsbells 04-04  2874 52
    4058      [전술]  이벤트도 있고 겸사 겸사 써보는 경전의.. [4] 외눈도깨비 04-03  2072 1
    4057      [일반]   E100(이백) 빠르게 약점공략해보자.  [23] Cocomco 04-02  4318 48
    4056      [일반]  실력을 늘리기 위해선 팁도 중요하지만...  [12] Woonu 04-01  3482 32
    4055      [일반]  ['베타'로의 회귀팩]효율을 알아보자!  [12] Demi 04-01  2559 24
    4053      [일반]  저격이 많은 아시아섭을 위한 미세팁 [4] Dakia 03-31  3567 6
    4052      [일반]  공식 포럼에서 사진 업로드 하는 방법       Tictock 03-31  377 1
    4050      [일반]  그냥 혹시나하는 미세팁 [15] 행복한 03-31  1574 28
    4049      [일반]  똥팁이지만, 꼭 알아야할 한가지 [5] crescent98 03-31  1582 8
    4048      [일반]  라데온 유저를 위한 튕김방지 팁 [15] 에쎌케이 03-30  1305 16
    4047      [일반]  T25 Pilot No.1 장단점 및 .. [2] 투폴레프 03-30  1941 6
    4045      [일반]  핑플로터를 통한 회선 확인 및 보고 방..  [8] Tictock 03-29  1686 9
    4043      [일반]  아시아 서버 환불 받고싶은데 영어 울렁.. [8] Ysjun428 03-28  1588 0
    4040      [일반]  2만판 하면서 얻은 팁 [22] 벨지단토 03-27  4909 71
    4039      [일반]  계정이 초기화 되었어요! 자체 진단 방..  [8] Tictock 03-27  1421 9
    4037      [일반]  미꾸라지vpn 고급모드 사용법 *꼭 쓰..  [14] 서풍요 03-26  3480 24
    4036      [승무원]  경험치 열풍 이벤트 승무원 키우기 팁  [3] 마속 03-26  2133 6
    4035      [일반]   트랙샷에 대한 팁입니다. [8] 레센 03-26  1925 3
    4033      [전차운영]  자주포를 잡는 방법  [14] 클래식1 03-26  2252 3
    4032      [일반]  아시아 약 100판이상 맵, 라인  [18] 로즈힙 03-25  2797 31
    4031      [일반]  계정이전시 전화번호때문에 비밀번호 변경..  [2] 시큐냐 03-25  782 0
    4030      [일반]  Object 252U공략해보자.  [18] 민주주의 03-25  2821 19
    4028      [일반]  아시아 서버 결제 팁 [2] 체블 03-24  1439 8
    4027      [일반]  1년 프리미엄계정을 50%할인?? [15] 강남스따일 03-24  2308 13
    4026      [일반]  경전차 트리변경-중저티어 경전차 정리!  [8] Buran 03-24  2032 18
    4025      [일반]  왕초보의 왕초보를위한 몇가지 팁. [9] 반털 03-23  1749 9
    4024      [일반]  한섭과 다른 맵 라인전!!  [23] 뤼하 03-23  2588 6
    4023      [일반]  이전 휴대폰 번호로 서버이전 고생하시는.. [4] 와우비니 03-23  1010 3
    4019      [전술]  1대2로 싸워 비기는법  [32] I아이큐45 03-22  2904 4
    4017      [일반]  육감도 안 떴는데 쏴죽이네  [20] 르그쌍둥이 03-21  5080 20
    4012      [일반]  아시아 이전 후 XVM국가를 바꿔보자!..  [4] 나존나쎔 03-19  2831 0
    4010      [일반]  알 수도 모를 수도 있는 팁들  [31] 응가개 03-19  4826 86
    4009      [일반]  레지스트리 수정방법 유료 VPN이 부담.. [13] 철면어사 03-19  2240 4
    4008      [일반]  아시아 서버 꿀팁입니다! 전차장분들은 .. [8] Koriwan17 03-19  3506 3
    4007      [일반]  아시아 서버 팁  [1] 항공초계 03-19  1712 0
    4006      [전차운영]   무로방카 헤비라인 자리 공유 [1] Zekky 03-19  1027 9
    4001      [일반]  아슬란모드팩 - 설치 시 전차아이콘 무..  [4] 견돈 03-18  1090 3
    3998      [일반]  골드/크레딧 구매 시 효율 비교표  [16] 용달복 03-18  2038 28
    3995      [일반]   많이쏘기에 대한 잡문  [23] 박무지 03-18  3008 63
    3993      [일반]  복귀 유저의 아시아 서버 팁 모음! [6] 라르시스 03-17  2405 3
    3992      [일반]  한섭과 암시아의 차이점과 주의사항. [10] 무한모에 03-17  2938 3
     1  2  3  4  5  6  7  8  9  10