playMaker

Author Topic: Cubicle Cat Superstar! (IOS, Android)  (Read 5834 times)

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Cubicle Cat Superstar! (IOS, Android)
« on: August 01, 2015, 12:39:29 AM »
Good morning, fellow game creators!
I finally finished my game and I am proud to share the power of PlayMaker.
I used about 250 to 300 hours on this (coding, art stuff, testing and tweaking). This includes wasting about 60hours with struggling to get Google Play Services to work.
I have posted the "master FSM" as well, so you can see how I set up the whole thing

STORYFLUFF:
In "Cubicle Cat Superstar" you are a fat, blue, Japanese office cat, working all night in your sweaty cubicle. However, the blissful prospect of a karaoke booth at 4:00 AM is ever further away, as there are millions of donuts and other unhealthy distractions preventing you from getting your work done.

gameplay trailer:
https://www.youtube.com/watch?v=ur3_5Gr5N1E

free for android:
https://play.google.com/store/apps/details?id=com.kabukikat.cubiclecat

free for IOS:
https://itunes.apple.com/app/cubicle-cat-superstar/id999742139

GAME MECHANICS:
The game is a fast paced reaction/defense/survival thing, where you shoot down fast approaching donuts, cookies and lumbering cup cakes by pressing fire buttons according to direction of attack. the whole thing is split into timer based survival rounds. should any donut hit your cubicle, you are obliged to eat it, and thus: game over.
In the end its all about multi tasking and attention focus.
There are power upgrades, buffs, online leaderboard and ever increasing difficulty levels.


DEVELOPMENT OBSERVATIONS SHARING:


The good:
- Playmaker performance is fantastic. granted, I only use 4 FSMs, but my game runs with only 13 drawcalls. And I never had any performance issues (ok, its not a 3D game :-))

The bad:
- Not having multidimensional arrays in playmaker is real real drawback. the workarounds for this are ridiculous.
- setting up basic conditional loops in playmaker, which would be 6 chars in a single C script, is terrible.
- some random "Audio Play" action bug which I just never could solve.

- version control:
This was the biggest bitch with this project. especially when there are 4 unity project folders (Android free, paid, IOS free, paid). I tried to keep it all in 1 project, as 9slice GUI scaling is the same for all devices and platforms. However, the multitude of plugins needed for Google Game Services, advertizing, iOS game center and such kept clashing when compiling.
I used Stans Assets for Android Native and IOS game center. While I can recommend the IOS plugin as fairly easy to use, the Android Native plugin is quite a headache.

this has more to do with the next beef I had:

Google Play Services:
my god, what a nightmare! just setting up a leaderboard requires 5 hours of creating a multitude of authentication keys and crosslinking to APIs so deeply buried in Google's muddled website, it is a legit reason to kill yourself.
A miracle Apple Game Center is such a breeze to set up. ironic, since the 3rd worst problem was:

Xcode hell:
developing in windows and compiling in xcode on a mac is not recommended I found out. Whether if its a filesystem incompatibility, or a bug in Unity, I don't know. But you can skip a multitude of bizarre problems if you move Unity to Mac. So I developed my game on a 11" Macbook Air, which due to the screen size is another fun story altogether. However, compilation in Xcode is much easier.

Unity 5 vs Unity 4.6:
I started in 4.6 and moved to 5. bad mistake. Unity 5 is still too buggy for mobile development. I had 489 xcode errors. I managed to fix 8. and then I had to throw the towel and go back to Unity 4.6.

Android vs IOS performance observations:

- Disc write lag.
I use Easy Save 2 (no encryption), and the slowdown on IOS is up to 0,5 seconds lag when writing 17 variables to disc.

- build file size: IOS ipa: 53MB, Android apk 16MB.
This is aparently a texture compression issue. ios uses PVRTC compression, which I found to be a terribly ugly quality loss. Android ETC1 compression is much, much better. Thus, IOS converts your carefully tweaked texture atlas into something uncompressed. And behold, your game just bloated 300%.

- Audio playback:
Android seems to have a delayed play lag for any audio (streamed, pooled etc), which seemingly cannot be fixed. This is really annoying for fast games.

I hope I shared some useful observations. I made another game in AS3 Flash before, and I found Playmaker a true vacation ride compared to coding from scratch. Albeit there are some efficiency drawbacks.

If any of you want to try out the game, feel free to give me feedback for improvement!
« Last Edit: August 17, 2015, 01:39:16 AM by friendlydog »

dudebxl

  • Hero Member
  • *****
  • Posts: 602
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #1 on: August 01, 2015, 02:28:45 AM »
hi,

