BLOG main image


r@ndonneur's ruins of roguelike

안녕하세요! R@NDONNEUR 입니다! 오랜만에 TomeNET 톰넷 관련 소식 블로그에 올려봅니다.

1. TomeNET 톰넷 아시아 서버 오픈 소식

톰넷 아시아 서버(apac.tomenet.eu)2022년 4월 6일에 공식 오픈되었습니다. 서버 위치는 일본 도쿄입니다.

게임 내 Lag-o-meter 를 체크해보니 핑값이 평균 35ms 정도로 잘 나옵니다. 유럽서버의 경우 한국에서 핑값을 측정하면 250ms 에서 왔다갔다 하기 때문에 게임 초반 저렙 구간(배로우다운즈 - 오크케이브) 말고는 사실상 플레이가 불가능했습니다. 그래서 국내에 감자님 서버가 열리지 않은 경우 로컬 서버를 구동해서 하기도 했었고요. APAC 서버에 캐릭터를 새로 만들어서 오크케이브까지 쭉 달려보니 쾌적한 플레이가 가능합니다. 앞으로 톰넷 하실 분은 APAC 서버에서 바로 하시면 될 것 같습니다. =)


2. 톰넷 그래픽 폰트 제작과 공식 채택 히스토리

2016년에 '톰넷 그래픽 폰트'를 제가 처음으로 직접 만들어서 톰넷 국내외 커뮤니티에 배포했던 적이 있습니다. 톰넷 뿐만 아니라 Angband 계열 게임 공통으로 존재하는 font-win.prf 라는 그동안 사용되지 않고 사장되어 있었던 커스텀 기능게임에서 표현되는 지형, 오브젝트, 몬스터 등 모든 ASCII 문자를 유저 커스텀으로 다른 문자로 대체할 수 있는 방법을 활용했었습니다.

FNT 폰트의 경우 폰트 하나당 'ASCII 확장형'으로 총 255개의 문자 표현이 가능한데, 톰넷은 클라이언트 버그로 'ASCII 스탠다드' 영역인 128번까지 밖에 사용할 수 없었습니다. 그래서 필수 문자를 제외하고 사용 불가능한 빈 공간까지 빼면 실제 사용 가능한 여분의 폰트 글리프 갯수는 딱 27개. 때문에 당시 주로 배경 제작에 집중하였고, 나머지 중요 몬스터인 나즈굴 W, 드래곤 & 드래곤라이더 D, 타이탄 P 정도만 따로 구분할 수 있게 만들었었습니다.

그래픽 폰트 배포 이후 제가 톰넷 게임을 하지 않고 포럼에도 로그인하지 않는 동안 톰넷 개발자이신 씨블루님께서 제가 만든 그래픽 폰트 정식 채택 여부에 관한 쪽지를 주셨었고, 쪽지 발송한걸 거의 1~2년 지나서야 영문 포럼에 우연히 접속했다가 확인했던 기억이 납니다. 한동안 게임을 접속하지 않는 사이에 그래픽 폰트 프로젝트가 추진되어 ASCII 확장형 영역 사용 불가 버그도 잡혀 있고, 현재는 톰넷 클라이언트에 그래픽 폰트가 포함되어 있습니다.

최근에 nethack.byus.net 커뮤니티에서 제 폰트를 찾으시는 분이 계셨는데, 오랜만에 클라이언트를 다운 받아보았고 클라이언트에 제가 만든 폰트도 포함되어 있다는 것을 이제서야 알게되었습니다. 클라이언트에서 폰트를 변경하다보면 10X17K, 10X17KS, 10X17KB, 12X18K, 12X18KS, 12X18KB 등 폰트 이름에 'K'가 들어가는 6종류의 폰트가 당시에 제가 만든 폰트 입니다.

 

 

3. 톰넷 그래픽 폰트 적용 방법과 폰트 깨지는 이슈 해결 팁

톰넷 그래픽 폰트 적용 방법은 =키 누르고 f키를 눌러서 메인 윈도우의 폰트를 - + 키를 누르면 폰트가 순서대로 바뀌면서 폰트를 바꿀 수 있습니다. 폰트를 바꾸면 해당 폰트에 맞게 커스텀된 font-custom-*****.prf 설정 또한 자동 적용 됩니다.

그런데 실제 폰트 변경을 해보면 바닥 타일 및 벽 모양들이 표시되지 않습니다. 그래서 설정을 찾아보니 관련해서 추가 설정이 있더군요. =키 누르고 1키를 누르면 나오는 설정에서 중간에 certain font only: Walls look like solid blocks 를 변경해야 합니다. 기본 yes 로 되어 있는데 이걸 no 로 바꾸면 바닥이나 벽 모양들도 그래픽 폰트로 적용되어 나오게 됩니다. 그런데 짜잔!

한글 윈도우 상태에서는 폰트 그래픽이 정상적으로 표현되지 않고 이렇게 나옵니다. 마을에 비가 오면 저 화면도 깨지고요. 혹시 일본어 게임들을 해보셨다면 아실만한 전형적인 시스템 로캘 충돌 문제로 인한 폰트 표현 오류입니다. 예전에 일본어판 Angband, Hengband 실행시에도 이런걸 본 적이 있었고요.

원인을 찾아보니 제가 처음에 만들었던 폰트는 ASCII 스탠다드 영역(0~128번 글리프)만 사용하고 있어서 한글 윈도우에서도 정상 표현이 되었는데, 이걸 그래픽 폰트 공식 채택 과정에서 폰트를 수정하면서 ASCII 확장형 영역(129~255번 글리프)으로 옮기면서 나타난 문제로 보입니다.

