skyser2003 / g Goto Github PK
View Code? Open in Web Editor NEWGame
Game
특정 오브젝트(플레이어, 적, 보스 등등)가 [공격] 이라는 행동을 취하면 공격 오브젝트를 생성한다.
공격 오브젝트는 충돌한 다른 오브젝트에 대해 피격 판정을 실시한다.
공격 오브젝트는 생성될 떄 다음과 같은 정보들을 가지고 생성된다.
공격 오브젝트가 가지는 정보들
공격 오브젝트에 피격된 오브젝트는 frame당 데미지, 가해지는 힘에대한 처리를 자체적으로 한다.
추후 다른 특성들 가령 중독량과 같은 것들이 추가 될 수 도 있다.
이 정보에 대한 데이터는 json 형태로 관리하는 것을 추천
다음과 같은 형태의 게임도 테스트 해봐야 함.
고려해야 할 것은 모바일에서는 어떠한 입력이 주를 이루는 가에 대한 생각이 먼저 필요함.
최근 모바일 게임 트렌드를 보면 자동 플레이라는 기능이 대부분 존재하는데, 이는 게임 자체를 시뮬레이션 게임으로 전락시키는 경우로 바꿔버림. 그러나 이 게임에서는 그런 자기 중심적인 강함보다는, 타인과 협동하여 보스를 잡는게 주 목적인 게임. 즉, 플레이어가 취하는 행동으로부터 즐거움을 얻었으면 하는 바람.
따라서 자동 전투까지의 입력의 간소화는 아니라고 생각.
일단 1번을 함으로써 얻는 이득에 대해 나열해보자면 다음과 같음.
2번을 취함으로써 얻는 이득은?
타이밍 게임(?) 으로써 접근을 해야 할 가능성이 커질지도..
최근 모바일 트렌드로 보면 당연히 2번. 그리고 2번을 취할 경우, 세로로 게임을 제작해도 아무 문제가 없다는 장점이 존재.
현재의 상황에서는 2번이 더 나은 선택같다.
의견 있다면 댓글을 부탁
필요 변수들은 다음과 같다.
오브젝트는 힘을 받아 가속도를 가지게 된다.
가속도를 가진 오브젝트는 매 시간마다 속도가 바뀌게 되며, 좌우의 이동속도는 최대속도 제한에 걸리게 된다.
이동 저항력 설정을 통해, 더 이상의 힘을 받지 않았을때 서서히 멈추도록 만든다
방은 최소 1개의 입장과 1개의 퇴장으로 이루어진다.
입장 -> 상하좌우
퇴장 -> 상하좌우
최소한으로 모든 경우의 맵을 만들기 위해서는 4*3
12종류의 맵을 만들어야된다.
입장 | 퇴장
좌 -> 상,우,하
상 -> 좌,우,하
우 -> 상,좌,하
하 -> 좌,상,우
약 공격 데미지, 공격 속도(시간), 공격 후 딜레이(시간) 설정 가능하도록
강 공격 데미지, n스택 변수 설정, 공격 속도(시간), 공격 후 딜레이(시간)
규칙
위의 변수들을 내가 설정 해서 테스트 할 수 있게끔 만들어 놓을것을 요청함
먼저 기능에 대해 설명
Atlas라는 클래스는 단순히 데이터의 집합체의 역할.
Atlas Region에는 각각의 이미지에 해당하는 정보를 가진 data
ex) 팔은 0,0부터 100, 200까지 와 같은 정보.
Atlas Page는 실제 텍스쳐에 대한 정보
ex) 텍스쳐의 가로, 세로, wrapping 형태 등등.
따라서 다음과 같은 방법으로 스파인에서 사용할 새로운 Atlas를 생성 가능
현재 살펴본 내용으로는 다음을 처리하면 목표를 이룰 수 있음.
3이라는 리듬에 포커스를 맞춰 게임을 제작해보자.
누군가가 만든 스파인 addon(?)
키가 씹히는 현상이 지속적으로 발생
인풋을 받는Update와
인풋을 처리하는 FixedUpdate간에 차이로 인해 생기는 문제같음.
http://docs.unity3d.com/ScriptReference/Animator.html 의
SetBool
SetFloat
SetTrigger의 함수를 사용하여 애니메이션이 자동적으로 재생되도록 설정함
현재 가능한 동작 ->
Idle, Walk, Run, Jump_Start, OnAir, Jump_Land, WeakAttack, StrongAttack
Walk,Run은 이동에 사용하는 애니메이션
SetFloat을 사용하여 HorizontalSpeed 의 값을 설정해주면된다.(X축으로 이동하는 속도를 넣어주도록)
SetTrigger을 이용하여 점프가 시작될때 StartJump를 설정해주자.
그리고 공중에 있는 상태로 판단이 되면 IsOnAir를 bool을 통해 true로. 땅에 착지된 상태면 false로 설정
StartWeakAttack과 StartStrongAttack은 각각 약공격, 강공격이 시작될 때 SetTrigger로 설정해주면 된다.
강공격과 같은 경우는 추후에 애니메이션을 더 추가할 예정.
작업 후 close 처리 바람.
사용하는 변수 명들
HorizontalSpeed - float
좌우 이동값 입력
StartWeakAttack - trigger
공격 시작시 설정
StartStrongAttack - trigger
강 공격 시작시 설정
StartJump - trigger
점프 시작시 설정
IsOnAir - bool
공중에 있을 시에 true, 아니면 false
StartHit - trigger
피격시에 설정
IsDown - bool
쓰러진 상태일 경우 설정
해당에 State Flow Chart쪽 문서 읽고 이 이슈에 댓글 달아주기 바람
AtlasRegionAttacher를 사용하여 가능
대충 SpineAttachment 의 기능을 사용해서 구현하는듯.
다음과 같은 게임을 분석
이슈입니다
탭 타이탄과 동일하게 increamental한 게임을 만드는 것이 목표.
탭 타이탄과는 다르게 돈을 번 뒤 즉시 적용이 아니고, 마을로 돌아 간 뒤 골드를 소비하는 구조이기 때문에 고려해야 할 상황이 생김.
초반 보스들을 죽이는게 너무 지루하지 않을까?
일정 환생 횟수 이상일 경우, 아예 처음이 아닌 중간부터 사냥할 수 있도록 밸런스 조정.
점프는 길게 누르면 더욱 높이 증가한다.
기능은 다음과 같은 플로우로 진행된다.
플레이어가 점프 키 입력
-> 키 입력이 n초간 눌러진다 -> n초동안 F의 힘을 위로 받는다.(단 n초는 입력 시간 허용 범위가 제한되어 있음. 일단 0.2초 정도로 설정 바람)
중간에 점프 키 입력이 중지되면 더 이상 위로 힘을 받는 것은 없다.
아이템은 크게 2가지로 나뉜다.
[종류]
[획득 방법]
[획득 시 처리]
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.