More actions
imported>chokh1443 No edit summary |
(Repair batch-0001 pages from live compare) |
||
| (56 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
마법의 디지바이스란, 본래 구글 안드로이드 Udacity 스터디의 해커톤 참여를 위해서 기획한 프로젝트로 | |||
마법의 MD5 배틀 + 디지바이스(다마고치) + 포켓몬의 전투 UI(희망사항) + 살아남아라개복치!의 메인UI | |||
를 합친 게임이라고 생각하면 된다. | |||
git> https://github.com/ZeroPage/magical-digivice | |||
__TOC__ | __TOC__ | ||
= 기획 = | |||
= 캐릭터 = | == 캐릭터 == | ||
* 현장에서 생성 | * 현장에서 생성 | ||
** 연속 촬영등을 활용해서 사람들 얼굴을 사진으로 담는다. | ** 연속 촬영등을 활용해서 사람들 얼굴을 사진으로 담는다. | ||
이 사진을 캐릭터의 이미지로 활용하여 충분한 숫자의 캐릭터를 만든다. | 이 사진을 캐릭터의 이미지로 활용하여 충분한 숫자의 캐릭터를 만든다. | ||
== 생성 == | === 생성 === | ||
* 마법의 md5 | * 마법의 md5 | ||
이름을 넣으면 md5화 시켜서 임의로 캐릭터를 생성. | 이름을 넣으면 md5화 시켜서 임의로 캐릭터를 생성. | ||
md5로 부터 나오는 수치는 7가지 스탯의 초기값, 캐릭터 이미지 | md5로 부터 나오는 수치는 7가지 스탯의 초기값, 캐릭터 이미지 | ||
== 스탯 == | === 스탯 === | ||
*비전투 관련 스탯 | *비전투 관련 스탯 ( 최대값 char ) | ||
외주를 하면 감소한다. | 외주를 하면 감소한다. | ||
시간이 지나면 감소한다. | 시간이 지나면 감소한다. | ||
0 이하로 내려가면 캐릭터가 사망하고 앤딩으로 이동한다. | 0 이하로 내려가면 캐릭터가 사망하고 앤딩으로 이동한다. | ||
최대값보다 커질 경우 더 이상 할 수 없다. | |||
** 배부름 | |||
치킨을 먹으면 배부름 수치가 올라간다. | |||
** 맨탈 | ** 맨탈 | ||
맥주를 마시면 맨탈 수치가 올라간다. | 맥주를 마시면 맨탈 수치가 올라간다. | ||
* 전투 관련 스텟 | * 전투 관련 스텟 ( 최대값은 unsigned int ) | ||
** 칰력--칰앙심-- | ** 칰력--칰앙심-- | ||
치킨을 먹으면 스탯이 올라갈 가능성이 있다. | 치킨을 먹으면 스탯이 올라갈 가능성이 있다. | ||
| Line 30: | Line 33: | ||
외주를 하면 스탯이 올라갈 가능성이 있다. | 외주를 하면 스탯이 올라갈 가능성이 있다. | ||
* 전투+비전투 관련 스탯 | * 전투+비전투 관련 스탯 ( 최대값은 unsigned int ) | ||
** 재력 | ** 재력 | ||
외주를 하면 증가한다. | 외주를 하면 증가한다. | ||
| Line 36: | Line 39: | ||
0 이하로 내려가면 캐릭터가 사망하고 앤딩으로 이동한다. | 0 이하로 내려가면 캐릭터가 사망하고 앤딩으로 이동한다. | ||
전투에서 지면 감소한다. | 전투에서 지면 감소한다. | ||
== 육성 == | === 육성 === | ||
* 치킨먹기 : | * 치킨먹기(30분당) : | ||
재력- | 재력-=5, 칰력+=rand()%1, 배부름+=10+rand()%20 | ||
* 맥주마시기 : | * 맥주마시기(30분당) : | ||
재력- | 재력-=5, 주량+=rand()%1, 멘탈+=10+rand()%20 | ||
* 외주하기 : | * 외주하기(30분당) : | ||
재력++, 멘탈- | 재력+=10 + rand()%10, 멘탈-=rand()%5, 배고픔-=rand()%5, 코딩+=rand()%1 | ||
= 전투 = | * 기본(30분당) : | ||
== NFC == | 배부름-=rand()%5 , 멘탈-=rand()%5 | ||
* 전투(1회당) : | |||
배부름-=10, 멘탈-=10, 제력-=결과에따라 | |||
== 전투 == | |||
=== NFC === | |||
* 데이터 교환 | * 데이터 교환 | ||
주량, 칰력, 코딩, 재력, rand() | |||
* 전투는 ( rand() + rand() ) % 3 으로 다음 3가지중 하나로 전투한다. | * 전투는 ( rand() + rand() ) % 3 으로 다음 3가지중 하나로 전투한다. | ||
** 다이다이 | ** 다이다이 | ||
주량으로 전투를 한다. | |||
** 칰세권 | ** 칰세권 | ||
칰력으로 전투를 한다. | |||
** 코드잼 | ** 코드잼 | ||
코딩으로 전투를 한다. | |||
* 전투 알고리즘 | |||
double TotalMyDmg=0, TotalUrDmg=0; | |||
** 매턴 | |||
int tmp = rand(); | |||
int myDmg = tmp % myStat; | |||
int urDmg = tmp % urStat; | |||
TotalMyDmg += myDmg; | |||
TotalUrDmg += urDmg; | |||
** 승패 | |||
compare(TotalMyDmg,TotalUrDmg); | |||
* 전투 결과 | |||
배부름-=10 | |||
멘탈-=10 | |||
제력-= 결과에 따라 달라진다. | |||
=== 출력 === | |||
* 다이다이 | |||
* | * 칰세권 | ||
= 엔딩 = | * 코드잼 | ||
== 엔딩 == | |||
* $0.99 달러에 부활 가능 | |||
== 결제 == | |||
* 정식버전(WIFI, 전투로그 지원) | |||
본 버전은 Lite 버전입니다. | |||
정식 버전을 사용하려면 결제해주세요. | |||
계좌번호 (우리) 1002-XXX-XXXXXX $0.99 | |||
* 부활 | |||
계좌번호 (우리) 1002-XXX-XXXXXX $0.99 | |||
= 개발 = | |||
== 화면 구성 == | |||
http://pds21.egloos.com/pds/201411/07/63/d0045863_545ba5daaeb44.jpeg | |||
* 위쪽에는 스탯 6개를 보여줌 | |||
* 아래 버튼 4개 | |||
* 치킨먹기, 맥주마시기, 외주하기 : 다이얼로그 | |||
* 전투하기 : NFC , WIFI(결제창으로 이동) | |||
== BGM == | |||
* http://www.youtube.com/watch?v=woktSuBWR3U - 디지몬 butterfly | |||
* http://www.youtube.com/watch?v=8oWthp4_nsU - 디지몬 진화 브금 | |||
* http://www.youtube.com/watch?v=9pYO0aHmez4 - 포켓몬 전투 브금 | |||
== 마법의 md5 == | |||
*스탯과 캐릭터id(이미지)는 preference 에 저장 | |||
== 전투애니메이션 == | |||
* Activity 1개로 해결 | |||
== NFC사용법 == | |||
* 파일 전송 가능 (용량 제한 x) | |||
* Android Beam(TM)이라는 기술을 쓴다. | |||
** http://developer.android.com/guide/topics/connectivity/nfc/nfc.html#p2p (레퍼런스) | |||
** 레퍼런스에 있는 예제코드를 복붙, 하고 Intent-filter를 붙이는 정도로 사용 가능하다. | |||
** 단, 단방향 전송만 가능한데다가, '송신'을 위해 사람이 손으로 터치해서 허가 해줘야 한다; | |||
** 이 때문에 문제가 생겼다. | |||
*** 본래 양방향 통신을 기대하고 만들었는데 단방향만 된다. | |||
*** '송신' 허가를 위해 터치를 해야 한다. '수신' 허가도 아니다. 수신 허가였으면 서로 턴을 교환 하는 식으로 만들 수 있었을 텐데. | |||
*** 게다가, 송신 허가 시점을 캐치할 수 없다. 전송 시도할때는 캐치 할수 있다. 근데 이 시점을 잡아봐야 게임 진행에 쓸모가 없다. | |||
*** Beam 말고 Tag 상태로 작동 할 수 있는지 시도 해봤는데, 방법이 없다. | |||
** 기획 수정이 필요하다. | |||
** NFC의 이런 특징을 감수하고도 할만한 진행방식을 생각하던가 | |||
** 아니면, 다른 근거리 통신 기술을 이용해야 한다. | |||
---- | |||
상위: [[Armdroid]] | |||
Latest revision as of 23:56, 26 March 2026
마법의 디지바이스란, 본래 구글 안드로이드 Udacity 스터디의 해커톤 참여를 위해서 기획한 프로젝트로
마법의 MD5 배틀 + 디지바이스(다마고치) + 포켓몬의 전투 UI(희망사항) + 살아남아라개복치!의 메인UI
를 합친 게임이라고 생각하면 된다. git> https://github.com/ZeroPage/magical-digivice
기획
캐릭터
- 현장에서 생성
- 연속 촬영등을 활용해서 사람들 얼굴을 사진으로 담는다.
이 사진을 캐릭터의 이미지로 활용하여 충분한 숫자의 캐릭터를 만든다.
생성
- 마법의 md5
이름을 넣으면 md5화 시켜서 임의로 캐릭터를 생성. md5로 부터 나오는 수치는 7가지 스탯의 초기값, 캐릭터 이미지
스탯
*비전투 관련 스탯 ( 최대값 char ) 외주를 하면 감소한다. 시간이 지나면 감소한다. 0 이하로 내려가면 캐릭터가 사망하고 앤딩으로 이동한다. 최대값보다 커질 경우 더 이상 할 수 없다.
- 배부름
치킨을 먹으면 배부름 수치가 올라간다.
- 맨탈
맥주를 마시면 맨탈 수치가 올라간다.
- 전투 관련 스텟 ( 최대값은 unsigned int )
- 칰력--칰앙심--
치킨을 먹으면 스탯이 올라갈 가능성이 있다.
- 주량
맥주를 마시면 스탯이 올라갈 가능성이 있다.
- 코딩
외주를 하면 스탯이 올라갈 가능성이 있다.
- 전투+비전투 관련 스탯 ( 최대값은 unsigned int )
- 재력
외주를 하면 증가한다. 치킨을 먹거나 맥주를 마시면 감소한다. 0 이하로 내려가면 캐릭터가 사망하고 앤딩으로 이동한다. 전투에서 지면 감소한다.
육성
- 치킨먹기(30분당) :
재력-=5, 칰력+=rand()%1, 배부름+=10+rand()%20
- 맥주마시기(30분당) :
재력-=5, 주량+=rand()%1, 멘탈+=10+rand()%20
- 외주하기(30분당) :
재력+=10 + rand()%10, 멘탈-=rand()%5, 배고픔-=rand()%5, 코딩+=rand()%1
- 기본(30분당) :
배부름-=rand()%5 , 멘탈-=rand()%5
- 전투(1회당) :
배부름-=10, 멘탈-=10, 제력-=결과에따라
전투
NFC
- 데이터 교환
주량, 칰력, 코딩, 재력, rand()
- 전투는 ( rand() + rand() ) % 3 으로 다음 3가지중 하나로 전투한다.
- 다이다이
주량으로 전투를 한다.
- 칰세권
칰력으로 전투를 한다.
- 코드잼
코딩으로 전투를 한다.
- 전투 알고리즘
double TotalMyDmg=0, TotalUrDmg=0;
- 매턴
int tmp = rand(); int myDmg = tmp % myStat; int urDmg = tmp % urStat; TotalMyDmg += myDmg; TotalUrDmg += urDmg;
- 승패
compare(TotalMyDmg,TotalUrDmg);
- 전투 결과
배부름-=10 멘탈-=10 제력-= 결과에 따라 달라진다.
출력
- 다이다이
- 칰세권
- 코드잼
엔딩
- $0.99 달러에 부활 가능
결제
- 정식버전(WIFI, 전투로그 지원)
본 버전은 Lite 버전입니다. 정식 버전을 사용하려면 결제해주세요. 계좌번호 (우리) 1002-XXX-XXXXXX $0.99
- 부활
계좌번호 (우리) 1002-XXX-XXXXXX $0.99
개발
화면 구성
http://pds21.egloos.com/pds/201411/07/63/d0045863_545ba5daaeb44.jpeg
- 위쪽에는 스탯 6개를 보여줌
- 아래 버튼 4개
- 치킨먹기, 맥주마시기, 외주하기 : 다이얼로그
- 전투하기 : NFC , WIFI(결제창으로 이동)
BGM
- http://www.youtube.com/watch?v=woktSuBWR3U - 디지몬 butterfly
- http://www.youtube.com/watch?v=8oWthp4_nsU - 디지몬 진화 브금
- http://www.youtube.com/watch?v=9pYO0aHmez4 - 포켓몬 전투 브금
마법의 md5
*스탯과 캐릭터id(이미지)는 preference 에 저장
전투애니메이션
- Activity 1개로 해결
NFC사용법
- 파일 전송 가능 (용량 제한 x)
- Android Beam(TM)이라는 기술을 쓴다.
- http://developer.android.com/guide/topics/connectivity/nfc/nfc.html#p2p (레퍼런스)
- 레퍼런스에 있는 예제코드를 복붙, 하고 Intent-filter를 붙이는 정도로 사용 가능하다.
- 단, 단방향 전송만 가능한데다가, '송신'을 위해 사람이 손으로 터치해서 허가 해줘야 한다;
- 이 때문에 문제가 생겼다.
- 본래 양방향 통신을 기대하고 만들었는데 단방향만 된다.
- '송신' 허가를 위해 터치를 해야 한다. '수신' 허가도 아니다. 수신 허가였으면 서로 턴을 교환 하는 식으로 만들 수 있었을 텐데.
- 게다가, 송신 허가 시점을 캐치할 수 없다. 전송 시도할때는 캐치 할수 있다. 근데 이 시점을 잡아봐야 게임 진행에 쓸모가 없다.
- Beam 말고 Tag 상태로 작동 할 수 있는지 시도 해봤는데, 방법이 없다.
- 기획 수정이 필요하다.
- NFC의 이런 특징을 감수하고도 할만한 진행방식을 생각하던가
- 아니면, 다른 근거리 통신 기술을 이용해야 한다.
상위: Armdroid