해결 방법은 윈도우11 기준으로 설정 > 시간 및 언어 > 언어 및 지역 > 기본 언어 설정 > 시스템 로캘 변경을 눌러서 영어(미국) 등으로 바꿔 주면 됩니다. 기본 한국어 상태에서 톰넷만 로캘 변경해서 구동시켜 보려고 했더니 예전 로캘 변경 프로그램은 작동하지도 않거니와 요즘에 많이 쓴다고 하는 Locale Emulator 등으로도 정상적으로 로캘 변경이 되진 않더군요.

영어(미국)으로 로케일을 변경해서 톰넷을 실행해보면 제가 만들었던 폰트가 정상적으로 나옵니다.

마무리하며...

본 블로그의 경우 현재 톰넷 관련 글만 30여개 정도 남기고 전부 다 정리하고(대략 200여개 정도 삭제했었네요), 톰넷도 대략 2018년을 마지막으로 톰넷 플레이 안한지 꽤 오래된거 같네요. 가끔 생각나면 APAC 서버에서 플레이해야겠습니다. =)

TomeNET 톰넷 서버 구동!!! 톰넷 로컬 서버 구동 방법 입니다. 유럽 서버가 핑 문제로 사실상 레벨 30중반 부터는 정상적인 플레이가 불가능하다보니 로컬 서버를 구동해서 쾌적한 환경으로 1인 플레이를 한다거나 캐릭터 테스트 용으로 사용하면 좋을 것 같습니다.

1. 서버 다운로드, 접속, 관리자 계정

 

톰넷 서버 실행 화면


윈도우용으로 컴파일된 톰넷 서버 실행 파일 다운로드 : https://github.com/Tokariew/tomenet/releases/tag/4.8.0

리눅스는 소스 파일을 받아서 직접 컴파일 하면 됩니다. 우분투에서 소스 파일 다운로드 받아서 튜토리얼대로 진행하니 별 이상없이 컴파일되는거까지 직접 확인해봤습니다. 리눅스 컴파일 방법은 HOWTO set up your own TomeNET serverTomeNET client installation on Linux 참고하세요. 추가로 집에서 놀고 있는 리눅스 기반의 라즈베리파이3에도 톰넷 서버를 돌릴 수 있지 않을까 싶었는데 윈도우 컴파일 파일 제공해주시는 분도 라즈베리파이 서버용으로 빌드에 실패하셨다고 해서 포기했습니다.

본 페이지에서는 윈도우 서버 파일을 중심으로 설명하겠습니다.  톰넷 서버 윈도우 실행 파일은 위에서 링크된 파일 다운 받으시면 되고요. 혹시나 최신 버전이 아니거나 나중에 없어지거나한다면 톰넷 공식 포럼을 뒤져보면 나올겁니다.  일단 윈도우 서버의 실행 파일을 구동하면 위와 같은 콘솔 화면 팝업되면서 마을, 던젼 등 생성 됩니다. 서버 실행 파일 창은 그대로 두고, 톰넷 클라이언트를 실행합니다.

 


서버를 구동하였으면 클라이언트에서 실행 파일 실행. 대문자 Q를 눌러서 IP 직접 입력 선택.


서버 입력에서' localhost' 라고 입력하거나 서버가 구동되는 컴퓨터의 IP를 입력.


서버 생성 후 처음으로 만드는 계정은 관리자 계정이고, 처음으로 만드는 캐릭터는 관리자 캐릭터가 됩니다. 관리자 계정은 로그아웃하고, 신규 계정을 만들어서 접속해서 즐기시면 됩니다!

 

2. tomenet.cfg 파일 수정

 

tomenet.cfg 파일 수정


lib 폴더에 tomenet.cfg 설정 파일이 있습니다. 서버의 세팅값을 변경할 수 있습니다.
설정값마다 #주석처리로 설명이 상당히 잘 되어 있어서 찬찬히 읽어보면 어떻게 수정할 수 있을지는 바로 알 수 있습니다.

 

3. 관리자 전용 메뉴 간단 소개

게임에서 사용 가능한 관리자 메뉴가 따로 있습니다. 단축키는 ' ] '

게임 내 관리자 전용 메뉴


내용은 스샷에 한글로 적은 것을 참고해서 직접 테스트해보심 되구요. 추가로 게임에서 소개하는 관리자 계정 전용 명령어 리스트는 다음과 같습니다.


플레이어 계정은 관리자가 인증을 해야되는데 헬프 파일에 validation 방법이 적혀 있지 않아서 찾아보니 /val 이네요.

/val 계정이름 명령어로 인증 가능합니다. (대소문자 구별)

그외 관리자 전용 명령어는 LUA 스크립트로 구현되어 있습니다. cblue.lua 파일 같은 워드패드로 열어보면 주석 설명과 함께 잘 나와 있더군요. 스크립트가 여러가지가 많은데 하나를 예를 들면...

 

 

--recalls a player upwards
function rec(name)
    i = ind(name);
    players(i).recall_pos.wx = players(i).wpos.wx;
    players(i).recall_pos.wy = players(i).wpos.wy;
    players(i).recall_pos.wz = 0;
-- 7 = LEVEL_RECALL_UP, 8 = LEVEL_RECALL_DOWN
    players(i).new_level_method = 7;
    msg_print(i, "\255yA strong magical force carries you away!");
    recall_player(i, "");
end

 

 


이 스크립트는 플레이어를 던젼에서 던젼 밖으로 리콜 시키는 기능 입니다. 관리자 캐릭터로 챗 라인에서 다음과 같이 입력합니다.

