Shipping Tappy Chicken

Hi Michael Noland,

I don’t have much knowledge with making games for HTML 5 however, where should I look to package a game that can be played in a browser?

Nevermind, found a doc, in case anyone else is interested.
https://docs.unrealengine.com/latest/INT/Platforms/HTML5/GettingStarted/index.html

Still waiting on a tutorial (as promised) about making achievements work. The leaderboards are quite simple to setup but the achievements seem to be more difficult to set up.

Hi KillerSneak,

Sorry about that. I don’t know when I’ll have time to make a blog post about them (probably not for a week or more). The actual achievement nodes themselves should be reasonably straightforward, the one important thing to remember is that (currently) there is no transparent caching/retry layer to handle network problems, etc…, so you need to handle the success/failure outputs accordingly, saving the achievement unlock in your savegame to send later until you finally get a Success result back. That’s where most of the complexity in the Tappy Chicken BP comes from.

I’ve got an email from Ryan RE: general Google Play configuration to incorporate into the blog post since there are a few more tricky steps there than with iTunes Connect, which I’ll go ahead and post over in the Android section now.

Cheers,
Michael Noland

No problem. I have it all working now Tappy Chicken is a great learning resource :slight_smile: I’m only working with android at the moment As I don’t have access to a MAC yet. I’m also planning on making a post about getting your game from UE4 on the playstore with all steps in between (signing-keychain / achievements / alpha / beta stages etc etc) I hope it will be useful for the community.

Now that Tappy Chicken has been out for a while, I was wondering if Epic could share the Android and iOS device types, and OS versions, that have downloaded and run the app. Maybe the crash count too. This would allow us to see what may be working for UE4 with a 2D type of game, and how low the hardware requirements for this game type.

Hi Tkfore,

We don’t actually collect phone-home analytics out of the box for cooked mobile games, so we don’t have data for specific device types like that. This is something we’re interested in adding to games (optionally, entirely up to you whether you want to include it in your game) in the future though. I’ll ask around RE: crashes and see if we can get any data back from Google or Apple about that; our built-in crash reporter is just for Windows and Mac.

However, we are working on building out a device compatibility matrix on the Wiki that we’ll keep up to date going forward: A new, community-hosted Unreal Engine Wiki - Announcements - Epic Developer Community Forums

It’s still early days so there isn’t a ton of information up there yet, but as we do the compat. testing for the next release of Tappy Chicken and also 4.4, we’ll be updating it for every device we test on. We’re also going to make a similar page for iOS, and likely HTML5 as well (covering different browser versions).

The Android devices for which we tested the original Tappy Chicken release (branch of Main somewhere between 4.2 and 4.3) are listed here: A new, community-hosted Unreal Engine Wiki - Announcements - Epic Developer Community Forums

Cheers,
Michael Noland

I’ve looked though the blueprints, but I’m also glad you have confirmed that there are no, “call home”, functions in Tappy. What I was mentioning, and I’m sure I could have described it better, are the reports on the Android Developer Console. This page can give you details of the different types of devices that have installed your app, and what versions of the OS they are running on. This could give you a better picture of the devices that can currently run UE4 apps.
Also Michael, please keep appearing on the Twitch broadcasts. You do a fantastic job explaining what is happening, without talking over everyone’s head. Thus, helping us understand the different aspects of UE4, and what to expect in the future.

Thanks for the heads up, we had a look thru the data there and will figure out how to publish it in a useful format (probably will post the OS / device breakdown on the Tappy Chicken wiki page) as well as look thru the crash reports (seems to be mostly a crash on exit bug).

Thanks! I always feel kind of awkward leading up to one, but it goes naturally once you’re on the air. We’re trying to rotate thru to make sure that we get a good spectrum of coverage of different engine/editor areas, but I’m pretty sure I’ll be on more in the future :smiley:

Cheers,
Michael Noland

Is this game related to Flappy Bird?:

Flappy Bird Wiki:
http://en.wikipedia.org/wiki/Flappy_Bird

Flappy Bird Kotaku:
http://kotaku.com/flappy-bird-now-available-on-floppy-disk-for-apple-ii-1605841206

Tappy Chicken:
https://www.youtube.com/watch?v=6KOZJLOx0bo

Are you asking about Flapple Bird or Tappy Chicken? The answer is yes in either case: Flapple Bird looks to be a direct demake of Flappy Bird, and Tappy Chicken is certainly inspired by Flappy Bird. Neither of them are made by the person who made the original Flappy Bird, although the concept is far older than that.

This one isn’t the first either, but it’s got a lot of delightful WTF: http://technokittenadventure.com/ (released Sept 2010, several years before Flappy Bird).

Cheers,
Michael Noland

I would really love to see a c++ version of tappy chicken, so I can learn from the code.

A c++ version would be great

Could someone elaborate on that. How to exclude certain parts of engine before building.
I assume 9.4MB is after gzip compression on .js file. When I compiled TappyChicken to HTML5, I got approx 200MB .js file, and 30MB after compression.

Thank you!

Yes this information is exactly what i need to ship my game.

Hey -

This is a mini faq which I wrote - HTML5 Capabilites - Community & Industry Discussion - Epic Developer Community Forums (Look under 2. The generated .js files are huge.) This might point you to the right direction.

edit : -Oz is default option in master now. development builds are generally big, shipping builds cull lot of debugging cruft and are smaller in size.

Thanks,

Oh so stripping stuff seems to be applicable to HTML5 builds only. Im hoping i can find something similar for IOS and Android builds

1 Like

The general idea is applicable to everything - if you don’t need the feature, there’s no need building it - reduced size and reduced compile times - Its just that HTML5 is very sensitive to binary sizes.

Thank you Ankitkk
I see you need to go to C++ for stuff like this.

One cool tip i found from tappy chicken was reusing splash screens. This alone save already if you start counting KB’s

Bump: doesn’t appear as though you can reuse splash screens any more? But I managed to reduce a full set of (detailed & full color) splash screens from 25MB (saved compressed from photoshop) to 3.5MB by doing a couple of things.