0. 서론

잡설이니 이새끼 모듈이 어케 생겼나만 보고 싶은 사람은 다음 문단으로 건너뛰셈




이야기에 앞서 밝히자면 본인은 문과임


그것도 문과 중의 문과라는 취업난 삼대장 문사철 가운데 하나인 문창과 나옴


대학 입학 전까지 코딩이랑은 전혀 관련 없는 삶을 살았고 동아리에서 TRPG 하던 시절에도 철저하게 이야기-놀이라는 관점에서 이 취미를 대했음


코딩, 혹은 적어도 스크립팅에 손을 대기 시작한 건 2020년에 FVTT를 구매하고 나서부터였음



당시엔 TRPG에서 ORPG로 넘어온지 얼마 안 된 시기였다


가상 테이블탑 툴은커녕 롤20조차도 능숙하게 다루지 못하고 있었지만, 매달 금액이 빠져나가는 게 신경쓰이던 것도 있고 이 돈 주고 이 서비스를 받아야 한다는 게 무척 꼬왔던 것도 있어서, 대학 동아리서부터 함께하던 장편을 끌고 무작정 FVTT를 시도해보기 시작함


그런데 그런 마인드로 시작한 애가 뭘 알았겠냐. 그때는 매크로는커녕 모듈도 몇 개 안 받고 거의 깡통 상태에서 꾸역꾸역 했었음. 그 당시 스샷은 남은 게 없다. 던전드래프트 열심히 쓰면서 맵 만들고 그랬는데 포맷이랑 디코 터진 게 겹쳐서 다 날아감. 남아있었어도 아마 건질 건 없겠지만서도


본격적으로 뭔가 하기 시작한 건 대학 팀 해체되고 반 년 정도 지나 새 팀에 정착했을 즈음이었다. 갑자기 이런 거에 열중한 이유는 여러 가지 있었는데, 제일 큰 건 아마 자기실현욕구 충족이었던 것 같음. 시나리오도 최대한 빈틈없이 작성하고 하다보니 준비한 텍스트만 매번 30kb씩 넘어가고 그랬다. 요새는 요령이 생겨서 그렇게까지 하진 않고






연락을 하는 사람도 있고 안 하는 사람도 있지만... 닉은 일단 다 가렸어


처음엔 기능보다는 비주얼적인 부분에 꽂혀서 포토샵으로 캔버스 꾸미는 데에 집중했다. 스샷은 날아갔는데 에셋은 클라우드에 올려뒀더라. 격자 한 칸을 100px에 맞추느라 저 이미지 파일 하나가 5메가나 됨. 똥컴이라서 작업하다가도 자주 렉걸렸다


제일 처음 건드린 건 매크로였다. 이름이 Trigger Happy인가 그랬을 텐데, 토큰이 특정 칸을 밟거나 그 칸을 클릭했을 때 매크로를 실행시켜주는 모듈이 있었음. 그걸 이용해서 인벤토리나 체력바 같은 걸 구현하려고 들고 그랬지. 매크로로 타일을 변경하는 식으로...


지금 생각해보면 비효율적이기 짝이 없고 느려터졌지만 그땐 내가 짠 스크립트가 실행된다는 거 하나만으로도 날아다니는 듯한 기분이었음



시행착오는 있었지만 이게 매크로 원툴 시절의 최종적인 형태에 가까움. 비효율적이지만 하고 싶은 거 다 해봤으니 후회는 없다. 아마 이건 갤에 올렸었던 것 같은데


이때가 한창 턀 즐겁게 하던 시기여서 의욕을 낼 수 있었던 것 같다. 이제와선 저렇게 하라고 해도 못 하겠다는 생각이 들어.


그게 어쩌다가 모듈 개발로까지 들어갔는지는 상세하게 기억나지 않는데, 아마 팀이 우여곡절을 겪는 과정에서 팀 사이트를 제작하거나 터트리거나 다시 만들거나 하는 과정에서 자신감이 붙은 거랑, 한글화 모듈 제작하면서 느낌을 익힌 게 크지 않았나 싶다.


그래서...



대충 2년쯤 조져서 나온 게 이거임. 중간에 만들었다 삭제한 기능들도 꽤 많은데 그것까지 설명하기에는 좀 그렇고


프로젝트 구조는 대충 아래와 같다




여기에 스타일시트랑 json들도 있음. 개많아


모듈 분리해야지 분리해야지 하면서도 날 잡아 하자니 귀찮아서 못하고 있다... 할 것도 많고


1. 채팅 관련 기능

1-1. 포트레이트