/ rec('캐릭터이름')

슬래쉬 다음에 띄어쓰기 및 (' ') 까지 정확히 다 타이핑 해주시면 됩니다.


4. 캐릭터 테스트를 위한 명령어들

# 주요 아이템 위시 (k_info.txt)

일단 경험치 포션, 스킬 포션이 필요하겠죠.
아니면 관리자 캐릭터로 LUA 스크립트로 구현된 / mktest('캐릭터이름') 을 하셔도 됩니다.

  •    /wish 71 55 : 오그멘테이션 포션
  •    /wish 71 59 : 경험치 포션
  •    /wish 72 20 : 러닝 포션
  •    /wish 70 52 : 아티팩트 크리에이션 스크롤
  •    /wish 70 40 : *어콰이어먼트* 스크롤
  •    /wish 71 37 : *힐링* 포션 (코드로는 I:71:37:500 이라 /wish 71 37 500 이 정확할지도 모르겠군요.)
  •    /wish 71 40 : *리스토어 마나* 포션
  •    /wish 71 29 : 스피드 포션

뒤 숫자는 업데이트시 아이템이 추가되거나 삭제되면 바뀔 수도 있습니다.
혹시나 변경되었다면 *_info.txt 파일을 직접 열어서 검색하시면 됩니다.


# 아티팩트 위시 방법 (a_info.txt)

아티팩트 위시는 위에 헬프 파일 스샷을 보면 스톰브링거 예제가 잘못되어 있습니다. 정확한 위시 방법은...

/wish tval sval pval discount name name2b

  •    tval, sval : 베이스 아이템 코드 넘버
  •    pval : 옵션 인챈 (스피드, 공회, 스탯 향상 수치, 만약 0 을 입력하면 아이템에 따라 랜덤이거나 제로)
  •    discount : 할인율 (0 입력하면 할인율 없음, 상점에 제값 그대로 판매 가능)
  •    name : 아티팩트, 에고의 아이템 코드 넘버
  •    name2b : (???)


대충 저런식으로 구성되어 있어요. 크리스두리안을 만들어 본다면 a_info.txt 에서 N:80:'Crisdurian' I:23:28:1 라는 정보를 찾을 수 있습니다.

/wish 23 28 1 0 80
이렇게 하시면 됩니다. 그런데 여기서 pval 을 수치를 바꿀 수 있습니다. 1 에서 99 로 바꿔보면...

/wish 23 28 99 0 80
1에서 99로 변경해보니 크리스두리안 공회 99 짜리가 나오네요.

/wish 23 17 pval 0 80
한발 더 나아가서 The Long Sword (23 17번 아이템) 와 Crisdurian (아티 80번)을 조합도 가능합니다.

/wish 23 17 pval 0 1
마지막으로 이건 롱소드에 갈라드리엘 피알(아티 1번) 옵션 붙인 것 입니다. 이종교배!


# 에고 위시 방법 (e_info.txt)

에고 옵션은 마이너스 넘버를 붙여 주면 됩니다.

/wish 23 28 pval 0 -65 : Executioner's Sword 에 Aman 에고 옵션을 붙인 아이템이 생성.

참고로 /wish 23 28 pval 0 -65 로 +pval 짜리 아만을 계속 만들다보면 랜덤으로 +attack 공회 붙은 아만이 생성됩니다.
그런데 위시로 받는 에고의 단점은 to-Hit, to-Dam 이 고만고만한 칼 밖에 안나온다는 점. (던젼 깊은데서 해도 마을과 동일)


# 기타 아이템들 (k_info.txt)

  • /wish 38 30 : Power DSM
  • /wish 38 40 : Death DSM
  • /wish 45 31 pval : Ring of Speed
  • /wish 40 23 pval : Amulet of Trickery
  • /wish 40 8 pval : Amulet of the Magi


이 정도면 대략적인 사용법은 다 정리를 한 것 같네요.

ADOM 아돔 / 아돔 라이트 RPG북

Posted by r@ndonneur on 2017. 5. 26. 21:18 Blog Posts

 

짜잔!!! 독일서 건너온 우편입니다. 좌측하단에 Deutsche Post 로고가 딱!! 우체국 규격 봉투인거 같은데 봉투 재질이 빳빳한게 참 좋구요. 받고 사진을 찍어둔지는 좀 오래되었는데 지금에서야 블로그에 올려봅니다. ㅎㅎ

 

 

내용물은 책 한 권, 바로 ADOM Lite RPG Book. 지난 2012년에 인디고고에서 아돔 부활 프로젝트 크라우드 펀딩을 진행할때, $40 Seeker 레벨에만 있었던 특전 중에 하나인데 당시 참여를 했었고 드디어 책을 받았니다. 그때 이후로 시간이 꽤 많이 흘러서 본 게임도 많은 부분 업데이트가 진행되었고, Steam에 유료 게임나오면서 무료 코드도 받았었고요. 마지막 남은 RPG북까지 받는데는 대략 4년이 좀 넘게 걸렸습니다. 아마 저 말고도 국내에도 몇 분 정도는 이 책을 갖고 계실 것 같습니다. ㅎㅎ

 

책의 내용은 ADOM 에 나오는 세계관을 기반으로하는 RPG북 입니다. 게임과 직접적으로 관련이 있는 매뉴얼이나 설정집(?) 같은게 아닌 ADOM 세계관을 기반으로하는 TRPG를 위한 룰북인거죠. ADOM RPG는 기억하기로는 ADOM을 처음 접했던 90년대 말에도 웹사이트에 관련 항목들이 있었어요.

 

 

