반응형

게임 22

[폭풍의 메이드 : 심장주의보] 개발일지 #3 - 메이드 도움 요청

안녕하세요 버거덕게임즈입니다. 이번에는 저희 게임 [폭풍의 메이드 : 심장주의보]에서 특징으로 삼고있는 인게임 도중 다양한 미니게임을 주제로 일지를 작성해보겠습니다. [폭풍의 메이드 : 심장주의보]에서 카페를 영업하다보면 다양한 이벤트가 발생합니다. 메이드가 주인님에게 서비스를 제공하다가 도움이 필요할때나 도중에 문제가 발생했을때 등등 여러 상황이 펼쳐집니다. 발생한 이벤트에 따라 랜덤하게 다양한 미니게임 혹은 선택지가 주어집니다. 오므라이스 케찹 그리기, 메이드 댄스와 함게 리듬게임, 음료수 쉐이킹, 독심술(?)등등 여러가지를 즐기실 수 있습니다. 기존의 물장사 아일랜드 게임에서는 한가지타입의 이벤트만 발생한다면, 저희 [폭풍의 메이드 : 심장주의보]에서는 좀더 다양한 상황을 체험할수있고, 그를 통해 ..

개발 프로젝트 2024.03.17

[폭풍의 메이드 : 심장주의보] 개발일지 #2 - 주인님의 만족도 시스템

안녕하세요 버거덕게임즈입니다. 올해 1월에 개발일지 올린후로 2달이나 지나버렸네요ㅠ 그동안 게임다듬기에 에너지를 많이 쓰고난 뒤에 지원사업이랑 공모전도 제출하고나서 보니 노력한만큼 성과가 있었으면 좋겠다는 생각뿐이군요ㅎㅎ 그새 게임 제목도 정해졌습니다. 항상 제목이 없어서 아쉬웠는데 지어지고나니 마음이 편안합니다. 그래도 게임컨셉이랑 충돌하는 느낌이 있어서 추후에 다시 바뀔수도 있습니다. 오늘은 손님의 만족상태 구현에 대한 글입니다. 기존이 용과같이 : 물장사 아일랜드에선 손님이 원하는 스타일에 따라 표정으로 만족도를 파악할 수 있고 표정에 따라 좋거나 나쁜 효과를 볼 수 있습니다. 예를 들면 표정이 좋은 손님은 돈을 더 사용한다던가, 더 오랜시간 동안 돈을 사용하거나 하는 좋은 효과가 있고, 문제를 일..

개발 프로젝트 2024.03.01

[폭풍의 메이드 : 심장주의보] 개발일지#1 - 시작

안녕하세요 버거덕게임즈입니다. ​ 작년 9월에 게임개발을 시작해서 어느정도 모습을 가늠 할수있는 정도가 나와서 수줍지만 소개 올리겠습니다. ​ 제목은 아직 미정이라 '프로젝트 메이드'라고 지었습니다! (네이밍이 세상에서 제일 어려운 것 같습니다.) ​ 저희 게임을 짧게 소개드리자면 용과같이 시리즈의 물장사 아일랜드를 모티브로한 메이드 카페 운영 게임입니다! ​ 친구와 둘이서 가장 재밌다고 생각했던 게임이 이 물장사 아일랜드였기에 비슷한 게임을 더하고 싶었고 찾았지만 없었고 결국엔 만들기로 된 것 같습니다. 거기에 원래가 사이드게임이었기에 메인게임으로 가져오기위해 좀더 풍부하게 만들고자 추가요소들과 편의성 등등 고민을 했습니다. 그래서 중간중간 발생하는 미니게임들과 메이드의 패시브 능력 & 콤보로 인한 버..

개발 프로젝트 2024.03.01

[디자인패턴] 12. 유니티에서 컴포지트 패턴 feat.이터레이터 패턴

이번 챕터에서는 컴포지트 패턴을 이터레이터 패턴에 이어서 같은 주제, monster info와 weapon info로 소개하겠습니다. 컴포지트 패턴의 정의 객체들을 트리구조로 구성하여 부분 - 전체 계층구조를 구현합니다. 컴포지트 패턴을 이용하면 개별객체와 복합객체를 똑같은 방법으로 다룰 수 있게 됩니다. 이전시간에 배운 이터레이터 패턴과 혼합하여 설명하자면 복합객체인 iterator와 개별객체인 item이 구분할 필요가 없어, item을 가진 iterator를 가진 그위에 iterator를 가지는 형태, 즉 트리구조로 복합객체를 만들어갈 수 있습니다. 복합객체와 개별객체가 상속받을 infoComponent를 만들었습니다. 복합객체와 개별객체의 구분을 없애줄 것입니다. public abstract cla..

[디자인 패턴] 11. 유니티에서 이터레이터 패턴

이번에는 이터레이터 패턴, 반복자 패턴입니다. 컬렉션 객체 안에 들어있는 모든 항목에 접근하는 방식이 통일시킨다면 어떤 종류의 집합체에 대해서도 사용할 수 있는 하나의 함수로 모든 컬렉션을 다룰수있게됩니다. 핵심은 다양한 집합체를 하나의 클래스로 상속받아 관리하며 같은 함수로 내부에 접근을 할 수 있다는 것입니다. 넓게보자면 이전에 포스팅했었던 어댑터패턴과 관통하는 부분이 있을 수 있습니다. 2021.09.30 - [게임 개발/디자인 패턴] - [디자인패턴] 9. 유니티에서의 어댑터 패턴 퍼사드 패턴 [디자인패턴] 9. 유니티에서의 어댑터 패턴 퍼사드 패턴 이번 챕터에서는 두개의 패턴이 함께 있어서 같이 작성했습니다. 첫번째로 어댑터 패턴입니다. 어댑터 패턴 정의 한 클래스의 인터페이스를 클라이언트에서 ..

