2019년 4월 16일 화요일

시스템 시작시(부팅시) 자동실행된 docker가 바로 실행되지 않는 문제를 어떻게 해결해야 할까??




내가 있는 다체계물리연구실에서 오랜기간 동안, sun grid engine 구축을 노력해왔다. 수많은 시도가 있었지만 tftp를 이용한 diskless grid는 구축을 하지 못했지만,   결국에 유의미한 결과를 얻었다.


Ubuntu내에서 apt로 또는 fedora(오래된 과거)에서 rpm으로는  설치했을 때, 뭔가, 라이브러리의 버전관리 문제가 걸려서 아무일도 일어나지 않는다.


결국은 docker라는 툴을 이용해서, centos를 기반으로 구축을 완료했다.

문제는 각 서버를 재시작할 시, 자동으로 다시 실행되도록 셋팅을 해놓았으나, 그렇지 않는다는 것이다.


네트워크 작업이 귀찮아서, 내부의 docker가 22번 포트를 쓰도록하고, 디바이스는 다른 포트를 사용하도록 해놓은 탓에, ssh로 로그인을 하고, 다시 작업하기는 매우 귀찮다. 그것도 최근에 안 사실이지만 그 작업도, docker 명령을 실행만 하면 되는 작업이다.

이유를 알 수 없지만, docker명령이 최초 실행되기 전까지, docker daemon은 메모리에만 가상 시스템을 올려놓고, 실행은 되지 않고 있다.


지금은 컴퓨터가 작아서 하나씩 들어가서 docker ps 명령을 실행했다지만, 컴퓨터가 많으면 매우 귀찮은 작업일 것이다.

나만 그런가 싶어, 구글링을 해보니 docker에 가장 적합한 CoreOS에도 있는 Bug라고 한다. CoreOS에도 있다는 소리는 그냥 Docker의 버그로 보이며, 어떤 곳에도 원래 그렇게 작동한다는 이야기는 없다.

그래도 각 사람들이 알아서 해답을 찾았고 그 방법을 적용하였다.

그 방법은 정말 간단하다. 그냥 ... systemctl을 이용해 최후단에 단발로 작용하는 데몬 하나를(언어도단이지만)  띄우는 것이다.



[Unit]
After=default.target

[Service]
Type=oneshot
ExecStart=/usr/bin/docker version
RemainAfterExit=yes

[Install]
WantedBy=default.target


이 간단한 것을 생각지 못한다니, 참...유감이다. 

뭐 그렇지만, 이전까지는 왜 docker가 올라와 있는데도 접속이 안되는지에 대해서 고민을 해왔으니, 제대로 문제를 파악한 기간이 짧았던 것으로 변명하면 되지 않을까...

2019년 3월 31일 일요일

Heroes 3 - Editting heroes in memory. 메모리속 영웅 정보 수정하기(히어로즈3)

본 글은 http://heroescommunity.com/viewthread.php3?TID=18817
을 번역하면서 내가 코멘트를 다는 글이다.

>>>가 붙으면 나의 언급이며, >>>가 없다고 해서 내생각이 안들어간 글은 아니다. 왜냐 번역 실력이 형편 없다.

히어로즈3 및 완본, 그리고 크로니클즈 모두 같다.

메모리 에디팅을 위한 프로그램이 필요하며, winhex등을 쓴다.

목록은 불완전하며, 이동력, 마나, 행운, 사기에 대한 정보는 노력하였으나 찾지 못했다.

자원 : 이 정보는 정확히 player 이름의 3line위에서 부터 시작한다.
>> 이 3line은 잘모르겠지만, xxd등을 사용해 본 경험으로 말할 때, 0x30바이트 전을 말한다. 그러므로 정확치 한다. 

(게임 버전에 따라 플레이어 이름은 _omputer, Player 또는 색상이름으로 정해진다. >>> 그냥 문자데이터 시작하는거 잘 찾으면 된다. )

첫번째 엔트리(이걸 우리나라 말로 어케함?)는 나무이며, 5번의 4바이트 단위 뒤로 여러 자원들이 위치하며, 6번째는 gold 금 또는 돈을 말한다.
>>>그러므로 총 자원 정보는 4x6 = 24 bytes 에 정보 0x18만큼의 데이터를 차지한다. WoG 에서 미스릴과 같은 정보가 있는 것을 보면, 남은 공간에 저런 것들을 넣어서 플러그인을 만들지 않았을까라는 생각이 든다. 
캐릭터 정보 ( 1차 기술) : 영웅 이름 첫글자의 4줄 + 1byte 위에 위치하며 각각 1byte를 차지한다. 그리고 화면에 표시될 수 있는 가장 큰 값은 99이다.

마법: 이것은 캐릭터 정보의 바로 우측에 저장된다. 00은 모른다. 01은 안다이다. 몇몇 마법은 수치를 바꾸어도 즉시 안다로 바뀌지 않는다. 가끔 다시 수정하려고 하면, 01byte사이에 00이라는 바이트가 등장한다.

경험치: 영웅 이름의 첫글자의 3줄-2바이트에 위치하며, 4 byte의 정보를 가진다.
>>>부호있는 숫자인지는 모른다. 
유닛: 경험치의 정확히 4줄아래에 7번의 4바이트 정보로 이루어져있다. 유닛타입에 대한 코드는 아래에 첨부한다.