확인해보니 web.archive.org 에서 1999년에 예전 adom.de 흔적을 찾을 수 있더군요. 펀딩 이벤트를 위해서 TRPG 룰북을 갑작스럽게 만들어낸게 아니라 오리지널 게임의 개발 역사와도 거의 맥락을 같이했었던 컨텐츠 입니다.

 

 

표지까지 포함해서 전체 76페이지의 작은 책 입니다. 다양한 삽화가 들어가 있지만, 인쇄 및 제본 퀄리티는 그렇게 좋은 편은 아닙니다. 레이저 프린터로 뽑은 수준의 느낌 정도네요. 2012년 인디고고 펀딩 당시 최종 9만 달러 가량 모금을 했었는데 최종 모금액에서 +1만 달러만 더 모였다면, 10만 달러 특전으로 RPG북 전체 페이지가 풀컬러로된 책을 받았을텐데 본 책을 받으니 그때의 아쉬움이 다시 떠오릅니다. ㅠ

 

 

 

뒷면은 ADOM Ancardia 월드 맵으로 인증은 마무리!!! 제꺼는 1차 발송분의 500개 중에서 7번째라고 노트와 사인이 적혀 있더군요. TRPG는 예전에도 그랬고 앞으로도 할 일이 전혀 없겠지만, 이번 ADOM Lite RPG는 어릴때 즐겁게 했던 게임의 덕질용 굿즈 정도의 의미랄까요. ㅎㅎ

한글 윈도우 8 부터 Angband 를 포함하여 T.o.M.E 2, Sil, Mangband, NPPAngband 등 대다수 Angband 배리언트 로그라이크 게임들을 실행하면 이렇게 '작동 중지' 메세지가 뜨면서 게임을 정상적으로 실행할 수 없습니다. 꼼수로 보조 멀티 윈도우를 전부 다 없애고 실행하는 방법이 있긴하지만, 매번 실행시 설정 파일을 없애고 만드는건 정말 불편하죠.

일본어도 마찬가지. 日本語も同様の問題が発生しています。

 


아무래도 다소 오래 전에 기초를 만든 프로그램이다 보니 '아 이제 윈도우 8 부터 게임 실행에 호환성 문제가 생겼구나' 싶었습니다. 이 무렵 바닐라 Angband 는 3.x 에서 4.x 로 코드를 새로 쓰면서 한참 판올림 작업이 진행 중이었는데요. 이제 곧 이 문제가 공식 업데이트로 수정되지 않을까 싶었지만 몇달이 지나도록 아무런 조치가 취해지지 않았고, 포럼에서도 이 문제와 관련해서 아무런 이슈가 없었습니다. 왜냐면 유럽/영미권 유저들한테는 '게임 실행시 작동 중지'가 처음부터 해당 사항이 없었기 때문.

영문 윈도우도 깔아보고 설정을 이것저것 바꿔보면서 결국 한글 윈도우 상태에서도 게임 실행 가능 방법을 발견하게 되었습니다.

 


1. '제어판>언어'를 클릭해서 언어 추가를 해야합니다.

 

 

2. 여기서 '영어'를 추가합니다.

 

 


3. 언어의 순서는 '한국어'를 위에 '영어'를 밑으로 배열하시면 됩니다.


4. 윈도우 우측 하단의 시계 옆 태스크바에 '한'이라는 아이콘을 클릭하면 입력기를 전환할 수 있습니다. 또는 전환하는 단축키는 '윈도우키 + 스페이스바'.


본 내용은 작년에 로그라이크 커뮤니티에 썼던 글이라서 이미 아시는 분들은 아시겠지만, 블로그엔 늦게나마 스샷과 함께 올려봤습니다. =)

 

 

 

DEC PDP-11/70 (Front Panel)


로버트 앨런 킨이키(Robert Alan Koeneke)는 1980년 ~ 1981년 오클라호마 대학에서 기계공학을 전공 중이던 학생이었다. 당시 기계공학 연구실에는 PDP-11/70 이라는 초기 버전의 유닉스 시스템이 있었는데, 그는 컴퓨터에 소질이 있었기 때문에 매우 자연스럽게 시스템 관리자들과 알고 지내게 되었다. 그러던 어느날 시스템 관리자들의 초대를 받아 게임을 같이 하게되었는데 하나는 The Colossal Cave Adventure 라는 게임이었고, 다른 하나는 새로운 던전 게임인 로그(Rogue).

The Colossal Cave Adventure

 


그렇다. 킨이키는 모리아를 제작하기 이전에 로그를 먼저 접하게된게 맞다. 그는 로그를 보는 순간 눈이 번쩍 뜨였다고 회상한다. 로그는 모리아와 모리아의 각종 아류 게임들에게 수많은 사람들이 엄청난 플레이 시간을 쏟게한 직접적인 원인을 제공한 게임이었던 것.

DEC VAX11/780 in the Atlas Centre, August 1980

 


그는 로그에 훅 빠져들어서 플레이를 하기 시작했고, 이후 학교에서 다른 컴퓨터 부서의 학생 조교로 첫 일을 시작하게 되었다. VMS 를 운영하는 초기 버젼의 VAX 11/780 시스템이 있는 부서였는데 애석하게도 당시 해당 시스템에는 작동가능한 그 어떤 게임도 없었다고 한다. 더구나 로그를 즐기던 기계공학 연구실에는 컴퓨터(PDP1170)는 오로지 연구를 위해서만 쓰여야한다고 생각하는 관리자가 업무를 담당하게 되면서 더이상 예전처럼 게임을 할 수가 없었고, 로그 또한 할 수 없게된 상황이 발생하였다.

 

