2014년 5월 29일 목요일

[Origin의 선물] 배틀필드(Battlefield 3) 무료 다운로드

Origin의 선물

Origin에서 유료 게임을 무료로 다운로드할 수 있는 이벤트를 하고 있다.

바로 Origin의 선물이라는 이벤트이다.

한번 다운로드하면 평생 소장할 수 있는 정식 버전의 게임이다.

이번에 다운로드 받을 수 있는 게임은 배틀필드(Battlefield) 3 이다.

비교적 저렴한 만9천원이라는 가격이지만 무료로 다운로드 받을 수 있다는게 어딘가!

Origin 클라이언트 설치만 하면 다운로드 받을 수 있다.

다운로드 화면다운로드 속도가 4.68 MB/s 이지만 2시간 넘게 걸린다는건 함정 ㅠ

용량이 엄청나다.. 19.91GB..ㅋㅋ

아무튼 유료화 되기 전에 언능 다운로드 받기 바란다!

[Origin의 선물 바로가기]

2014년 5월 22일 목요일

디아블로 3 전설 드랍률 상향 이벤트 영구 적용!

[caption id="attachment_926" align="aligncenter" width="1002"][ 디아블로 홈페이지 내용 ] [ 디아블로 홈페이지 내용 ][/caption]어제 디아블로 홈페이지에 디아블로 1주년 기념 이벤트 중 하나였던 전설 드랍률 상향이 영구적으로 적용된다는 내용이 올라왔다.

세상에!!!

간단히 내용을 살펴보면 버프 표시는 사라지지만 드랍률은 그대로라는 것!

어마어마하다..

아무래도 유저들이 사냥의 흥미가 떨어질 것을 우려한 블리자드의 입장이 아닐까 싶다.

2014년 5월 14일 수요일

Error using GameHelper without BaseGameActivity

이 문제로 3일 동안 삽질이란 삽질은 다 했던 것 같다.

Google Play Game Service를 앱에 적용을 시키기 위해 BaseGameActivity를 사용했을 때에는 정상적으로 구현이 되었다.

하지만 BaseGameActivity가 없이 GameHelper로 구현하려고 하니 뜻대로 되지 않았다.

Google Play Game Service의 Developer's Guide의 Using GameHelper without BaseGameActivity 섹션에 나온대로 따라해 봤으나 아래와 같은 에러가 발생한 것이다.






05-14 10:59:06.133: E/AndroidRuntime(31368): FATAL EXCEPTION: main
05-14 10:59:06.133: E/AndroidRuntime(31368): java.lang.IllegalStateException: A fatal developer error has occurred. Check the logs for further information.
05-14 10:59:06.133: E/AndroidRuntime(31368): at com.google.android.gms.internal.eh$h.b(Unknown Source)
05-14 10:59:06.133: E/AndroidRuntime(31368): at com.google.android.gms.internal.eh$h.a(Unknown Source)
05-14 10:59:06.133: E/AndroidRuntime(31368): at com.google.android.gms.internal.eh$b.ec(Unknown Source)
05-14 10:59:06.133: E/AndroidRuntime(31368): at com.google.android.gms.internal.eh$a.handleMessage(Unknown Source)
05-14 10:59:06.133: E/AndroidRuntime(31368): at android.os.Handler.dispatchMessage(Handler.java:99)
05-14 10:59:06.133: E/AndroidRuntime(31368): at android.os.Looper.loop(Looper.java:130)
05-14 10:59:06.133: E/AndroidRuntime(31368): at android.app.ActivityThread.main(ActivityThread.java:3683)
05-14 10:59:06.133: E/AndroidRuntime(31368): at java.lang.reflect.Method.invokeNative(Native Method)
05-14 10:59:06.133: E/AndroidRuntime(31368): at java.lang.reflect.Method.invoke(Method.java:507)
05-14 10:59:06.133: E/AndroidRuntime(31368): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864)
05-14 10:59:06.133: E/AndroidRuntime(31368): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
05-14 10:59:06.133: E/AndroidRuntime(31368): at dalvik.system.NativeStart.main(Native Method)


아무리 구글링을 해봐도 해답은 보이지 않았다.

StackOverflow에서는 해당 에러가 APP_ID를 설정하지 않았을 때 발생하므로 설정을 해주라는 답만이 있었다.

하지만 나는 Guide에 나온대로 AndroidManifest.xml 파일에 아래와 같이 설정을 했으므로 해당사항이 없었다.






<meta-data android:name="com.google.android.gms.games.APP_ID" android:value="@string/app_id" />
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/>

그런데..!

StackOverflow의 채택되지 않은 답변 중에 하나에 아래 설정이 언급되어 있었다.






<meta-data android:name="com.google.android.gms.appstate.APP_ID" android:value="@string/app_id" />

헐.. 세상에..

위 설정을 추가하니 나를 괴롭히던 에러가 사라진 것이다..

허무했다.. 왜 Guide에는 저런 설정이 언급되어 있지 않았던 것일까..?

Google Play Service 적용 예제를 만드는 동안 잘못된 guide를 몇개 찾았는데 고쳐지기는 할지 의문이다..

 

* 수정

작업을 하다가 한가지 알아낸 사실..

GameHelper 생성 시 GameHelper.CLIENT_ALL로 생성하면 GAMES, PLUS, APPSTATE 이렇게 세가지 클라이언트를 다 사용하겠다는 것이다.

그러므로 해당 클라이언트 별로 APP_ID를 추가해야 한다는 것..!

자세한 내용이 없는 매뉴얼만 믿고 따라한 내 잘못이 크다..

공부하자 ㅠ