[디자인패턴] 10. 유니티에서 템플릿 메소드 패턴

이름은 생소하지만 알게모르게 사용하고있던 패턴 '템플릿 메소드 패턴'입니다! 템플릿 메소드 패턴 정의 어떤 작업 알고리즘의 골격을 정의합니다. 일부 단계는 서브클래스에서 구현하도록 할 수 있습니다. 템플릿 메소드를 이용하면 알고리즘의 구조는 그대로 유지하면서 특정 단계만 서브클래스에서 새로 정의하도록 할 수 있습니다. 적용되는 객체지향의 원칙 수퍼클래스에서 모든것을 관리하고 필요한 서브클래스를 불러서 써야합니다. 템플릿 메소드 패턴의 핵심 재활용성을 생각하면서!(밑줄쫙) 추상클래스를 사용해서 수퍼클래스에 중복되는 부분은 구현하고, 서브 클래스에 달라질 수 있는 부분(바뀌는 부분)을 구현해줍니다. * 수퍼클래스에서 알고리즘을 관리하는 템플릿 메소드가 하나 있어야 합니다. * 템플릿 메소드는 알고리즘만 관리..

[디자인패턴] 9. 유니티에서의 어댑터 패턴 퍼사드 패턴

이번 챕터에서는 두개의 패턴이 함께 있어서 같이 작성했습니다. 첫번째로 어댑터 패턴입니다. 어댑터 패턴 정의 한 클래스의 인터페이스를 클라이언트에서 사용하고자 하는 다른 인터페이스로 변환합니다. 어댑터를 이용하면 인터페이스 호환성 문제 때문에 같이 쓸 수 없는 클래스들을 연결해서 쓸 수 있습니다. 유니티에서 예시로는 결제모듈을 예시로 들었습니다. 실제로는 문제 없지만 만약에 AOS와 IOS의 결제 함수명이 다를때를 가정하고 구현했습니다. // 결제 어댑터 인터페이스 public interface PurchaseAdapter { void Purchase(); } // AOS 결제 모듈 public class AndroidInApp : PurchaseAdapter { public void Purchase()..

[디자인패턴] 8. 유니티에서의 커맨드 패턴

꿀같은 추석시즌동안 너무 행복하게 쉬었답니다. 추석이 전부 가버리기 전에 지난주에 공부했던 커맨드 패턴에 대해 정리해보겠습니다. 커맨드 패턴 핵심 요청하는 객체와 요청을 수행하는 객체를 분리한다. 커맨드 객체의 Execute()를 호출한다. 작업취소기능도 지원할 수 있다. (구현할때는 사용하지 않았습니다.) 아래 객체지향의 원칙을 따른다. 객체지향의 원칙 바뀌는 부분을 캡슐화한다. 상속보다는 구성을 활용한다. 구현이 아닌 인터페이스에 맞춰서 프로그래밍한다. 서로 상호작용하는 객체사이에서 가능하면 느슨하게 결합하는 디자인을 사용한다. 확장에는 열려있지만 변경에는 닫혀있어야한다. 추상화된것에 의존하라 구상클래스에 의존하지 않도록 한다. 유니티에서 커맨드 패턴 사용 유니티에서 커맨드 패턴을 사용하기 적절한 곳..

[전 프로젝트 이야기] "레전드 오브 시티"

3인 인디게임 개발을 하면서 가장 마지막에 개발했던 프로젝트 '레전드 오브 시티'다. 전작 '레전드 오브 아레나'의 좋은 반응을 그대로 타고올라가 높은 성적의 후속작으로 데뷔할 예정이었다. 90%이상 개발완료 상태임에도 불구하고 팀내 사정으로 팀이 해체가 되면서 프로젝트가 종료되었다. 베타 테스트 반응도 좋고 이전작을 뛰어넘는 완성도를 자랑했지만 결국에는 어쩔 수 없었던 것 같다. 4개월동안 클라이언트 개발을 담당했고 여기서 크게 신경쓴 파트는 아무래도 캐릭터간의 FSM(유한상태머신)을 극한으로 활용해서 각 일반 몬스터, 특수 몬스터 그리고 보스의 행동패턴을 구현을 했던 기억이 난다. 2019.03.01 - [게임 개발/디자인 패턴] - [디자인패턴]02. - FSM (Finite State Machin..

개발 프로젝트 2021.09.04

[유니티 C#] MonoBehaviour를 상속 받아야하는 Singleton, 모노 싱글톤

이전에 싱글톤 관련 글을 정리하면서 마지막에 한번 언급했던 내용을 다뤄보겠습니다! https://welcomeheesuk.tistory.com/62 [디자인패턴] 03. 유니티에서의 싱글톤(Singleton) 패턴 지난 수요일에 친구들과 디자인패턴에 대해 스터디를 하면서 제 스스로로 잘 알고 사용하고 있으면서도 잘 모르겠는 아리송한 싱글톤 패턴에 대해서 다시 한번 정리하고자 합니다. 저는 예전에 welcomeheesuk.tistory.com 유니티로 게임을 개발하다보면 Sington패턴으로 정보들을 관리하면 좋을때가 많습니다. 그러면서 MonoBehaviour를 상속받는데 싱글톤처럼 동작하도록 구현하고 싶을때가 있습니다. 그럴때 사용하면 좋은것이 바로 '모노싱글톤(MonoSingleton)'입니다. 이 ..

게임 개발/Unity 2021.08.29
반응형