킨이키는 게임을 할 수 없게된 것이 정말 견딜 수 없었고, 그래서 그는 자신의 부서에 있는 시스템에서 돌아가는 로그 게임을 직접 만들기로 결심한다. 이것이 바로 모리아 베타 1.0 버전이 나오게된 직접적인 배경이었다. 자신이 담당하고 있는 VMS 시스템에서 지원하는 프로그래밍 언어는 포트란, 파스칼 그리고 베이직 3 가지. 대부분의 게임은 문자열 조작(string manipulation)이었는데, 그는 모리아 바테 버전에서 처음으로 VMS 베이직으로 프로그래밍을 시도하였다고 한다. 그 결과로 나온 초창기 모리아 베타 버전은 로그와 매우 흡사한 게임이었다. 그러나 그는 모리아가 어떻게 다른 방식으로 작동할 수 있을지, 어떻게 향상시킬지 이런저런 고민을 하기 시작했고, 이후 1년 정도는 게임 개발을 거의 하지 않은채 시간이 흘러갔다.

 

1983년 즈음에 모리아 태동을 위한 두가지 큰 일이 그에게 발생하였는데 결혼을 하기 위해서 약혼을 하였고, (결혼이라는 절망감에) 오로지 일에만 몰두했다고 한다. 그리고 파스칼 운영체제 수업에 등록한 것. VMS 파스칼 새 버전을 연구하기 시작하였으며 데이터 구조, 최적화, 기본 프로그래밍에 대해서 학창 시절의 몇년 동안보다 더 많은 것을 배웠다고 한다.

Moria DOS Screenshot

 

1983년 그 해 여름, 킨이키는 VMS 파스칼 기반의 모리아 1.0 버전을 드디어 완성하여 곧 오클라호마 대학 내에서 모리아 게임에 몰두하는 많은 플레이어들을 끌어 모을 수 있었다. 당시 그의 가장 친한 친구 지미 토드는 게임의 훌륭한 조력자였다. 게임을 위해서 더 나은 캐릭터 생성 방법이 무엇인지 곧잘 토드에게 자문을 구하곤 했었고, 그 덕분에 각종 스킬 시스템과 캐릭터 히스토리가 새롭게 탄생하게 되었다. 토드는 게임 내 많은 기능들을 만들 수 있게 도와주었으며 곧 모리아는 2.0 버전으로 업데이트 되었다.

 

이후 킨이키는 2년 동안은 많은 플레이어로부터 피드백을 받으면서 게임을 향상시키고, 문제점을 수정하는 일들을 계속 진행하였다. 누군가 게임에서 승리하게 되면 그는 발견 즉시 어떻게 승리할 수 있었는지 확인하였고, 게임을 더 어렵게 '향상'시키곤 하였다. 그는 한때 '절대 깰 수 없는 게임'이라고 장담까지도 한 적이 있었지만, 그렇게 말한지 바로 일주일 후에 그의 친구가 바로 게임을 깨버린 적도 있었다. 당시 그 친구의 게임 캐릭터 이름은 Iggy 였는데, 그 사건을 계기로 모리아 게임 속에 'The Evil Iggy' 라는 몬스터로 출현하기도 한다.

 

1985년 즈음부터는 타 대학으로도 모리아 게임 소스를 보내기 시작하였다. 이와 관련된 일화로는 그해 오클라호마 VS 텍사스 대학 풋볼 경기 직전에 텍사스 대학으로부터 파일을 보내달라고 요청을 받은 적이 있었는데, 그는 거절하지 않고 흔쾌히 게임을 보내주었다고 한다. 다만 타운 레벨의 거지들을 '오클라호마 풋볼 팬'이라는 이름으로 수정함과 동시에 마을 거지 주제에 게임 내 최대 속도로 향상, 최대 속도로 생성되게끔 만들어 버렸다. 그래서 텍사스 대학에 보낸 모리아 게임을 실행하면 게임에 첫 발을 디디자 마자 마을 거지들이 수천마리로 증식하여 바로 즉사할 수 밖에 없는 코드로 변형해버린 것이다. 물론 그쪽에서 전화가 오자 나중에는 원래대로 바꾸는 방법을 친절히 알려줬다고 밝힌다.

 

시간이 흘러 1986-87년에 킨이키는 모리아 4.7 을 마지막으로 배포하게 된다. 그는 당시 모리아 5.0 개발 작업을 진행하고 있었지만 아메리칸 에어라인으로 직장을 옮기면서 대학을 떠나야 했고 모리아 개발 작업에 손을 놓게되었다. 개발 중이던 모리아 5.0은 이전 버전과는 달리 전부 새롭게 쓰여졌다. 물, 계곡, 강, 연못, 수중 몬스터 등과 함께 각종 무기와 보물 등 다양하고 새로운 컨텐츠가 많았다. 그러나 대학을 떠나면서 학교의 조교들이 새로운 모리아를 완성하길 바랬지만 결국 세상에 나오지는 못했다. 아마도 그가 떠난 이후 관리 소홀로 소스가 사라진 것으로 추측된다.

 

 

Moria AMIGA Screenshot

 

