2018년 12월 30일 일요일

[20181230] Gooy bye 2018!

무리한 덕분인지 토요일 하루를 온몸에 스며오는 통증과 함께 보냈습니다.
잠든것도 깬것도 아닌 기묘한 상태로 하루를 날려 버렸네요.

올해의 작업을 마무리 하던 토요일 0시쯤에는 텐션과 집중력이 최고조를 유지하고 있었던지라 작업을 접는게 몹시 서운 했었는데...

하루 크게 앓고나니 참 잘했다는 생각이 밀려 옵니다. ( o_o)y-~



작업 이야기로 들어갑니다.
이 일지는 12월 24, 25, 26, 27, 28일에 진행된 작업을 대상으로 합니다.

작업 내용은...
  1. Guard Buff 추가.
  2. Player A.I 에 "Guard" 행동 추가.
  3. Interaction Process Refactoing
  4. Silent Attack and Reaction
...입니다.


1. Guard Buff 추가.

현재 Buff 는 크게 두가지 기능을 가집니다.
  • <Stat 에 영향>을 주거나
  • 상호작용의 <판정에 영향>을 주거나
Guard Buff 는 <판정에 영향>을 주는 종류 입니다.

이 녀석을 보유하면...
공격을 받을 때 "방어율" Stat 을 기반으로 방어 성공 체크를 하게 됩니다.

이 작업은 기반 작업 이기 때문에 여기 까지만 적고 넘어갑니다.


2. Player A.I 에 "Guard" 행동 추가.

방패에 "Guard Buff" 를 추가했습니다. 그리하여...


방패를 착용하면 "Guard Buff" 가 작동하고
공격을 "막을 수도" 있습니다.

그렇습니다. ( '_')y-~


3. Interaction Process Refactoing

기존에 각 Actor 종류 별로 남발 되었던 Interaction 처리 로직을 갈아 엎어서 1개로 통합 하였습니다.

코드를 통합하기 위해서 "Action Effect Info" 에 큰 변화가 있었습니다.
이름이 "Interaction Info" 가 되었고 데이터 구조도 바뀌었네요.

주요 변경점은...
데이터가 어떤 행위의 효과만 기술하던 것을
행위 자체를 지정하게 된 것입니다.

거기에 덤으로...
많은 녀석들이 새 이름을 가지게 되었고 상당수의 녀석들은 사라졌습니다.

기반작업이므로 자세하게 적을만한 것은 없네요.
너~~~무나 재미 없으니까요. ( @_@)y-~


4. Silent Attack and Reaction

이 작업 이전에는 화면 밖의 Actor 들이 상호 작용을 하면 Game Master 가 그것을 처리 할때까지 Player 가 기다려야 했습니다.


...이렇게 말이죠.

그래서 화면 밖의 Actor 들의 상호 작용에 대해서는 Game Master 의 관리 없이 상호작용이 가능하도록 Process 를 개선하고 전체 A.I 를 뜯어 고쳤습니다.


한결 쾌적합니다.

아직 Monster 의 "공격" 에 대한 처리가 남아 있지만 현재 모습 만으로도 크게 만족 스럽네요.
Monster "공격" 을 silent 하게( ? ) 처리하는 작업은 아주 아주 큰 작업이라서 두려움에 떨고 있습니다.
상당수의 A.I 에 대한 자동화 작업이 함께 이루어질 겁니다.

토요일에 작업을 멈추지 않았다면 아마 이 작업을 이어서 하고 있었을 겁니다.
( @_@)y-~



게임이 모양을 갖춰 갑니다.

들어갈 System 은 거의 들어가 있고 남은건...
정리, 보강, 마무리 그리고 System을 Game으로 만드는 것 입니다.

흔히들 이쯤을 끝나지 않는 마지막 10% 라고들 하는데요.
그 언저리에 와 있습니다.


끊임 없이 발을 내딛고 있습니다.
끊임 없이 고민 하고 있습니다.

성대한 마무리를 할 수 있도록 내년에도 그렇게 나아갈 생각입니다.


다들 행복한 2018년이 되셨길 바라고
2019년에는 더 행복하세요.

길고 고통스러웠던 2018년에 작별을 고합니다.
( '_')y-~

2018년 12월 29일 토요일

[20181229] The dev end for this year

오늘로 올해 작업은 끝.

( '_')y-~

> 내일이나 모래쯤 개발일지까지 쓰면 진짜 진짜 끝

2018년 12월 28일 금요일

[20181228] 잡설 : 하더라

facebook에서 옮겨옴

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

흔히

개발을 시작하면서 꾸었던 꿈이 크면 클수록

더 많이 잘라내고
더 많이 고통스러워 하더라.

익숙해지고
맘편히 잘라내자.

고민은 고민대로 간직하더라도 말이지.

( '_')y-~

> ...내년엔 나도 그러자.
> ...말은 항상 쉽더라.

2018년 12월 26일 수요일

[20181226] 잡설 : 이름

20181226 AM 00:44

Refactoring 을 하며 rename 을 2시간이 넘도록 하고 있자니...

"대~~충 지어놓은 이름에 얼마나 휘둘리는가" 에 대해서 생각하게 된다.

적절한 이름과 함께 하는 Object, Process, Algorithm 은 행복하다.
코드속에서 프로그래머와 어울려 화려한 춤을 출 수 있거든.

( '_')y-~

> 기다려 예들아 모두가 함께 하는 성대한 무도회를 열어줄테니.

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

20181226 PM 05:32

refactoring 끝.

현자 타임 오신다.

( x_x)y-~

2018년 12월 25일 화요일

[20181225] 잡설 : 낙후

다른 코드들이 멀찌 감치 달려갈 동안에

가장 중요하고 핵심인 Player 관련 코드는

다른 이들의 장단에 이리 저리 휘둘리느라

이제는 꽤나 낙후된 코드가 되었다.

고생 많았네.

( '_')y-~

> 반짝 반짝 하게 만들어줄게.

[20181225] Reaction with Inventory + @

하늘에서 눈인지 비인지 모를 뭔가가 떨어지고 있습니다.