다음 7번의 4바이트 정보로 유닛에 대한 숫자정보가 들어 있다. (너무 큰 숫자를 넣으면 음수로 변한다.
>>> 부호 있는 숫자, 다른 것도 그럴꺼라 추측해보자.
기술(2차): 유닛수량을 따라 바로 오른쪽에 위치한다. 00=not available, 03=expert이며 1바이트당 1개의 스킬이다.

이전부터 아이콘이 없던 기술은 보여지지 않지만 효과가 보여진다. 지혜나, 포술이 적용되는지는 확신은 못하겠다.  시도해보는것은 너의 맘이다.
>>> 음 난 8개 이상의 스킬이 적용되는지가 궁금하다. 다만, WoG나 다른 플러그인들의 경우에는 10개까지도 배우는 경우가 있으므로, 에디터 상으로는 충분히 가능할 것으로 보인다. 화면 보여주는 로직상에 8개로 제한하며, 배울때 8개 이상을 못배우게 되어 있을 뿐으로 보인다. 
기술은 다음순서로 나타난다.
01 Pathfinding
02 Archery
03 Logistics
04 Scouting
05 Diplomacy
06 Navigation
07 Leadership
08 Wisdom
09 Mysticism
10 Luck
11 Ballistics
12 Eagle Eye
13 Necromancy
14 Estates
15 Fire Magic
16 Air Magic
17 Water Magic
18 Earth Magic
19 Scholar
20 Tactics
21 Artillery
22 Learning
23 Offense
24 Armourer
25 Intelligence
26 Sorcery
27 Resistance
28 First Aid
>>> 어딘가 비는 byte가 있을 것이다. 기술도 추가한 플러그인들이 있다. 
아티팩트도 추가할 수 있다.
스킬정보 이후로 약간 뒤에 아주 큰 블록의 FFFFFFF...을 볼 수 있다. 이 값들은 03000000으로 끝난다. 그것은 모든 영웅이 투석기를 가지고 있음을 말한다.

각각의 아티팩트는 8byte를 차지하며, 첫번째 4개 바이트만 사용되며, 나중 4개 바이트는 FFFFFFFF여야만 한다. 만약 당신이 아티팩트를 추가하길 원한다.면03000000유물 이후에 0x8F개만큼 세어라,(8byte블록이겠지) 당신의 백팩에 아티팩트를 추가할 수 있다. 에디팅한 이후에는 장비를 착용하는 것을 잊지말라.  실제 착용슬롯에 추가할 수 있지만, 너무 많은 작업을 해야하고, 잘못된 인공물을 잘못된 술롯에 넣을 시  충돌을 일으킬 수 있다. 슬롯은 투석기앞 어딘가에 있다.
>>>추석기가 착용슬롯의 마지막이다. 

유닛유형 16진수 코드

00000000 - 창병
01000000 - 도끼창병
02000000 - 궁수
03000000 - 저격수
04000000 - 그리핀
05000000 - 로열 그리핀
06000000 - 검객
07000000 - 십자군
08000000 - 몽크
09000000 - 질럿
0A000000 - 기병
0B000000 - 챔피언
0C000000 - 천사
0D000000 - 대천사

0E000000 - 켄타 우르스
0F000000 - 켄타우루스 대
10000000 - 드워프
11000000 - 전투드워프
12000000 - 우드 꼬마 요정
13000000 - 그랜드 엘프
14000000 - 페가수스
15000000 - 실버 페가수스
16000000 - 수목 가드
17000000 - 수목 군인
18000000 - 유니콘
19000000 - 전쟁 유니콘
1A000000 - 그린 드래곤
1B000000 - 골드 드래곤

1C000000 - 그렘린
1D000000 - 마스터 그렘린
1E000000 - 스톤가고일
1F000000 - 흑요석 가고일
20000000 - 스톤 골렘
21000000 - 철 골렘
22000000 - 마법사
23000000 - 대마법사
24000000 - 지니
25000000 - 마스터 지니
26000000 - 나가
27000000 - 나가 퀸
28000000 - 거인
29000000 - 타이탄

2A000000 - 임프
2B000000 - 패밀리어
2C000000 - 곡
2D000000 - 마곡
2E000000 - 지옥 사냥개
2F000000 - 켈베로스
30000000 - 데몬
31000000 - 팔 데몬
32000000 - 피트 악마
33000000 - 핏 주
34000000 - 이프리트
35000000 - 이프리트 술탄
36000000 - 데빌
37000000 - 아치 데빌

38000000 - 해골
39000000 - 해골전사
3A000000 - 죽은자
3B000000 - 좀비
3C000000 - 와이트
3D000000 - 레이드
3E000000 - 뱀파이어 
3FD00000 - 뱀파이어로드 
40000000 - 리치 
41000000 - 파워 리치 
42000000 - 블랙 나이트 
43000000 - 죽은 나이트
44000000 - 골든 드래곤 
45000000 - 고스트 드래곤 

46000000 - 동굴인 
47000000 - 지옥 동굴인 
48000000 - 하피 
49000000 - 하피 핵
4A000000 - 비홀더
4B000000 - 악마의눈 
4C000000 - 메두사 
4D000000 - 메두사 퀸 
4E000000 - 미노타우르스
4F000000 - 미노타우르스왕 
50000000 - 맨티 코어
51000000 - 스콜피코어
52000000 - 레드 드래곤
53000000 - 블랙 드래곤

54000000 - 고블린
55000000 - 홉 고블린
56000000 - 울프 라이더
57000000 - 울프 레이더
58000000 - 오크
59000000 - 오크 두목
5A000000 - 오거
5B000000 - 오우거 마법사
5C000000 - 로크
5D000000 - 번개새
5E000000 - 사이클롭스
5F000000 - 사이클롭스 왕
60000000 - 베히모스
61000000 - 고대의 큰 짐승

62000000 - 놀
63000000 - 놀 약탈자
64000000 - 도마뱀 궁수
65000000 - 도마뱀 전사
66000000 - 서펜트플라이
67000000 - 드래곤플라이
68000000 - 바실리스크
69000000 - 거대 바실리스크
6A000000 - 고르곤
6B000000 - 마이티 고르곤
6C000000 - 와이번
6D000000 - 와이번 모나크
6E000000 - 히드라
6F000000 - 카오스 히드라

70000000 - 공기 정령
71000000 - 대지 정령
72000000 - 불 정령
73000000 - 물 정령
74000000 - 금 골렘
75000000 - 다이아몬드 골렘

확장팩 정보 (>>>이건 찾으면 슈프림 엔젤 같은것도 다 있음)
76000000 - 픽시
77000000 - 스프라이트
78000000 - 정신의 정령
79000000 - 마법의 정령
85000000 - Crystal Dragons
86000000 - Faerie Dragons
88000000 - Enchanters
89000000 - Sharpshooters


유물 :
00000000 - 마법책 ***
01000000 - 주문 스크롤
 -하지만 마법을 쓰는 법을 모르겠다
02000000 - 성배
03000000 - 투석기 - 쓸모없는
04000000 - 발리스트 - 쓸모없는
05000000 - 탄약 카트 - 쓸모없는
06000000 - 치료사 천막 - 쓸모없는

>>> 무기슬롯 가능 !!!
07000000 - 켄타우로스의 도끼
08000000 - 죽음의 블랙 샤드 기사
09000000 - 놀의 곡갱이
0A000000 - 파괴의 오우거의 클럽
0B000000 - 지옥의 검
0C000000 - 타이탄의 글라디우스

 방패슬롯 가능
0D000000 - 드워프 군주의 방패
0E000000 -하품 자의 방패
0F000000 - 놀 왕의 버클러
10000000 - 난폭 한의 사람 잡아 먹는 귀신의 르그
11000000 - 댐의 쉴드
12000000 - 센티넬의 방패

투구 슬롯 가능
13000000 - 석고 유니콘의 투구
14000000 - 두개골 투구
15000000 - 혼돈의 투구
16000000 - 최고 마법의 면류관
17000000 - 헬스톰 헬멧
18000000 - 천둥 투구

갑옷
19000000 - 석화 나무의 껍질
1A000000 - 갈비 갑옷
1B000000 - 바실리스크 갑옷
1C000000 - 싸이클롭스 왕의 튜닉
1D000000 - 유황 의 흉갑
1E000000 - 타이탄의 흉갑

공방전부 올라감. 세트
1F000000 - 경이의 갑옷
20000000 - 성자의 샌들
21000000 - 행복의 천상 목걸이
22000000 - 용기의 사자의 방패
23000000 - 심판의 검
24000000 - 영원한 깨달음의 투구

세트
25000000 - 용의 조용한 눈
26000000 - 용의 불뿜는 혀 
27000000 - 용의 방패
28000000 - 용의 갑옷
29000000 - 용의 도가니
2A000000 - 용의 날개 
2B000000 - 용의 넥타이
2C000000 - 용의 왕관
2D000000 - 용의 눈

2E000000 - 행운의 클로버
2F000000 - 예언의 카드
30000000 - 무당 벌레
31000000 - 용기의 배지
32000000 - 용맹의 문장
33000000 - 용맹의 그리프

34000000 - Specumum (망원경1)
35000000 - Spyglass  (망원경 2)

36000000 - 장의사의  아뮬렛
37000000 - 뱀파이어 코트
38000000 - 죽은자의  부츠

저항
39000000 - 방해 용품
3A000000 - 카운터 포스의 서 코트
3B000000 - 극성의 장화


3C000000 - 엘프 체리 우드의 활
3D000000 - 유니콘의 갈기의 보우
3E000000 - 천사의 깃털 화살

독눈
3F000000 - 새의 지각
40000000 - 스토아 파수꾼
41000000 - 인식의 상징

외교
42000000 - 정치가의 메달
43000000 - 외교관 반지
44000000 - 대사의 띠

속도
45000000 - 고리의 반지

이동력
46000000 - 승마 장갑

47000000 - 바다 안내 목걸이

48000000 - 천사의 날개
마나회복
49000000 - 마나의 매력
4A000000 - 마나의 부적
4B000000 - 마나의 신비의 보주

4C000000 - 신비의 고리
4D000000 - 신비의 반지
4E000000 - 신비한 신의 고리

4F000000 - 궁창의 궁둥이
50000000 - 신비한 자의 구슬
51000000 - 추위의 불의 자루
52000000 - 비를 몰고가는 구

53000000 - Recanter 's 망토
54000000 - 악령의 모래 시계
55000000 - 악의 모래 시계 시간
56000000 - 불의 마법의 집
57000000 - 바람의 마법의 집
58000000 - 물 마법의 집
59000000 - 지구 마법의 집

5A000000 - 부양의 부츠

5B000000 - 황금 활

5C000000 - 영속의 영역
5D000000 - 취약성의 보주

5E000000 - 생명력의 반지
5F000000 - 생명의 반지
60000000 - 생명의 피를 흘림

61000000 - 신속의 목걸이
62000000 - 속도의 장화
63000000 - 속도의 망토

목걸이
64000000 - 신속의 펜던트
65000000 - 두 번째 시야의 펜던트
66000000 - 거룩함의 펜던트
67000000 - 생명의 펜던트
68000000 - 죽음의 펜던트
69000000 - 자유 의지의 펜던트
6A000000 - 교반 펜던트
6B000000 - 총 리콜 펜던트
6C000000 - 용기의 펜던트

자원
6D000000 - 크리스털 외투
6E000000 - 무한 보석 반지
6F000000 - 수은을 쏟아내는 유리 병
70000000 - 광석의 불가결 한 카트
71000000 - 무한한 유황 반지
72000000 - 목재 카트
73000000 - 금의 끝없는 자루
74000000 - 금의 끝없는 가방
75000000 - 금의 끝없는 지갑

76000000 - 군단의 다리
77,000,000 - 군단의 허리
78,000,000 - 군단의 몸통
79000000 - 군단의 무기
7A000000 - 군단의 헤드

7B000000 - 바다 선장님의 모자
7C000000 - 스펠 바인더의 모자

7D000000 - 전쟁의 족쇄
7E000000 - 금지의 구슬

콤보 인공물 :

7F000000 - 용의 약병
80000000 - 아마겟돈의 칼날
81000000 - 천사 동맹의 검
82000000 - 언데드 왕의 망토
83000000 - 생명의 비약
84000000 - 저주 받은  갑옷
85000000 - 군단의 동상
86000000 - 드래곤의 아버지의 힘
87000000 - 타이탄의 번개
88000000 - 제독의 모자
89000000 - 궁수의 활
8A000000 - 마법의 원천
8A000000 - 부의 도시

댓글러 - save파일도 같은 시스템입니다. 훨씬 쉽습니다.
다만 압축 되어 있으므로 winrar등을 통해 압축을 해제하시오,
그리고 끝난후는 winrar아 아닌 7zip으로 다시 압축한후 확장자를 잘 바꾸면 됩니다.
>>>7zip으로 압축된 파일, 멀티플레이는 아마도 각 빨강부터해서 비밀번호를 입력하는 방식이지 않을까... 


댓글러  -- 긴글
- 세이브게임 내에서 각 영웅이 나열됩니다. 심지어 맵에서 사용할 수 없는 영웅까지 표시됩니다.  총 1094바이트를 사용합니다.

- 만약 캠페인 게임의 세이브게임이라면, 전 맵들의 정보도 함께 딸려옵니다. 세이브 게임은 딸려온 영웅의 정보를 다른 부분에 포함할 것입니다. 그 말은 한 세이브 게임내에 두가지 영웅 설명이 있을 것을 말합니다. 첫번째는 특정 특정맵에서 시작해서 만들어져온 영웅의 정보, 두번째는 이 맵동안에 얻은 정보입니다. 이것은 나중에 당신이 다시 시작할 때 를 위해서 필요합니다.

- 영웅의 이름이 가장 명확하게 보이고, 세이브게임 내에서 가장 쉽게 발견되어, 히어로의 ㅊ이름 첫번째 글자를 오프셋으로 사용합니다. 모든 값은 little endian입니다.

Offsets from    |  Data type
first letter        |
of Hero name|
-195 .. -194    탑레프트를 기준으로(0) x좌표
-193 .. -192    탑 레프트를 기준으로(0) y좌표
-191            Z좌표 (0 =지상 , 1 = 지하)
>>> 음 layer추가가 가능할까??
-190 .. -160    ? Unknown, Hero specifics? Portrait, angle, looks?
-159 .. -151    ?영웅정보로 보임 ; 158 은 클래스 정보
-150 .. -147    x 축 도착지 마커  >> 자기 위치도 2바이트인데 도착지 마커가 왜 4바이트?
-146 .. -143    y축 도착지 마커
-142 .. -139    영웅 레벨 과 관련됨 3바이트는 레벨이나 한개는 모르는듯.
-138 .. -135    최대 이동력
-134 .. -131    남은 이동력
-130 .. -127    경험치
-126 .. -123    히어로 시트에 몇개의 스킬슬롯이 보일 것인가(제한 값으로 보이는데 맞나) 000000 >> 0800000까지 인듯
-122 .. -121    Mana points
-120            영웅 레벨 ( 이게 무슨 소리인가)
-119 .. -57     임시 버퍼 (???)
-56  .. -29     유닛아이디 (note 1)
-28  .. -1      유닛 양 (note 2)
+0   .. +12     영웅 이름 12바이트  >> 더 긴이름 없었나???
+13  .. +40     스킬레벨  (note 3을 보라 )
+41  .. +68     스킬 슬롯 on sheet (쉬트상 몇번째인지 몇번째 스킬인지 의미일듯.)
+69  .. +72     1차스킬 아티팩트 정보 합산
+73  .. +212    마법 (note 5를 보라)
+213 .. +876    들고다니는 아티팩트  (see note 6)

note 1 : 7개의 4바이트 정보 empty는 FF FF FF FF이다. (  -1)
note1 : 그 해당 자리에 총 숫자
note 3: 순서에 따라 정해진 스킬  00 (안배운)부터 03(전문가)까지
note4: note3과 동일한 순서로 최상단부터 1-8 그리고 나머지는 0이며, 01-08 값은 단독이어야 만한다.
note5: 마법은 70바이트의 두 문자열이다. 동일한 순서이며, 00 또는 01을 가진다. 상위 70바이트는 그의 스펠북에 그 마법이 기재되어 있는가를 나타내며, 하위 70바이트는 그 스펠북에 마법이 사용가능한가를 나타낸다. 마법스크롤 마법책, 에 따라 값을 가질 수 있다. (교육술로 아이템이 주는 마법 못쓰는 이유이다. )
note6: 아티팩트는 83개의 8byte문자열이다. 상위 4바이트는 아티팩트ID이다. 하위 4바이트는 스펠스크롤에서만 사용된다. 그렇지 않은 경우는 FF FF FF FF이다. 이 순서는 아티팩트가 보여지는 순서이다. *표는 특수 슬롯이다 >>>웬만하면 건드리지 말라.

+213 .. +216 투구 슬롯 t
+221. +224 망토 슬롯
+229 .. +232 목 슬롯
+237 .. +240 무기 슬롯
+245 .. +248 실드 슬롯
+253 .. +256 장갑 슬롯
+261 .. +264 왼쪽 링 슬롯
+269 .. +272 오른쪽 링 슬롯
+277 .. +280 부츠 슬롯
 +285 .. +288 위쪽 슬롯
+293 .. +296 두 번째 슬롯
+301 .. +304 3면 슬롯
+309 .. +312 하단 슬롯, 우측
+317 .. +320 발리 스터 슬롯 *
+325 .. +328 탄약 장 카트 슬롯 *
+333 .. +336 응급 처치 천막 슬롯 *
+341 .. +344 투석기 슬롯 *
+349 .. +352 마법 책장 슬롯 *
+357 .. +360 하단 슬롯, 왼쪽
+365 .. +368 인벤토리 슬롯 1
+373 .. +376 인벤토리 슬롯 2
+381 .. +384 인벤토리 슬롯 3
+389 .. +392 인벤토리 슬롯 4
+397 .. +400 인벤토리 슬롯 5
+405 .. +408 인벤토리 슬롯 6
+413 .. +416 인벤토리 슬롯 7
+421 .. +424 인벤토리 슬롯 8
+429 .. +432 인벤토리 슬롯 9
+437 .. +440 인벤토리 슬롯 10
+445 .. +448 인벤토리 슬롯 11
+453 .. +456 인벤토리 슬롯 12
+461 .. + 464 인벤토리 슬롯 13
+469 .. +472 인벤토리 슬롯 14
+477 .. +480 인벤토리 슬롯 15
+485 .. +488 인벤토리 슬롯 16
+493 .. +496 인벤토리 슬롯 17
+501 .. +504 인벤토리 슬롯 18
+ 509 .. +512 인벤토리 슬롯 19
+517 .. +520 인벤토리 슬롯 20
+525 .. +528 인벤토리 슬롯 21
+533 .. +536 인벤토리 슬롯 22
+541 .. +544 인벤토리 슬롯 23
+549 .. +552 인벤토리 슬롯 24
+557 .. +560 인벤토리 슬롯 25
+565 .. +568 인벤토리 슬롯 26
+573 .. +576 인벤토리 슬롯 27
+581 .. +584 인벤토리 슬롯 28
+589 .. +592 인벤토리 슬롯 29
+597 .. +600 인벤토리 슬롯 30
+605 .. +608 인벤토리 슬롯 31
+613.. + 616 인벤토리 슬롯 32
+621 .. +624 인벤토리 슬롯 33
+629 .. +632 인벤토리 슬롯 34
+637 .. +640 인벤토리 슬롯 35
+645 .. +648 인벤토리 슬롯 36
+653 .. +656 인벤토리 슬롯 37
+ 661 .. +664 인벤토리 슬롯 38
+669 .. +672 인벤토리 슬롯 39
+677 .. +680 인벤토리 슬롯 40
+685 .. +688 인벤토리 슬롯 41
+693 .. +696 인벤토리 슬롯 42
+701 .. +704 인벤토리 슬롯 43
+709 .. +712 인벤토리 슬롯 44
+717 .. +720 인벤토리 슬롯 45
+725 .. +728 인벤토리 슬롯 46
+733 .. +736 인벤토리 슬롯 47
+741 .. +744 인벤토리 슬롯 48
+749 .. +752 인벤토리 슬롯 49
+757 .. +760 인벤토리 슬롯 50
+765 .. + 768 인벤토리 슬롯 51
+773 .. +776 인벤토리 슬롯 52
+781 .. +784 인벤토리 슬롯 53
+789 .. +792 인벤토리 슬롯 54
+797 .. +800 인벤토리 슬롯 55
+805 .. +808 인벤토리 슬롯 56
+ 813 .. +816 인벤토리 슬롯 57
+821 .. +824 인벤토리 슬롯 58
+829 .. +832 인벤토리 슬롯 59
+837 .. +840 인벤토리 슬롯 60
+845 .. +848 인벤토리 슬롯 61
+853 .. +856 인벤토리 슬롯 62
+861 .. +864 인벤토리 슬롯 63
+869 .. +872 인벤토리 슬롯 64

Spells
Position and which spell
   Spell ID
      Spell name
0  00 Summon Boat
1  01 Scuttle Boat
2  02 Visions
3  03 View Earth
4  04 Disguise
5  05 View Air
6  06 Fly
7  07 Water Walk
8  08 Dimension Door
9  09 Town Portal
10 0A Quick Sand
11 0B Land Mine
12 0C Force Field
13 0D Fire Wall
14 0E Earthquake
15 0F Magic Arrow
16 10 Ice Bolt
17 11 Lightning Bolt
18 12 Implosion
19 13 Chain Lightning
20 14 Frost Ring
21 15 Fireball
22 16 Inferno
23 17 Meteor Shower
24 18 Death Ripple
25 19 Destroy Undead
26 1A Armageddon
27 1B Shield
28 1C Air Shield
29 1D Fire Shield
30 1E Protection from Air
31 1F Protection from Fire
32 20 Protection from Water
33 21 Protection from Earth
34 22 Anti-Magic
35 23 Dispel
36 24 Magic Mirror
37 25 Cure
38 26 Resurrection
39 27 Animate Dead
40 28 Sacrifice
41 29 Bless
42 2A Curse
43 2B Bloodlust
44 2C Precision
45 2D Weakness
46 2E Stone Skin
47 2F Disrupting Ray
48 30 Prayer
49 31 Mirth
50 32 Sorrow
51 33 Fortune
52 34 Misfortune
53 35 Haste
54 36 Slow
55 37 Slayer
56 38 Frenzy
57 39 Titan's Lightning Bolt
58 3A Counterstrike
59 3B Berserk
60 3C Hypnotize
61 3D Forgetfulness
62 3E Blind
63 3F Teleport
64 40 Remove Obstacle
65 41 Clone
66 42 Fire Elemental
67 43 Earth Elemental
68 44 Water Elemental
69 45 Air Elemental


댓글러 -- 긴글
- 당신이 마법길드 정보를 고치기를 원한다면 할수 있다.
타운의 이름을 오프셋 0으로 정할 때 , 마법길드 마법은 다음과 같이 정해진다.

+125 .. +148 Tier 1 Mage Guild spells
+149 .. +172 Tier 2 Mage Guild spells
+173 .. +196 Tier 3 Mage Guild spells
+197 .. +220 Tier 4 Mage Guild spells
+221 .. +228 Tier 5 Mage Guild spells

4바이트씩 6개의 마법을 채워넣을 수 있다. 다만 5레벨은 2개뿐이다.
접근 가능한 마법까지만 채워져 있으며, 어느 타운에서도 접근이 불가능한 마법의 경우는 쓰래기 깞이 채워져 있으며, 00000000또는 다른 값도 포함되기도 한다. 타워의 경우는 다른 값이 채워져있을 수 있지만, 오직 도서관을 통해서만 접근 가능하다.  마법길드를 다 못짓는 3개의 타운의 경우는 불가능 티어의 마법에는 FF FF FF FF 값이 들어 있다.



2019년 3월 18일 월요일

iconv 때문에 망했다. 해결가능하신분이 있다면 답변좀,< 파랜드 택틱스 마법 파싱 프로그램이다. >


마법설명부분은 주석 제거하면 된다. 저 부분은 파택2에만 포함되어 있는 부분이다.

iconv가 아주 지랄같다. 

bash에서 head -c 20 |iconv -f euc-kr -t  하면 아주 잘 된다. 

그런데 glib에 있는 iconv를 불러서 사용하면 이 지랄이 난다. 

뭔가 16bit나 32bit computer문제에 little, big-endian 문제가 섞인거 같기는 한데...

어디에서 생긴 문제인지를 모르겠다. 


뭐 어쩌겠는가... 안 되면 어쩔 수 없는거지... 



ps:헥스에디터로 자기 속성에 맞는 브레스 마법을 모든 캐릭에게 얹어주니 게임이 아주 
빨리 진행되고 재미 있다. 


/*!
* \file a.c * \brief * * <+DETAILED+> * * \author KIM Hyeok (kh), ekh0324@gmail.com * * \internal * Created: 2019년 03월 18일 * Revision: none * Compiler: gcc * Organization: Konkuk University * Copyright: Copyright (c) 2019, KIM Hyeok * * This source code is released for free distribution under the terms of the * GNU General Public License as published by the Free Software Foundation. */ #include #include #include #include #include #include extern int errno; int main() { /* iconv_t ic = iconv_open("UTF-8", "CP949"); */ /* iconv_t ic = iconv_open("CP949", "UTF-8"); */ // iconv_t ic = iconv_open("UTF8//IGNORE", "CP949"); iconv_t ic = iconv_open("UTF-8", "CP949"); // iconv_t ic = iconv_open("UTF-8//TRANSLIT//IGNORE", "CP949//TRANSLIT//IGNORE"); // iconv_t ic2 = iconv_open("utf-8", "cp949"); if (ic == (iconv_t)(-1)) { perror("iconv_open"); return 1; } char buf[1000]; FILE * input = fopen("magic1.dat", "r"); char* strings = malloc(1000); short level, mana, firewater, windearth, lightdark; short min, max; char* filename= malloc(25); short sound, targettype, magictype,charactertype; char* description = malloc(21); char* outbuf= malloc(1000); char* inbuf = malloc(100); size_t insize,outsize; size_t result; // fread(inbuf, 1, 108, input); while(!feof(input)) { memset(inbuf, 0x00,100); insize = 20; outsize = 400; memset(inbuf, 0x00,insize); memset(strings, 0x00,1000); memset(outbuf, 0x00,1000); fread( inbuf, 1,insize, input); insize = strlen(inbuf); result = iconv(ic, &inbuf, &insize,& outbuf, &outsize); if (result < 0) { int err = errno; strerror_r(errno, buf, sizeof(buf) ); printf("result : %ld, errno : %d(%s)\n", result, errno,buf); return(-1); } else { fprintf(stderr, "[%s][(%ld)\n",outbuf, outsize); } memcpy(strings,outbuf, 300 ); memset(strings+300, 0x00, 10);; fread( &level, 2,1, input); fread( &mana, 2,1, input); fread( &firewater, 2,1, input); fread( &windearth, 2,1, input); fread( &lightdark, 2,1, input); fread( &min, 2,1, input); fread( &max, 2,1, input); insize = 12; fread( filename, 1,insize, input); filename[24] = '\0'; fread( &sound, 2,1, input); fread( &targettype, 2,1, input); fread( &magictype, 2,1, input); fread( &charactertype, 2,1, input); outsize = insize = 12; /* fread( inbuf, 1,insize, input); * iconv(ic, &inbuf, &insize, &description, &outsize); * description[20] = '\0'; */ printf("name:%s\n", strings); printf("배우는 레벨은 %d\n", level); printf("사용하는 마나는 %d\n", mana); if ( firewater>0 ) { printf("불마법 (+%d)\n", firewater); }else if (firewater <0 -firewater="" d="" if="" n="" printf="" windearth="">0 ) { printf("대기마법 (+%d)\n", windearth); }else if (windearth <0 -windearth="" d="" if="" lightdark="" n="" printf="">0 ) { printf("빛마법 (+%d)\n", lightdark); }else if (lightdark <0 -lightdark="" :="" d="" description="" filename="" max="" min="" n="" printf="" puts="" s="" span="">

2019년 3월 4일 월요일

USB 4 스펙이 공표되었다. (탐즈발)

USB 표준을 제정하는 USB Promoter Group은 2019년 중반에 USB 4 아키텍처로 옮겨갈 것이라 공표했다. 

새로운 빠른 인터페이스는 Thunderbolt3가 지원하며, USB 3.2 대역폭의 두배인 무려, 40Gbps 대역폭을 지원한다. 


대충 발번역하기로, USB 표준 제정에 공헌하는 인텔이 Thunderbolt3 표준을 USB 4로 넣기로 결정한 것으로 보인다. (내말)

인텔은 로열티를 받지 않기로 하였기 때문에, 많은 칩제조사들이 비용을 지불하지 않아도 될 것이다. (진작에 그러지, 2017년에 이미 로열티는 포기한듯.
물론 USB3 표준에 들어가는것에 대한 로열티를 포기한 것은 아니니 조금의 의미는 있음... )

USB4는 인증 된 USB Type-C 케이블을 사용하고 2레인 인터페이스에서 최대 40Gbps의 처리량을 보인다고 한다. 





이미 Type-C 케이블로 다 처리하고 있는 상황이고,  슬롯 옆에 이미지로 구분하고 있는 상황인데다가 썬더볼트처럼, 파워도 전송하고 있는 상황이니, 그냥 앗싸리, 넣는걸로 결정한듯함. 소비자들이 점점 혼동할 테니 의미있는 변화인듯 하다. 그런데 pci express 신호는 포함이 아닐 것 같은데 표준이 완전히 제정되고 나서 확인해보면 될것 같다. 

저 2레인의 인터페이스라는건, Type-A로도 20Gbps의 성능이 나올 것으로 보인다. 일단 현재 있는 프로토콜로는 이 정도 속도가 안나올 것으로 보이는데, pci express 위키문서를 봐도, 128b/130 인코딩 보다 더 큰 넘은 안보인다.  

그냥 클럭을 두배로 올리는 것 같은데... 여유가 있을지는 모르겠고, 
1.5m 이하에서만 사용되는 근거리 인터페이스가 될 것 같다.  

저렇게 발표해놓고, 그냥 4-lane을 쓰거나 할 수 도 있을 것 같은데, 핀수가 많으니까, 

음??? 


USB 3.2를 준수하는 물건도 안나오는 판에... 너무 빨리 진행되고 있는 것은 아닌가 싶기도 하다.  10Gbps x 2 도 표준 나오기 전에 만들은 물건들은 본것 같은데... 

음 어떻게 되려나... 

2019년 1월 9일 수요일

운전병 전역 후 10년만에 알게 된 사실 충격과 공포...

우연히 군면허를 사회면허로 바꾸는 것에 대한 관심이 생겨...

정확한 정보를 찾아보았다.



우리부대는 K-511 병력수송 차량을 모는 친구들이 전체 운전병의 반 이상이었는데...

아무도 군 운전 경력으로 사회 대형면허를 따는 혜택을 못보았다.



우리 수송부에서는 K-511은 중형이라 당연히 아니었고, K-711을 모는 친구들도 K-713덤프만 대형으로 바꿀 수 있다고 하였는데(우리부대에는 없음.)

이게 다 사실이 아니었다.  물론 똥차를 모는 친구와 유조차를 모는 친구들은 다 사회 대형면허를 받아 갔다. 트레일러를 모는 친구들도 이 혜택을 받았다.


수송부에서 잘못 알려줄 만 한 이유는 이와 관련된 공식문서는 아래아 한글 문서 2페이지로 되어 있는데, 1페이지만 읽었을 경우는 이러한 답이 나온다.

그런데 2페이지에는 차종별로 자세히 나와 있고, K-511과 K-711의 경우는 옆에 별표로 예외 사항에 대해서 자세히 나와 있다.



K-511, K-711은 군운전경력확인서에 병력수송 경력이 명시되어 있어야 하며,  그 경력이 3000km이상인 자에 한한다고 되어 있다.

뭐 일단, 병력수송으로 전차대대에서 3000km 나오기는 굉장히 어렵다. 사오톤 운전병들이야 3000km 4박5일 포상을 두번도 받는 친구들도 있다지만, 대부분이 물자수송이라 어려울 것이다.

그래도 2중대 중형차 몰던 후임(나보다 2살인가 많았던)은 수송부 소대장이 참으로 좋아해서 상병 달 즈음에 3000km 포상을 받았으니, 알았으면 전역전에 병력수송으로 대형면허를 얻을 자격을 얻지 않았을까 생각한다.
(이 친구는 근데 사회 견인차 면허를 얻어갔을거라서 뭐... )



내가 운전을 좀만 잘했어도, 두돈반도 몰았을텐데...
나는 신임을 전혀 받지 못했으므로, 뭐 기회조차 없다.



30대 아저씨들 갑자기 군대 생각에 검색하다가 여기 들어왔으면, 어차피 자동차 보험할인 때문에 군운전경력확인서 때시니까 그 때 확인을 좀 해보시길 바랍니다.  여러분들의 운전면허증이 갑자기 대형면허증이 될 수가 있다구요ㅗ.


 전역 후 1년만 가능하다는데???

2019년 1월 2일 수요일

히어로즈커뮤니티번역: Rules for (Creature) Spells and Orbs


Evil_Warrior가 유닛의 면역과 저항에 대해 (좋은)리스트를 만들었다.  링크는 다음과 같다. (지만 그냥 여기다 넣어서 기술한다. ) 
틀린 부분은 괄호로 수정한다. 

Resistance VS Immunity

얼마전에도 다른 쓰레드를 포스트 했다. (하지만 올리지 않을것) 그랬지만, 하나의 새로운 토픽을 또 던지도록 하겠다. 참여하라.

때때로 우리는 몇몇 유닛들에게 몇몇 마법이 작용하지 않는 모습을 본다. 그것은 두가지의 가능성이 있다. 첫째는 유닛이 특정 마법에 면역되어 있는 것이며, 두번째는 유닛이 마법을 저항하는 것이다.  때때로, Angelito에 따르면 H3의 도움말과 메뉴얼은 저항과 면역에 대해서 틀린 정보를 준다. 

예를 들면,
1.  메뉴얼은 블랙드래곤이 모든 마법에 면역이라고 말한다. 이것은 틀렸다. 이것은 블랙드래곤이 모든 마법에 저항한다고 쓰여야 한다.
2. 같은 이유로, 타이탄은 정신마법에 면역이지 않으며, 정신마법에 저항한다. 
3. 동굴인은 눈멀기 마법에 면역이라고 나와 있다. 이것은 사실이다. 



그렇다면 어떤 것이 면역이고 어떤 것이 저항인지 설명해보자.

H3에는 총 3가지의 크리처 타입이 있다.  Living, Unlining, 그리고 Undead이다. 

Living Creature

모두 공통적으로 사기를 가지고 있으며, 마법, 아티팩트, 그리고 영웅의 사기의 의해서 변경가능하다. 

모든, Living creature는 언데드파괴 마법과, 시체살리기 마법에 면역된다. 

드워프와 배틀드워프는 각각 20%, 40%의 확률로 적의 마법에 저항할 기회를 가진다.  ((내가 쓴 마법이 마법반사에 의해 반사된 상황일 때는, 확인이 필요))

유니콘과 워 유니콘은 인접한 셀의 우리편에게 적의 마법에 저항할 기회를 준다. (20%)

블랙드래곤은 모든마법에 저항한다.(Lv0 마법은 확인해야함) 
골드드래곤은 1-4Lv마법에 저항한다. 
그린드래곤, 레드드래곤, 에이져드래곤은 Lv1-3마법에 저항한다. 

자이언트와 타이탄은 모든 정신마법에 저항한다. 
정신마법은 망각, 눈멀기, 최면, 버서크, 환희, 슬픔, 격노를 말한다. 

불새, 피닉스, 이프리트(술탄)은 모든 불 마법에 저항한다. 

동굴인은 눈멀기 마법에 면역이다. 


Unliving Creature


가고일을 제외하고는 사기가 중립이다. 이들은 부활할 수 없다. 
이들은 모두 언데드파괴, 시체살리기, 부활, 희생 마법에 면역이다.  

정령류와 골렘은 환희 슬픔 마법에 면역이며, 나머지 정신마법에 저항한다. 

정령류 각각은 새로 쓴다. 

크리스탈 드래곤은 드워프 처럼 20%의 확률로 적의 마법에 저항한다. 

Undead Creature

언데드 크리처는 정신마법에 따라 저항과 면역으로 나뉘는데,
눈멀기, 환희 슬픔에는 면역이며, 망각, 버서크, 격노, 최면에 저항한다. 
이들은 부활, 희생, 데스리플, 축복, 저주에 면역이다. 


저항아티팩트 
저항할 기회를 주는 아티팩트 세종류가 있다. 5,10,15%
용기의 뱃지는 버그로, 모든 정신마법에 저항이나, 등급이 버그인지, 기능이 버그인지 모르겠다. 

면역 아티팩트
각종 팬던트는 그 마법에 면역이다. 아마겟돈 블레이드도 면역이다. 드래곤 조상의 힘은 모든 1-4Lv마법에 면역한다. 


취약점의 구슬 아티팩트는 모든 마법저항을 무시한다. 단 유니콘의 능력은 무시하지 못한다. 

Rules for (Creature) Spells and Orbs

Magic Resistance
마법저항()은 특별한 저항이다. x% 마법저항이라는 뜻은 타겟이 되었을 때 x%의 마법을 저항을 가진다라는 의미이다. 이것은 캐스트된 마법과 작용된 마법을 포함한다. 
  만약 마법저항력이 100%를 넘어갈 경우, 마법의 대상이 될 수 없다. 

Artifacts and places that affect spellcasting

취약점의 구슬은 모든 저항을 무효화 한다. Hota 외의 버전에서는 적의 저항만 무효화 하지만, HoTA는 모두 무시한다. 
  유닛의 공격에 따른 데미지 변화는 영향을 주지 못한다. (정신의 정령에게 타이탄이 공격받을 때 50%만 입는 상태로 그대로 )

억제의 구슬은 모든 캐스팅을 막을 수 있다. 생물의 능력은 이런 의미에서 캐스트로 간주되지 않고 적용된다. 
  대천사의 부활, 악마소환, 정령의 원소보호 주문, 페어리 드래곤의 마법시전, 지니의 마법 등이 캐스트된 마법이다.   
  크리처의 공격으로 부터 비롯되는 것은 'cast'로 분류되지 않는다.  드래곤 플라이의 약화 등이 포함된다. 

Recanter`s Cloak(나그네의 망토로 알고 있는데 구글 번역기가 모르는데) 이것은 다르게 작용한다. 3,4,5 마법을 예방한다. 이것은 Lv3-5에 해당하는 유닛의 어빌리티도 막는다. 스콜피코어의 마비가 Lv4에 해당한다. 

저주 받은 땅은 나그네의 망토처럼 작용하지만 두가지 예외사항이 있다. 
이것은 Lv2도 막는다. 
유닛은 Lv1 마법도 'cast'할 수 없다. 피의 굶주림, 불마법 저항, 물마법 저항이 이에 해당 한다. 

기한이 없는 즉발되는 능력은 이에 포함 되지 않는다. 뱀파이어로드의 'Drain' 파워리치의 'Death Cloud' 에이저 드래곤의 'Fear' 강곤의 'Death Stare' 등이 이에 해당한다. (천둥새는 cast 인가 보다. 이게 범주가 이상하다. )


Creature Resistances/Immunities
동굴인은 눈멀기, 유니콘의 눈멀기, 메두사, 바실리스크의 석화에 면역이다. 그리스 로마 신화를 보면 눈이 있어야 하기는 하다. 

언데드는 눈멀기, 축복, 저주, 공포, 생물에 작용하는 마법에 면역이고, 나머지 정신마법에 저항한다. (유니콘의 눈멀기는 통하나 보다. 테스트 해보자)

골렘은 공포에 면역이고 생물에 작용하는 마법에 면역이며, 언데드에만 작용하는 마법도 면역일 거다.  나머지 정신마법에 저항ㅎ나다. 
  피해마법과, 이프리트술탄의 불방패에 대해 피해감소가 골렘에 따라 작용한다. 

가고일은 희한하게도 골렘에 사기가 있는 형태다.

정령은 골렘처럼 면역이고, 정신마법과 눈멀기에 저항한다. 

공기폭풍의 정령은 미티어 샤워에 저항하며, 라이트닝볼트 체인라이트닝, 아마게돈 마법에 두배에 데미지를 받는다. 

물얼음 정령은 아이스볼트 프로스트 링에 저항하며, 불마법에 두배의 데미지를 입는다. (불방패는 아니라는 것 같던데)

불에너지 정령은 이프리트 술탄의 불방패 피해에 면역이며, 불마법과 마법의 화살 마법에 면역이다. 물마법 피해를 두배 받는다. 

땅마그마 정령은 라이트닝 볼트 체인라이트닝 아마게돈 마법에 저항하며, 미티어 샤워 마법에 두배의 데미지를 받는다. 

마법의 정령은 0-5Lv 마법에 저항한다. 

불새, 피닉스, 이프리트(술탄)은 이프리트 술탄의 불방패 피해에 면역이며, 불마법에 저항한다. 

자이언트 타이탄은 정신마법과 눈멀기 마법에 저항한다. 

그린 골드, 레드, 블랙, 하늘색(에이저) 드래곤은 Lv0마법에 대해서도 100% 저항한다. 유닛의 마법을 포함한다. 

크리스탈 드래곤은 20% 마법의 저항이 있다. 

하늘색 드래곤은 공포에 면역이다. 



Notable Spells and Creature Spells

안티매직은 마법이 사용될 때, 작용된 모든 나쁜 마법효과를 제거하며, 좋은 효과는 남는다. 안티매직은 'cast' 마법에 저항한다. 독특한 예외로 드래곤 플라이의 Weakness가 있다. 이 마법이 다른 유닛을 때릴 때, 전체마법으로(마법의 땅) 걸릴 경우 저항한다. 

드래곤 플라이의 약화는 중급의 약화 마법처럼 작용한다. 마법의 땅에서는 고급 수준으로 작용한다, 그러나  이것은 맞은 적에 한해서 먼저 작용한다.(맞은 적이 저항하면, 전체마법이 안 써짐.)  맞은 적이 다음과 같을 때는 작용하지 않는다.  
1. 유닛이 죽을때, 
2. 마법에 저항할 때, 
3. 이미 약화에 걸릴때, (심지어 초급이나 보통 level이어도 그렇다. 약화마법을 쓰지 말자)
4. 약화에 저항이나 면역일 때, 
5.  배틀드워프(등)가 마법의 땅에서 공격을 받는다면, 먼저 자신의 마법저항으로 저항할 기회를 가지고, 저항에 실패할 시, 고급 약화가 걸리고 다시 이 마법에 저항할 기회를 가진다.  배틀드워프 혼자 한해서 저항할 확률은 40%+60%*40%= 64%... 

드래곤 플라이의 디스펠은 Lv0이고 모든 공격에 자동으로 '작용'한다. 어떤 크리처도 이것에 면역이지 못한다. 그리고 저항할 수도 없다. (드워프 등) 마법의 땅에서도 전체마법으로 작용하지 않는다.  (골드드래곤에게 마법반사를 걸고 때려봐야 알 듯, 뭔가 여기저기서 모순이 발견된다.)

와이번 모나크의 중독은 Living creature에만 작용하며, 0Lv이며 3라운드 동안 작용한다. 즉시 최대 HP가 10% 감소하며 다음 전투턴마다 10%씩 추가 감소하여 30%까지 감소한 후, 만료된 후에도 효과가 제거되지 않는다.  최대 50%까지 감소할 수 있다.  가장 위에 있는 유닛을 포함하여 HP가 감소하며, 이것으로 유닛을 죽일 수는 없다.  이것은 치료로만 제거 가능하다. 치료로 제거될 때, 가장 위의 유닛은 해당하는 HP만큼 회복한다. 
예)에이저 드래곤이 와이번모나크에게 3의 데미지를 입고 중독에 걸린다면, 1000-3=997이 되고 즉시  897/900이 되고, 3round 작용하면, 697/700이 되고, 치료마법을 맞으면, 300+5*마력 만큼 회복되면서 1000/1000이 된다.
  4색 드래곤에게 안 걸린다. 테스트 해봤다. 
  
고스트 드래곤의 노화는 Living creature에만 작용한다. Lv5에 해당하며, 3round 동안 작용하고 만료되고 사라진다.  효과는 즉시 최대 체력이 50%가 되며, 중독과 같은 방식으로 작용한다. 체력이 없을 때, 노화에 걸린다면 3턴간 도망다니면 다시 체력이 501로  회복될 수 있다. 노화는 먼저 공격에 대한 데미지 계산을 완료한 후 추가로 최대체력의 50% 만큼 데미지를 주지만 유닛의 숫자를 줄일 수 없다. 에이져 드래곤을 죽이고 노화가 걸리면 500의 데미지를 줄 수 있지만, 체력이 적은 에이져 드래곤을 때려도 안죽었다면... 데미지는 거의 줄 수 없다. 7렙 유닛간의 싸움이 아닌 이상 이것은 무시해도 되지만 유닛이 죽었더라도 딱히 잘 걸리지가 않아서 의미가 없다.
   드워프, 배틀드워프+영웅저항력으로(SOD)에서 테스트한 결과, 노화도 저항력을 포함해서 확률을 계산한다.(infinitekh)


노화와 중독의 차이점은 여러가지가 있다. 노화는 블랙에게만 걸리지 않는다. 중독은 4색에게 모두 걸리지 않는다.노화는 선 효과이며, 중독은 후 효과라고 게임 메시지 창에나오나 실험해보니 그렇지 않다. 노화는 해제와 치료로 해제할 수 있다. 중독은 치료로만 해제할 수 있다.노화는 3턴이 지나면 다시 자동으로 회복된다. 중독은 3턴이 지나도 그대로 효과가 남아 있다.  


메두사 바실리스크 석화의 시선은 동굴인을 제외한 후 모두에게 영향을 줄 수 있다. 석화된 유닛은 절반의 데미지를 입고 최대의 힘으로 보복한다. (여기다가 눈멀기 마법이 걸릴 경우는 확인 필요)

이프리트 술탄의 불방패, 기본레벨의 불방패 주문과 같다. 화재 면역 생물에 영향을 주지 않는다. 골렘의 피해감소도 제대로 작용한다. 불마법 방어 마법이 정상 작동한다. 얼음과 물정령은 추가피해를 받지 않는다.  
  불방패가 추가로 걸릴 경우 하나만 작용한다. 
화재방패의 피해는 기본피해*(1+피해보상의 십집수 합계)이며, 즉 피해감소가 없었을 때를 기준으로 하며, 모든 유닛이 죽을 때에는 죽기위해 필요한 피해량을 가지고 계산한다.  근접페널티가 있는 적을 공격한 후 반격을 받고 죽지 않는다면,  반격데미지가 50이어도 불방패 데미지는 20이며, 고급 방패를 건 상태로 공격을 한다면 반격데미지가 35이고 불방패 데미지가 20일 수 있다. 여기에 타자르의 방어술이 있다고 생각하면 매우 짜증날 수 있다.  

스콜피코어의 마비는 모든 생물에게 영향을 줄 수 있는 Lv4의 마법이다. 3전투턴동안 작용하고, 마비된 병력은 완전히 데미지를 입고 50%의 힘으로 보복을 한다. 여기다가 이프리트술탄이 공격을 해도 윗 항목처럼 적용된다. 석화보다 효과가 좋다. 

좀비의 질병은 치료와 디스펠로 제거할 수 있는 2Lv마법이며 3라운드 동안 작용한다. 

유니콘의 눈멀기는 초급 눈멀기 마법이며, 마법의 땅에서는 고급수준으로 작용한다. 

유니콘의 오라는 인접 유닛들에게 20%의 마법저항을 준다. 이것은 다른 마법저항에 더해지는 양이 아닌 따로 체크되는 양이다. 심지어 오라들 끼리도 독립적으로 시행된다. 

정령의 속성마법 방어 마법은 6전투턴간 작용하며 각 정령은 3번의 기회를 가진다. 중급으로 cast하며 마법의 땅에서는 고급수준으로 작용한다. 이 방법만이 자신이 자기자신에게 보호마법을 걸 수 있는 유일한 방법이다. 

공포의 기사의 저주는 드래곤 플라이의 약화처럼 작용할 것이라 추정한다. 

썬더버드의 번개는 모르겠다. 

마스터지니는 골드드래곤에게 마법반사만 건다. (저항이 없을 때)

오우거메이지는 6전투턴간 작용하는 피의 굶주림 마법을 세번 쓸 수 있고, 중급수준으로 작용하며, 마법의 땅에서는 전문가 수준으로 작용한다. 

핏로드의 데몬소환은 죽은 living creature의 시체에만 사용가능한, Lv2의 마법이다. Pit Loards의 수에 50을 곱한 수만큼의 HP를 가진 데몬을 소환 할 수 있다. 데몬은 최대체력으로만 생성될 수 있으므로 최대체력이 아니면 내림 연산한다.  


뭐 열심히 썼는데 새로운게 없다. 

2018년 11월 26일 월요일

HOMM3)축복마법과 저주마법에 의한 데미지 기대값 변화

고급 저주마법이 반올림인지 올림인지 내림인지를 몰라서 그냥 내림으로 계산했다. 확인해보고 아닐 수 도 있다. 정말 재미 있는 부분은 저주와 축복이 서로 상쇄 관계에 있다는 것이다. 
  축복마법의 효율이 매우 뛰어나다. LV1-3은 고급축복에 대해서 다 1.5를 넘는다. '슬레이어' 마법이 매우 한정적인 상황에서 공격력을 8을 올려줌으로 인해 최대 1.4의 변화율을 보일 수 있게 된다.  블러드러스트나 정확마법도 최대 1.3까지의 변화율을 가지므로, 공격적으로 사용할 때는 블레스만한 마법이 없다.  
  저주마법의 변화율을 보라. 쉴드마법의 변화율이 잘나가야 0.7이고, 에어쉴드마법은 그나마 0.5이지만, 저주마법만 걸리면 천사를 제외하고는 전부 쉴드보다 강력하다. 사실 지혜 없이 슬로우를 안배운 상황에서는, 불마법도 상대적으로 쓸만하다. 
  
블레스 마법의 효율이 매우 좋다.  물정령도 블레스가 걸린다. 다만 마법의 정령은 걸리지 않는다. 
  저주 마법의 효율이 매우 좋다. 다만 불정령은 이프리트 만들면서 코드를 공유했는지 공격마법을 뺀 나머지 마법도 안 걸린다.  걸리는 친구 기준으로는 고급쉴드보다 좋다. 다만 쉴드에 면역인 유닛은 별로 없어서...

공기의 정령은 고급 축복, 고급 저주를 서로 상쇄 했을 때 효율이 최고이다. 
저주에 걸려있는 상태에서 축복을 걸면 9배 강력해진다. 그 반대도 생각할 수 있다. 
축복은 초반 확장하는데 있어서 있으면 좋은 마법이다. 하지만 없을 확률이 높다. 

저주마법의 효율을 보라.  끝내준다. 왠만하면 방패보다 좋다. 블랙드래곤의 경우는 쉴드가 안걸리니, 드래곤을 아낀다면 저주마법이다. 
순서가 이상하다는 것을 지금에야 알았다. 업그레이드 까지 포함해서 하위 3유닛과 그다음 3유닛이 똑같은 데미지라 그래프가 재미있다. 인퍼노의 희망(?)  고르곤과 와이번 이 두 유닛은 축복의 효율이 그리 좋지 못하다. 어차피 와이번은 성벽에서 쏘는 화살 맞아 죽고 고르곤은 머리수로 싸우니 다른 유닛에게 좋은 마법이니 좋은 마법이다. 
  저주마법에 굉장히 허약하다. 저주마법으로 상대하기도 좋고, 쉴드로 내 방어력을 올리는 방식은 파리들이 날아다니면서 툭툭치는 상황에서는 좋지 못하므로, 둘다 고급이면 포트리스 상대로는 저주를 사용하자. 하지만 보통은 슬로우를 건다.


축복효율이 그리 좋지 못한 종족이다. 개는 빌드오더상 밀려 있고, 
임프는 체약체의 비싸고, 그리고 어차피 마법길드에서 안나온다. 
고레벨 유닛들에게 효율이 고만고만하다. 다만 공격력 상승마법의 최강자는 여전히 축복이다. 
  저주 마법이 최고의 공격력 감소 디퍼프마법이지만, 유난히 똥개에게는 강력한 마법이다. 고급 저주가 있다면 똥개는 바보가 된다. 

안 걸리지만 일괄적으로 해봤다. 걸리기만하면 참 쓸만한 마법이지만, 언데드가 축복을 받는다는것은 좀 이상하다. 
  그냥 상대방에게 저주나 걸자 저주나올 확률이 54%라고 한다. 
고레벨 유닛의 축복 효율이 떨어진다. 초반확장에 있어서 매우 쓸만한 마법이다. 초급으로 엘프에게 1.25 고급으로 1.5이다. 고급 기준으로 2발이 세발되는 것이다. 
   일단 저주마법에 걸린다면, 쉴드보다 효율이 좋은 편이다. 그랜드 엘프 기준으로는 공기방패마법보다 좋다. 초급이어도, 그랜드엘프를 저주하도록 하자. 
비슷한 형상이다. 오크랑 고블린이 축복의 혜택을 많이 받는데, 별론 좋은 구성은 아니다. 울프라이더도, 1.43까지 나오므로, 쓸만하다. 초급은 1.14로, 굉장히 효율이 떨어지는 편.

저주마법의 효율은 고급유닛에게는 대략 0.6 언저리, 초급유닛들은 고블린 빼고 0.3 언저리다. 슬로우걸고 하나씩 때려잡다가 하나남은 오우거 무시하고 정리하다 후회하지말고 걸 수 있으면 걸자. 

축복효율이 극히 떨어지는 편이다. 초반확장시에도 초급축복이 그램린에게 효율이 1.33밖에 안된다. (1.33이면 다른 마법으로는 범접할 수 없이 큰 수이긴하지만 ) 나가는 고급기준으로 1.05, 1.03 상승이다. 그래도 3궁수에게 2.0, 1.25, 1.22라는 좋은 비율의 기대값 상승이 있으니 걸 수 있으면 걸자, 
  저주마법이 공기방패마법보다 못하다. 메이지만 같은 효율이다. 나가말고는 옆에 보호유닛들에게는 그래도 쓸만한 효율이다. 나가에게도 0.75,0.77은 되므로 대전투시에는 쓸만한 마법이다. 3궁수 체제에서 근거리 원거리로 이 정도만 되어도 어디인가.



이전 글에 히어로즈의 전투에서 한스택의 데미지 계산방식을 올렸다. 10기까지는 각각 한개체에 대해서 모두 따로 균일한 분포로 최저에서 최대 데미지뽑기를 한다고 하였다. 그렇기에 가운데가 볼록해져, 데미지의 기대값이 중요하다. 기대값을 기준으로 축복마법의 효율과 저주마법의 효율을 살펴보았고, 축복마법의 강력함과 저주마법의 강력함을 보았다. 

  특별히 방어력 상승용 마법의 대안으로 저주를 자주 살펴보았는데, 왠만한 상황에서는 저주가 좋은 대안이 되는 것을 알 수 있다. 

시스템 시작시(부팅시) 자동실행된 docker가 바로 실행되지 않는 문제를 어떻게 해결해야 할까??

내가 있는 다체계물리연구실에서 오랜기간 동안, sun grid engine 구축을 노력해왔다. 수많은 시도가 있었지만 tftp를 이용한 diskless grid는 구축을 하지 못했지만,   결국에 유의미한 결과를 얻었다. Ubuntu내에서 ...