이후 킨이키는 게임 개발을 원하는 모두에게 권한을 주기 시작하였다. 몇몇 사람들이 C로 변환해도 되냐고 물어 보았으며 크레딧 히스토리가 유지되면 괜찮다는 조건으로 모두 허용하였다. 한두명의 사람들이 C로 포팅하는데 성공했다고 알려져 있는데 그중에서도 1987년 버클리 대학의 짐 윌슨에 의해 C/Unix 로 포팅된 버전은 향후 모든 모리아류 게임들의 베이스가 되었다고 한다. 특히 AMIGA용 모리아는 매우 인기가 많았다. 그러나 그의 게임이 직접적으로 상업용으로 팔린 적은 없었다.


출처 : Early history of Moria by Robert Alan Koeneke

TomeNET 톰넷 : 단축키 정리

Posted by r@ndonneur on 2015. 1. 9. 15:40 Blog Posts

 

 

 


톰넷 한국 서버 TomeNET 4.5.8a 업데이트를 계기로 오랜만에 톰넷에 접속하면서 잉여력으로 인포그래픽(!?)을 만들어 봤습니다.

익숙한 게임조차도 1~2년 지나서 오랜만에 다시 시작하려면 어리벙벙한 경우가 많습니다.

 

 

 

 

톰넷은 실시간 게임인지라 본 게임 화면을 가리는 항목은 따로 '녹색'으로 색상을 달리했습니다. 턴제가 아니니 화면을 가린 상태에서도 공격은 오니까요. 매크로가 필수이니 F1~F12 외에 매크로 할당할만한 키와 실제 플레이어들 사이에서 기본키 대신에 매크로로 자주 바뀌는 키들은 키 근처에 파란색/하늘색 테두리를 그렸구요. 하단에는 채팅라인 슬래쉬 명령어를 일부 요약해놨습니다.

사용 권장 커맨드
오른손 키패드 부분 : *키, -키, +키, 0키, .키

