(8) 테스트를 먼저 해볼건데, death는 바꿔도 확인하기 번거로우니 목록에서 neutral을 눌러줍니다. neutral은
전투 대기모션입니다. 그리고 싸이드를 장착하고 있으니 stf를 변경해야겠죠? 클레이모어는 양손검이므로
양손 휘두르는 무기 모션인 2hs로 바꿔야합니다. 저렇게 stf_neutral 부분에 2hs_netral를 적고 창 왼쪽
상단의 저장(Ctrl+S)을 누릅니다.
<Before> <After>
게임을 켜서 필드에 나가보니 싸이드를 양손검처럼 잡고 서있는 걸 볼 수 있습니다!
하지만 오늘 소개드릴 방법에선 저렇게 유형을 콕찝어 바꿀 필요가 없습니다!
// 무기를 강제로 캐릭터의 손에 붙일 거라 모든 애니메이션을 양손검으로 바꿀겁니다.
(9) 다시 D2RSME로 돌아와 위의 순서대로 일괄적용하면 이제 내가 뭘 끼고있던 양손검 모션을 취합니다.
이제 D2RSME의 기능적인 부분도 익혔고, 모션 수정방법도 알았습니다.
아직은 전투 대기모션만 양손검이므로 왼쪽의 항목들을 이런식으로 바꿔주면 되겠죠?
★ 하지만 AnimationState의 항목 중 어떤 것을 바꿔줘야 할까요? (중요!)
D2RSME 왼쪽에 떠있는 소서리스의 AnimationState 목록입니다.
[AnimationState별 설명]
- Death : 죽어가는 모션. 쓰러지는 자세입니다. 거의 대부분 캐릭터에 있고 잘 볼일은 없지만 바꿔주는 게
그래도 디테일 측면에서 어쩌궁...
- Neutral : 전투 대기 모션. 위에서 다뤘듯 필드에서 가만히 있을 때 자세입니다. 무조건입니다.
- Walk : 걷는 모션. 무조건입니다.
- Run : 뛰는 모션. 무조건입니다.
- Hit(또는 Gethit) : 피격 모션. 웬만하면 바꾸는 게 안 어색합니다.
- TownNeutral : 마을 대기 모션. 무조건입니다.
- TownWalk : 마을 걷기 모션. 무조건입니다.
- Attack1 : 공격 모션 1. 무조건입니다.
// Tip : 자세변경만 언급했는데 동작을 바꿔도 작동합니다. stf_attack1을 hs2_kick으로 변경하면 싸이드를 들
고있지만, 평타 시 양손검 들고 발차기를 합니다. 예전에 올린 축구아마의 평타가 발차기일 수 있었
던 이유입니다.
- Attack2 : 공격 모션 2. 보통 1, 2번은 있는편이고 가끔 3, 4가 있기도 합니다.
// 3, 4가 있다고 해서 4종류의 평타모션이 있다고 보기는 힘들고, 액트5 바바리안 용병처럼 쌍수와 양손을
구분하는 트리거 등으로 활용되는 경우가 많습니다. 이런 건 직접 해보셔야 알 수 있겠네요 ㅜㅜ
※ AnimationState의 Attack1, 2와, 변경하는 자세로 들어가는 Attack1, 2 (중요!)
방금 언급한 Attack1, 2는 캐릭터가 Attack1, 2를 발동해야겠다고 판단하는 상황을 설정하는 겁니다. 가령
Attack1에 2hs_kick을 할당했다면 Attack1을 참조하는 평타를 발동할 때 발차기를 하겠죠. 그런데, 2hs_kick
을 Attack1에 할당했으니 Cast에 2hs_Attack1을 넣는다? 발차기가 아닌 평타가 나갑니다. 즉, AnimationSt
ate는 실제 행하려는 행동이고 입력하는 Animation은 직접 보여줄 행동이라고 보시면 됩니다.
- Block : 막기/회피 모션. 볼 일 없는 캐릭터들도 있지만 그냥 하는 김에 바꿔주긴 합니다.
- Cast : 스킬 시전 모션. 주문 시전 시 동작입니다. 소서리스 같은 경우 모든 공격에 이 모션을 쓴다고 보면 되
겠죠? 아마존 처럼 공격이 Attack/Throw로 이루어지는 경우 텔레포트, 함성 등의 모션을 바꾸는 용도
입니다. 이 또한 다른 모션으로 응용이 가능합니다. 만약에 소서리스로 제 광선소총을 쓴다고 하면
xbw_Attack1를 넣어줘야 스킬 쓸 때 총을 쏘는 모션이 됩니다.
- Throw : 투척 모션. 자벨마나 투척바바는 필수로 바꿔줘야 하고 다른 캐릭터들은 애초에 투척할 일이 잘
없긴 해서 자유입니다.
- Kick : 발차기 모션. 통 때문에 모든 캐릭터는 발차기 모션을 보유하고 있습니다. 발차기할 때도 무기별로
파지방식이 다르니 바꿔주는 편이 좋습니다.
- Skill1~4 : 특정스킬 모션. 대부분 Attack1, 2, Cast, Throw선에서 스킬도 모두 표현되지만 간혹가다 특정 스킬
은 해당 모션으로 발동됩니다. 거의 못 본 거 같긴 한데 혹시 몰라 늘 바꿉니다.
- Dead : 사후모션. Death가 죽는 순간이라면 이건 죽은 후 쓰러져있는 모습입니다. 자세가 다르긴 할 텐데
알아 볼런지 잘 모르긴 합니다;
- Knockback : 넉백(밀어내기) 모션. gethit과 비슷하지만 이건 더 강한 모션입니다. 패힛모자랄 때 자주 보는
게 hit이라면 이건 우르다르 같은 대형 몬스터가 밀칠 때 나오므로 바꿔줍시다.
- Fidget : 꼼지락거리는 대기모션. 오래 서 있을 때 어깨를 푼다거나 뒤척이는 모션입니다. 바꿔줍시다.
- TownFidget : 마을에서 꼼지락거리는 대기모션. 마을과 필드의 Neutral이 달라 이것도 바꿔줘야 합니다.
--------------------------------------<여기부턴 없는 캐릭터도 있습니다>-----------------------------------------
- Sequence : 연속동작 모션. 잽이라던가 훨윈드 등 특정 반복스킬의 모션입니다. 여러 캐릭터가 아이템을
통해 사용할 수 있다거나 할 경우에는 매끄럽게 동작하지만, 대부분 모션이 없기 때문에 Attack
같은걸 할당해서 캐릭터가 모션이 없어 굳는 걸 방지하는 정도로 합니다. 대표적으로 액트2 용병
수정할 때 공격을 안하고 멍 때리는 문제를 겪는다면 이걸 설정 안 해서 그렇습니다.
- SKILL_XXX : 캐릭터 전용 스킬. 변경하는 캐릭터가 전혀 안 쓰는 스킬이면 스킵하셔도 되고, 쓰는 기술이라면
모션을 할당 해줘야합니다.
- CharSel_XXX : 캐릭터 선택 시 모션. 극강의 디테일을 위해서라면 바꿔줘도 될텐데 그럴 필요까지 있을까요..
안 써봐서 무기별로 모션이 다 있는지는 잘 모르겠습니다.
- FrontendNeutral : 대기실 대기자세. 이건 메인 캐릭터 선택창이 아닌 방생성/참가 가능한 대기실인 거 같습
니다. 모딩하고부터는 방 안파고 그냥 냅다 켜서 들어가느라 잘 모르겠네요 ㄷㄷ
- Run_XXX(Stop, Start, Turned 등) : 캐릭터 달리기 전환모션. 달리다가 방향을 틀거나 멈추거나 뛰기 시작하
는 등의 세부 모션입니다. 바꿔줘야 합니다.
- Aim / Headaim : 두리번거리는 모션. 대부분 무기 타입 구분 없이 한가지 모션만 존재해서 바꿀일 없습니다.
※ 순정 자체가 이렇게 되어있는데 2hs라고 2hs_additive_aim_up_down을 넣는다면 구현이 안 되어있겠죠.
- ShieldadditiveLayer : 방패장착 모션. 방패를 착용하는 가지수가 1hs, 1ht 뿐이므로 이 둘 외에는 신경 쓸
필요가 없습니다. 대부분 한 가지만 구현되어 있습니다.
※ 특이한 예외 상황
▲ 이렇게 원본임에도 가끔 하나만 다른 이름인 경우가 있는데, 이 때 임의로 이름을 통일시키면 안 됩니다.
위 예시의 경우 같은 스킬이지만, 2hs만 2hs_inferno_loop입니다. 그렇다고 1hs_inferno_loop나 2hs_skill2
로 바꾸면 정상 작동하지 않습니다. (인페르노 안쓰는데 예시로 든거고 실제로 저런 케이스가 꽤 있습니다)
----------------------------------------------------------------------------------------------------------------------
★ AnimationState 결론
* 열었을 때 무기타입별로 따로따로 나뉘어 있다? = 변경 O
(예시 - "hth" : [ "hth_run" ], "1hs" : [ "1hs_run" ], "1ht" : [ "1ht_run,..." ])
* 순정임에도 값이 모두 통일되어있거나 사용하지 않는 타입 한 가지뿐이다? = 변경X
(예시 - "hth" : [ hth_fe_neutral_selected" ] 하나 뿐이거나 타입은 모두 존재하나 값이 하나일 경우)
----------------------------------------------------------------------------------------------------------------------
(11) [1] Death ~ [19] KnockBack, [32] Run_turn_180_Cw ~ [41] Fidget를 D2RSME로 변경한 결과 싸이드를
들고있지만 모두 양손검 동작이 되었습니다!
[2. 무기 외형 변경하기]
거의 다 왔습니다. 이제 무기를 생성해서 강제로 오른손에 쥐어줄 겁니다.
Q. 그냥 claymore.json을 scythe.json으로 대체하면 되지 않나요?
A. 아쉽게도 디아블로2 레저렉션의 무기 부착지점은 외형이 아니라 실제 무기의 분류에 따릅니다. 즉, json을
대체함으로써 외형이 클레이모어가 되더라도 클라이언트는 싸이드로 인식해 모델의 Pivot(0,0,0위치, 손잡
이)을 싸이드에 맞춰버립니다.
▲ scythe.json을 claymore.json으로 대체하면 각도를 제대로 못잡고 180도 왔다갔다 하는 문제가 생깁니다.
// 모션의 문제가 X
(1) data/hd/character/player 폴더로 들어가 무기코드.txt와 Sorceress.json(수정할 캐릭의 json)을 실행
합니다.
(2) 무기코드.txt의 내용을 위와 같이 모두 선택해서 복사한 다음
(3) Sorceress.json 마지막 줄로 이동해서 저 위치에 붙여넣습니다.
이렇게 되었는지 꼭 확인하시고 저장합니다.
※ 클레이모어가 아닌 다른 무기를 착용하고 싶다면 "filename": "원하는 무기의 경로"로 변경하시면 됩니다.
을 참조하시거나 구글에 CascViewer를 검색하여 설치하신 다음, 디아블로 설치 폴더를 지정해 열어 확인
가능합니다.
클레이모어를 양손 모션으로 들고 다니는 걸 볼 수 있습니다만, 싸이드랑 같이 들고 있습니다 ㄱ-
대망의 마지막 작업은 바로 원본 무기를 없애버리고 스왑용 콜투&모너크를 이펙트로 대체(스왑 확인용)하는
것입니다. 스왑 확인을 다른 요소(스왑 확인 패널이라던가)로 하실 경우엔 아래 안내에 따라 크리스탈 소드와
모너크도 싸이드처럼 지워주면 됩니다.
Q. 크소&모너크는 왜 바꾸나요? 모션 1hs로 주고 살리면 안 되나요?
A. 겉보기에 클레이모어를 장착한 것 같지만, 사실 아이템은 숨기고 클레이모어의 외형을 캐릭터 자체에 신체
일부처럼 붙인 상태입니다. 따라서 스왑을 해도 클레이모어가 출력됩니다.
대부분 유저분들은 스왑으로 콜투(소집)을 쓰실 텐데 역시 구별이 문제가 될 수 있어 이펙트를 추가하는 방
법을 추천드리는 겁니다.
(4) data/hd/items/weapon/polearm에 들어가면 scythe.json이 있습니다. 열어줍시다.
(5) 그냥 열어서 내용을 모두 지우고 저장합니다.
// 파일을 지우면 순정파일을 호출하지만, 빈 파일으로 남아있다면 빈 파일을 불러오려다 아무것도 출력
하지 않는 점을 이용합니다.
마침내 싸이드가 완전히 클레이모어로 모션까지 완벽 적용되었습니다!
2, 4번 이미지는 스왑 콜투+모너크인데, 예전에 엽굵님이 올리신 이펙트를 적용시켜 보았습니다.
------------------------------------------------------------------------------------------------------------------------
소서 무기 룩변 및 이펙트
------------------------------------------------------------------------------------------------------------------------
해당 무기 스킨의 items 폴더를 빼고 적용시킨 후
dragon_stone.json을 data/hd/items/weapon/sword/crystal_sword.json
kite_shield.json을 data/hd/items/armor/shield/kite_shield.json
으로 넣어줬습니다.
END...
p.s 거의 다 쓰고 컴퓨터 다운되서 멘붕왔는데, 켜놓고 좀 자다가 일어나니 살아남았네요 ㅜㅜ
스킨 생활에 조금이나마 도움이 되시길 바라겠습니다.