thx for the info.. I am a bit shocked with the quality of the trailer.. it looks really professional.. did you make your game + trailer in 250-300hours or just the game?

 :)

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #2 on: August 01, 2015, 02:53:17 AM »
glad you like the trailer!
the 250 to 300h is for the game only.
the trailer took me about 50 to 60h. (considering the time cost/effect ratio, compared to the game dev process, the trailer is a pure inefficient waste of time, but it was so much fun making :-))



rik

  • Full Member
  • ***
  • Posts: 247
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #3 on: August 02, 2015, 02:39:52 AM »
dont maintain ios and android builds in same project make seperate for both projects it will save lot of time while dealing with conflicts etc

if you make change copy paste changes using template option in playmaker

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #4 on: August 03, 2015, 06:16:06 AM »
yes, I found out too.
copy pasting everything 4x is a hell though. especially when dealing with hundreds of variables that ALL change when tweaking game balance over and over again.

a shared XML file would be the proper way I guess - but terribly old school that I am, I did all this with pencil and paper instead :-)


liyokikon

  • Playmaker Newbie
  • *
  • Posts: 9
    • View Profile
    • AAAALIENS
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #5 on: August 06, 2015, 04:23:20 AM »
The trailer is seriously awesome! great job!
Check out my upcoming game:
www.aaaaliens.com

Join my google+ community
https://plus.google.com/communities/107153065825330599442

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #6 on: August 06, 2015, 06:18:24 AM »
The trailer is seriously awesome! great job!

thank you! :-)

inyourbus

  • Playmaker Newbie
  • *
  • Posts: 43
  • In Your Legends
    • View Profile
    • In Your Legends
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #7 on: August 06, 2015, 08:06:20 AM »
Well done!
One step at a time..

djaydino

  • Administrator
  • Hero Member
  • *****
  • Posts: 2288
    • View Profile
    • jinxtergames
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #8 on: August 06, 2015, 11:53:39 AM »
Hi,
very nice trailer indeed :)

but i have to say LoL that master fsm.. :)

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #9 on: August 07, 2015, 04:23:48 AM »
but i have to say LoL that master fsm.. :)

hehe, you should have seen it before i "cleaned" it up. That was bad enough to make children cry!
fortunately I have purged the older builds from both my hard disk and my memory ;-)

rik

  • Full Member
  • ***
  • Posts: 247
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #10 on: August 09, 2015, 03:39:39 AM »
yes, I found out too.
copy pasting everything 4x is a hell though. especially when dealing with hundreds of variables that ALL change when tweaking game balance over and over again.

may be you should use version control instead.

a shared XML file would be the proper way I guess - but terribly old school that I am, I did all this with pencil and paper instead :-)

you surely took a lot of time instead you should have every thing in your mind.
if you want have some installs get it here https://www.fiverr.com/kieronhawke

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #11 on: August 11, 2015, 03:16:10 AM »

if you want have some installs get it here https://www.fiverr.com/kieronhawke

unfortunately , paying for installs is not my thing. (and if I ever go down that sinister path, I would want at least 10 million fake installs! ;-)

rik

  • Full Member
  • ***
  • Posts: 247
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #12 on: August 11, 2015, 12:51:38 PM »
paid installs are noting wrong to give some exposure we have to promote app and it was not fake i think.

in these days their are millions of apps we have to had good user base or pay for app installs and let user play if interested .

thatnzguy

  • Playmaker Newbie
  • *
  • Posts: 43
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #13 on: August 11, 2015, 03:18:35 PM »
That trailer is seriously great.
Any chance you could post a higher res FSM screenshot? Or any other info from your FSMs? I love to see how other people do theirs.

Cheers!

friendlydog

  • Junior Playmaker
  • **
  • Posts: 64
    • View Profile
Re: Cubicle Cat Superstar! (IOS, Android)
« Reply #14 on: August 12, 2015, 12:20:28 AM »
That trailer is seriously great.
Any chance you could post a higher res FSM screenshot? Or any other info from your FSMs? I love to see how other people do theirs.

Cheers!

thanks! :-)
Here is the fsm in 2560x1440.

orange states have audio functions.
red = error catchers.
yellow = disk write/read function.
green = key points /milestones/primary functionality.
purple = demands attention because of some bug.

i stuffed as many actions as i could into each state for performance tweaking. not entirely recommendable, as you can see to the right in the screenshot. (losing overview when you have 40+ set property actions in one state :-)).

there are 4 more minor fsms handling simple stuff like flashing background or collision detection with the cat. Those have between 4 and 10 states or so.

/*apologies for the rude language in the state comments. Google Play Services did grind my gears massively ;-)*/

« Last Edit: August 12, 2015, 12:29:33 AM by friendlydog »