왼손 부분 : 탭키, `키
Ctrl 조합 : 마을 이동 지정, 미믹 변신 지정


추가 매크로 사용 불가 커맨드

키패드 / 키 (인벤토리와 장비 왔다갔다하는 / 스왑 명령어와 중복됨)
Ctrl A (중복되지는 않으나 세팅해놓으면 특정 커맨드와 꼬임)


한글화된 돌죽/ToME4 와는 달리 ASCII 그래픽의 톰넷은 최근 신규 유입자가 거의 없어서 몇분에게나 도움이 될지는 미지수군요. 재밌는 게임이고, 한두번 클리어 하더라도 리플레이성도 상당히 높은데 진입 장벽 때문에 많은 분들이 즐기지 못한다는게 언제나 아쉬워요. ㅎㅎ

 


자음

 

c - ㅋ / Celeborn 켈레보른 (셀레보른x) / Tulkas 툴카스를 비롯한 몇몇 이름을 제외하고는 k 가 거의 안 쓰임.

ch - ㅋ / Charcharoth 카르카로스 (차르차로스x) 

dh - ㄷ / Maedhros 마에드로스 (마에드호로스x) (영어의 ð) 

th - ㅅ / Gurthang 구르상 Thalos 살로스 (영어의 θ) / 한글판에서는 ㅆ 로 통일했으면 더 좋았을듯 싶긴함.

g - ㄱ / Region 레기온 (리젼x 레젼x)


나머지 자음들은 영어에서 통용되는 방식대로이며, 자음이 두번 연속으로 나오는 겹자음은 장음 처리를 합니다.
'n' 이 받침으로 올 경우 딱딱 끊어서 'ㄴ' 이 아닌 좀 더 자연스럽게 'ㅇ' 으로 대체되기도 하고요. (Angband 앙그반드, Alkarinque 알카링퀘)

 

모음

 

e  - 에 / Menegroth 메네그로스 (멘그로스x)

u' - 우 / Hurin 후린 (휴린x) 

ai - 아이 / Edain 에다인 (에데인x) 

au - 아우 / Sauron 사우론 (소어론x) 

ei - 에이 / Teiglin 테이글린 (타이글린x) 

ie - 이에 / Nienna 니엔나 (니나x) 

ui - 우이 / Uinen 우이넨 (위넨x) 

ea - 에아 / Earendil 에아렌딜 (이어렌딜x) Smeagol 스메아골 (스미골x) 

eo - 에오 / Eonwe 에온웨 (이온웨x) 

ue - 웨 / Ninquelote 닝퀠로테 (닝쿠엘로테x) Moriquendi 모리퀜디 (모리쿠엔디x) 

ae - 아이 / Nirnaeth 니르나이스 (니르나에스x) Maeglin 마이글린 (마에글린x) 

 

자음+모음

 

ah - 아ㅎ / Mahtan 마흐탄 / '자음+h' 조합은 톨킨 주석이 없다. 'h' 음가가 생략되기도 하는데 한글판 번역시 정확하게 조사를 안했을지도 모름.

kh - ㅋ, ㅋㅎ / Adunakhor 아두나코르, Khazd-dum 크하잣둠 / 자음+h 조합은 케바케이려나.

lh - ㄹ / lhun 룬

rh - ㄹ / Talath Rhunen 탈라스 루넨 / 동부 rhun 같은 경우 '룬' 보다는 '르훈'이 정확하지 않을까 싶은데, 실마릴리온 인덱스에는 없습니다.

ph - ㅍ / Ar-Pharazon 아르파라존 (아르프하라존x)

gh - ㄱㅎ / Azaghal 아자그할 (아자갈x)

er - 에르 / Nerdanel 네르다넬 (너다넬x) 

ir - 이르 / Cirdan 키르단 (키단x 시단x) 

ur - 우르 / Gurthang 구르상 (구상x 거상x) 

or - 오르 / Aragorn 아라고른 (아라곤x) 

wa - 와 / Gwaith-i-Mirdain 과이스이미르다인 

wi - 위 / Gwindor 귄도르 

we - 웨 / Ered Wethrin 에레드 웨스린 

y - 이 / Annon-in-Gelydh 안논인겔뤼드(겔리드), Nenya 네냐(네니아) / 씨앗을 뿌리는 사람에서 나온 실마릴리온 한글판에서는 'y' 가 독립적으로 쓰일땐 '이' 가 아닌 '위' 로 처리했더군요. 'i' 와 구분하는 것도 좋지만 다소 이상한 처리 방식이라고 여겨집니다. 언어학상으로 'y' 는 엄연히 자음이므로 '네냐'의 경우처럼 '모음+ y'가 붙으면 평상시엔 빨리 발음하여 연음 처리, 그러나 천천히 발음할 경우엔 '네니아'로 정확히 구분을 할 수도 있을 것 같네요.

 

 


 


구글링하다보니 '영어 -> 톨킨 요정어 사전'이 있어서 자료 수집 차 첨부해봅니다. ^^

 

영어 to 톨킨의 요정 언어 변환 사전

English to Elvish.htm
다운로드



 


지난 2011년에는 톰넷을 제대로 안했으니, 2010년 봄 이후 2년 만인거 같네요.
현재 킹잉하는 시점에는 감자샵도 없고, 유럽서버와 완전히 동일한 세팅 입니다.

킹잉 직후 스샷 찰칵 !!! 서버 세팅은 같으니 래더에 캐릭터 덤프도 올리고 !!!

예전과 비교해서 플레이 소감을 적어보자면...

인스타 부활 !!!

'혼자하면 구조해줄 사람 없을텐데?' 하는 걱정 없이 플레이 가능하고,
장비품은 보통 1~2개 파괴되는 것 뿐이니 죽어도 금방 재정비가 편합니다.
이 부분은 온라인 게임으로서 서버에 유저가 적어도 꾸준히 즐길 수 있는 기반을 갖춘게 아닐까 싶네요.

오토-인스크립션 !!!

4.4.8 때 추가된 컨텐츠라던데 40렙 찍을 동안 있는지도 몰랐다는건 함정...ㅋ
ToME 의 오토머타이저에 비견할 수준은 아니지만, 그래도 루팅이 꽤나 편해졌습니다.
다만 지정할 수 있는 항목이 20개 밖에 안된다는건 좀 적습니다.

네임드의 약화 ???

킹잉 이전에 만나는 몇몇 강력한 네임드들을 편하게 잡았던거 같습니다.
앙칼라곤을 비롯한 D들, 노덴스, 디스트로이어, 사우론 등등

Pirotessa, Succubus Empress

벗기는 기술 언제 강화된거??? -_-??
한번에 3개씩 막 벗어 재끼는데 정말 깜놀.
앞으로도 남캐하다간 골로가기 참 쉽겠구나... 느꼈네요. 

새니티 공격 강화


렙업하면서 달라졌다고 느낀건 새로 추가된 변종몹. 새니티 공격을 하는 Psy 어택 몹들.
특히나 자이언트핏에 한두마리 섞여 있으면, ESP도 안되고 블링킹해대서 밀리 캐릭으로는 참 거지깽깽이 같았네요.
전반적으로 몹들의 새니티 공격 강화로 초중반에 새니티 관리가 다소 어려워졌습니다.
반면 새니티 포션은 예전보다 더 많이 나오더군요.

디스암의 강화

예전보다 빈도가 더 자주 발생하더군요.

허접한 랜다트

예전보다 너프가 확실히 되었다고 느낀건 랜다트.
4.4.8 업데이트(2011년 10월경)때 랜다트 가치를 계산하는 방법이 완전히 바뀐었다고 공지된 적이 있었죠.
그래서 쓸만한건 대부분 어그로.

스부의 실종

스피드 부츠는 +1 짜리 두번 먹어본게 끝이고, 이스타님도 50렙때 첨 엘븐카인드 하나 드셨다고 했던가...
스샷보면 킹잉할때 엘븐카인드 부츠를 신었는데 선물로 받은 것. Anti-Magic 이라서 모르고쓰 죽이러갈때 첨 신어본거네요.

킹잉하기 전에야 스피드 +6 짜리 크보 Cubragol 이 있으니 괜찮은데 이제 킹 되어서 상당히 허접해졌네요.
쓸만한 무기도 없어서 칼도 그냥 15 15 로 인챈한 곤돌린표 브로드 소드로 때려 잡았으니...;;;

Sandor Clegane-victory_2012-08-18_22.03.49.txt
다운로드


by RaND0NNEuR's Qlzqqlzuup & Roguelike
로그라이크 게임 - TomeNET : Tales of Middle Earth Multiplayer

 

ADOM 아돔 매뉴얼 한글 번역은 두가지 종류가 있습니다.

97년 즈음에 ADOM 이 국내서 막 인기를 끌 무렵에 만들어진 승엽님이 작성하신 대략적인 매뉴얼, 2000년 초에 하이텔 고전게임동호회 Adventures in ASCII 소모임에서 한배님 주도하에 번역된 원본에 충실한 풀 매뉴얼.

물론 최신 버젼과는 내용이 다소 차이가 있습니다만 초보자에게는 충분히 훌륭한 자료니, 자료 보존차 본 블로그에 올려 둡니다. ㅎㅎ 사실 매뉴얼 번역 작업을 꼼꼼하게 A to Z 까지 하는건 정말 인내를 요하는 작업이죠. 번역해봤자 매뉴얼을 많이 읽지도 않는 편이고, 차라리 매뉴얼보다는 팁 & 가이드를 새로 쓰는게 훨씬 쉽고 보는 입장에서도 편하니... ^^;

 

ADOM_MANUAL_H.txt
다운로드
ADOMG15GUIDE.TXT
다운로드

 

Human Warrior lvl 50 캐릭터 HP 비교

Posted by r@ndonneur on 2011. 8. 27. 21:31 Blog Posts

1. TomeNET 4.4.4 이전 버젼의 HP 다이스 관련 소스 코드

 

 

#if 0 /* experimental (not urgent probably): 0'ing this, see below */ 
        /* Minimum hitpoints at highest level */ 
        min_value = (PY_MAX_LEVEL * (p_ptr->hitdie - 1) * 3) / 8; 
        min_value += PY_MAX_LEVEL; 
 
        /* Maximum hitpoints at highest level */ 
        max_value = (PY_MAX_LEVEL * (p_ptr->hitdie - 1) * 5) / 8; 
        max_value += PY_MAX_LEVEL; 

 

 

MAX_LEVEL 인 레벨 99 에서 3/8 ~ 5/8 사이의 범위를 벗어나는 캐릭은 HP 다이스를 다시 굴려서 범위에 들게 합니다.
레벨인 99 기준에서 축캐는 저주캐보다 최대 +67% 가량 HP 가 높을 수 있습니다.

다만 HP 증가율은 선형이 아닌 랜덤이므로 레벨 50 ~60 사이에서는 저주캐가 축캐보다 2배 이상 차이가 날 수도 있습니다.(이론적으로)

그래서 예전에는 초반 10 ~ 15 렙까지 HP가 높은 캐릭터를 고르기도 했었죠. HP 계산 엑셀도 만들어서 참고용으로 사용했었고...
실제로 Angband.oook.cz 덤프들을 참고하면 레벨 50 근방의 전사의 경우 400 ~ 500 HP 이상의 차이도 발생했었습니다.


2. TomeNET 4.4.4 이후 버젼의 HP 다이스관련 소스 코드

 

 

#else /* narrow HP range */ 
        /* Minimum hitpoints at kinging level */ 
        min_value_king = (50 * (p_ptr->hitdie - 1) * 15) / 32; 
        min_value_king += 50; 
        /* Maximum hitpoints at kinging level */ 
        max_value_king = (50 * (p_ptr->hitdie - 1) * 17) / 32; 
        max_value_king += 50; 
 
        /* Minimum hitpoints at highest level */ 
        min_value = (PY_MAX_LEVEL * (p_ptr->hitdie - 1) * 15) / 32; 
        min_value += PY_MAX_LEVEL; 
        /* Maximum hitpoints at highest level */ 
        max_value = (PY_MAX_LEVEL * (p_ptr->hitdie - 1) * 17) / 32; 
        max_value += PY_MAX_LEVEL; 

 

 

2010년 1월 31일 업데이트 이후 개정된 소스 코드에서는 레벨 50 에서 한번, 레벨 99 에서 한번.

총 두번에 걸쳐 15/32 ~ 17/32 사이의 범위에 포함되도록 HP 다이스를 굴립니다. (최대 300회까지만 다이스를 굴림 시도)

그래서 레벨 50, 99 에서 축캐는 저주캐보다 최대 13% 가량 HP가 높을 수 있습니다.
범위도 좁고, 게다가 기준도 2번이기 때문에 킹잉 이후 레벨 50 ~ 99 중간 지점에서도 큰 편차는 발생하기가 어렵습니다.


3. Human Warrior lvl 50 CON 18/*** 캐릭터 표본 20개 테스트

톰넷 팁 게시판에 소개되었던 소스 코드들만으로는 CON Bonus 까지 나와서 실제 최종 HP 와의 갭이 있습니다.
찾아보면 추가적인 HP boosting 도 있고, Life 아이템으로도 또 상승이 됩니다.

힛다이스 → CON Bonus → HP Boost → Life 아이템 = 실제 HP

어쨌든 간만에 서버 파일을 받은 겸... 휴먼 워리어 레벨 50 짜리 캐릭을 만들어서 테스트 돌입.
세이브 파일 헥스 코드로도 분석이 가능했다면 각 레벨별 다이스 수치 정보가 있을 것 같아서 보려고 했는데 제대로 안나와서,
그냥 수동으로 캐릭터 20개 50렙 만들어서 CON 만땅 채운 결과는 다음과 같습니다.

1217 1205 1159 1215 1195 1203 1177 1189 1183 1153

1213 1207 1197 1137 1129 1197 1159 1217 1231 1221

 


최대값은 1231, 최소값은 1137, 평균값은 1190.
최소값 대비 최대값은 8.2% 정도의 차이. HP는 최대 97 포인트 차이 발생.

정리하면...

HP 차이가 최대 67% 에서 최대 13% 로 굉장히 좁혀졌고, 레벨 50 에서도 13% 범위 내로 잡아주면서
예전처럼 축캐로 대박 나기도 불가능, 저주캐로 망하기도 불가능.

아쉬운 점은 레벨 50 에 휴먼 전사가 HP 1500 을 찍는 것은 이제 절대 보기 힘들다는 점.
아마 MAX 를 찍어도 HP 1300 을 못넘을 것 같네요. ^^;

by RaND0NNEuR's Qlzqqlzuup & Roguelike
로그라이크 게임 - TomeNET : Tales of Middle Earth Multiplayer
1 2 3 4