동심을 잃은 사람들은 하늘에서 떨어진 이쁜 쓰레기가...
  • 빙판길을 만들고
  • 금방 더럽혀져 눈쌀을 찌푸릴 풍경을 만들고
  • 구정물이 튀어서 차나 하의가 더러워질 환경을 조성하고
...등의 이유로 눈을 싫어하는데요.

전 그 마저도 잃은 덕분인지 아무 생각도 없게 되었습니다.
방구석에 처박혀서 일만 하고 있어서 현실 감각을 잃은 탓이겠죠?
이득인 부분입니다.
( '_')y-~



작업 이야기로 들어가 볼까요.
이 일지는 12월 19, 20, 21일 에 진행된 작업과 24일에 진행된 작업의 일부를 대상으로 합니다.

<무기 시스템> 그리고 거기 얽혀 있는 녀석들에게 가열찬 작업이 진행되었습니다.

작업 내용은...
  1. Inventory 와 Player 간의 상호작용 파이프라인 Refactoring
  2. Player A.I 에 "무기,  방패 장착, 해제" 행동 추가
  3. Player A.I Attack 에 무기 반영 및 Z 값 순간 보정
  4. Player A.I 에 "아이템 강화" 행동 추가
  5. Test를 위한 dummy item 적용 로직 조정
...입니다.
자잘하게 진행된 것들이 많아서 목록 작성하는 것도 쉽지 않군요.


1. Inventory 와 Player 간의 상호작용 파이프라인 Refactoring

이 작업은 Refactoring 작업입니다.
상당수의 Event 와 Data 를 통합하고 처리 과정을 가다듬는 전혀 아름다운( ? ) 작업이었습니다.


2. Player A.I 에 "무기 장착, 해제" 행동 추가

이전에는 Inventory 에서 무기, 방어구를 착용해도 Inventory 의 view 가 조정될뿐 Actor 단위의 행동이 없었습니다.

거기에...


...행동을 추가했습니다.


A.I 의 흐름을 조정하느라 고생을 했지만 앞으로는 쉽게 진행 될 겁니다.
그리고 모션은 확정된 것이 아닙니다. ( o_o)y-~


3. Player A.I Attack 에 무기 반영 및 Z 값 순간 보정

장비한 무기를 공격 과정에서 보여주는 작업입니다.


Player Avatar 에 무기 관련 Node 를 만들고 거기에 무기 Resource 를 붙였습니다.
이 것으로 공격 과정에서 제대로 무기를 보여주는 것이 가능해졌네요.

"Z 값의 순간 보정" 은... 공격 상태에 진입하면 주변의 녀석들에게 가려지지 않게 ...Z 값을 조정해주는 작업입니다.

방향에 따라서 적용 방식에 약간의 차이가 있지만...
"공격 순간에 적어도 동일한 Z 값을 가지고 있는 녀석들에게는 가려지지 않아야 한다."
...라는 원칙을 적용한 것입니다.

이전에 올린 Player의 공격 영상을 보면 동일 선상의 Actor 에게 무기가 가려지는 것을 볼 수 있습니다. 확인해보세욧 +_+ ( 확인하러 갈까? )


4. Player A.I 에 "아이템 강화" 행동 추가

2번 작업의 연장으로 보시면 될 그런 작업입니다.


연출에 보강의 여지가 상당히 있습니다.

손이 무던히 가는 작업인지라 진행할지 말지는 우선순위를 따져봐야 알겠네요.
일단 묵혀 둡니다. ( '_')y-~


5. Test를 위한 dummy item 적용 로직 조정

이 작업은...
"게임오버되면 Inventory 와 장비 아이템을 초기화 하는 시스템"
...을 작업 하다가 충동적으로 진행했습니다.

본래 저장된 Play Data 를 로드하는 과정에서 Inventory 에 dummy item 들을 우겨 넣었는데요.( Dicer Project 에서 그대로 가져왔..... )

게임 시스템의 흐름과 맞지 않고( Roguelike 의 특성 - 획득 아이템 초기화 )
테스트 과정에서 미묘하게 걸리적 거리는 부분( 사용한 아이템이 다시 채워지지 않음 )
...도 있고 해서 간단히 조정해봤습니다.

기존에 코드에 박혀 있던 Item 목록들이 json 파일로 export 되었고
Inventory 에 우겨넣는 시점이 던전 입장 직전으로 변경되었습니다.

"Test Code 라도 유지보수는 반드시 진행된다." ...는 교훈을 되새기는 과정이었습니다.



어제는 13.5 시간을 작업했습니다.
연말이 되면 어떤 결말을 맞이하고 싶어하는 습성이 있는 덕분인지 무리하게 되네요.

오늘은 잠이나 자면서 보낼까 했는데...
1시간 정도 들여서 어제 마무리 하지 못한 작업을 치우고 밀린 일지를 쓰고 있습니다.

가까운 시일에 몇 일 푹쉬려고 생각중입니다.
그때까지는 달립니다.

다음 작업은 <방어 행동 추가> 입니다.
( '_')y-~

2018년 12월 24일 월요일

[20181224] 잡설 : 수렁

PM 05:06

어째 점점 수렁에 빠져드는 기분인걸.

멍청했던 과거의 내가 발목을 잡고 안놔주네.

( '_')y-~
---------------------------------

PM 09:59

오랜시간 방치했던 장막을 들췄더니 일거리가 폭포수 처럼 솟아올랐다.

올 해 안에 어떤 도달점에 다다르고 싶었기에 달렸다.

13.5 시간이 경과한 지금...

어떠한 도달점에도 도착하지 못했다.

기절 했다가 일어나면 26일이 되어 있으려나.

뭐... 적절하군.

( '_')y-~

> 일지는 쓰고 달렸어야 했는데...
> 할 것이 너무 많았다.
> 일단 쉬자.

2018년 12월 22일 토요일

[20181222] 잡설 : 손모가지

facebook 에서 옮겨옴.

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

손모가지가 시큰거려서 잠이 안온다.

일거리가 쌓여있는데...

휴식을 약간 가져야 하려나.

