Unboxing new hardware is always exciting. It’s even more special as a gamer and developer to open up the new Fire TV Gaming Edition. Mine arrived last week so I thought I’d take a little time out to show you what you get in the box.
For gamers the Fire TV Gaming Edition is a great value. Not only do you get the latest version of the Fire TV hardware but also our new redesigned controller, a 32 gig micro SD card and two popular games: Disney’s Ducktales and Shovel Knight.
When you open up the box you will see our new Fire TV Game Controller.[Read More]
This post was originally published by Nate Trost on Gamasutra and republished here with permission.
There are no cave paintings warning of poor arcade conversions to the Atari 2600, but from a historical perspective there might as well be. Platform conversions have existed since the dawn of personal computers and gaming console systems. Whether a popular Apple game ‘ported’ to Atari or Commodore, or an arcade hit translated to the first gaming consoles, conversions have always been a part of the gaming industry. Some things haven’t changed from those early days; good conversions excite and delight players happy to have a popular game available on their chosen hardware. Poor conversions evoke a particular deep brand of distain. Decades later, the Atari 2600 port of Pac Man is still a poster child for the concept of a ‘shoddy port’. Nobody wants one of those!
They are coming to your platform, and they want 60 FPS!
At Trihedron, we have a long and extensive history of platform conversions, so it was an exciting opportunity to partner with Amazon and Yacht Club Games to bring Yacht Club’s critically acclaimed Shovel Knight to the new Amazon Fire TV. In many cases it can be a struggle to create a faithful adaptation of a game on a new system, whether due to technical challenges from hardware limitations or from trying to modernize an older legacy game on a new platform, enhancing without losing the original charm. There are plenty of conversion retrospectives which focus on detailing these issues, and exploring how various knotty problems were overcome. Shovel Knight was not one of those conversions! Instead, we will look at the factors that made Shovel Knight for Amazon Fire TV a relatively smooth conversion and why the desired end result was achieved without fountains of blood, sweat and tears. That Shovel Knight fit nicely on Amazon Fire TV wasn’t a happy accident, but rather a combination of solid technical foundations and being pointed at powerful hardware that fit the envelope of already optimized code.[Read More]
Last year, Amazon introduced the first Amazon Fire TV, combining voice search that actually works, fast and powerful performance, and an open ecosystem to deliver the easiest way to watch Netflix, Amazon Video, HBO NOW, Hulu, WatchESPN, and more on your big-screen TV. Since launch, Fire TV has become the #1 best-selling Amazon device category, with Fire TV Stick quickly becoming Amazon’s fastest-selling product ever. Today, Amazon is making those best-selling products even better. Introducing the next generation of Amazon Fire TV—the new Amazon Fire TV with support for 4K Ultra HD, and the new Fire TV Stick with Voice Remote. The new Amazon Fire TV is available for pre-order today for just $99.99 at www.amazon.com/firetv, and will start shipping on October 5. Fire TV Stick with Voice Remote is available for pre-order today for $49.99 at www.amazon.com/firetvstick, and will start shipping October 22. Fire TV Stick is also still available for purchase for $39.99 at www.amazon.com/fire-tv-stick.[Read More]
Amazon Underground represents a new opportunity for developers of premium games that are looking to expand their audience and still monetize well. Ideally when you lower the price of a game or make it free it increases the number of downloads and exposure but usually at the expense of earning money. This is one of the major factors that has made Free 2 Play (F2P) so appealing to developers since you can get a larger audience and focus on converting players into paid customers via in-app purchase (IAP). Unfortunately not every game lends itself to this model.
With Amazon Underground’s monetization approach, Amazon pays you for every minute a customer uses your Amazon Underground app, and customers pay nothing.
In this post we’ll talk about four things you’ll need to do in order to take an existing premium game and submit it into the Amazon Underground program. It’s also a great opportunity to turn non-paying customers into paying ones through deeper engagement and longer play sessions.[Read More]
There has never been a better time to integrate the Amazon Mobile Ads API into your game and now with full support for Unity, it’s easier then ever. In this post I’ll walk you through how to get everything up and running as well as how to build a simple test in order to make sure ads correctly load and display. Before we get started, you’ll want to read over this page and follow instructions 1 – 5. This will cover setting up the application key in the developer portal, setting up your tax information as well as downloading and installing the SDK. Once you’ve followed those steps you should be ready to test out that everything works. For this post, I’m using an empty Unity project. You can do the same steps in your own game as well. With your Unity project open and the Amazon Mobile Ads SDK plugin imported, we are ready to write some code.[Read More]
Starting today, developers can sign up for the Fire OS 5 Developer Preview for Amazon Fire TV. This preview is designed for developers looking to get their apps and games ready for the next major release of Fire OS for Amazon Fire TV. Fire OS 5 is based on Android 5.1 (Lollipop) and API 22. Since this is a significant upgrade to the existing Fire OS 3 (API 17) for Fire TV, we wanted to make sure that as many developers as possible can sign up for the preview and test their app or game. The key new features for Amazon Fire TV developers in Fire OS 5 are support for Android TV and the v17 Leanback library. If you have an app that supports Android TV or Leanback, those features should work as-is in the Amazon Fire TV developer preview. Here are a few of the other features available in the Fire OS 5 Developer Preview for Amazon Fire TV:[Read More]
In this multi-part video tutorial series, we’ll go over how to build a simple 2d side scrolling game for the Amazon Fire TV. We’ll cover the basics of working with C#, sprites, setting up your project, input and camera. To get started, we’ll be walking through how Unity works and getting comfortable with the IDE, C# and scripting.
All of these videos are recorded from my Twitch game dev channel which you can watch daily from 9:30am – 12pm EST.
Up next we’ll look at how the script inspector works, composition & prefabs. Check out part 2 of the series.
Looking for more information on Fire TV and publishing to Amazon Appstore? Check out the links below:
- Jesse Freeman (@jessefreeman)
We are excited to announce that our new Amazon Cross-Platform Mobile Ads API Plugin is now available for Unity, Cordova, Adobe AIR and Xamarin. The Amazon Mobile Ads API is an in-app display advertising solution for monetizing mobile apps and games across many devices, including phones and tablets on Android, iOS, and Fire OS. In this post, we’ll walk through how to integrate Amazon Mobile Ads into your game to maximize revenue while maintaining a user-friendly experience. The same best practices can also be used in a mobile app as well.
If you’re familiar with existing ad services or have seen ads appear in games created by other developers, you’ll find that the Amazon Mobile Ads API is easy to wrap your head around. The basic ad formats supported are banner ads, which come in the sizes 320x50, 300x250, 600x90, 728x90, and 1024x50, and full screen interstitials; note that banner ads loaded through the new cross platform plug-ins will have their sizes chosen automatically. Our ads target users in the US, UK, Germany, France, Spain, Italy and Japan, and our service is geared towards delivering great eCPM (effective cost per thousand impressions) and high quality ads. Integrating the Mobile Ads API is straightforward and we provide individual documentation for each newly supported platform: Unity, Cordova, Adobe AIR, and Xamarin. We also offer a single portal for integration and tracking, allowing you to measure your success rate with actionable and easy-to-use reporting. For more information about the entire Amazon Ads platform, check out the Developer Portal.[Read More]
We are excited to announce the new Amazon Fling service. This new service is a cross-platform toolkit that enables mobile developers to build rich multi-screen experiences for Amazon Fire TV. At its core, the Amazon Fling SDK allows sending video, audio and images from iOS and Android mobile apps to Amazon Fire TV. In addition to flinging media content to Amazon Fire TV, developers can also leverage two-way communication between Amazon Fire TV and mobile apps to create engaging second screen experiences.
The new SDK is designed to simplify the process of dealing with underlying network discovery and communication technologies that normally make this type of connection difficult to implement. The SDK offers a standardized way to communicate between your apps over a local network allowing developers to focus on building new and unique user experiences. Even developers who don’t have an existing Amazon Fire TV app can take advantage of the SDK’s media playback capabilities since a default built-in receiver plays these for you automatically. This is one of the quickest ways to leverage the power of our service and the built in functionality of the Amazon Fire TV and Fire TV stick.
Out of the box it is straightforward to leverage our new SDK to send URLs of videos, images and audio files to the Amazon Fire TV. This allows you to take media content and easily play them back on the big screen from a mobile app. But flinging media is not all you can do with it. If you dig a little deeper into the SDK you can use mobile devices as a second screen or a companion app to what is running on the Amazon Fire TV. Here are some great examples of how developers are already leveraging the SDK in their own apps:
Red Karaoke uses an iPhone to send audio to their Amazon Fire TV app.
Karaoke Party by Red Karaoke, one of the first karaoke smartphone apps in the market, is leveraging the SDK to display song lyrics and videos on Amazon Fire TV. Additionally, Red Karaoke uses the SDK to send audio from the microphone on the customer’s device to the TV. Customers can now have a true Karaoke experience in their living room.
With Fling, Rivet Radio customers get the capability to share music and videos on the largest screen in the house.
Rivet Radio, a digital news radio broadcaster, allows people to listen to news on the TV. By leveraging Amazon Fire TV’s built in media playback receiver, Rivet Radio lets listeners easily transition between listening on their personal device to sharing content with everyone in the living room.
There are more great apps that use our SDK coming and we are looking forward to seeing what developers come up with.
The new SDK is available today with support for iOS, Android and Fire OS. To get started visit the SDK page and download the .zip file. You can also read the getting started documentation, which will walk you through setting up your development environment for Android or iOS, Integrating the SDK into your Android or iOS app and integrating the Amazon Fling SDK into your Amazon Fire TV app.
The SDK supports rich, two-way communications with your Amazon Fire TV app. You can build custom second screen experiences with the following APIs:
If you don’t have an Amazon Fire TV app, you can use the Amazon Fire TV default media player (already installed). If you’ve created an Amazon Fire TV app already, you can integrate the receiver SDK that will enable people to discover, remotely install (if needed) and control your Amazon Fire TV app while flinging media content to your media player.
Our new SDK makes it easy for developers to adapt their existing apps that have Chromecast functionality to fling to Amazon Fire TV. For more information on how to do this, check out our guides to integrating the SDK with an existing Android Chromecast app or iOS Chromecast app in the developer portal.
With our new SDK, you can leverage the built in media players to send the content of your app or game directly to Amazon Fire TV. Being a developer for the Amazon Appstore is completely free- sign up today and get started. If you need some more information on building apps and games for Amazon Fire TV, make sure to check out the following links:
- Jesse Freeman (@jessefreeman)
Big Buck Bunny is copyright 2008, Blender Foundation / www.bigbuckbunny.org and is licensed under the Creative Commons Attribution License 3.0, available at https://creativecommons.org/licenses/by/3.0/us/legalcode. Elephants Dream is copyright 2006, Blender Foundation/ Netherlands Media Art Institute/ www.elephantsdream.org and is licensed under the Creative Commons Attribution License 2.5, available at https://creativecommons.org/licenses/by/2.5/legalcode.
When it comes to choosing the right framework to building your game with it’s not always an easy decision to make. If you are just getting started, knowing the long term viability and support is also difficult to predict. Over the past few years I’ve been making my own games in HTML5 and Unity. While both are very good platforms, picking which one is best for you isn’t always black and white. To help you out, I’ll be doing a special talk at our newly opened AWS Pop-Up Loft in New York City on June 29th at 12pm.
Phaser version of Flappy Jetroid
Unity version of Flappy Jetroid
We’ll dig deep into the code of each game, how they differ as well as the advantages/disadvantages of each. We'll also discuss publishing options for both platforms and how to create truly cross platform games from a single codebase.
Looking to learn more about making games in HTML5 or Unity for Amazon Appstore? Check out the following resources:
- Jesse Freeman (@jessefreeman)
Over the past 3 months I have been working on a number of game for the Amazon Appstore and streaming their development live on Twitch. While most people know Twitch as a place to watch people play games, it’s also one of the best places to see game developers make them as well. Twitch now has a dedicated Game Development channel and I’d love to invite you all to come watch me, and my co-workers Paul and Peter, build games for the Amazon Appstore.
I started streaming on Twitch shortly before GDC and figured this was the best time to give it a try as I built out the demos for my talk. I ended up porting over an older HTML5 game of my called Super Paper Monster Smasher to Unity as a way of testing out best practices for optimizing Unity games on Fire devices. It wasn’t easy to start live coding but after a few weeks it became more natural and here are a few things I learned along the way:
The goal of your stream is to build up a community around your game. This is one of Twitch’s strong suits. I found that the people who come in to watch my stream usually come back. They ask questions, they engage others in chat and they have valuable input into how you should fix issues or features you should add to your game. I’ve learned a lot about how to work in Unity better and community suggestions have helped make my latest game, Cigar Smuggler, a lot better too.
Once you build up a following, interact with them and don’t ignore them on chat. It’s a delicate balance between doing your work and taking part in the chat conversation but once you find your rhythm, stick to it and bring them into the process.
I also learned early on that I wanted my streaming setup to be self-contained. If you dev on your personal or work computer make sure you have a clear separation between what you show on the stream and your own stuff. I am constantly being bombarded by emails, phone calls, and IMs all day long while I stream. To keep this out of the videos I work on a VM. I’ve configured a perfect setup just for my streaming development with all the tools I need to get my games running.
What’s also great about the VM is that you can back it up and if anything goes wrong it’s easy to restore. I’ve also copied it to my laptop so I have the two in sync allowing me to stream from my laptop when I travel. If you can’t use a VM at the very least I would suggest making a separate user account on your computer and logging into that when you go on Twitch. It also goes without saying to make sure you can easily mute your microphone at a moments notice too.
Outside of using a VM, I have a decent USB gaming headset with a built in microphone that I use for audio in and out. I also use a USB capture card for showing off Fire TV builds during my stream too. On the software side of things I’m running Open Broadcaster with the following settings:
As you can see I am streaming from a larger resolution of 2560 x 1440 so I scale it down to 720p. One thing to note is that for people to be able to read the code, I usually bump up the font size in all my editors. I also have a watermark graphic that I use during my streams.
I don’t like to keep my web cam on so I use this graphic to simply let people know who I am and if they find a highlight video on YouTube they know where the main stream came from.
A big part of the Twitch process is to make sure after you record a stream, to cut up highlights. I don’t do this for every stream but on important ones I’ll make clips out of them to feature on my profile page.
You can also push these you YouTube to cast a wider net for new followers. People who are interested in your work may not always be able to catch you doing it live. So make sure you get the videos of your steams out to the most places possible. You can check out my own highlights here.
If you want to see some of my game development, learn more about the Amazon Appstore and Fire Devices or just say hi please check out my Twitch channel at http://twitch.tv/jessefreeman. I stream almost daily at 9am – 12pm Eastern and randomly at nights and on the weekend. If you want to learn more about streaming on Twitch, check out the following links:
- Jesse Freeman (@jessefreeman)
Want the latest app and game news delivered to your inbox? Stay in the loop on the latest industry best practices, Amazon promotions, and new launches by subscribing to our weekly blog summary here.
In part one we covered techniques for getting started with a new project. In this post we’ll go over staying motivated to finish the game.
We all hit that wall when it comes from pushing ourselves a little too hard, setting unrealistic goals. When this happens it’s best to just walk away and take a break. How long is up to you. I find that sometimes I’ll work on two games at the same time, switching between them when things start to feel like they are dragging or I am losing interest. If you plan the games correctly you can build one off the other and end up with reusable code to can be shared between both.
Sometimes a difficult issue that needs to be solved is so complex you lose interest all together. You’d be surprised how much a short break, even for a few days, will clear up your head. One thing I suggest, especially if you are like me who puts stuff aside to work on at a later date, is to comment your code as much as possible. You may find it annoying at first but there is nothing worst than coming back to a project after a month and have no idea where you left off.
I am a list maker. Everything I need to do in my game goes into a task list. It’s an old habit from my enterprise development and SCRUM days where I would create a two-week plan and fill in a backlog of tasks. The same technique can apply to game development too.
I like OneNote since it lets me mix and match task items with checkbox as well as text and pictures. I’ll save everything about the project into a single task list with references so I don’t forget why I made that task. Over time I check off what I’ve done and move it to the bottom of the list. On slow days I can reorganize the list to help me find things to work on. On crazy days where the list is too long I’ll simply focus on the top five items and see what I can go from there.
In the end, the list allows me to block out my workday. I can see how much I have left to do, track ideas I want to add to the game over time, and help motivate me to keep going. Also completing a checklist gives you a real sense of completion. I sleep better at night after seeing the progress made on the list at the end of each long day. I also like to plan out the next day the night before and make sure my most critical issues are always at the top when I get back to my project.
One of the biggest motivations techniques I have is to share the project with others. While it’s always a challenge getting feedback, it helps to see what others think about your game. The sooner you have a playable copy the better. Getting early feedback and doing player testing is critical to build the game others want to play. It's important to not box yourself into features only you find interesting.
I leverage social networks like Twitter and Twitch as much as possible. These places are also helpful if you are not ready to let people play the game on their own. It may feel silly but be sure to include special hash tags when tweeting out updated to your game. The best one to use is #gamedev. Also take part in #screenshotsaturday by sharing updates of your game’s progress each Saturday. I’ve been picked up a few times by indie game magazines because of this.
Right now, Twitch is not as far reaching for game development updates as Twitter. The power of Twitch is that once you build up a dedicated following it can creates a community around your game way before it even launches. Also, I've found that some of the best advice both technical and on my game play comes from the live chat during my stream. Find ways to include viewers in the conversation. You'll see the quality of the comments will go up the more engaging you and your game are during the stream. Twitch even has a dedicated game development channel. Check out one of the highlights I captured from a stream where I Skyped in Mike Geig from Unity to figure out how to handle abstracting controller input in my game.
The final stages of shipping a game are more than just fixing bugs. It involves perseverance, determination and vision. While all of these techniques work well for me I've had years of experience to fine-tune them for my own workflow. The hope is that you find your own ways to motivate and reinforce these traits for finishing your next game from this talk. In the words of Steve Jobs, "real artists ship!"
If you missed part one, make sure to check it out as well as the following links covering game design for beginners:
-Jesse Freeman (@jessefreeman)
We recently released a new version of our In-App Purchase SDK for Unity Developers. The Amazon In-App Purchasing (IAP) API makes it easy for you to offer digital content and subscriptions for purchase within your app, such as in-game currency, expansion packs, upgrades, consumables, and more on Fire OS and Android devices. The latest version, IAP v2.0, leverages new features to better support Android OS 5.0 (Lollipop), work with our newer App Tester and better integration with the Amazon Appstore. If you have already been using the SDK in Unity, or looking to add it for the first time, it’s also straight forward to implement.
To get started, you need to download the package from our Unity plugins page here.
Once you have downloaded it, you’ll be ready to get started.
After downloading the Apps-SDK, open your Unity project and click on the Assets menu, then select Import Package -> Custom Package from the drop-down.
Navigate to where you downloaded the AmazonIAP.unitypackage, which you can find inside of the Unity folder of the Apps-sdk folder and select it. You’ll then be presented with the import window.
From here you can install all of the files and it will setup your project to include the Unity classes as well as the native Android code you’ll need to run on an actual device.
If you have not already registered your game, you’ll need to log into the Amazon Developer Portal and add your game. Click “Add a New App” to begin the process of submitting it to the Amazon Appstore or select your existing game.
Before you can leverage any IAP calls in your game, you’ll need to create new purchasable items in our portal. You can follow this walkthrough, which will guide you through the process.
At this point you are ready to begin using IAP in your Unity game. In order to make sure everything is configured correctly, you’ll want to download Tester Tool.
Once you have the Tester Tool. You can follow these steps to learn more about the IAP testing process and configuring your testing environment.
It’s free to be a developer on the Amazon Appstore. Once your game is ready, simply push it live and reach millions of Android customers in 236 countries and territories worldwide across Amazon Fire and Android devices.
In-App purchases are a great way to not only monetize your game but also offer additional content to players in order to extend replay and engagement. We are working hard to make sure the process is seamless for Unity developers looking to take advantages of the features offered by the Amazon In-App Purchase V2 API. For more information on the IAP v2 check out the following links:
- Jesse Freeman (@jessefreeman)
We've all been there; the last part of any project can be the hardest part. Tom Cargill said "The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time". When making games it can sometimes feel like your project will take super human strength to complete. While the last 10% of your project can be a struggle, it doesn't always have to be. In this post I'll cover some of my own strategies to stay motivated, focused and ship a game on time.
Before we talk about the end of a project, let's talk a little bit about starting one from scratch. When I used to paint I found the hardest part was just getting started. I would look at a blank canvas for hours waiting until it to told me what to do. It never did. That’s why it’s up to you to motivate yourself when you start a new project. It’s important to have a plan before you build any game. Just like you wouldn’t build a house without a blue print you should have some details on what you are going to build.
To get started, I suggest creating a GDD (Game Design Document). If you are a sole developer, a GDD doesn't have to be pages upon pages of intricate detail about the game. It's ok to be fluid in your design, just make sure you have some description of what you actually plan on building. That's why I suggest going with something a little simpler like Javi Cepa’s (@JaviCepa) 1 page GDD. It’s a great way to sketch out a simple game idea and remove the anxiety of the blank canvas to help you find direction.
Even if you have your game started, or you are just getting started, you’ll need a way to stay motivated. Going back to my years of fine art training I remember my mentor always made me do 30 minutes of drawing before I even touched a canvas. It was a great time to clear my mind and wake it up. I’ve used the same technique for coding over the years and call it Code Warm Up.
The basic idea of a Code Warm Up is to spend at least 30 minutes of the beginning of your day just coding. It doesn’t have to be anything you plan on keeping or incorporating into your own game. It could simply be an idea you had the night before or a particular game mechanic you’ve always wanted to try building. What ever you create during this time is temporary and in the moment. When you finish you can go back and clean it up or just scrap it. I keep all my experiments in a folder to go back to for inspiration when I am having trouble finding it.
The day to day management of staying focused during a long project can be especially daunting. I’ve tried several techniques over the years to work with the ups and downs of my focus. It's also critical for me quickly motivate myself to code in the short windows of time I have between meetings, travel and family. For the past few years I’ve been having great success with the Pomodoro Technique.
The Pomodoro Technique focuses on setting a timer for 25 minute with a 5 minute break in-between. You can alter this to your own liking as well. I like to also take longer 15-minute break every 3 breaks. These short breaks force me to get out of my chair and stretch as well as pressure me to come up with a quick solution to a problem as I see the counter getting close to break time. I am even using this technique to write this post. I use it throughout the day to block off my time into more focused tasks which are not as much fun as making the game itself.
In part two we’ll talk about when to take breaks from your game, keeping track of tasks and sharing your project with others to stay motivated and focused.
Looking for more resources on game design? Check out the following posts:
-Jesse Freeman (@jessefreeman)
We are excited to announce two Scotland developer talks and networking mixers next week in Edinburgh and Glasgow. For those of you who haven’t been to an Amazon Developer Networking Mixer before, it’s a way for like-minded developers to socialize and network in a casual atmosphere. Over the past several months we’ve been hosting them in New York, London, Dublin, Austin and many other places around the world. Not only do we help connect developers with each other and our evangelism team but we also offer hands on time with our devices such as Fire TV and show off the Fire OS platform.
Our London Unity User Group at Loading Bar Meetup
On Tuesday, May 26th, I’ll be in Edinburgh giving an overview talk on our ecosystem covering everything from Fire TV to Phone, Tablet and Echo as well as walking through the services Amazon provides developers. This talk will focus on the Amazon Appstore and Fire OS devices at a high level. Afterwards we’ll go to a local pub and start the networking event. I’ll have a few devices (Fire TV Stick, Fire Phone and Fire Tablet) on me to show off too. I’m happy to answer any questions you may have about porting over existing apps and games to Fire OS or general development questions too. You can register for the event here.
On Thursday, May 28th, I’ll be in Glasgow talking about the Amazon Appstore platform for game developers. I’ll dig into some data on monetization on the Appstore as well as ways to optimize your game for Fire OS devices. I’ll be walking through some of my own games and hope that developers bring their own with them to share at the networking after my talk. You can register for the event here.
Crossy Road on Fire TV Stick at our NYC Networking Mixer
We’ll be continuing to add more locations to our list as we expand out our networking events. If you are in New York, you can join the monthly ones by registering on the meetup group page here. Hope to see you at our next event!
-Jesse Freeman (@jessefreeman)