달았다. 채팅에 포트레이트 달아주는 모듈이 크게 2가지가 있기는 하지만, 둘 다 내 스타일 아니라서 + CSS 꼬여서 그냥 하나 만들었음. 얼마 안 걸리더라.


소소하게 호버링하면 이미지 크게 띄우는 기능도 넣었음. 씹덕 세션에서 미소녀 포트는 인륜지대사이기 때문...


1-2. 액터 선택

FVTT를 써 본 사람은 알겠지만 캔버스에 토큰이 없으면 말을 할 수가 없다. 아무리 이름이 테이블탑이라지만 모든 TRPG가 맵에 토큰을 깔고 진행됨이 당연하리라는 양룰 위주의 전제, 실로 오만과 편견에 가득찬 사고방식이 아닐 수 없음.


이 때문에 캔버스에는 항상 전투에는 참여하지도 않는 투명 토큰을 쌓아두어야 하고, 그 탓으로 상당히 지저분해진다. 실수로 클릭해서 잘못 말하는 일도 생기고. Theatre Inserts라는 모듈이 다른 방식을 지원하긴 한다지만 사용해본 결과 여러모로 꼬이는 일이 있었음.


그래서 걍 강제적으로 플레이어별로 설정된 캐릭터를 화자로 사용할 수 있도록 바꿈



물론 토큰 안 깔아도 된다. 기본적으로 토큰이 없을 경우 OOC로 말하게 되어있어서 토큰을 깔아야 하는 건데, 메시지 데이터 보면 딱히 링크된 토큰이 활용되는 경우가 없음. 왜 그렇게 만들었을까


하튼 그래서 메시지 생성 단계에서 타입이랑 speaker를 액터 이름으로 쓰도록 바꿔주니까 토큰 없이도 잘 되더라. 생각보다 간단한 건데 왜 다들 안 만들었는지 모르겠음. 양룰 가스라이팅 당한 건가...?


액터 셀렉터에서 소유권이 있는 캐릭터를 찾아볼 수 있고, 바로 선택하거나 우클릭해서 즐겨찾기에 추가할 수 있음. 즐겨찾기에 넣어두면 채팅 치다가 바로 Tab키로 전환해가며 쓸 수 있게 해뒀다. 캐릭터 여럿 들고가는 플이 아닌 이상 플레이어한텐 계륵이겠지만 지인 마스터한테서는 제일 호평인 부분이었음


1-3. 채팅 수정

채팅 수정 기능은 DF Chat Enhancement에서 지원하고 있는 기능이긴 한데, 써보면 좀 불편함... 별도 창을 띄우는 것도 그렇고 오토포커스가 안되는 것도 그렇고 버전 올라갈때마다 충돌나는 것도 있고. 무엇보다 마우스 움직여야 하는 게 싫어서 이것도 그냥 하나 만들었다



기본적으로 메시지 헤더에 마우스를 올리면 뜨는 수정 버튼을 누르면 해당 메시지를 아래 입력창에서 바로 수정 가능하고, 윗방향키를 누르면 자기가 직전에 쓴 메시지를 즉시 수정하도록 되어있음. 이건 디코에서 따왔다. 편하드라고


1-4. 채팅 스타일


ㅇㅇ


1-5. 발언권


Raise My Hand인가 그거랑 비슷한 느낌. 그냥 있으면 좋을 것 같아서 만들었는데 다들 눈치가 빨라서 그닥 안쓰는 편


1-6. 채팅 병합



이건 왜 기본 기능으로 안 들어가는 거냐...?


1-7. 채팅 내보내기


로그 따는 거임

메시지를 재렌더링해서 html로 내보낸다. 그거 그대로 개인용 로그 아카이브에 올리면 따로 조정할 필요 없어서 편함

2. 인터페이스

2-1. 체력바 & 단축바


시행착오를 제일 많이 겪은 기능임. 데이터 불러오는 방식이나 생김새도 여러 번 바꿨고. 댄디나 패파도 호환되게 할까 하다가 다 때려치고 새비지월드랑 비시머만 맞춰서 만들게 된 계기이기도 함... 요즘에도 개선할 방법 없나 고민한다


특히 주 능력치 표기하게 하는 부분이 많이 스파게티임. 이건 내 탓이 아니고 시스템 개발자들끼리 데이터 표준을 안 정해서 그렇다 암튼


단축바는 원래 있는 거 떼어와서 모양만 바꾼 거임.


이거랑 플레이어 리스트 접히는 애니메이션이 이쁘게 나왔는데 닉네임들 나와서 보여주진 못함...


2-2. 디스플레이


말 그대로 배경화면 띄우는 거. 옛날부터 캔버스 배경으로 띄워서 스크롤되고 확대축소되고 여기저기 날아다니는 게 싫었음