( '_')y-~

2018년 12월 20일 목요일

[20181220] 4000+

4000 돌파.
꾸준히 갈게요.
( '_')y-~


thx Bitbucket!!

.
.
.

이 녀석도 250을 넘었네.


2018년 12월 19일 수요일

[20181219] 잡설 : ...

일하기 싫은 몸뚱이를 부여잡고...

딱 7시까지만 하자.

...라고 1시간 10분전에 마음먹었는데 아무래도 내가 타임머신에 탑승한 모양이야.

( '_')y-~

[20181219] 진행중

집 나간 미세먼지군이 돌아왔습니다.
영영 안돌아와도 되는데 말이죠.
( '_')y-~



작업 이야기로 바로 들어갑니다. 7일 만의 일지 입니다.

오늘을 빼면 6일.
휴일 2일을 빼고 실 작업일 4일.
그 중에 2일은 HDD 고장과 개인적인 볼 일을 해결하느라 보내고, 실질적으로 2일간의 작업에 대한 내용입니다. @_@

작업 내용은...
  1. worm_1 을 포함한 <조건부 선공 몬스터>를 위한 a.i 추가
  2. Player Avatar 추가
...입니다.


1. worm_1 을 포함한 <조건부 선공 몬스터>를 위한 a.i 추가

얄미운 지렁이에게 어떤 특별함을 부여할지 이런 저런 고민을 하다가
그것이 "특별한 효과" 는 아니다. 라는 결론을 내렸습니다.

그러면 남는 것은 "특별한 행동" 뿐입니다. 그리하여...


특별한 A.I 를 추가했습니다.

다른 게임에서도 흔히 볼 수 있는 접근하면 공격해오는 A.I 입니다.
유저를 곤란하게 해줄 방법이 늘어나는 것은 언제나 즐거운 일입니다.
( @_@)y-~


2. Player Avatar 추가

위의 영상에도 적용되어 있는바와 같이 Player 의 새로운 외관을 한 set 찍어서 적용했습니다.

다른 녀석들은 layer 가 5개를 잘 넘어가지 않지만...


...팔, 다리가 달려 있고 머리칼이 살랑 거리며 의복에 대한 고려를 해야 하는 Player는 다릅니다.
품이 배로 들어가기 때문에 여지껏 미루고 미뤄왔는데, 연말을 기념하여 찍어봤습니다.

< kid move x 1 >

< kid move x 4 >

< kid move x 8 >

Move Animation 은 정말 많은 시행착오를 거쳤습니다.
"찰랑 찰랑" 한 머릿결을 표현하고 싶었는데... 그거 참... 쉬운 일이 아니더군요.

구글, 트위터 그리고 부지런히 쌓아둔 자료들을 뒤져가며 간신히 느낌만 내봤습니다.

< kid attack x 1 >

< kid attack x 4 >

< kid attack x 8 >

Attack Animation... 아니 Attack Process 는 항상 마음에 담아두었던 FF6 의 것을 빌려 왔습니다.
이 방식을 넣겠다고 개발 초창기부터 생각하고 있었는데 이제야 게임에 넣었네요.

Animation만 봐서는 게임 안에서 어떨지 분명하지가 않아서 영상을 준비해봤습니다.


무기를 휘두르는 것처럼 보이지만 저것은 <임시> 입니다.
이후 착용한 무기를 적용해서 제대로 휘두르는 작업이 진행되어야 합니다.

정말 오랜시간 묵혀둔 녀석을 임시로라도 해놓으니 아주 행복하네요.
크게 만족하는 중입니다. ^_^



다음 작업 선택 때문에 약간의 공황장애가 발생한 상태였는데 일지를 쓰면서 보니 <무기 시스템> 을 손봐야 한 다는 것을 알았네요.

이득인 부분입니다.


그럼 <무기 시스템> 작업을 시작합니다.
다들 즐거운 하루 되세요.
( '_')y-~

2018년 12월 18일 화요일

[20181218] 잡설 : 효율

이동 animation 은...

지렁이 조차도 6 frame 정도는 쉽게 썼는데
Player Character는 4 frame 으로 끊어 쓰려니 죽을 맛이다.

게임 하나 만드는데 왜 이렇게 매 상황이 새롭냐.

( '_')y-~

> low frame animation이 배는 어려워.

2018년 12월 17일 월요일

[20181217] 잡설 : 이야기

이 게임에서 다룰 이야기가 어느정도 구체적인 모습을 갖췄다.

쓰고 표현하면 된다.

이제부터는 진짜 정말 레알로 능력의 한계와 마주하게 되겠지.

( '_')y-~

> 사람 살려요.

2018년 12월 12일 수요일

[20181212] Monster : Worm_1

기대받던 인디개발팀이 개발을 접는다고 합니다.
많이 씁쓸하네요.
좋은 휴식가지시기 바랍니다.
( '_')y-~



지난 일지에 Monster Concept 작업을 했다고 적었었죠.
그 녀석들 중에 하나는 아니고... o_o

2018년 11월 29일에 만들어둔 녀석을 기분전환 삼아 작업했습니다.

Monster Concept No.19 ...


동물형으로 징글징글함을 담당해줄 녀석입니다.
이름은 아직 정하지 못해서 <worm_1> 이라고만 붙여놨습니다.

Dungeon 1 작업을 하다보니 숲 타일에 어울리는 Monster 가 얼마 없더군요.
그래서 급히 작업해봤습니다.

< worm_1 idle_1 x 1 >

< worm_1 idle_1 x 4 >

< worm_1 idle_1 x 8 >

몸이 물결치는 표현은 확실히 나날이 발전하고 있습니다. ( @_@)v

< worm_1 idle_2 x 1 >

< worm_1 idle_2 x 4 >

< worm_1 idle_2 x 8 >

이 녀석의 중요 컨셉중 하나는 "뜻 모를 재수없음" 입니다.
Idle 2는 거기에 중점을 둬서 작업했습니다.

< worm_1 damaged x 1 >

< worm_1 damaged x 4 >

< worm_1 damaged x 8 >

