슬슬 이 프로젝트도 힘에 겨워 집니다. 전체 라인이 합쳐보니 10,000줄 가량 됩니다. 덕분에 AI에 전체 소스가 휘발되지 않도록 주기적으로 학습시키는 게 더욱 힘들어 지고 있습니다. 그리고 하나의 스레드가 너무 내용이 길어지고 많아지면 전체 수행 속도가 너무 느려지다보니 속도를 위해 새로 스레드를 생성해야 할때 학습시키는 부분도 영 귀찮습니다. 이젠 진짜 뭔가 다른 방법을 찾아봐야 할 것 같네요. 덕분에 진도가 안나가고 있지만 소소하게 코드 개선과 기능 수정들을 진행하며 기본적인 로직은 어느정도 구현이 되었다고 생각해서 다음 컨텐츠 추가 준비중입니다. 던전에서 탐사 시 전투/탐사 2개 상황이 발생하는데 전투가 아닌경우 랜덤 이벤트가 발생하게 추가 예정입니다. 이벤트는 트랩에 걸려 피해를 입거나, ..
오늘도 비슷하게 늦은 시간에 찾아오는 AI로 만드는 던전앤드래곤 기반 웹게임 제작기 입니다. 어제 기본적인 클래스별 특성 구현 후 돌아가는것에 중점을 뒀었던 로직을 개선하기 위해 AI에게 battle.js 코드를 분석하고 리팩토링을 요청했습니다. 그리고 작성되어 나온 코드는 적용해도 좋겠다는 마음가짐으로 기존 소스를 백업 후 리팩토링 한 소스를 반영한 뒤 게임을 기동하였더니~! 하... 이곳저곳에서 어마어마한 다시 에러의 늪으로 빠져들었습니다. 그리고 이시간이 되서야 오류를 다 처리했네요 허허허... 하지만 오류를 수정하기 위해 문제지점마다 디버깅 걸고 다 따라가며 코드를 분석하였기에 역으로 이해도는 더 올라갔다는 사실! 게임 오버 처리에서 게임 오버 버튼을 3번을 그리고 있었다는 것 (이젠 정상적으로 ..
오늘도 늦은 시간 겨우겨우 짬내서 올립니다. 회사일과 병행하기엔 덩치가 너무 커져버렸.... 일단 각 클래스별 기본 스킬들은 추가하였습니다. 위저드는 마법 화살, 클레릭은 상처 치유, 로그는 암습 공격, 파이터는 재생의 바람 로직은 구현했으니 이다음엔 탐험 중 전투외 랜덤 이벤트 구현을 좀하고 마을에서 퀘스트, 여관에서 긴 휴식, 무기 제작(랜덤으로 희귀 등급), 퀘스트 등.. 하.. 할건 많은데 진도가 안나갑니다. 이게 다 조금 소스가 길어지니 점점 기존 내용들이 휘발되어 사라지는 특성상 슬슬 답변을 제대로 안해주는 AI 때문입니다?!? 그래서 아래와 같은 방법으로 느려지는 스레드를 삭제하고 신규 스레드에 전체 소스를 학습시키기로 했습니다.import os# 현재 디렉토리 경로 가져오기curren..
오늘은 일요일이지만 시간을 내서 위저드 클래스의 마법 사용을 완성 했습니다. 하지만 AI가 슬슬 정확한 코드가 딱딱 나오지 않고 있는 느낌입니다. 덕분에 기존 코드들과 중간 중간 AI가 생성해준 코드들을 사용해서 직접 구현을 하게 되었네요. 으으.. 앞으론 뭔가 방식을 새롭게 해야 되지 않을까 생각중입니다. 이러면 남은 기능들을 AI의 큰 도움을 받지 못하고 직접 해야 할지도...?? 우선 오늘의 글쓰기 챌린저는 완료 하고 새로 맞이하는 주는 어떻게 할지 좀더 깊게 고민해봐야 겠습니다.
이게 참 주말이라 사정상 코드 작업을 거의 하지 못해서....(어제랑 비슷한 말을 하는 느낌인데?!) 할 말은 크게 없네요. 다만 AI가 참 좋은데 조금씩 소스가 커지고 범위가 넓어지니까 점점 구멍들이 생기는 느낌이 커져 갑니다. 캐릭터별 특성을 위해 숙련과 주문, 기술을 추가하려고 하니 썩 마음에 들게 답이 잘 나오진 않네요. 그래서 외적으로 이미지 생성 모델에 대해서 좀 이야기 해보겠습니다. 우선 제가 쓰는 Perplexity.ai 에서는 4가지 이미지 모델을 사용해 볼 수 있는데 유명한 DALL-E와 Stable Diffusion, Playground, 최신 모델인 Flux 입니다. 같은 프롬프트로 4개를 번갈아 가며 테스트를 해봤는데 어제처럼 스토리 중간 중간의 한 장면과 같은 이미지를 뽑는..
오늘은 출장을 다녀온 관계로 코드 작업은 하지 못하여서 번외의 이야기를 해보겠습니다. 마지막에 생각나서 테스트 해본 것처럼 게임의 전체 로그를 마지막에 저장해서 AI에게 던전앤드래곤 스타일로 글을 작성해달라고 했더니 생각보다 괜찮게 나옵니다! 마을에서의 여러 퀘스트나 엔피시와의 상호작용, 던전 탐험중 발생할 전투가 아닌 돌발적인 모험들이 추가되서 로그 내용이 다양해지고 풍부해지면 그걸 바탕으로 나올 소설도 꽤나 흥미로워 지지 않을까 생각합니다. 이런걸 보면서 다시한번 요즘 AI의 대단함을 실감하게 되네요! 아래는 AI가 생성해준 소설과 이미지를 올리며 마무리 하겠습니다!꼬반의 더2N전 마을 모험깊은 산속, 신비로운 더2N전 마을의 입구에 한 드워프 전사가 도착했습니다. 그의 이름은 꼬반, 단단한 근육과..
이제는 고민 또 고민 뿐 입니다. 주문과 각종 액션들을 이제 시스템으로 만들어야 되는데 레이아웃은 어떻게 할지 사용방식은 어떻게 하는게 좋을지 등을 계속 해서 고민하게 되네요. 그러면서 모바일 환경에서 레이아웃을 좀 개선하려고 오전에 노가다 하다 반나절 날린 건 양쪽 사이드바를 모바일 레이아웃에서는 캐러셀 방식으로 넘겨서 사용자 정보 / 인벤토리 / 기술 / 주문 등을 확인하려고 AI랑 많이 삽질을 했으나.. 결국 포기했습니다. 원하는대로 잘 동작하지 않기도 했지만 아래처럼 구현한 두번째 방식이 차라리 모바일 환경에 어울린단 생각을 했습니다. 그렇습니다. 바로 사이드바를 숨겼다 토글로 보여주게 하는 방식인거죠. 음. 토글되었을때 화면을 가리기는 하지만 그래도 화면을 아래로 내려서 확인하고 쓸어넘겨서 보..
벌써 Perplexity.AI와 함께 D&D5e 기반의 웹게임을 만들기 시작한지 일주일이 되었습니다. 오늘도 컨텐츠보다 앞으로 더욱 견고한 게임을 위해 내부 아키텍처 개선이 좀더 많았습니다. ★ 레이어드 캔버스 사용단일 캔버스 활용 대신 3개로 분리한 캔버스(background, ui, character) 로 분리하였습니다. 이렇게 하면 전체를 다시 그리기 보다 갱신이 필요한 부분만 새로 그리고 합치는 방식으로 동작하기에전체적인 성능의 향상에 도움이 된다고 (AI가) 합니다. ㅎㅎ그리고 이번에 배운 내용이지만 캔버스 작업에 save, restore가 없으면 각각의 요소들이 서로 영향을 받기에원하는대로 캔버스에 정확하게 표현하고 싶으면 save와 restore를 활용하면 됩니다. this.uiCtx.sa..
중간에 너무 많은 일이 있었다.. 너무 힘들다.. 까지는 아니지만 중간에 perplexity.ai 에서 작업하던 스레드가 갑자기 에러가 나서 접속이 안되고 하는 등의 문제가 있었지만 다행히 잘 해결은 되었고.. 오늘은 UI들을 조금 정리하면서 능력치 상승에 대한 부분을 손 보았습니다. 14이상의 스탯은 2포인트로 상승시키도록 수정하였고, 전투때 좀더 박진감을 주기위해 플레이어가 몬스터를 때릴때 그에 맞는 이펙트를 표시해줬었는데 이게 잔상이 남고 제대로 출력이 안되고.. 아.. canvas 어렵네요.. 그래서 우선 다시 제거해뒀습니다. 그리고 오늘은 마을에서 상호작용을 위한 ui와 관련 npc 작업을 했습니다. 이미지 만드는건 참 즐겁네요 ㅎㅎ이렇게 npc의 portrait를 생성하고 (상반신만 출력해달..
오늘은 내실을 다지기 위한 시간을 가졌습니다. 무기와 방어구를 D&D5 기반으로 다시 설정하고 그에 따라 플레이어 장비, 공격보너스, 방어보너스 등을 관여하는 함수들을 모두 수정하였습니다. 그리고 종족과 직업에 따른 기본스탯과 초기 장비를 다르게 설정하게 변경하였고 몬스터들도 동일한 로직으로 장비와 전투를 진행하게 됩니다. 덕분에 화면적으로 바뀐 부분은 많이 없지만 앞으로를 생각하면 기반을 쌓는 시간이었다고 생각하네요. 이제 전투 중 액션(마법 등)을 다음엔 구현해보겠습니다! (설정 날먹하려고 D&D5 룰북 참고하기 시작했다가 점점 머리가 아파오고 있습니다...) 테스트 주소: https://ggoban.com/d2ng/ 더2N전더2N전 여관 상점 길드 대장간 던전 탐험 시작 다음 층으로 마을 귀환g..