신규 보스 위클라인
안녕하세요, Eternal Survival 개발 노트입니다. 드디어 세 번째 보스인 위클라인을 성공적으로 구현했습니다. 루미아섬에서 가장 강력한 몬스터인 위클라인 박사를 어떻게 제 게임에 구현했는지 보여드리려고 합니다. 위클라인은 이전의 알파나 오메가와는 다르게, 완전히 다른 결의 보스 몬스터이기에 여러가지 새로운 도전과제를 안겨주었습니다. 특히 ...
안녕하세요, Eternal Survival 개발 노트입니다. 드디어 세 번째 보스인 위클라인을 성공적으로 구현했습니다. 루미아섬에서 가장 강력한 몬스터인 위클라인 박사를 어떻게 제 게임에 구현했는지 보여드리려고 합니다. 위클라인은 이전의 알파나 오메가와는 다르게, 완전히 다른 결의 보스 몬스터이기에 여러가지 새로운 도전과제를 안겨주었습니다. 특히 ...
안녕하세요, Eternal Survival 개발 노트입니다. 드디어 오메가 보스를 성공적으로 추가했습니다! 이전 포스팅에서 예고했던 대로, 리팩토링한 보스 특수공격 시스템을 활용해 다중 특수공격을 가진 보스를 구현할 수 있었습니다. 새로운 보스 패턴을 구현하기 위한 에셋을 찾기 위해 에셋 스토어를 뒤지느라 좀 오래 걸렸습니다. 최적화적인 측면에서 P...
저번에 이어서 현재 보스 시스템에 또다른 문제점을 발견해서 수정하게 되었습니다. 바로 보스들의 기반이 되는 BossBase 클래스의 설계가 보스가 여러개의 특수 공격을 가질 수 없도록 되어 있었기 때문입니다. 물론 BossBase를 상속받은 뒤 BossBase의 함수들을 대부분 오버라이드해서 특수 공격을 구현할 수는 있었지만, 이러면 보스가 많아질수록...
안녕하세요, Eternal Survival 개발 노트입니다. 오늘은 게임에 새로운 보상 시스템인 AirSupply(항공보급상자)를 추가하고, 기존 RadialFill 효과들을 완전히 리팩토링한 내용을 정리해보겠습니다. 특히 이번 리팩토링에서는 Unity의 표준 패턴을 따라 코드 품질을 크게 개선할 수 있었습니다. AirSupply 시스템 추가 기...
안녕하세요, Eternal Survival 개발 노트입니다. 지난 포스팅에서 보스 시스템의 기본 아키텍처를 구축했다면, 오늘은 실제 운영 중 발견된 문제들과 그 해결 과정에 대해 이야기하고자 합니다. 특히 Unity Animator Controller의 설정 부분에서 다소 어이없는 문제를 해결하느라 시간을 많이 소비해서 여러분들은 저와 같은 실수를 ...
안녕하세요, Eternal Survival 개발 노트입니다. 오늘은 프로젝트에 보스 시스템을 추가하면서 겪었던 설계 과정과 구현상의 도전 과제들, 그리고 셰이더를 활용한 시각적 효과 구현에 대해 이야기하고자 합니다. 보스 시스템 아키텍처 설계 기존의 Enemy 클래스를 기반으로 하면서도 보스만의 특별한 기능을 추가할 수 있는 확장 가능한 구조가 ...
영어 말하기 능력을 평가하는 OPI 시험을 직접 경험한 생생한 후기를 공유합니다. 📝 안녕하세요! 오늘 서울에서 OPI(Oral Proficiency Interview) 시험을 치르고 왔습니다. 처음 경험해보는 전화 면접 형태의 영어 시험이라 긴장도 많이 되고 새로웠는데요, 앞으로 응시하실 분들께 도움이 되길 바라며 상세한 후기를 남겨보겠습니...
안녕하세요. 이터널 리턴의 인기 캐릭터 유키와 유키의 진화무기 ‘화무십일홍’을 게임에 구현했습니다! 유키 캐릭터 추가 유키는 이터널 리턴에서 양손검 및 쌍검 무기를 사용하는 근접 전투 전문 캐릭터로 활약하고 있습니다. 특히, 유키의 궁극기 ‘화무십일홍’은 이터널 리턴에서는 적중시키기 정말 까다로운 스킬이지만 화려한 벚꽃문양 이펙트와 함께 적을 베어...
안녕하세요. 이번에는 게임에 정말 큰 변화를 가져온 업데이트를 소개하려고 합니다. 혜진 캐릭터의 전용 무기와 함께 완전히 새로운 무기 진화 시스템을 구현했습니다! 혜진 캐릭터 전용 무기 이터널 리턴의 혜진 캐릭터를 모티브로 한 전용 무기를 추가했습니다. 혜진의 특성에 맞게 원거리 투사체 무기로 구현했습니다. 기본 무기: ‘혜진의 무기’ ...
안녕하세요. 최근 Claude Code나 Gemini Cli와 같은 툴을 활용하면 단순히 인공지능에게 코드를 복사+붙여넣기로 전달해서 수정된 코드를 다시 복사+붙여넣기로 옮겨넣지 않아도 인공지능이 프로젝트 코드 전체를 분석하고 수정할 수 있다는 사실을 알게 되었습니다. 이번 포스팅에서는 이런 Claude Code를 활용해 프로젝트 코드에서 문제점들과 ...
안녕하세요. 이번에는 게임 콘텐츠 업데이트 소식을 전해드리려고 합니다. 새로운 무기 ‘별조각’을 추가하고, 기존 무기들의 시각적 효과를 개선했습니다. 신규 무기: ‘별조각 (Star Fragment)’ 추가 이터널 리턴의 장신구 아이템 ‘별조각’을 기억하시나요? 솔로모드 시절 아주 잠깐 등장했다가 밸런싱 문제로 곧바로 사라진 아이템입니다. 플레이어...
안녕하세요. 지난번 아이템 시스템 리팩토링에 작은 추가 개선 사항이 있어서 잠깐 이야기 하고, 그동안 진행돼 왔던 게임 콘텐츠 관련 개발 사항을 정리하고자 합니다. 코드 개선 사항 우선 시스템 개선 사항입니다. 원래 아이템의 데이터를 관리하는 ScriptableObject인 ‘ItemData’는 아이템이 무기인지, 장비인지 구분하지 않고 단순히 모...
안녕하세요. 오늘은 지난번 무기 시스템 개선에 이어서 진행한 아이템 시스템 전체에 반영된 개선 사항이 있어서 공유하고자 합니다. ‘Weapon.cs’만 문제가 아니었잖아? 골드메탈님의 ‘Undead Survivor’ 에셋에서는 아이템의 종류가 많지 않았기 때문에, Item.cs 스크립트 내에서 switch 문을 사용하여 아이템 타입(ItemType...
퀘이크 무기 추가, 그리고 마주한 고민 최근 Eternal Survival 게임에 플레이어의 이동 거리에 따라 주변에 광역 피해를 주는 ‘퀘이크(Quake)’라는 새로운 무기를 추가하는 작업을 진행했습니다. 이를 진행하면서 코드 구조의 개선이 이루어진 부분이 있어 공유하고자 합니다. 기존에는 Weapon.cs라는 스크립트가 근접(Melee) 및 원...
안녕하세요, 지난번에 이은 Eternal Survival 개발 노트입니다. 오늘은 프로젝트의 심장부와도 같은 ‘스탯(Stat) 시스템’에 적용한 중요한 아키텍처 개선에 대해 이야기하고자 합니다. 기존 방식의 문제점: “직접 접근의 함정” 프로젝트 원형이 되었던 ‘Undead Survivor’에셋에서, 플레이어의 이동 속도나 무기의 공격력 같은 스...
안녕하세요. 지난번에 이어서 Eternal Survival의 개발 현황을 공유하고자 포스팅합니다. 이미 개발이 어느정도 진행 된 상황이라 모든 개발 현황을 요약해서 공유하는건 어려울 것 같습니다. 특히, 새로운 캐릭터의 추가, 맵 디자인 등과 같은 디자인 측면의 변화들은 github 저장소에서 쉽게 확인할 수 있으니 생략하고자 합니다. 대신 오늘은 프...
프로젝트 개요 오랜만에 새로운 게임 프로젝트를 시작하게 되어 기획안을 블로그에 공유하고자 합니다. 프로젝트 명은 “Eternal Survival”로, 제가 정말 좋아하는 게임인 “이터널 리턴”의 IP를 활용하여 “뱀파이어 서바이버”와 같은 탑다운 생존 액션 장르의 게임을 만들어보는 프로젝트입니다. 프로젝트 깃허브 저장소 주소 이터널 리턴의 매력적...
개요 이 프로젝트는 강아지 이미지를 종에 따라 분류할 수 있는 간단한 CNN 모델의 구현을 다루고 있습니다. 모델 구조 아래와 같은 구조로 모델을 설계하였습니다. – 초기 학습 결과 위의 그래프는 모델...
개요 ‘SKKU 뭐먹지’란 매일 식사 메뉴를 고민하는 성균관대학교 자연과학캠퍼스 학생들을 위한 식당 추천 서비스입니다.이런 고민은 학생들이 학교 근처의 모든 음식점들에 대한 정보를 알기 힘들다는 점에서 비롯됩니다. 그러므로 학교 근처의 다양한 음식점 정보를 제공하는 웹 서비스를 제공하고자 합니다. 웹사이트 구조 ‘SKKU 뭐먹지’는 정적 웹 ...
개요 본 프로젝트에는 AI-Hub의 해양 침적 쓰레기 이미지 데이터셋이 사용되었다. 해당 데이터셋은 해양 침적 쓰레기의 수거를 위해 실시, 설계 조사를 보다 빠르고 효율적으로 수행하고자 조사 과정에서 생성되는 소나 조사 이미지와 수중 촬영 이미지를 통해 침적 쓰레기를 자동 인식하고 분류할 수 있도록 인공지능을 훈련하기 위한 데이터셋이다. 우리는 ...
14725 개미굴 해법
문제 링크 트라이라고 하는 독특한 트리 형태의 자료구조를 활용하는 문제. 단, 맛보기 정도의 난이도이기에 map을 활용하여 트리를 구현한다는 정도만 이해한다면 쉽게 풀 수 있다. #include<map> #include<set> #include...
2042 구간 합 구하기 해법
문제 링크 세그먼트 트리를 이용하는 문제. 이전에 다루었던 1019 책 페이지 문제보다 조금 더 심화되어 세그먼트 트리의 모든 기능을 다룰 줄 알아야 해결할 수 있는 문제이다. #include<cstdio> using namespace std; ...
2357 최댓값과 최솟값 해법
문제 링크 세그먼트 트리라는 자료구조의 구현 및 활용 방법만 알고 있다면 간단하게 해결할 수 있는 문제이다. #include<cstdio> #include<vector> using namespace std; pair<int,in...
1019 책 페이지 해법 백준 온라인 저지 사이트에 올라와있는 문제이다.
문제 링크 특수한 알고리즘이 필요한 문제는 아니고 수학적인 통찰력으로 해결할 수 있는 문제이다. 입력받은 수의 각 자릿수들을 a1a2…ai…an-1an라고 할때 i번째 자리에 특정 숫자가 몇번씩 등장하는지 고민해보면...
2079 팰린드롬 해법 백준 온라인 저지 사이트에 올라와있는 문제이다.
문제 링크 문자열 string이 주어졌을때 해당 문자열의 i번째 인덱스부터 j번째 인덱스까지의 부분문자열이 팰린드롬인지 아닌지를 P(i,j)라고 했을 때 아래의 공식이 성립한다 1) string[i] == strin...
20149 선분 교차 3 해법 백준 온라인 저지 사이트에 올라와있는 문제이다.
문제 링크 풀이 할 때 일반적으로 떠오르는 해법인 평면에서 직선의 방정식을 이용해 각 직선의 기울기 등을 계산하는 방식은 부동소수점 오차로 인해 정확한 풀이가 불가능하다. 따라서 벡터의 외적을 활용하는 ccw ...
problem solving 스터디 시작 각종 코딩 테스트 준비 및 개인 코딩 실력 향상을 위해서 대학교 동기인 Hyuk-San Kwon, slllldka과 함께 스터디 그룹을 만들었습니다. 제가 풀어서 공유하였던 문제나 다른 그룹원이 공유하였던 문제 중에 인상깊은 문제가 있다면 해법을 간단하게 정리하여 ps스터디 카테고리로 포스팅하겠습니다. ...
Rim-SeungJae의 개발 블로그 오늘부터 이 블로그에 개발과 관련된 다양한 활동 기록을 남기려고 합니다. Problem solving 관련 공부한 내용, 전에 대학교에서 수강한 강의 관련, 그리고 진행하였던 몇가지 프로젝트 등 다양하게 생각중입니다. 또 기회가 된다면 그동안 플레이했던 각종 게임에 대한 간단한 리뷰 게시글도 올릴 것 같습니다.