얄미운 녀석이니까 Damaged Animation 은 기분이 아주 시원 시원하게 찍어봤습니다.

마지막으로 게임에 넣은 모습입니다.


이 녀석에게 어떤 "특별함" 을 부여할지는 아직 정하지 못했습니다.
<덤덤곰> 작업했을 때처럼 이후에 부가 기능을 위한 작업이 따라 붙을 것 같네요.



고장난 HDD 정리 하느라 그제 잠을 제대로 자지 못했습니다.
눈 상태도 안좋고 자꾸 졸려오는 것이 아주 제대로 발목잡혔네요.
오늘 하루는 머리에 과부하를 주는 일은 피하면서 보내야겠습니다.

작업 이어갑니다.
다들 행복한 하루 되세요.
( '_')y-~

2018년 12월 10일 월요일

[20181210] 식생( Vegetation )

추위가 찾아왔습니다.
지난 토요일 7km 가량 걸었는데 정말 정말 정말로 추웠습니다.
그래도 추위는 항상 맑은 공기를 데려오기 때문에 나름 즐거운 산책이었네요.
( '_')y-~



작업 이야기를 시작합니다.
어째 1주일에 1번만 "일지" 를 작성하는 것 같네요.
"잡설" 은 자주 올리고 있으니... 괜찮겠죠? ( o_o)a

지난 일지를 작성한 2018년 12월 4일 이후...
  1. Neutral Actor : Wood 1, 2 추가
  2. Neutral Actor : Weed 1 추가
  3. Neutral Actor를 공격 가능 하게 Action Process 조정
  4. Neutral Actor 처치시 경험치 획득이 가능하게 Action Process 조정
  5. Dungeon 1 : Floor 1, 2 작업 마무리
...등의 작업이 진행되었습니다.



<톨네코의 대모험> 을 처음 했던 어린 시절에도 간단하게 엔딩을 봤던 몇 년 전에도 늘 던전이 허전하다고 느꼈었습니다.

그 허전함을 개선하기 위해 "식생을 가능한 선에서 표현" 해 보자 라고 마음 먹었습니다.
그리하여...


1 & 2. Neutral Actor : Wood 1, 2, Weed 1 추가

눈을 호강시켜줄 몇몇 중립 Actor 들을 추가했습니다.

< weed x 1 >

< weed x 4 >

< weed x 8 >

우선 자리를 차지하는 Actor 로서 추가하고, 이후 Tile Animation이 들어가면 여러가지 눈이 즐거운 것들을 넣어볼 생각입니다. ^_^

< wood 1 x 1 >

< wood 1 x 4 >

< wood 1 x 8 >

나무는 Animation 을 화려하게 넣기가 부담스럽다보니 2종류를 추가했습니다.

< wood 2 x 1 >

< wood 2 x 4 >

< wood 2 x 8 >

세 녀석을 적용한 모습은...


...요정도 군요. 만족하고 있습니다. ( +_+)y-~


3 & 4. Neutral Actor 를 공격 가능하며, 처치시 경험치 획득 하게 Action Process 조정.

이 작업은 위의 녀석들과의 상호 작용을 위한 작업이었습니다.

이 것만으로는 특별한 것이 전혀 없었지만, 작업 과정에서 Player Character 가 지정하지 않은 Action 을 해버리는 버그를 발견했고 고생끝에 치울 수 있었습니다.

개이득입니다. ( ^_^)y-~


5. Dungeon 1 : Floor 1, 2 작업 마무리

첫 던전의 1층과 2층이 일단 완료 되었습니다.

이 작업은...


이런 것을 만들고, 다시 json 으로 뽑아내는 작업입니다.
첫 게임 만들때 많이 반복했던 작업이기 때문에 수월하게 했네요.

개선의 여지와 조정할 것들에 대한 구상도 있지만 기능만 보자면 만족스럽게 마무리 되었습니다..
일종의 연습 던전이기 때문에 동선 그리고 유저가 처음으로 마주할 것들에 대해서 많이 신경을 썼습니다.

시나리오 구상안이 조정되면 이 녀석이 날아가 버릴수도 있습니다.
하지만 날아간다 해도 여기서 해놓은 동선과 배치는 재활용 여지가 충분하기 때문에 재 작업에 대한 걱정은 덜하네요.




벌써 오후 6시가 다 되어갑니다.

어제 종일 감기 기운에 시달린덕에 늦게 잠들고, 늦게 일어나서 방금전까지 Monster Concept 작업을 했습니다.

오늘 중에 3개를 추가 했고, 얼마전에 추가한 것까지 5개, 이전에 추가한 것까지 하면 10개나 밀려 있습니다.

조만간 몰아 넣어야만 하는 날이 오겠네요. @_@



감기 기운이 들었다 빠졌다 오락가락 하고 있습니다.
매 겨울마다 이걸 반복하니 익숙해질만도 한데 전혀 그렇지 못하군요.

1월쯤 되면 아마 익숙해지겠죠.
늘 그렇듯이요.

작업 이어갑니다.
다들 즐거운 저녁되세요.

( '_')y-~

2018년 12월 5일 수요일

[20181205] 잡설 : 위협

어제 진행도 확인 목적으로 Preview 를 만들고 나서
크게 멘탈이 터질 뻔.... 했으나.

자고 일어나서 "나름" 멀쩡한 것을 보니, 다행히 잘 넘어간 듯하다.

감당 못할 것만 같은...
거대한 작업량의 위협에 짓눌린 것이 처음은 아니니까.

( '_')y-~

> 계속 괜찮고 싶다.

2018년 12월 4일 화요일

[20181204] Preview for Progress Rate

가끔 이런 시간이 필요해.

내가 어디까지 왔는지에 대한 기준점을 확인하는 그런 시간.



딱 이만큼 왔다.

( '_')y-~

> 이렇게 보니까 정말 끝이 안보이네.

> 두마리는 더미 인게 함정
> 언젠가는 넣겠지.

> 방안을 몬스터로 가득 채우면 완성될까?

[20181204] Theme : Fountain of Recovery + Log Update

영 몸이 좋지 못합니다.

