Corona SDK Hotshot

Corona SDK Hotshot

Language: English

Pages: 334

ISBN: 1849694303

Format: PDF / Kindle (mobi) / ePub

Corona SDK Hotshot

Language: English

Pages: 334

ISBN: 1849694303

Format: PDF / Kindle (mobi) / ePub

A detailed guide with 10 projects specifically designed to expand the fundamentals of this exciting mobile development platform!


  • Ten fully developed code projects that build on previous projects and present new techniques.
  • Freely reusable art and sound files included with every project help you jumpstart your own development.
  • Numerous advanced techniques to make the most out of Corona's features and the Lua programming language.

In Detail

If you've used the Corona Software Development Kit to build your very first new mobile app, you already know how easy it makes developing across all the pieces of this fragmented market. This book upgrades your knowledge of Lua and the Corona API with designs, habits and advanced concepts to speed your development and create more exciting apps.

Corona SDK Hotshot will show you how to combine advanced Lua features such as coroutines and metatables with Corona's sophisticated tools, including physics and networking, to develop exactly the game or app you or your customers need, quickly and with an eye towards updating your app with improvements in the future.

Corona SDK Hotshot will expand your basic knowledge of Corona with an insight into making the most of its event platform, using physics wisely and easily, and moving on to advanced programming tasks like path-finding.

You will focus heavily on how to keep your programs understandable as they become more complicated, by using modules and events to divide it up. You'll practice ways to make AI scripts and map files easily understandable to designers and other collaborators, and use networks like GameCenter to publish progress.

The last projects will combine the full range of covered material to illustrate how you can produce sophisticated and exciting apps as a Corona Hotshot!

What you will learn from this book

  • Loading maps and regions from simple, editable file formats.
  • Using included interface elements to create usable app front ends fast
  • Connecting to external services to get data and request actions
  • Filtering collisions to improve performance and simplify game logic
  • Responding to multiple touches as well as tilt and shake input
  • Connecting to game networks to share high scores and achievements
  • Controlling characters and enemies in games easily by writing AI scripts
  • Controlling physics interactions to create fully controllable game behaviour


Using a project based approach you will learn the coolest aspects of Corona SDK development. Each project contains step- by-step explanations, diagrams, screenshots, and downloadable materials.

Who this book is written for

This book is for users who already have completed at least one simple app using Corona, or are familiar with mobile development using another platform and have done Lua programming in another context.

AdvancED Flex Application Development: Building Rich Media X

Beginning Swift Programming

Creating Apps in Kivy

C Programming Language (2nd Edition)

Pro OpenGL ES for Android













object:applyAngularImpulse(25) transition.from(object, fadeIn) return object end The asteroid module should be complete now; save it and open game.lua. Spawning enemies at game start When the game scene loads and is ready to start playing, we'll add rocks to the scene to serve as challenges. In game.lua, find the willEnterScene function where we get the game ready, and add a loop at the end to create rocks (we'll only make two at the beginning of the game). self.Player = require

60 x 120 image will take up memory as if it were 64 x 128, a 550 x 550 image will take up the same texture memory as a 1024 x 1024 background texture! Sometimes tiled textures can be rearranged with a different number of tiles per side, which allows them to reduce one dimension below the next power of two without pushing the other dimension up over its next power of two. More commonly, however, texture packers help by taking sprites and similar contents that don't take up their entire tile space

but a library to make it compatible with the gameNetwork module was in development. Why is it great? Gamers are increasingly showing that they prefer playing in a context with other people, where they can be a part of a game community. While Corona currently supports a limited number of game networks, it offers the features of those networks in a way which is intended to be independent of any one operating system. So as new services become available in the future, keeping your projects

costs, as well as the heuristic function that can be applied to each space. local function lowestEstimate(costs, h) end return function(start, goal, neighbors, h) The following function will build an internal heap form that sorts the different elements in the costs table according to their total estimated travel costs, which will be stored in another table: local function lowestEstimate(costs, h) local estimates = {} local heap, length = {}, 0 for n, c in pairs(costs) do end end For the

this shape as the base fixture in the sprite's new body: self.Mind = require "plan" (self.Brain, self, world, kind.Personality(self)) physics.addBody(self, 'dynamic', body) self.isFixedRotation = true What did we do? We've laid the framework here for all characters to interact with the ground, without interacting with each other. This eliminates a lot of issues like characters violently bouncing off each other. What else do I need to know? Box2D simulates bodies in three

Download sample