Corona SDK Hotshot


Corona SDK Hotshot
eBook: $29.99
Formats: PDF, PacktLib, ePub and Mobi formats
$25.49
save 15%!
Print + free eBook + free PacktLib access to the book: $79.98    Print cover: $49.99
$49.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Reviews
Support
Sample Chapters
  • 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.

Book Details

Language : English
Paperback : 334 pages [ 235mm x 191mm ]
Release Date : May 2013
ISBN : 1849694303
ISBN 13 : 9781849694308
Author(s) : Nevin Flanagan
Topics and Technologies : All Books, Web Development, Mobile, Games

Table of Contents

Preface
Project 1: Bat Swat – An Introduction to App Event Cycles
Project 2: SuperCargo – Using Events to Track Game Progress
Project 3: TranslationBuddy – Fast App Development for any Field
Project 4: Deep Black – Processing Mobile Device Input
Project 5: Atmosfall – Managing Game Progress with Coroutines
Project 6: Predation – Creating Powerful Visuals from Simple Effects
Project 7: Caves of Glory – Mastering Maps and Zones
Project 8: The Beat Goes On – Integrating with Game Networks
Project 9: Into the Woods – Computer Navigation of Environments
Project 10: Underfoot – Selectively Leveraging the Physics System
Index
  • Project 1: Bat Swat – An Introduction to App Event Cycles
    • What do we build?
    • Describing the game
    • Defining the event flow
    • Creating the objects
    • Creating the interface
    • Adding the Shell
    • Tracking high scores
    • Adding finishing touches
    • Game over – wrapping it up
    • Can you take the HEAT? The Hotshot Challenge
    • Project 2: SuperCargo – Using Events to Track Game Progress
      • What do we build?
      • Describing the game
      • Loading a level from a file
      • Displaying the map contents
      • Adding the interface
      • Making the game playable
      • Adding the Shell component
      • Supporting Undo
      • Preserving game history
      • Game over – wrapping it up
      • Can you take the HEAT? The Hotshot Challenge
        • Project 4: Deep Black – Processing Mobile Device Input
          • What do we build?
          • Creating the player and receiving events
          • Processing raw physical events
          • Bridging physical events to game events
          • Creating the world rules
          • Creating enemies and controlling collisions
          • Responding to fire controls and creating bullets
          • Responding to collisions and handling lives
          • Recognizing kills and recording scores
          • Game over – wrapping it up
          • Can you take the HEAT? The Hotshot Challenge
          • Project 5: Atmosfall – Managing Game Progress with Coroutines
            • What do we build?
            • Tracking progress through the level
            • Constructing the enemy behavior
            • Creating a schedule
            • Scripting behavior
            • Controlling the boss
            • Cleaning up and making the game playable
            • Game over – wrapping it up
            • Can you take the HEAT? The Hotshot Challenge
              • Project 7: Caves of Glory – Mastering Maps and Zones
                • What do we build?
                • Parsing a level file
                • Displaying objects
                • Creating an efficient background
                • Scrolling around a large level
                • Interacting with objects
                • Defining a chapter
                • Creating scenes for datafiles
                • Linking scenes together
                • Game over – wrapping it up
                • Can you take the HEAT? The Hotshot Challenge
                • Project 8: The Beat Goes On – Integrating with Game Networks
                  • What do we build?
                  • Tracking multiple touches
                  • Comparing touches with targets
                  • Loading and playing music
                  • Enabling Game Center on the Provisioning Portal
                  • Enabling Game Center on iTunes Connect
                  • Initializing a game network connection
                  • Updating and reading a leaderboard
                  • Game over – wrapping it up
                  • Can you take the HEAT? The Hotshot Challenge
                  • Project 9: Into the Woods – Computer Navigation of Environments
                    • What do we build?
                    • Structuring the A* algorithm
                    • Writing a custom iterator
                    • Selecting costs for neighboring tiles
                    • Sorting likely routes using a heap
                    • Writing a heuristic function
                    • Connecting all the elements
                    • Using the implementation to find a path
                    • Moving based on path selection
                    • Game over – wrapping it up
                    • Can you take the HEAT? The Hotshot Challenge
                    • Project 10: Underfoot – Selectively Leveraging the Physics System
                      • What do we build?
                      • Building physics for the map
                      • Making characters interact with the world
                      • Responding to collisions with other characters
                      • Bouncing off enemies as appropriate
                      • Controlling gravity to enable climbing
                      • Selecting collisions by manipulating contacts
                      • Adding polish with custom fonts
                      • Game over – wrapping it up
                      • Can you take the HEAT? The Hotshot Challenge

                      Nevin Flanagan

                      Nevin Flanagan has had an extremely varied career covering several fields, but the threads of computers, teaching, and games have trailed through it all for years. He has programmed on different levels ranging from assembly language to high-level scripting in game engines, and is credited as a contributor to the World of Warcraft user interface. He is currently fascinated by the interface possibilities offered by mobile touchscreen devices and is completing a Master's degree in Interactive Media and Game Development at Worcester Polytechnic Institute in Massachusetts. He lives with his wife Jenna in Leominster, Massachusetts, in the U.S.A.

                      Code Downloads

                      Download the code and support files for this book.


                      Submit Errata

                      Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


                      Errata

                      - 4 submitted: last submission 24 Oct 2013

                      Errata type: Typo|Page number: 18

                      "local x, y = 0, display.contentHeight, "

                      should be:

                      "local x, y = 0, display.contentHeight"

                       

                      Due to erroneous comma at end of line, x and y get nil value.

                      Errata type: Code Related|Page number: 47

                      In chapter 2 one has to use
                      system.pathForFile("levels/default.txt")
                      instead of just "levels/default.txt" to be able to find the file in the simulator (on Os X).

                       


                      The code project files do not contain this error.

                      Errata type: Code Related|Page number: 35

                      The following line should be added at the end of the "Getting Ready" section in order to run example code, BatSwat, version 1-4, in Chapter 1:

                      "Then, link this module to bat.lua by adding a line to the beginning of that file that reads, local explosion = require "explosion"."

                      The code bundle is updated on 17 June, 2013.

                      Errata Type: Typo|Page Number:13

                      The arrows in the second diagram are pointing the wrong direction.The arrows in the second diagram should be reversed.

                       

                      Sample chapters

                      You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                      Frequently bought together

                      Corona SDK Hotshot +    IBM WebSphere Application Server v7.0 Security =
                      50% Off
                      the second eBook
                      Price for both: $43.05

                      Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                      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

                      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!

                      Approach

                      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 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.

                      Code Download and Errata
                      Packt Anytime, Anywhere
                      Register Books
                      Print Upgrades
                      eBook Downloads
                      Video Support
                      Contact Us
                      Awards Voting Nominations Previous Winners
                      Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                      Resources
                      Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software