최근 장거리 산책을 몇 번 나갔기 때문일까요.
주말마다 영화 4편 몰아보기를 하고 있기 때문일까요.
아니면 그저 감기 기운 때문일까요.

"분명 셋 모두 원인의 일부를 책임지고 있을 겁니다."

...라고 쉽고 빠르고 무책임하게 결론을 내려두겠습니다.
( '_')y-~



작업 이야기로 들어갑니다. <잡설>은 몇개 적었지만 일지는 작업일로 4일 만이네요.

무언가 크게 진전된 것은 없지만, 일은 아주 가열차게 했습니다.
  1. 새로운 Theme <Fountain of Recovery> 추가
  2. 액터간의 상호작용을 포괄적으로 지원하기 위한 Event Log 보강
  3. 버프를 위한 Event Log 보강
  4. Letter Viewer 조정


1. Theme <Fountain of Recovery> 추가

말 그대로 새로운 Room Theme 가 추가되었습니다. 한글로 "회복의 샘" 이겠죠?
( 번역기 만세 o_o )


이 작업은 정말 맘편하게 시작했습니다.

"enum 몇개 추가하고 관련 a.i 좀 손봐주면 끝나겠지. 얼른 끝내고 다른 작업 해야겠다."

...라고 "방심"과 "어리석음" 그리고 "근거 없는 낙관"에 찌들어, 한 껏, 여유롭게, 그렇게 시작했습니다.

그리고 이 작업은 끝나지 않을것만 같은 Refactoring과 함께 3일간 이어집니다.
  • 회복 처리를 위한 Action 데이터 정의 및 관련 데이터 추가
  • 회복 처리를 위한 Rule 정의
  • 공.방 에만 적합하게 설계된 "Action 처리 절차" 를 이외의 Action에도 적합하게 확장
  • 공.방 에만 적합하게 설계된 "Action 처리 결과 객체" 를 확장
  • "Action 처리 절차" 중에 발생한 Stat 변경 사항을 기록 하는 객체 추가.
...등이 주요 작업이었습니다.

Revision History 를 확인하면서 글을 쓰고 있는데요.
복기 하는 것만으로 토할 것 같네요.

하지만 짜잔~! 보이기에 특별한 것은 아무것도 없답니다.
( ^_^)y-~


2. 액터간의 상호작용을 포괄적으로 지원하기 위한 Event Log 보강

이 작업은 1번 작업에 포함되어 있는...
<"Action 처리 절차" 중에 발생한 Stat 변경 사항을 기록 하는 객체>
...를 Event Log 와 연계시킨 것 입니다.


3. 버프를 위한 Event Log 보강

버프와 Event Log 를 연계시키는 작업은 제법 오래 묵혀둔 작업입니다.
<Stat 변경 사항을 기록 하는 객체> 를 추가한 김에 곰팡네 나는 일거리를 끄집어 낸거죠.


자신이 얼마나 안좋은 상황에 있는지 유저가 아주 "잘" 알게 될겁니다.
( ^_^)y-~


4. Letter Viewer 조정

이 녀석은 아주 아주 사소한 작업입니다.


해상도 조정에 맞추어 크기를 약간 키워주고, 배경 이미지를 약간 조정한 것이 전부 입니다.



4일치 작업을 정리 하려니 힘이드네요.
<회복의 샘> 작업을 마무리 하고 일지를 작성하고 싶었지만, 너무나 지쳐서 작업용 맥북을 서둘러 꺼버렸답니다. @_@

몸 상태가 안좋은 것이 "회복의 샘 작업" 때문이 아닌가 하는 의심이 들어오는데요.
아마 기분 탓이겠죠. 그럴겁니다.


몸이 안좋은 덕에 늦잠 자고, 작업도 간단한 것을 설렁 설렁 하다가, 지쳐서 일지를 쓰기 시작했는데요. 기분 전환이 되네요.

그럼 작업 이어 가야겠습니다.
다들 건강한 하루 되세요.
( '_')y-~

2018년 12월 3일 월요일

[20181203] 잡설 : 반복

옘병...

내가 만든 코드인데 뭐하는건지 또 모르겠어.

너무 많이 만들었어.

( T_T)y-~

> 이거 계속 반복되는거 너무 싫다.

2018년 12월 2일 일요일

[20181202] 잡설 : 쉬는겸

facebook 에서 옮겨옴

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

주말마다 영화 4편씩 보는거 완전 중노동이네...

공부로 하는거라 더 그런것 가테..

( '_')y-~

> 난 영화 보는거니까 쉬는겸 할 수 있을줄 알았지...

2018년 11월 30일 금요일

[20181130] 잡설 : 연쇄

난 그저 범용적이고, 자극적이지 않으며 평화로운 Room Theme 를 하나 한 개 추가하려고 했을 뿐인데...

2일간 "Refactoring" 이라 쓰고 "미뤄둔 골치아픈 녀석들" 이라 부르는 녀석들을 끝도 없이 처리하고 있다.

17시간째 작업중.

( '_')y-~

2018년 11월 29일 목요일

[20181129] HUD Update : Base Info and Event Log

미세먼지가 남쪽으로 밀려가고 있네요.
지표는 여전히 "나쁨" 이지만 "오후에는 산책이 가능하지 않을까?" 라는 기대감에 두근 두근 하고 있습니다.
( '_')y-~



작성을 일부러 하루 미룬 작업일지 기록을 시작합니다.
요 몇일 <잡설> 에 해당하는 글이 많이 올라가서 일부러 하루 늦췄습니다. @_@

작업내역은..
  1. HUD : Base Info U.I 갱신
  2. Event Log U.I 갱신
  3. Monster Concept 추가
...입니다.

U.I 작업은 당연히도 <해상도 증가> 의 쓰나미에 떠내려온 녀석들이라고 보시면 되겠습니다.


1. HUD : Base Info U.I 갱신

앞서 해상도 조정 기념으로 U.I Concept 을 만들어 올린적이 있는데요.
그 내용을 반영한 겁니다.


