Appstore Blogs Appstore DeveloperBlog /blogs/appstore/feed/entries/atom 2019-01-16T19:31:41+00:00 Apache Roller /blogs/appstore/post/946094d4-5dc5-4a6a-a24f-2c423e076979/how-to-draw-pbr-materials-by-hand How to Draw PBR Materials By Hand Emily Esposito Fulkerson 2019-01-16T19:31:41+00:00 2019-01-16T19:31:41+00:00 <p><img alt="PBR-Kenney-header.png" src="" /></p> <p>Most modern game engines support PBR (physically-based rendering) materials. These maps can be created using expensive and hard to learn software, or created from photographs. There's an alternative however, you can draw these textures by hand using free software and basic drawing skills!</p> <p><img alt="PBR-Kenney-header.png" src="" /></p> <p>Most modern game engines support PBR (physically-based rendering) materials. These maps can be created using expensive and hard to learn software, or created from photographs. The good news is that there's an alternative! You can draw these textures by hand using free software and basic drawing skills.<br /> &nbsp;</p> <p><img alt="Image1-PBR-kenney.png" src="" style="display:block; margin-left:auto; margin-right:auto" /></p> <p style="text-align:justify"><br /> To follow along with this guide, you'll need either bitmap or vector drawing software. If you want to stick to free software, I can recommend GIMP for bitmap drawing and Inkscape if you rather draw using vectors.</p> <p>It’s always best to draw using vectors because they’re easier to edit and you can export your texture at any size. The disadvantage is that it’s harder to create organic materials like grass&nbsp;or high-detail textures. Try both and see which you like best.</p> <p>Let's get started with the albedo map, which defines the color of your PBR map.</p> <h2>Albedo map</h2> <p>The albedo map defines the colors and pattern of a material and&nbsp;serves as the color input. If you were creating&nbsp;textures for a tank, this map would contain the camouflage pattern. Usually albedo maps have to be completely flat and can't contain any shadows or highlights (they get added by the game engine), but in some cases like stylized textures, they can be added for extra definition.<br /> &nbsp;</p> <p><img alt="Image2-PBR-kenney.png" src="" style="display:block; margin-left:auto; margin-right:auto" /></p> <p style="text-align:justify"><br /> As an example, I've created the albedo map of a wall with a window, a control panel, and a metal vent. These aren't very exciting by themselves, but when we'll combine these with other maps, they'll gain artificial depth and reflective properties which make them look realistic in-engine.</p> <p>Creating an albedo map is simple if you know how basic drawing tools work. Remember: Don't use any techniques to add shadows or highlights, that’s up to the game engine to add.</p> <h2>Displacement map</h2> <p>Depending on your engine, you can choose a displacement (or <em>height</em>) map, a normal map, or both. The difference between a displacement map and normal map is that displacement maps&nbsp;physically move the polygons of the model you apply the material to.</p> <p>Not all game engines support displacement maps however.&nbsp;They&nbsp;can also be performance heavy and models often need to be tessellated (add more polygons) for better results.</p> <p>When drawing a displacement map, everything that's black will have the most depth and white the least (or even extrude from the map). You can use any color in between and gradients allow you to create a wide range of effects.<br /> &nbsp;</p> <div> <img alt="Image3-PBR-kenney.png" src="" style="display:block; margin-left:auto; margin-right:auto" /> </div> <div> &nbsp; </div> <div> <br /> See the image above for displacement maps based on our albedo maps. The glass part of the window has the most depth, while the frame around it is extruded from the texture (because it's light in color). There are also some bricks in the wall that protrude and fall back. </div> <p>The control panel has a circle gradient on the TV screen which makes it extrude into a round shape. The lower left panel also has a gradient which means it'll look like it's extruded at an angle. The metal vent has the same effect as the control panel, which will add depth.</p> <h2>Normal map</h2> <p>Normal maps are used for fine details on textures, like screws and scratches. The depth it adds is an illusion, which means the polygons of your models aren't modified and there's no actual depth. To achieve the best depth effects, you'll have to combine a normal map and displacement map, and change&nbsp;the polygons of your model.</p> <p>Drawing a normal map by hand is extremely difficult and not really worth the time. There are <a href="" target="_blank">online generators</a> which create a normal map based on a displacement map.</p> <h2>Specular map</h2> <p>Specular maps let the game engine know how shiny a surface is. The colors range between white (shiny) and black (matte). You can use a specular map to add details like borders and edges to materials.<br /> &nbsp;</p> <div> <img alt="Image4-PBR-Kenney.png" src="" style="display:block; margin-left:auto; margin-right:auto" /> </div> <p><br /> In this case, the glass of the window is made shiny. For the control panel, each of the panel dividers has a white stroke around the edge to add detail. The vent has shiny screws and white lines to create sharp edges.</p> <h2>Emission map</h2> <p>Emission maps allow you to specify which areas of your textures will be brighter than others. Using such a map, you can create effects like windows that light up, or bright light bulbs on a control panel. Especially when combined with a bloom effect, this can really enhance the atmosphere of a game.</p> <p>To create an emission map you'll start by creating a new textures with a black background. Black means that there's no emission and&nbsp;white means there's maximum emission. You can draw any shape or color on the texture to specify what emits light.<br /> &nbsp;</p> <p style="text-align:justify"><img alt="Image5-PBR-Kenney.png" src="" style="display:block; margin-left:auto; margin-right:auto" /></p> <p><br /> In our case, it's only sensible for the control panel to have an emission map, as the others don't emit light by themselves. Simply copy shapes from the albedo or displacement map and color them using bright colors to make them emit light in your scene.</p> <p>As a fun challenge, you can make an emission map for the wall with window texture so it lights up at night!</p> <h2>Results&nbsp;<br /> &nbsp;</h2> <p><img alt="Image6-PBR-Kenney.png" src="" style="display:block; margin-left:auto; margin-right:auto" /></p> <p><br /> Here's the result of the PBR maps when combined. If your game engine supports it, you can add a bloom effect to make the emission map glow.</p> <p>Getting the right results is a process of trial and error, so go ahead and experiment with the different maps and effects until you get the desired result. Every game engine is different and might handle PBR maps differently, so make sure to tweak settings and try different shaders for the best results.</p> <p>&nbsp;</p> <p><img alt="Kenney-author-bio.png" src="" style="display:block; margin-left:auto; margin-right:auto" /><br /> &nbsp;</p> <div style="text-align:center"> <em>Kenney Vleugels is an artist from the Netherlands who shares game assets (sprites, models, audio, fonts and more) with game developers.&nbsp;Recently, he founded <a href="" target="_blank">Pixeland </a>which is a physical community hub where every game developer in the world is welcome to learn, teach, meet, work, and play.</em> </div> /blogs/appstore/post/d5a3783c-4726-4523-9506-5412dc9870e5/dev-chat-with-whow-games-the-las-vegas-experience Dev Chat with Whow Games: A Las Vegas Experience Sacid Celik 2019-01-09T18:16:07+00:00 2019-01-10T21:09:19+00:00 <p style="text-align:center"><img alt="" src="" style="height:338px; width:800px" /></p> <p>German developer Whow Games is&nbsp;passionate about&nbsp;social casino games. Check out this edition of Dev Chat to find out why they decided to bring their games to Amazon Appstore and why they think Amazon customers are valuable to them.</p> <h1 style="text-align:center"><img alt="Whow Games Lobby" src="" style="height:563px; width:800px" /></h1> <p><em><strong>In </strong></em><em><strong><a href=";view=50&amp;shelf_id=13" target="_blank">Dev Chat – Short Answers to Big Questions</a></strong></em><em><strong><u>,</u></strong></em><em><strong> our video series of short videos created by Amazon Appstore, developers of successful apps and games answer your questions in less than 90 seconds.</strong></em></p> <h1>Whow Games in their own words</h1> <p>Whow Games brings the casino lifestyle directly from Las Vegas to the web browser and app stores. From slot machines to table games, the entire entertainment offering of the largest casinos in the world can be experienced together with friends. The approach is as simple as it is successful: Whow Games puts the social experience of casino games in the foreground. All casino games are playable for free (free-to-play concept). The games deliver the same fun and entertainment of an exciting casino visit.</p> <p style="text-align:center"><iframe allowfullscreen="" frameborder="0" height="315" src=";cc_load_policy=1" width="560"></iframe></p> <h1>High-value customers</h1> <p>In this episode of Dev Chat, we sat down with the team behind Whow Games to learn&nbsp;who they are and why they chose to release their games in the <a href="" target="_blank">Amazon Appstore</a>. Their focus on providing the “Las Vegas experience” for all users makes Amazon Fire HD Tablets the perfect fit for their games. As Tobias Edl, head of new business relations,&nbsp;puts it, “due to the large screen, the user has a great experience and customer journey. We offer more than different 100 slots and thus the product is presented very, very nicely. Our user can navigate the app easily, gets the full gaming experience and is able to immerse themselves completely in our product.”</p> <p>The ability to reach valuable Amazon customers was their&nbsp;major reason to release at Amazon Appstore. Not only does this add an entirely new group of users to their customer base, but it opens up Whow Games to very valuable customers. Tobias Edl adds: “We see that the conversion rate with Amazon is higher than with other comparable platforms and the user value, meaning what each customer spends on the platform, is significantly higher at Amazon compared to the market.”</p> <p>It makes sense then that Whow Games decided to implement the Amazon <a href="" target="_blank">In-App Purchasing API</a>. Asked for their reasons to implement the API, Sandra Brau, CMO, half-jokingly said: “We are using the Amazon In-App Purchasing API, obviously as we want to make money.” On a more serious note, she added that while they have only released their games in the Appstore in summer 2018, they can already see a high customer lifetime value.</p> <h1>Developing for Amazon Appstore</h1> <p>Markus Baldschus, senior mobile developer, offered&nbsp;some insights into the development process for Amazon Appstore.</p> <p>As they used product flavors by Gradle in combination with Android, making the necessary adjustments for Amazon Appstore was easy and they were able to realize the release within a few weeks. Markus Baldschus also highlights how the <a href="" target="_blank">Amazon App Testing Service&nbsp;</a>helped them test their app during the development process. Implementing and testing the In-App Purchasing API was very easy, as all items were easily imported and exported.&nbsp;</p> <h1>Check out the Dev Chat with Whow Games</h1> <p>The team offers exiting answers about <a href=";list=PL93Q4ZD_4z4pkjYryCmuPjxak5CasJ1-a" target="_blank">Whow Games and their games</a>, <a href=";index=2&amp;list=PL93Q4ZD_4z4pkjYryCmuPjxak5CasJ1-a" target="_blank">why they chose to release on Amazon Fire tablet</a>, <a href=";index=3&amp;list=PL93Q4ZD_4z4pkjYryCmuPjxak5CasJ1-a">their experience developing for Fire tablets</a>, and their <a href=";index=4&amp;list=PL93Q4ZD_4z4pkjYryCmuPjxak5CasJ1-a">reasons for integrating the In-App Purchasing API</a>.</p> <p><strong><em>Don’t miss the next edition of </em></strong><em><strong><a href="" target="_blank">Dev Chat</a></strong></em><strong><em>. Subscribe to the </em></strong><strong><em><a href="" target="_blank">Amazon Appstore blog</a></em></strong><strong><em> to stay up to date.</em></strong></p> /blogs/appstore/post/f64c83ef-a15e-4263-b732-e26427e1cca3/how-to-find-and-manage-a-remote-team How to Find and Manage a Remote Team Emily Esposito Fulkerson 2018-12-31T08:00:00+00:00 2019-01-02T21:19:28+00:00 <p><img alt="image3-remoteteam-1231.png" src="" style="display:block; height:557px; margin-left:auto; margin-right:auto; width:800px" /></p> <p>Over the years, I’ve had good and bad experiences with teams and projects, but that’s part of the process. The bright side is that I learned a few tips and tricks that can help to find and manage a team easier, which I will share today.</p> <p><img alt="image3-remoteteam-1231.png" src="" style="display:block; height:557px; margin-left:auto; margin-right:auto; width:800px" /><br /> Finding a team as an indie developer can be challenging. And, once you have found one, keeping it together and working efficiently is&nbsp;even harder. Over the years, I’ve had good and bad experiences with teams and projects, but that’s part of the process. The bright side is that I've learned a few tips and tricks that can help you easily find and manage a team.</p> <p>For reference, the most complicated team to manage that I’ve been on had people living in Brazil, Japan, Seattle, and Michigan. That’s four&nbsp;time zones!</p> <h2>Finding the right team</h2> <p>This section is the one that can have the most variation, so your experience may differ vastly from mine. However, I will list the ways I use to find people and the qualities I look for&nbsp;when considering people for my teams.</p> <ul> <li><strong>Meet other developers</strong>: I think it’s important to have some sort of a relationship with the people you want to work with, before the project starts. This doesn’t have to be a long or deep relationship, but at the very least, try working with people&nbsp;you’ve talked to in a non-professional setting more than once. You could follow other devs&nbsp;on social media and engage with them. Teaming up with people you know personally can also be a good idea, but these cases can be rare depending on where you live.</li> <li><strong>Look through their portfolio:</strong> It’s always a good idea to see their previous work and if it fits with what you are trying to do. Another thing you should consider is their ability level and how it compares to yours as I believe it’s good to have teams with similar experience levels. Notice that this goes both ways, so make sure you’ve done some work yourself and have something in your portfolio to show it to people.</li> <li><strong>Avoid “ideas people”:</strong> Too often I see people trying to assemble a team by saying something like: “I have this never-before-done idea for a game that will make us millionaires! But I need a programmer, designer, artist, sound designer, everything, and I’ll be the idea guy.&quot;&nbsp;No. Just… no. Everyone needs to pull their weight in a team. Everyone has a million game ideas in their heads that are potentially a hit. Ideas are worth nothing. Implementing an idea is what’s valuable, so if you find one of these idea people, make sure they at least will code, script, do the art -- something.</li> <li><strong>Pay contractors</strong>: This one is complicated, but one that also comes up a lot. The issue is that artists and sound designers are often brought into a team, they make some assets, and then the game or team falls apart, wasting their time. In my experience, it’s best to pay for the art and sound for your game outright, or work out a deal where they charge less for their assets in exchange for some revenue share when (or if) the game ever comes out. It’s the best solution to this problem I’ve seen and experienced. Also, you should never ask someone to work “for exposure.&quot;&nbsp;Either they have revenue share, a flat fee for their work, or a mix of both, but never work or ask someone to work for free.</li> </ul> <h2>First steps once you have a team</h2> <p>While most of these are not 100% necessary at the early stages of development, doing them will prevent future headaches and conflicts. Believe me.</p> <ul> <li><strong>Write and sign contracts</strong>: This will make sure everyone knows what is expected of them to do, what their compensation is, who owns what (can sound designers sell the OST themselves? What about art prints?), and what happens in the event that someone wants to leave the team.</li> <li><strong>Create an LLC:</strong> To sell the game, you will need to have a company. The easiest one to make and manage is an LLC, but you can look up S-Corps and C-Corps and pick the one that’s right for your project. Having the company early isn’t too vital, but the sooner, the better, especially since you can specify in the contracts that the company owns the assets, instead of individuals.</li> <li><strong>Set up a company bank account</strong>: When you have the company set up, having a bank account is also important. Sure, you can have the money go to someone’s personal account, but it is MUCH safer for everyone involved if the money from your game is being funneled into a company account.</li> </ul> <h2>Best practices for managing the team</h2> <p>In most cases, when you hear about a game that did not launch or got canceled, the issue can be tracked down to bad management. Whether you are working on a team of two, or two hundred, managing teams and getting people to work together to achieve the same goal is very complicated. Luckily, some smart people have created, tested, and improved a bunch of techniques that can be used to more consistently avoid these situations from happening.</p> <p>I will list a few of the tools I use in my teams, a lot of them I took from from agile, a production methodology that encourages fluidity and adaptability. Agile is a huge topic that is out of the scope of this article, but I encourage you to delve deeper into it if you find the next few practices and tools useful.</p> <p><strong>1. Pick someone to act as producer</strong></p> <p>Several of the points I will cover&nbsp;later in this article will mention the producer. This person is NOT the team leader (though it can be), and in an indie team, is usually not only the producer, but has another role, such as a programmer or artist. The person who will take on the producer role needs to be organized and understand that this will add a ton of work and responsibilities on their plate, but will benefit the team in the long run.</p> <p><strong>2. Communicate as much as possible</strong></p> <p>The most important aspect of working in any team environment is communication. Having an easy way for everyone to discuss game ideas, ask questions, and show their work is essential. This is especially true when working with people in different time zones, where they may miss a conversation that happened while they were away. Don’t use a program that only has a single conversation thread, as it’s hard to recap what’s going on, especially when there are multiple conversations going on at once.</p> <p>Instead, use a service that allows you to set up channels for each topic (art, programming, design, etc). This helps members find information that is relevant to them, as it is contained in one or two places. Also, I recommend you have a channel for general banter. It’s always good when teams just hang out and talk for fun, as it strengthens their bonds!</p> <p><img alt="Image1-Remoteteam-1231.png" src="" style="display:block; height:394px; margin-left:auto; margin-right:auto; width:700px" /></p> <p><br /> <strong>3.&nbsp;Schedule meetings</strong></p> <p>Part of the job of the producer is to keep the team informed and the project on track. The best way to achieve this is to have consistent team meetings. These are different from your day-to-day chats, and they are most effective when done through a call or video call, not text. I’d say if you are all working full time on the game, having weekly meetings is reasonable, but if it’s more of a hobby project, having meetings every two weeks, or once a month, is fine too. During these meetings, you can check the status of your project, how your milestone is going, do&nbsp;a milestone review, and update your task board (which I’ll talk about in a bit). The producer should always have a plan for the meeting so it stays on topic, covers all the information that is relevant, and makes the meeting short and concise. No one likes long meetings where not much is said.</p> <p><strong>4. Have a task board</strong></p> <p>When working on a game with hundreds, if not thousands, of moving parts, it is essential that the team has a way of tracking tasks that need to be done, are finished, or are in the backburner. There’s a few online resources that facilitate these sort of task boards for your team. Choose one that fits your team and use it! It can be a pain in the beginning to get used to the workflow, but after a while, you’ll wonder how you ever worked without one.</p> <p>The producer is usually responsible for assigning tasks, adding new tasks to the board, and prioritizing them. A big check and update of your board can be done once a week, but small updates will happen throughout the week. This way, everyone in the team can wake up every morning, check the board, pick a task to complete, and do it. After they are done, they can mark it as finished, pick another task, and work away. Good tasks are preferably split into small pieces that can be completed in a single seating. It is still okay&nbsp;to have larger tasks in the board, but it’s a good idea to break them down into smaller pieces once it reaches the point in the queue where people will work on it</p> <div> <img alt="Image2-remoteteam-1231.png" src="" style="display:block; height:394px; margin-left:auto; margin-right:auto; width:700px" /> </div> <p><br /> <strong>5.&nbsp;Daily check-ins</strong></p> <p>In agile, there’s a useful tool called “stand-up meetings,” which are basically small five&nbsp;to 10-minute chat that happen&nbsp;at the beginning of the day between teams. It consists of people standing around in a circle and saying three things:</p> <div> <ol> <li> <p>What they worked on the day before</p> </li> <li> <p>What they’ll be working on today</p> </li> <li> <p>If there’s anything blocking them from completing their tasks</p> </li> </ol> <p>These simple questions are great because it informs the entire team of everyone else is doing and helps them solve any issues before they happen (such as two people working on the same task or on a feature that is already implemented). I adapted this idea and called it “check-ins.&quot;&nbsp;The idea is that your communication server has a channel dedicated to check-ins, where everyone will answer these three questions as soon as they sit down to work every day. The answers should be short, but concrete.</p> <p>Try to avoid being too broad (working on gameplay today) and be specific about&nbsp;what you are doing, referencing specific tasks you will tackle from your task board. Going into this channel to write your answers also encourages each member to read everyone else’s answers and know what’s going on in the project. It’s also a great way to make sure everyone is working and pulling their weight within the team. Last, make sure to be honest. If possible, the days you are not going to be working, hop into the channel and post: “Not working on anything today, I’m taking a break for the day.&quot;&nbsp;The team will understand and it relieves the pressure off your shoulders knowing the team is aware of what’s going on.</p> <p><strong>6. Set milestones</strong></p> <p>Planning too far ahead into the future is almost impossible, especially in games where the design is constantly changing. Having&nbsp;a goal to “finish the game” can feel like a goalpost that is ever-moving and unobtainable, which negatively affects the motivation of the entire team.</p> <p>Instead, have short-term achievable goals and try your best to meet them on time. This will help with team morale and will take you from a small prototype to a released game more consistently. Remember those meetings we talked about earlier? Those are a great place to plan and talk about milestones. I’d suggest having a milestone every month, or maybe every two&nbsp;months. These should be stuff like: all movement mechanics implemented, art for world one is complete, 50% of character sound effects done.</p> <p>Time estimation is an area we all have trouble with, but it can be trained and your estimates will get better and better the more you work on it. However, try to meet milestones, so if you need to get creative or cut content to meet it, then do it. Games small and large cut content constantly in order to meet milestones, and they are all the better for it. Just make sure you are in constant communication with your team and keeping them informed on your progress so you can all make the decision on cutting content.</p> <p><strong>7. Use source control</strong></p> <p>The use of source control in any project is extremely important, and it is essential when your team has more than one programmer. It’s a great way to backup your game, use it to pinpoint when a certain bug was created, and keep resources up to date. This is why I encourage teams to teach their artists and sound designers to use source control. This way, they can always have the latest build working on their computers for testing (test your game constantly please!) and they can add or tweak their assets without the help of a programmer or designer, which improves the team’s workflow. If you don’t know much about source control, I wrote a couple of articles about it. It is focused on GameMaker, but some of the basic concepts are the same, and there are lots of resources out there to learn how to use it in your project. Here are the articles:</p> <ul> <li> <p><a href=";ch=Inf&amp;chlast=Inf&amp;pub=AlH&amp;publast=AlH&amp;type=org&amp;typelast=org" target="_blank">Git Started with Source Control and GameMaker Studio 2 (Part 1)</a></p> </li> <li> <p><a href=";ch=Inf&amp;chlast=Inf&amp;pub=AlH&amp;publast=AlH&amp;type=org&amp;typelast=org" target="_blank">Git Started with Source Control and GameMaker Studio 2 (Part 2)</a><br /> &nbsp;</p> </li> </ul> <p><img alt="image3-remoteteam-1231.png" src="" style="display:block; height:487px; margin-left:auto; margin-right:auto; width:700px" /></p> <h2>Conclusion</h2> <p>I hope these tips help you find a team and improve your communication, teamwork, and workflow. Remember that this list isn’t exhaustive and that you should only use what works for your team, but I definitely encourage you to try some of these tools for a few weeks. You may be surprised at how effective some are even if they sound silly at first. If you have any questions, feel free to contact me through Twitter at<a href="" target="_blank"> @AleHitti</a>.&nbsp;</p> <div> &nbsp; </div> </div> <p><img alt="AlejandroBio.jpg" src="" style="display:block; height:145px; margin-left:auto; margin-right:auto; width:583px" /></p> <div> <em>Alejandro Hitti is a videogame Programmer and Designer from Venezuela. Although his background is in C++ and working using custom-made game engines, his two commercial games, INK and HackyZack, were made using GameMaker Studio 1.4. With the release of GameMaker Studio 2, that became his engine of choice. The novelty of GMS2, paired with his knowledge of the previous version, ignited his interest to create tutorials that focus on this new engine.</em> </div> /blogs/appstore/post/00ae2ce6-9bab-4c4f-8644-0b35d0759cb4/3-lessons-learned-how-power-rangers-legacy-wars-by-nway-uses-gameon 3 Lessons Learned: How Power Rangers: Legacy Wars, by nWay, Uses GameOn Emily Esposito Fulkerson 2018-12-19T21:07:56+00:00 2018-12-19T22:16:22+00:00 <p><img alt="image3-1219-nway.png" src="" style="display:block; height:394px; margin-left:auto; margin-right:auto; width:800px" /></p> <p>We had a chance to talk to Jesse Cherry, the senior product manager at nWay, about nWay's experience running competitions and engaging their players with GameOn.</p> <p><img alt="image3-1219-nway.png" src="" style="display:block; height:394px; margin-left:auto; margin-right:auto; width:800px" /></p> <p>Competition provides the opportunity to bring players together and create vibrant communities around the game itself, as well as the characters and IP. It offers a quality and native way to engage fans, extending the brand story.<br /> <br /> <a href="" target="_blank">Power Rangers: Legacy Wars</a>, by nWay, took their competitions one step further with <a href="" target="_blank">GameOn</a>, which enables cross-platform competitions and offers real-world prizes to the top players. These physical prizes bring the Power Rangers story to life and motivate players to continue playing for a chance to win.<br /> <br /> We had a chance to talk to Jesse Cherry, the senior product manager at nWay, about nWay's experience running competitions and engaging their players with GameOn.<br /> <br /> Here are three things we can learn from nWay:</p> <h2>1. Leverage different tournament styles</h2> <p>Power Rangers: Legacy Wars participated in the weekend-long esports tournament, <a href="" target="_blank">Mobile Masters</a>, in June 2018. They used two different tournament types, leaderboards and brackets, to crown the ultimate winner. nWay first ran qualifiers, using leaderboards, to identify the best players from around the world to ultimately compete in Mobile Masters. There were four qualifying rounds in three different regions, where players competed for the top spots on the leaderboard. At the end of the qualifiers, the top 28 people moved on to the group stage.<br /> &nbsp;</p> <p><img alt="image1-1219_nWay.PNG" src="" style="display:block; height:341px; margin-left:auto; margin-right:auto; width:700px" /><br /> <br /> The group stage featured brackets, where the 28 finalists competed against each other and at the end of each round, the top players advanced to the next round. The final eight players from the group stage won their way to Seattle to compete in the Mobile Masters tournament, which also used a bracket-style tournament to identify the champion.<br /> <br /> This combination of leaderboards and brackets is an efficient way to run qualifiers and finals for an esports event. Leaderboards for the qualifiers allow everyone to participate and have a chance to advance, whereas brackets make the finals a more exciting, energetic way to watch players compete for the top spot.</p> <h2>2. Offer real-world prizes to bring the IP to life</h2> <p>Once you pick the best tournament style for your game, it's time to think about how to reward the top finishers. Thanks to GameOn, nWay was able to rally their fans around the Power Rangers IP, awarding real-world prizes delivered right to a player's doorstep.<br /> <br /> “Being an IP-driven game, we were really interested in real-world prizes because it gives us another avenue to live and breathe the IP,” said Jesse. “We have the ability to send stuff directly to players' homes that relate to Power Rangers and continued that story.<br /> <br /> “When offering real-world prizes, there is more of a furor in the game. The moment a player has been eliminated, they want to jump back in and play for another chance to win.”<br /> <br /> In addition to Power Rangers merchandise, nWay also offers physical prizing from sponsors. For example, their players were sponsored by Razer during Mobile Masters. nWay gave away Razer phones to the winners, allowing them to show off the sponsorship in a way that was engaging and appealing to players.<br /> &nbsp;</p> <p><img alt="image2-1219-nway.jpg" src="" style="display:block; height:184px; margin-left:auto; margin-right:auto; width:700px" /></p> <h2>3. Promote tournaments and clearly communicate guidelines</h2> <p>The best prizes in the world won't be effective unless your players know about them. It's important to clearly communicate the rules and tournament details (including prizing!) to players. Make sure to set clear expectations of what players will be doing, what they will win, and how they can win.<br /> <br /> In the example below, nWay capitalized on the most-viewed real estate in their app to promote their tournaments, thanks to a specific “Challenges” section of the navigation. Once you click on “Challenges,” you see each tournament listed with instructions on how to play. Most importantly, these guidelines clearly outline everything a player would need to know to begin: when the tournament starts, what they need to accomplish, and details about the prize.<br /> &nbsp;</p> <p><img alt="image3-1219-nway.png" src="" style="display:block; height:394px; margin-left:auto; margin-right:auto; width:700px" /></p> <h2>Get started with GameOn</h2> <p><a href="" target="_blank">GameOn</a> makes it easy to run cross-platform tournaments and award players with real-world prizes fulfilled by Amazon. It provides a ready-made solution for enabling competitions in your games, rather than having to build them from scratch.<br /> <br /> “GameOn works really well, especially if you want to tie in those real-world prizes. You can get all that stuff set up really quickly with GameOn,” said Jesse.<br /> <br /> You can <a href="" target="_blank">get started with GameOn</a> in three easy steps:</p> <ol> <li>Sign in with your Amazon Developer credentials. If you don't already have an account, registration is easy and free.</li> <li>Register your game in the Game Settings tab and follow the on-screen prompts.</li> <li>Get your API key.</li> </ol> /blogs/appstore/post/a4f094ce-f229-4912-901e-a928640d1f36/amazon-creator-announces-brightcove-integration-for-video-cloud-customers Amazon Creator Announces Brightcove Integration for Video Cloud Customers Becky Young 2018-12-18T18:18:57+00:00 2018-12-18T18:18:57+00:00 <p>Using Amazon Creator, Brightcove Video Cloud customers can leverage their existing Brightcove-based workflows to publish content on Amazon Fire TV and expand their audience reach.</p> <p>Today, Amazon Creator announced an integration with Brightcove, a global provider of cloud solutions for managing, delivering, and monetizing video experiences on every screen. The integration enables Brightcove Video Cloud customers to easily create and publish video-based apps on Amazon Fire TV. Using Amazon Creator, Brightcove Video Cloud customers can leverage their existing Brightcove-based workflows to publish content on Amazon Fire TV and expand their audience reach.<br /> <br /> Brightcove Video Cloud customers can bring their content that’s hosted and managed in Brightcove into the living rooms of millions of Amazon customers in five easy steps:</p> <ol> <li><strong>Register a new application in Brightcove: </strong>Register a new application in Brightcove Video Cloud and configure it with certain permissions to allow Amazon Creator to play videos from your account. Retrieve your Client ID and Client Secret as a part of the registration process.</li> <li><strong>Create a Brightcove Player</strong>: Create and configure a new Brightcove Player for Amazon Creator. You can capture analytics in Video Cloud about video consumption on Amazon Fire TV. Retrieve your Player ID.</li> <li><strong>Create Your Amazon Fire TV App</strong>: Insert your Brightcove Client ID, Client Secret, Account ID, Player ID, and optionally Playlist Reference ID into Amazon Creator. Amazon Creator automatically creates a new Fire TV app using a default theme.</li> <li><strong>Customize, preview, and share your app</strong>: You can customize the app’s default colors and images using an intuitive interface. You can also preview a fully functional version of your app directly in browser or using the Amazon Creator preview app on Fire TV. You can also share the preview app link or test code for the Amazon Creator preview app with your friends and family for feedback before publishing.</li> <li><strong>Publish your app</strong>: Once the app is ready, start the app publishing process and finally submit it to the Amazon Appstore for review. As soon as your app passes the review process, it will be available to all Amazon Fire TV customers.</li> </ol> <p><strong>Ready to get started?</strong><br /> <br /> Go to <a href=""></a> and sign in with your Amazon account.</p> /blogs/appstore/post/75c6b03a-71ad-4008-985b-8da3ea7da902/understanding-the-iap-subscription-behavior Understanding IAP Subscription Behavior Emily Esposito Fulkerson 2018-12-17T19:16:28+00:00 2018-12-17T19:16:29+00:00 <p>This blog post assumes you already have some basic understanding on deploying a subscription service with digital content and you want to learn more about the subscription behavior.</p> <p>Amazon In-App Purchasing (IAP) includes three different categories of purchasable items, namely consumables, entitlements, and subscriptions. Just like consumable and entitlement IAP, subscriptions allow your app to present, process, and fulfill purchases of premium content. Subscriptions also allow your app to provide subscription-based services to improve&nbsp;user engagement and provide recurring revenue. In order to deploy the subscription IAP service, you need to download the IAP SDK from the link <a href="" target="_blank">here</a>.<br /> <br /> This blog post assumes you already have some basic understanding about&nbsp;deploying a subscription service with digital content and you want to learn more about the subscription behavior.</p> <h2>Example of how to use the IAP subscription</h2> <p>Before we go into the details of subscription behavior, let's review the possible scenarios for&nbsp;using IAP subscriptions:</p> <ul> <li>A &quot;freemium&quot; service where the app itself is free, but you charge a premium for advanced services or functionality.</li> <li>An all-you-can-use service where users can subscribe and enjoy services and functionality (very common for video providers).</li> <li>A game membership service that&nbsp;providesperiodic benefits such as weapon, points etc.</li> </ul> <p>The IAP API handles details about purchase flow and payment processing, provides a receipt to your app, and manages rights to the purchasable content, so you don't have to code these things yourself.<br /> <br /> Below are some important features that you need to know for a successful deployment.</p> <h2>Subscription period</h2> <p>Amazon IAP provide six types of subscription periods: weekly, bi-weekly, monthly, bi-monthly, quarterly, semi-annually, and annually. It also provide five types of free trial periods: seven days, 14 days, one month, two months, and three months. Users can only enjoy the free trial period once for each service. If a user re-subscribes, there will be no more free period and payment will immediately start.</p> <h2>Billing date</h2> <p>Monthly, bi-monthly, quarterly, semi-annual, and annual subscriptions will charge customers on the date that billing started. For example, for a monthly subscription, if the user started the subscription on January 15, the user will be charged every following month on the 15th.</p> <h2>Grace period</h2> <p>If users' credit or debit card have credit issues or issues with the user information (valid period passed), Amazon will notify the user and provide a maximum of six days of&nbsp;grace period for the users to fix the issue. Once the grace period passes, the service will be terminated automatically.</p> <h2>Subscription receipt</h2> <p>After the purchase is completed, Amazon will return a receipt with the details of the cancel date, receipt ID, and subscription period. Here is a receipt sample:</p> <pre> <code>{ &quot;betaProduct&quot;:true, &quot;cancelDate&quot;:1400784371000, &quot;parentProductId&quot;:null, &quot;productId&quot;:&quot;sub1&quot;, &quot;productType&quot;:&quot;SUBSCRIPTION&quot;, &quot;purchaseDate&quot;:1400784241000, &quot;quantity&quot;:null, &quot;receiptId&quot;:&quot;JyGJ5iEtYgFu1ngnQovTqSIHQxR53GsMLqkR1tKLp5c=:3:11&quot;, &quot;renewalDate&quot;:null, &quot;term&quot;:&quot;1 Week&quot;, &quot;termSku&quot;:&quot;sub1-weekly&quot;, &quot;testTransaction&quot;:true }</code></pre> <h2>Cancellation</h2> <p>Users can terminate their subscription through the site and developers can use the cancel receipt API to call Amazon Receipt Verification Service (RVS) to allow for the cancellation of a subscription<br /> <br /> The syntax of the request is similar to what is described <a href="" target="_blank">here</a>.</p> <p>&lt;Protocol&gt;//&lt;Server&gt;/version/&lt;Operation_version_number&gt;/cancelReceipt/developer/&lt;Shared_Secret&gt;/user/&lt;UserId&gt;/receiptId/&lt;ReceiptId&gt;</p> <ul> <li><strong>&lt;Protocol&gt;</strong>: Protocol being used to communicate with the server or sandbox, such as https:.</li> <li><strong>&lt;Server&gt;</strong>: URL for the RVS server that you are communicating with:</li> <li><strong>&lt;Operation_version_number&gt;</strong>: Version number of the cancelReceipt operation. This version number is independent of the IAP version number. The current cancelReceipt version number is &quot;1.&quot;</li> <li><strong>&lt;Shared_secret &gt;</strong>: Shared secret used to identify the developer issuing the request. Your shared secret can be found on the <a href="" target="_blank">Shared Key page</a>&nbsp;in&nbsp;your developer account.</li> <li><strong>&lt;UserId&gt;</strong>: ID representing a distinct Amazon customer for your appstore app: purchaseResponse-&gt;userData-&gt;userId.</li> <li><strong>&lt;ReceiptId&gt;</strong>: Unique ID for the purchase: purchaseResponse-&gt;receipt-&gt;receiptId or purchaseUpdatesResponse-&gt;receipts-&gt;receipt-&gt;receiptId. NOTE: You must use the PUT method for your cancelReceipt API request. Do not use the GET method used for verifyReceiptId API.</li> </ul> <h2>Sequence diagram</h2> <p>Here is the sequence diagram overview for Amazon IAP subscription.</p> <p><img alt="Kevin-IAPdiagram.png" src="" style="display:block; height:564px; margin-left:auto; margin-right:auto; width:600px" /></p> <h2>Final thoughts</h2> <p>Amazon IAP subscription service provides a powerful payment method for Amazon Appstore developers to improve their user engagement and create a means for recurring revenue. For additional information, view our tech docs <a href="" target="_blank">here</a>.&nbsp;</p> /blogs/appstore/post/14b20e76-87d8-4c08-a4fc-88f78c675d26/amazon-developer-podcast-episode-1-developing-mobile-games-today-opportunities-tips-tricks Amazon Developer Podcast, Episode 1: Developing Mobile Games Today - Opportunities, Tips &amp; Tricks Emily Esposito Fulkerson 2018-12-12T19:34:16+00:00 2018-12-12T19:34:16+00:00 <p><img alt="AMAZON_Developer_Podcast.png" src="" style="display:block; height:450px; margin-left:auto; margin-right:auto; width:800px" /></p> <p>In the Amazon Developer Podcast, I discuss&nbsp;technologies and trends in the mobile, apps, and games developer world with guest speakers and influencers from all over the world.</p> <p><img alt="AMAZON_Developer_Podcast.png" src="" style="display:block; height:450px; margin-left:auto; margin-right:auto; width:800px" /><br /> We are happy to announce the first episode of the Amazon Developer Podcast!</p> <p>In the Amazon Developer Podcast, I discuss&nbsp;technologies and trends in the mobile, apps, and games developer world with guest speakers and influencers from all over the world.<br /> &nbsp;</p> <p style="text-align:center"><iframe allowfullscreen="" frameborder="0" height="315" src="" width="560"></iframe></p> <p><br /> In this first episode, I interview&nbsp;Quang Nguyen, an indie developer at Asobitech and Amazon Developer Hero. We talk about multiple game developer-related topics, including why you should be developing mobile games in 2019, tips and tricks for indie game developers for self-promoting games, and how to develop and test apps on mobile devices.</p> <p><strong>The podcast is available here:</strong></p> <ul> <li><a href="" target="_blank">YouTube</a></li> <li><a href="" target="_blank">SoundCloud</a></li> <li><a href="" target="_blank">Spotify</a></li> <li><a href="" target="_blank">Pocket Casts</a></li> <li><a href="" target="_blank">Acast</a></li> <li>iTunes and Google Podcast coming soon.</li> </ul> <p><br /> <strong><em>Here’s the full transcript!</em></strong></p> <p><br /> <strong>Thank you very much for being here. Can you introduce yourself and tell our friends what you do and what you focus on? </strong></p> <p>Sure. My name's Quang and in my spare time,I’m a developer. I have a day job, but in my spare time I make video games.</p> <p><strong>You do work for Asobitech, right? You’re the founder and you work with your brother. Can you tell us more about it?</strong></p> <p>Asobitech is the company I put together eleven years ago. Wow, yeah, it's been a long time. I used to work in game development before, developing for the Game Boy Color. I left the industry. And I came back eleven years ago and I've been&nbsp;just relearning, catching up, and getting to a point now where we can make games.</p> <p><strong>You have been working in the gaming industry now for many years, more than eleven years. I think you probably seen this industry change a lot. So what are the things that interest you right now and you're focusing your attention on specifically? </strong></p> <p>Technology moves forward so, so fast now and we've been learning. It took us a long time to get to a point where we're comfortable with what we're gonna do. We're making mobile games primarily. There are also obviously PC and console we're also thinking about, but primarily mobile, mainly due to everyone having a mobile device and the more people we can reach… the better!</p> <p><strong>Talking specifically about mobile games, what kind of games are you focusing on and why are you working on especially that kind of game? </strong></p> <p>Sure, so our experiences is mainly with arcade games from the ‘80s and 90’s on computers and consoles, so we make very fast arcade-y casual platform games, thinking people can pick them up and play for short periods of time.</p> <p><strong>Why you get so focusing on this game category specifically? </strong></p> <p>For us, definitely it comes to our experiences, those are the games we spent most time with, these are the things we played us a children growing up. Of course, we also play bigger games but because we're a small team, just me, my brother, we try to make smaller possible developer times. Hence we make fast, quick games!</p> <p><strong>I know that you work with a variety of technologies. But do you work with specific pieces of technologies or game engines when you create your games?</strong></p> <p>So currently we're using GameMaker:Studio as our primary engine. This's due to us making primarily 2D action games and we feel GMS really, really works well with that.</p> <p><strong>When you use GameMaker:Studio, do you have any specific ways of approaching the creation of the game in terms of other tools that you use? </strong></p> <p>Yeah, so far we're looking at being cross-platform so being on mobile, computers, and console as well, and we looked at what engine fit the games we wanted to make. Also due to my programming experience, GameMaker was an engine that fit&nbsp;my coding experiences as well. So I find it very easy to code in this engine rather learning a new language.</p> <p><strong>A lot of developers are approaching the creation of games because now it's easier than ever to start creating new game. If you have to think back, what are the main differences in starting the creation of game now compared to when you started?</strong></p> <p>You should think about 10 years ago, the prolificness of game engines wasn’t really a thing, you had to make a lot of things from scratch. For example, we wrote in C and assembly language and also the platforms didn't really change that much. Now there are so many multiple devices and all the game engine support these so making games is a&nbsp;much easier process.</p> <p><strong>Lots of the new game engines allow for features like drag and drop. Do you think that these features democratised the creation of games?</strong></p> <p>The creation of the game is the most important part, more than learning to code. Back in the day, you had to be a programmer first before making the game. Now you can just use drag and drop&nbsp;and I've seen a lot of great stuff created with just a drag and&nbsp;drop.</p> <p><strong>I know you're a big fan of gamejams. Do you think that 10 years ago gamejams would even be possible at the same level you've seen it happening today?</strong></p> <p>Back in the old days, you had demo parties where you created these little demos to demonstrate your code that creates a whole game in such a short amount of time. That wasn't really heard of. Now with how easy it is to create a game with these game engines, you can do it in a day or in a weekend. It's really impressive.</p> <p><strong>You said the one of the reasons to use this new game engine&nbsp;is that they allow you to go cross-platform and target multiple systems. What systems are you targeting? </strong></p> <p>We are going mobile because we want to reach the biggest audience as possible. PC comes as a natural second, basically everyone has a PC at home. Regarding consoles, it would be nice to provide games on them, but it's not our primary focus.</p> <p><strong>One challenge a lot of developers are facing now in the mobile arena is that compared to a few years ago, this space is quite crowded. Is mobile today still a viable option for developers?</strong></p> <p>Yes, I definitely think so. If you compare it to the computer market, Steam and games on PC are more saturated, so it’s more important than ever to build a community that is visible. The number of apps and games is never going to decrease, we have to face this reality. With the added ease of creating games and apps, there will be more and more. As a developer, you will need to focus on your visibility and community building.</p> <p><strong>Speaking of visibility, you are always very vocal about the games that you're creating, even before the game itself is being released. Do you have any suggestions for developers who&nbsp;are approaching the first release of their games or that are still building their games?</strong></p> <p>With our game MaoMao Castle, at day one we started showing it at events. In two years, we've been in 57 events and counting showcasing the game. This is purely for building visibility. we want to show the game to as many people as possible, human interaction and face-to-face interaction with people is always more powerful than blanket emails. For example, coming to the Amazon Appstore Meetups I was able to meet you, Mario, instead of dropping you a blanket email that probably would move nothing. Face-to-face interaction is probably the most important thing that you can do to get the word out there.</p> <p><strong>How much is branding important for an indie game developer? Is marketing something only the big AAA games studios can afford?</strong></p> <p>As an indie developer you are probably a very small team, one to two up to 10 people. Branding is you. You are your own company. You need to make yourself as visible as possible, so everyone knows what company you are and what kind of games are you making. Your company is an extension of yourself: if you make yourself visible you make your company and your game visible.</p> <p><strong>Let's go back and talk about the creation of games and development. You’re very focused on mobile. There is a variety of devices out there, even if you're just talking about the Android devices were probably talking about thousands of different models. Also there are tablets, like Amazon Fire tablets, that you have to think about when you're creating the game. Do you have any suggestions regarding optimizing games for specific mobile devices and tablets specifically?</strong></p> <p>You need to look at all the ranges of devices, find out what are the minimum requirements for your game to work on, and aim for that. If it works well on the low-end device, you’ll be ok with anything above that. Among the things that you need to worry about are for example the touchscreen, as there are no physical controllers like keyboards or joypad on a mobile device. Your fingers will be the covering the screen at some point, and you want the interaction to be as natural as possible. You want to focus on a swipes, taps, and gestures more than on d-pads or buttons. Fit the game and the experience around the device itself. That really helps.</p> <p><strong>Not all devices have the same amount of compute power in terms of memory, CPU, dedicated GPU. How do you go about optimizing for a low-end device compared to a device where you know you have a lot of compute power available? How do you ensure customers can install and enjoy your games even on lower-end devices?</strong></p> <p>What we have done is we went out and got all the lower-end devices! For us, investing money on getting a low-end device is extremely important as it allows us sure that our games run fine on these devices. As a developer, you need to be very aware of memory restrictions. There are devices who only 1 GB of RAM, so if you are creating graphical assets, try&nbsp;to lower them in size to make it more efficient. I come from making games for the Game Boy, so I’m used to think like that. Game optimization is something that you always have to focus on. I know it is difficult, but if you optimize from the start and make sure that your routines are fast, it helps in the long run to support more devices. When you look at mobile optimization, it is something that you need to look at constantly. Test regularly. The mobile device that I use in my day to day is not a low-end device so if I would only use that for development purposes, I will not really have a clear idea of how my games run on low end devices. We are used to compile to HTML5 for testing. HTML5 is an engine is much slower than a native app. So if it runs well on HTML5. it will run smoothly as a native app. Also my brother and I work in different locations so we can compile to HTML5 and easily test it remotely. If we the all agree on how it runs, great and we build it as an APK and then usually… wow! Works even better as an APK!</p> <p><strong>One interesting thing about tablets is that a lot of developers just think about display resolution and not really about the physical size and shape of the device. When it comes to the graphical assets or even&nbsp;the way that you display graphical assets on the display, what is your experience optimizing for tablets?</strong></p> <p>When you are developing for specific devices, you need to physically hold these devices in your hand to fully understand what the best way to place the elements of the game is. You need to understand where your hands will be placed during the game play. If you're developing for a small phone, if your controls are taking up a quarter of the screen, that is a lot of real estate on the screen that is gone. If you are adding text, it still needs to be readable. You need to test. Test, iterate, test, iterate.</p> <p><strong>Speaking of Amazon devices, I know that you working on MaoMao Castle and have been using Amazon devices quite a lot to develop the game and to showcase it. What is your experience working with Amazon Fire tablets?</strong></p> <p>We test our games on Amazon Fire (7-inch tablet), we know that is the lowest-end tablet that Amazon produces, and we know that if it works well on the Amazon Fire, it will run on the other Fire tablets as well. We then also test it on the other models of Fire tablets (Fire HD 8 and Fire HD 10) to make sure the games runs well on these devices as well. Showcasing free game on the 7-inch tablet means that other people will see the game running well on the devices they have or their kids use. We realised sometime people go out and buy devices to play the latest games and then those games don't run on those devices because they don’t have the required specs. We understood that to reach the maximum amount of people we need to optimise our games to make sure they run on all devices.</p> <p><strong>Let’s close with a teaser: you've been working for a while on MaoMao Castle. Can you share something about how it is going? What are your plans for the immediate future?</strong></p> <p>MaoMao Castle has been under development now for two years and four months at the moment of recording this podcast. It has been a slower process than I hoped, mostly because it's a spare time project for me and my brother. We have other jobs to help fund the whole project. We’re looking to release soon aiming for somewhere in Q1 2019. We are looking into integrating Amazon GameOn APIs, mainly to look after our leaderboards.</p> <p>One of the most important things for&nbsp;a mobile game is its social aspect. Playing games on your own device was always a very solitary experience. But if you can share that with other people, it becomes much more powerful. If you can share your high scores with other people and compete with other people it drives you to play the game more. Even just the ability to add cosmetic changes, it’s great but means nothing if you can‘t show it to someone. So we are going to have different skins in game, and the high scores, we'll show which skins are being used by the top players. We want these features to be very visible and build a community around it. It’s a very exciting time!</p> <p>-Mario Viviani (<a href="" target="_blank">@mariuxtheone</a>)</p> <p>&nbsp;</p> /blogs/appstore/post/46fa6bfa-d61b-4169-851e-f8a94ca90b99/developer-interview-miracle-tea-studios-the-creators-of-ruya Developer Interview: Miracle Tea Studios, the Creators of Ruya Emily Esposito Fulkerson 2018-12-11T17:40:15+00:00 2018-12-11T17:40:15+00:00 <p><img alt="Ruya-blogpost-header.png" src="" style="display:block; margin-left:auto; margin-right:auto" /><br /> <a href="" target="_blank"><u>Ruya</u></a> is a meditative puzzle game where you play a seemingly sleepy character with a garden of adorable characters beneath her. The goal is to match cute characters in Ruya's world of dreams, swiping, sliding, and popping these characters to progress and unfold Ruya's memories.<br /> &nbsp;</p> <p><img alt="Ruya-blogpost-header.png" src="" style="display:block; margin-left:auto; margin-right:auto" /></p> <p><a href="" target="_blank"><u>Ruya</u></a> is a meditative puzzle game where you play a seemingly sleepy character with a garden of adorable characters beneath her. The goal is to match cute characters in Ruya's world of dreams, swiping, sliding, and popping these characters to progress and unfold Ruya's memories.<br /> <br /> You'll visit surrealist landscapes, decorate yourself in flowers, and introspect. Between these various worlds, you are given a glimpse into the backstory of these characters. She seems to have lost someone she loved and in that loss, has moved into a dream state. The game itself is wonderful, touching, and a joy to play on mobile.</p> <p>I really enjoyed discovering this story. Through these animations, you can interpret the game in your own way, making it that much more personal and meaningful to each player.</p> <p><strong>I got the chance to interview Bradley, the game’s designer and artist, and Tom, the game’s programmer.</strong><br /> &nbsp;</p> <p><img alt="image1-ruya-jupiterpost.png" src="" style="display:block; height:1067px; margin-left:auto; margin-right:auto; width:800px" /></p> <p><br /> <strong>What inspired the story behind </strong><strong>Ruya</strong><strong>?</strong><strong> </strong></p> <p><strong>Brad</strong>: “It’s loosely based on my nan’s life and echoes aspects of our relationship. The game is a metaphor for struggling mothers and mostly intended for that audience. The little dream bubbles that appear throughout are from real family observations and the overall tone of the game pulls elements from spiritual teachers like Ram Dass and Alan Watts.”</p> <p><strong>Why did you do a rift on a matching game, something that is seen all over the mobile market?</strong></p> <p><strong>Brad</strong>: “I think match games can sometimes be seen as uncool in the indie scene. I remember getting some feedback on an early build saying <em>it’s just a match game</em> implying that it was a fundamental flaw. I guess it’s because people don’t really see much creative risk in the genre. We were keen to try and re-imagine the genre by pouring a bit of heart and soul, bringing elements that you might not normally see. We asked ourselves, 'What if a game like Monument Valley had a baby with a game like Bejeweled.'”<br /> &nbsp;</p> <p><img alt="image2-image2-ruya-jupiterpost.png" src="" style="display:block; height:1067px; margin-left:auto; margin-right:auto; width:800px" /></p> <p><br /> <strong>You have added a lot of little touches: Ruya’s idle animations, the little totems moving when touched, and Ruya’s general cute aesthetic. What inspired this look and why did you decide them?</strong></p> <p><strong>Brad</strong>: “There’s an illustrator called Philippa Rice who I really like. She has a book called Soppy which definitely inspired me to explore eliciting cuter and heartfelt emotions. There’s also a game called Year Walk which was initially a catalyst for inspiring some of the visual aesthetics. The foundations of the visuals were defined at a game jam called Indie Speed Run back in 2013.</p> <p>&quot;All the small visual touches help with immersion. They’re intended to pull you into the world and act like little gifts for people to discover. I always like when other games do things like that. Subtle attention to detail tends to reinforce how much love and care went into the game.”</p> <p><strong>What were some challenges with making a meditative game where people both relax through the music and play the game?</strong></p> <p><strong>Brad</strong>:<strong> “</strong>Every game component needs to work in harmony with one another. That’s probably the biggest challenge that all designers face, sitting down for hours mocking up designs to then identify which ones to throw out. Embracing that can be tough, but the more times you do it, the closer you get to toward that thing you’re searching for.”<br /> &nbsp;</p> <p><img alt="image3-ruya-jupiterpost.jpeg" src="" style="display:block; height:522px; margin-left:auto; margin-right:auto; width:700px" /></p> <p><br /> <strong>You showcase Ruya at loads of different events and showcasing mobile games can be challenging. How do you stand out from the crowd of games on much larger screens?</strong></p> <p><strong>Brad</strong>:<strong> “</strong>It’s tricky to tell if we really stand out. I guess we try to decorate the stand in a creative way while avoiding game culture clich&eacute;s. We still have so much to learn, and it will probably take a lifetime to master. Each event is different, so the set up is always adapting. I usually bring as much as I can carry in a backpack and can fit on the train — this sometimes means no large screen, but we’re known for bringing plants and a custom plush to draw people in. At most shows, it’s the mothers that have brought their kids who end up playing Ruya, which is cool.”</p> <p><strong>How did you bring your game onto the Amazon Appstore? </strong></p> <p><strong>Tom</strong>: “It was extremely straightforward. We didn’t have to change any code. We just uploaded our apk to the dev portal, localised our store descriptions, added screenshots and a trailer, and that was pretty much it.”</p> <p><strong>What was it like testing the game? What tips on testing do you have for fellow developers?</strong></p> <p><strong>Tom</strong>: “Yeah, we try to test on any device we can get our hands on. Testing on old low-end devices can be useful when optimising and can give you a bit of confidence to likelihood of the game running buttery smooth on most other devices. Our university tutors lent us devices for a large chunk of our exhibitions. Often, we would do A/B testing to figure out how best to communicate a mechanic that wasn’t clear.”<br /> &nbsp;</p> <p><img alt="image4-ruya-jupiterpost.png" src="" style="display:block; height:934px; margin-left:auto; margin-right:auto; width:700px" /></p> <p><br /> <strong>What is your user acquisition strategy? Any tips for other developers to help discoverability?</strong><br /> <br /> <strong>Tom</strong>: “We rely heavily on word of mouth at exhibitions for the most part. Most of the people who wrote about our game were the people we met at events. Depending on the kind of game you’re making and the kind of developers you are, your strategy will vary. For Ruya, our intent was to design a product that people would want to purchase based on first impression.”<br /> <br /> <strong>Do you have any results you can share?</strong></p> <p><strong>Tom</strong>: “To date, Ruya has been downloaded the most in America and China. It has had over a million product page views with 28,000 sessions and counting! For a single-player premium game, we have a humble and niche little community that surrounds the game, and for first release as a team, we couldn’t be happier.”</p> <p>If you haven’t already, you should check out <a href="" target="_blank">Ruya</a> for yourself!</p> <p>&nbsp;</p> <p><img alt="Jupiter-headshot.png" src="" style="display:block; margin-left:auto; margin-right:auto" /></p> <p style="text-align:center">Jupiter Hadley is an indie gamer, YouTuber, and writer. She records most of the indie games she loves on <a href="" target="_blank">YouTube</a> and even writes about them on <a href="" target="_blank">Fireside</a> and <a href="" target="_blank">AlphaBetaGamer</a>. Follow her on <a href="" target="_blank">Twitter</a> or visit her <a href="" target="_blank">website</a>.</p> /blogs/appstore/post/250fcd6b-95d1-4864-9691-0394ce00c693/you-can-now-create-in-app-prizes-within-the-gameon-admin-console You Can Now Create In-App Prizes Within the GameOn Admin Console Emily Esposito Fulkerson 2018-12-03T23:01:46+00:00 2018-12-04T00:13:04+00:00 <p>Our goal is to make it even easier for community managers and non-development staff to entirely run GameOn tournaments without needing&nbsp;to write a single line of code. Once a game integrates the GameOn tournament and prize APIs, the entire process can be managed from the admin console.</p> <p>We are excited to announce that managing digital in-app prizes can now be done directly in the GameOn admin console. Our goal is to make it even easier for community managers and non-development staff to entirely run GameOn tournaments without needing&nbsp;to write a single line of code. Once a game integrates the GameOn tournament and prize APIs, the entire process can be managed from the admin console.<br /> &nbsp;</p> <p><img alt="AdminConsole-1203.png" src="" style="display:block; height:380px; margin-left:auto; margin-right:auto; width:800px" /><br /> Just log into the GameOn admin console, select the new option at the top called “Your Prizes,” and select your game — you will see all of your in-app prizes in the list. To create a new in-game prize, define the name of the prize, the unique info for verifying the prize in the game, and optionally a URL and a description. You can learn more about the actual process in our documentation <a href="" target="_blank">here</a>. After that, when you create a new competition, you can select the prize you just created. Finally, GameOn in-app prizes can be redeemed multiple times and reused across multiple tournaments.</p> <h2>About GameOn</h2> <p>Amazon GameOn is a set of flexible APIs that allow you to build cross-platform competitions into your games that drive engagement and increase monetization. With GameOn, you have an easy tool to strengthen your fanbase with leaderboards and leagues, awarding in-game and real-world prizes fulfilled by Amazon, and allowing players and streamers to create their own user-generated competitions.<br /> <br /> Interested in trying GameOn in your game? <a href="" target="_blank">Get started today</a>, it's easy and quick! Some developers have even been able to set up competitions in their game with GameOn in as little as one day.</p> /blogs/appstore/post/c6d362c4-64a0-4072-bce9-85abd44ee519/tips-for-handling-near-field-and-far-field-control-with-media-session-on-fire-tv Tips for Handling Near-Field and Far-Field Control with Media Session on Fire TV Emily Esposito Fulkerson 2018-12-03T22:44:40+00:00 2018-12-03T22:55:06+00:00 <p>In this post, I’ll share the nuances of handling near-field voice control, which uses the microphone button on the remote, and far-field voice control, which uses an <a href="" target="_blank">Alexa-enabled device linked to a Fire TV</a>.</p> <p>In my previous blog post, <a href="" target="_blank">Implementing Voice Control with the Media Session API on Amazon Fire TV</a>, I explained how you can implement the Media Session API to voice-enable the transport controls (play, pause, rewind, etc.) in your Fire TV app. In this post, I’ll share the nuances of handling near-field voice control, which uses the microphone button on the remote, and far-field voice control, which uses an <a href="" target="_blank">Alexa-enabled device linked to a Fire TV</a>.</p> <h2>Handling events on microphone invocation</h2> <p>Fire TV supports voice interaction through the microphone button on its remote (near-field control) and also through a connected Alexa device (far-field control). With near field, when a voice utterance is received, a blue line (Alexa chrome interface) appears as an overlay activity on top of Fire TV screen. The apps should take a cue at this time and either pause the video or turn the volume to zero. Audio apps should go on mute and follow recommended <a href="" target="_blank">best practices for audio focus handling</a>.</p> <p style="text-align:center"><img alt="FTV_Shweta_Hero1.jpg" src="" /></p> <h2>Handling events on far-field</h2> <p>Additionally, pressing the microphone button on the remote control brings up the Alexa overlay on Fire TV and thus sends an Android lifecycle event, <a href="" target="_blank">onPause()</a> (which is independent of <a href="" target="_blank">AUDIOFOCUS_LOSS event</a>).</p> <p>In general, your app should pause (or at least mute the audio) in response to voice interactions. Your application should be prepared to receive the events in any order allowed by Android. Among other options, users can instruct Alexa to start new applications or, for example, users can turn a sound system on or off. As a result, the audio capabilities might change while your playback is paused. You should properly react to all these changes before continuing playback. The release of the microphone button on the remote issues onResume() lifecycle event. Apps should resume their content from where the users left off after receiving this event, provided the app has also regained the audio focus.</p> <p>Far-field control (when a Fire TV stick is paired with an Echo device) is slightly different in implementation from near-field in the sense that no voice chrome overlay appears when a user utters a voice command through a connected Echo/Dot device. Since there is no chrome overlay, onPause() and onResume() events aren’t triggered. Apps must continue to honor audio focus at all times and play only when they regain audio focus.</p> <p>If far-field voice is passed through the <a href=";qid=1535660760&amp;sr=8-1&amp;keywords=fire+tv+cube" target="_blank">Fire TV Cube</a> (rather than a linked Echo device), the blue chrome appears on both the Cube and the TV&nbsp;on invocation. In this case, follow the same guidelines relevant for near-field utterances.</p> <h2>Testing</h2> <p>Test your app for the following scenarios to make sure your app handles audio focus in near-field and far-field utterances correctly.</p> <p><strong>Test near-field control</strong>: Open your app and play some content. Using your remote’s microphone button, say “Weather today” and then observe the following:</p> <ol> <li>Alexa’s response does not overlap with the audio of your content.</li> <li>Content pauses.</li> <li>When Alexa finishes, content resumes from the same point.</li> </ol> <p><strong>Test far-field control:</strong> Connect your Fire TV to an Alexa device or use Fire TV Cube and say “Alexa, weather today.” Then observe the following:</p> <ol> <li>Alexa’s response does not overlap with the audio of your content.</li> <li>Content pauses.</li> <li>When Alexa finishes, content resumes from the same point.</li> </ol> <h2>Tips</h2> <p>For the best user experience, keep these tips in mind:</p> <ul> <li>Design your app such that the content in focus doesn’t become lost once Alexa is invoked. For example, if the focus was on tile A prior to invoking Alexa, make sure that after Alexa dismisses, the focus stays on tile A. Do not refresh the page’s content while Alexa is actively invoked.</li> <li>While working with media players, don’t destroy your media player instance when Alexa is invoked. Instead, follow the best practices on handling the Audio focus, save the state of the media player, and broadcast the state in order to resume the same state the media player was in before Alexa was invoked.</li> </ul> <h2>Suggested reading</h2> <ul> <li><a href="" target="_blank">Handling onPause and onResume events for multimedia apps</a></li> <li><a href="" target="_blank">Managing Audio Focus on multimedia apps</a></li> </ul>