2-3. 전투 트래커 & 턴 알림


제곧내


비슷한 기능 지원하는 모듈 꽤 있는 걸로 알지만 여러모로 답답해서 내가 만듬


2-4. 오버레이 & 컷인


막타칠때정도 틀어주면 좋아하더라


2-5. One Man Army


비시머로 타이만 전투 하려고 만든 하우스룰 전용 거시긴데...


아직 제대로 써먹은 적은 없음...


2-6. Quartet Squad


또다른 비시머 하우스룰용 세트


는 핑계고 거리개념 상대적인 김에 전투 좀 이쁘게 하려고 만들었음


3. 스마트폰

3-1. 홈


영리 전환했을 때 문제 생기면 아마 이것 때문일것

그치만 아이폰 못참거든...

3-2. 시계

홈 화면에 있는 위젯은 개인 컴 시간에 맞춰 돌아가고

클릭해서 앱을 열면


FitD 시계 ㅇㅇ


3-3. 카톡


영리 전환했을 때 문제 생기면 아마 이것 때문일것 2

채팅으로 쓰건 이쪽에서 쓰건 연동된다

3-4. 텍스트


이상한거 쓰게 해줌


생각날때마다 넣고빼고 하는중


3-5. 소지품


인벤토리...다


아이템 탭에서 드래그해서 집어넣으면 들어감


3-5. 메모


보스 패턴 기록해두고 리마인더 삼아 보라는 의도로 만들었는데 잘 쓰고 있는지는 모르겠음


전투를 자주 안하는 편이라...


3-6. 갤러리


위에서 설명한 디스플레이와 오버레이를 조정하는 앱. FVTT 내에 있는 파일이나 파일브라우저를 쓰는 대신 따로 웹에 이미지 데이터베이스를 만들고 그 링크를 따오는 방식으로 작동시키고 있음


이유는 내가 여러 방을 동시에 굴리기 때문...


물론 로컬 파일도 불러올 수 있음. 가까운 지인들한텐 모듈을 공유해주는데, 그 사람들도 자기 배경 자료가 있을 테니까


이미지는 한 4000장쯤 되는듯?


3-7. 음악


최근 크롬 계열 브라우저가 웹페이지의 음악 자동재생을 막고 있고, 일일이 방마다 음악을 임포트해오기도 귀찮고 해서 자체적으로 오디오 태그를 통해 음악 스트리밍을 불러와 재생하도록 했음


작동방식은 위의 갤러리와 크게 다르지 않다. 데이터베이스에서 링크 따와서 오디오에 넣어주는거임


3-8. 로그


ㅇㅇ 로그임


저거보다 옛날 로그를 전부 잃어버린 게 한이다


4. 여담

자잘하거나 별로 중요하지 않은 기능은 적당히 빼기도 했고, 만들어놓고 기억 못하는 기능도 있기는 할텐데 대충 굵직한 건 이정도인듯?

밤중에 돌이켜보니 갑자기 생각나서 리드미 만들기 전에 한 번 정리도 할 겸 끄적여봤음


최근에 FVTT 관심가지는 사람들도 많고, 어렵다고 하는 사람들도 많고 한데, 막상 만지작거리기 시작하면 생각보다 진입장벽이 크게 높지는 않아. 기존에 많이 사용되던 툴들이랑 이질감이 조금 커서 그렇지


무엇보다 그 이질감을 넘어서서 익숙해졌을 때 얻을 수 있는 것들이 자동화라던가 하는 눈에 띄는 것들 이상으로 크고 많다는 얘기도 하고 싶었다


취미에 대한 열정 하나로 전혀 모르던 분야에 매진하고 공부해서 이제는 본전공을 내다버려버린 나처럼, 누군가에게는 FVTT를 써보는 게 인생의 변곡점이 되어주지 않을까 하는 생각도 있어


겨우 툴 하나 바꾸는게 무슨 도움이 될까 하는 생각을 하는 사람도 있겠지만, 나만 해도 공익때 FVTT 매크로 짜보던 게 지금 포폴 만들고 풀스택 취업 준비하는 걸로 이어졌잖아


문창이 코딩하고 컴공이 소설 쓰는 요즘 세상에 못해볼 게 뭐가 있을까


취미를 가볍게 즐기는 것도 좋은 선택이지만, 기분이 내키면 많이 연구하고, 가끔은 본업 이상으로 열중해봐도 괜찮을 것 같아


그러다 보면 언젠가 자신에게나, 이 턀판에나 좋은 길로 이어지지 않을까 싶어


5. 결론

문창과 가지 마셈


턀에도 취업에도 도움안됨