경험치 정보와 Level 정보를 합쳐서 오른쪽 으로 이동
허기짐 정보를 왼쪽에 추가
층 정보는 아래로 조금 내려왔습니다. ( 이 녀석은 어찌할지 정하지 못했네요. )

심심한 느낌이 강렬히 들어온다고 생각하고 있습니다.
그렇다고 무작정 화려하게 하는 것도 어울리지 않는다는 생각이 들어서 일단은 이 상태로 갑니다.
작업과정에서 각 항목의 Symbol Icon 을 그리고 Gauge에 빤딱임을 넣는등의 무수한 삽질이 동반되었지만...
"역시 단순함이 최고" 인 걸까요?


2. Event Log U.I 갱신

두고 두고 눈에 거슬렸던 녀석을 조금 손봤습니다.


2줄에서 3줄로 전체 크기 증가
배경이미지 추가
좌,우 여백 삭제
...등의 대단치 않은 작업이었습니다.

가장 중요한 것은 <배경 이미지> 의 색상인데요.
검은 색은 이미 Dungeon 이 크게 선점하고 있기 때문에 사용할 수 없고 어지간한 색상들도 어울리지 않습니다.

두가지 정도의 선택지가 있었습니다.
  1. Inventory 에 사용한 배경색을 여기에 채용
  2. 선호되지 않지만 눈에 띄는 색상을 채용
...중에서 2번 방식을 채용하면서, 색상은 레트로 게임들이 비슷한 목적으로 자주 활용하는 것으로 골라봤습니다.

가시성은 확실히 좋아졌는데. 미적인 부분은 0점...
기회가 되면 디자이너의 도움을 받아야 겠습니다. T_T


3. Monster Concept 추가

늘 하던 작업이죠.


슬슬 제 머리도 새로운 발상에 안녕을 고하는 걸까요.
마음에는 드는데 자랑할 부분은 없는!! 그런 녀석을 만들고 말았네요.

가까운 시일에 게임에 들어갈 겁니다.


마지막으로 1, 2번을 한번에 확인할 영상 입니다.



일지를 미루는 것은 정말 피곤한 일 입니다.
일어나자마자 머리를 풀가동 하고 있습니다. @_@
글을 너무 남발하는 우를 범하지 말아야 겠네요.

이제 오늘 작업을 시작합니다.

다들 행복한 하루 되세요.
( '_')y-~

2018년 11월 28일 수요일

[20181128] 잡설 : 고리

논리적인 업무에 지쳐 진도가 나가지 않을때는 리소스 작업을 한다.

이를 테면 Monster Concept 이라거나...

( '_')y-~

> 일로 일을 덮는 악순환의 고리

2018년 11월 27일 화요일

[20181127] HUD Concept : Base Info U.I

해상도 조정 기념 U.I 컨셉.


알록 달록 하니 이쁘네.
이렇게 갈까나.

( '_')y-~

> "게이지 3개 어떻게 넣어" 라고 울던 나는 더이상 없다.
> 그냥 막 넣어버릴꺼야.

> 으어~! 세상 편하다.
> 그런데 다른 Scene 들 다 개판 났는데 어떡하지.

[20181127] Resolution Change : GBA to NES

이 게임을...

GBA용 게임을 만든다는 마음가짐으로 만들고 있었고
그래서 해상도 역시 GBA 해상도로 맞췄었다.

마음가짐은 그대로 가더라도
수많은 문제의 온상인 해상도는 바꿔야 한다는 결론에 도달했다.

세로 기준 160px 에서 240px 로 해상도를 올린다.


GBA 에서 NES 로 옮겨가는 셈이다.

( '_')y-~

> NES Resolution : 256 x 240
> GBA Resolution : 240 x 160

[20181127] Dungeon 01 - Floor 01

19일 이후로 8일만의 "정식" 일지 작성입니다.
이쯤에서 작성을 안하면 일지가 한편의 "서사시"가 되어버릴 것만 같은 두려움에 "글쓰기" 버튼을 눌렀네요.

매일 산책을 하겠다고 마음먹고, 트레이닝복 까지 사놓았는데 연일 미세먼지가 심해서 8일동안 한번 뿐이 나가지 못했습니다.

그리고 그렇게 집에 처박혀 있는 동안 먹고 자고 일하고를 반복했습니다.
특히 잠을 아주 아주 많이 잤는데요. 잠이 보약이라는 말뜻을 몸으로 확인했네요.
전반적으로 신체 상태의 지표가 아주 좋습니다.

그런데 말입니다. ...감기는 왜 걸린걸까요?
( @_@)y-~



작업 이야기로 들어갑니다. 주요 작업은...
  1. Game Master A.I 정리( 이후 GM A.I 로 적겠습니다. )
  2. Dungeon 01 을 위한 전용 GM A.I 추가
  3. GM Message U.I 추가
  4. Tile Animation 첫 시도 및 적용
  5. Dungeon 01 Floor 01 작업
...입니다. 많네요.


1. Game Master A.I 정리


이 작업은 말 그대로 정리 작업이었습니다.
cpp 한개에 1500 줄 가량 코딩 되어 있던 것을 코드 조립 및 재활용을 위해 모두 쪼갰습니다.
보통 이런 작업 이후에는 관련해서 시스템 업데이트 작업이 이루어지는게 자연스러운 흐름입니다. 그리하여...


2. Dungeon 01 을 위한 전용 GM A.I 추가

일종의 Tutorial 또는 Game Play Guide 를 위해서 전용 GM A.I 를 추가했습니다.
제법 쓸모 없어 보이는 설명이나 나레이션, 월권 남용 등을 수행하게 됩니다.

A.I 추가 없이 Trigger 등으로 대신 할 수도 있었지만 굳이 A.I 를 추가해서 작업했습니다.
아직 요구사항이 충분히 모이지 않았달까. 시기가 이르다는 강렬한 직감을 신뢰한 결과 입니다.

적절한 선택이었는지는 머지 않아 알게 되겠죠?


3. GM Message U.I 추가


전용 GM A.I 가 수행하는 설명, 나레이션 등을 처리 하기 위한 U.I 입니다.

화자의 위치 설정이나 말투 설정등 저로서는 전혀 전문성을 가지지 못한 것들을 정하느라 고생을 많이 했습니다.

이 녀석은 두고 두고 저를 괴롭힐 것 같네요. @_@


4. Tile Animation

애석하게도 cocos2d-x 는 Tile 을 Animation 하는 시스템에 대해서 오래도록 무관심해 왔다고 생각합니다.

내부 코드를  뜯어보면 몇 부분만 손보면 손쉽게 구동이 가능합니다만... 엔진 코드는 가급적 손대지 않는게 원칙인지라 대충 알아서 하기로 했습니다.


그리하여 Animation Tile 의 목록을 관리하고 Texture Rect 를 Update 하는 기능을 붙여봤습니다.
이후 Tile 별로 Update 시간을 지정하는 등의 기능을 추가할지도 모르겠네요.
당장은 적절히 돌아가서 만족하고 있습니다.

이후에 Tile System 에 이 기능을 붙여야 할텐데, 데이터 구조를 뜯어고쳐야 합니다.
큰 작업이 되겠네요.


5. Dungeon 01 Floor 01 작업

마지막으로 당연하게도 Dungeon 01 작업을 진행중입니다.
그중에서 Floor 01의 작업이 기능적으로는 거진 마무리 되어가네요.



개발을 1년넘게 했으면서도 여전히 고민이 많습니다.
저는 이 녀석을 "RPG" 보다는 "퍼즐게임" 에 가까운 게임성을 가지도록 하는게 오랜 목표입니다.
딱히 모델로 삼을만한 녀석도 없는 게임을 만들려다 보니 시행착오도 많고 머리 굴릴일도 너무 많네요.
스스로 택한 고생길이라 기꺼이 걷는 것 외에는 방법도없네요.

오늘 작업 시작해야겠습니다.

다들 감기 조심하시고.
블랙프라이데이 할인 상품도 많이 지르시고.
행복하세요.

( '_')y-~



> 위의 내용을 한방에 정리할 영상...


2018년 11월 26일 월요일

[20181126] 잡설 : 관리

facebook 에서 옮겨옴.

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

겨울 맞이 감기에 걸렸다.

그리고...

하루 8 - 9 시간 작업을 유지할 집중력을 회복했음을 알게 되었다.

회복에 몇 달이 걸린건가.

( '_')y-~

> 이제는 번아웃을 관리하는 지경에 진입하고 있다.
> 이게 정상인건가.

[20181126] 잡설 : 화자

여기에 놀러오시는 분이 운영하는 블로그가 있다.

거기에 기록된 개발일지중에...
게임에 보여지는 텍스트의 "화자" 를 어떻게 설정할지에 대한 고민
...이 담겨있는 것을 본적이 있다.

이런 고민이 있구나 하고 넘어갔는데, 나도 비슷한 문제에 다다랐다.
( "다달았다" 가 아니었네... 한국어 어려워. @_@ )


1. 화자

시스템 메세지의 화자를 3인칭으로 설정했다.

"해설자" 의 위치로 설정한 것인데, 높임, 낮춤, 평어... 어느 것을 선택하느냐에 따라 느낌이 너무 많이 다르다.

여기에서의 선택이 "일관성" 이라는 면에서 게임에 지속적인 영향을 주게 될 것이므로 고민이 크게 된다.

경험이 없다보니 어느 것이 적절한지 감이 전혀 오지 않는 상황이다.
이렇게 해도 괜찮아 보이고, 저렇게 해도 괜찮아 보이다가, 다음날 다시 보면 엉망이다.
@_@


2. U.I

영상에서 보여지는 것처럼 현재...
  • 캐릭터가 느끼는 것
  • 유저에게 전해야 하는 <조작 정보>
...를 하나의 창에서 전달하고 있다.

덕분에 메시지의 선명성이 떨어지는 문제가 있다.
급한대로 <정보> 에 대해서는 앞뒤에 "<>" 를 넣어주기는 했지만 가시성이 좋지 않다.

캐릭터가 느끼는 것을 별도의 U.I 로 분리하거나, 적어도 현재 상태에서 텍스트 색상 정도는 바꿔야 할 필요가 있어보인다.

캐릭터 관련 메세지를 말풍선등으로 대사처리 해도 좋겠지만, 전통(?)을 따라서 PC는 대사를 하지 않을 방침인지라 이 방향은 맞지 않다.

캐릭터 관련 메시지를 그냥 빼버려?


아... U.I 어렵다.

아무튼 테스트 계속 간다.

( '_')y-~

2018년 11월 22일 목요일

[20181122] 잡설 : 전략

Tile Animation 이 필요하다.
그리고 맵의 Tile 의 갯수가 1200개에 쉽게 근접하고 있음을 새삼스럽게 확인하게 되었다.

그리는 거야 엔진이 알아서 컬링한다고 쳐도
Update 에 대해서는 일종의 <전략> 이 필요한 상황이다.

2D 게임 만들면서 이걸 신경쓰게 될줄은 생각지도 못했다.

골치 아프다면 아프고, 재미지다면 재미지다.
( '_')y-~

[20181122] 잡설 : 다운그레이드

얼마전에

디자이너인 지인과 내 게임에 대한 이야기를 하다가...

외부 인력에게 도트 작업을 맡길 경우 통일성 때문에 내 손으로 퀄리티를 낮춰야 할지도 모른다는 이야기를 하게 되었다.

묘하게 머저리 같고, 답답해서 앉은 자리에서 크게 웃었다.

( ^_^)y-~

2018년 11월 21일 수요일

[20181121] 잡설 : 가늠

200번째 일지를 작성하고나니 어쩐지 심란했다.
작업도 안되고 해서 이리 저리 뒤적이다가 작성해온 소스 파일의 갯수를 확인해 봤다.

h, cpp 합쳐서 777개.

지난 게임은 430개다.

용량은 2.03MB
지난 게임이 2.19MB

가까운 시일에 지난 게임 전체 코드 작업량을 넘어설 것으로 보인다.

열심히 했다고 생각해도 괜찮을 것 같다.

그래. 괜찮게 해나가고 있다.

( '_')y-~

2018년 11월 19일 월요일

[20181119] 진행중 x 4 : Theme : Decoy and Ambush, Item Party

어느덧 200번째 일지를 작성하고 있습니다.

기뻐할만한 일입니다만...
"일지를 200개 작성할동안 게임을 완성 못했다."
...라며 자신을 몰아붙여야 하는 처지입니다.
( '_')y-~

지난 주말은 매우 알차게 보냈습니다.
먹고, 영화 한편 보고, 잠자고 를 하루 2번씩 반복했더니 월요일이 되었네요. @_@
한동안 이런 주말이 반복될 것 같습니다.



작업 이야기로 들어갑니다.

새로운 Theme 로 <Decoy And Ambush> 가 추가되었습니다.
한글로는 <낚시> 정도가 되겠네요.


이전에 만든 <매복> Theme 의 응용입니다.

작업 과정에서 Trigger A.I 의 Spawn 기능을 상당부분 보강했습니다.
여러 가지 것들을 입맛대로 만들어 내기 좋아졌네요.

"이 녀석이 하나의 Theme 로서 있어야 하는가?" 라는 의문이 있지만, 전환 비용이 매우 싸기 때문에 두고 보다가 결정하면 될겁니다.


다시 한 번~!
새로운 Theme 로 <Item Party> 가 추가되었습니다.


가끔은 유저가 <행복> 을 느껴야 하겠죠.
위의 <낚시> Theme 에서 보강된 Spawn 기능을 그저 "활용" 해서 만들었습니다.

참 쉽네요. ( o_o)y-~

위의 영상에는 "특정 오브젝트" 위에 올라선 후에 아이템이 나오고 있지만 실제 게임에서는 오브젝트가 보이지 않을 겁니다.



위의 두 작업은 진행 과정에서 이루어진 기반 작업이 중요한게 많았습니다.

Trigger A.I 기능의...
상당량이 공용 State 로서 Export 되었습니다.
핵심기능은 두가지 인데요.
  • Spawn 가능 좌표의 수집
  • Spawn 처리
...입니다. 두 녀석들의 자리가 다 잡혔다고 보시면 되겠습니다.

데이터를 채운후 돌려받아야 할 컨테이너를 CBV 로 호출하는 멍청한 짓도 바로잡았고
Theme 에 대한 몇가지 아이디어도 구상했습니다.


이 정도면 슬슬 첫 던전을 위한 Theme 는 충분하지 않은가 싶은데요.
Test 돌리면서 결정 해야 겠습니다.



자 그럼 오늘 작업 계속 이어갑니다.
다들 미세먼지 조심하시고 행복한 하루 되세요.
( '_')y-~

2018년 11월 15일 목요일

[20181115] Landing

산책을 가고 싶습니다.
미세먼지 지수는 언제 <보통> 이 되는걸까요?
좀이 쑤시는 것을 견디는 것은 정말 쉬운일이 아님을 느낍니다.
( '_')y-~



작업 이야기로 들어가면

이미 Dungeon Intro Scene 이 있고.
Dungeon Symbol 과 층을 표시하는 Scene 도 있고.
Dungeon 시작을 위한 Fade 효과도 있지만

아직도 부족한 그 무언가를 위해서...


...넣어 보았습니다.

없을적 보다는 뭔가 풍성해진 느낌입니다.
질질 끄는 느낌이 들지 않도록 전체 연출 시간을 기존의 Fade 효과와 차이가 적도록 조정했습니다.
0.2초 가량 증가한 것 같네요.
이전에는 fade 시작 이후 1초 지나면 조작이 가능했습니다.
( '_')y-~

이 작업을 위해서 게임의 전체 Flow 를 관리하는...
Progress Manager 
...가 보강되었습니다.

Dungeon 진입부에서 여러 재미있는 것을 시도해볼 자리가 생긴건데요.
충분히 활용될지는 모르겠습니다.
여력이 되면 좋겠네요.


그 외에 Player 의 제어권을 가져오는 기능이나.
Fade in/out 기능 보강 등도 이루어졌지만 재미없는 부분이니 넘어갑니다.


어느덧 revision 도 3500을 넘어섰습니다.


정말 멀리 멀리 왔네요.
5000이 되기 전에 마무리 했으면 좋겠습니다.



커피 한잔 하면서 잠깐 쉬고 작업 이어가야겠습니다.
( '_')y-~

[20181115] 잡설 : 채우기

컨텐츠를 구성하기 위한 요소들이 하나씩 자리 잡아 가면서 불안감도 늘어간다.

게임을 구성하는 블럭들의 수는 이미 지난 게임을 아득히 넘어가고 있는데...
"내가 저 블럭들을 모두 채워넣을 능력을 가지고 있는가?"
...라는 의문을 가지게 되는 것이다.

이런 불안감에 시달릴때면
"기꺼이 테이블을 가득 채워주던 사람들"
...과 함께하던 때가 그립기도 하다.

( '_')y-~

> 그렇다고 돌아갈 수는 없다.

2018년 11월 13일 화요일

[20181113] Monster : Ambush Golem - Animation Update

진작 완료한 <Ambush Golem> 에 몇가지 개선이 있었습니다.

Idle Animation 이 2개 이던 것을 무려~!! 4개로 늘렸습니다.

< Idle_3 x 1 >

< Idle_3 x 4 >

< Idle_3 x 8 >

이 녀석은 화면에 단독으로 보이는 일이 거의 없습니다.
여러 마리가 한꺼번에 화면에 등장합니다.

다수가 Idle Animation 2개를 돌려가며 보여주고 있자니 영 만족스럽지 않더군요.

그리하여 늘렸습니다.

< Idle_4 x 1 >

< Idle_4 x 4 >

< Idle_4 x 8 >

게임에 넣어서 보니 상당히 만족스럽네요.
머리를 식히는 겸 즉흥적으로 진행한 작업치고는 성과가 큽니다. ( ^_^)/


그럼 머리를 식혔으니 다음 작업 이어갑니다.
( '_')y-~