Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Gamification with Unity 5.x
Gamification with Unity 5.x
Gamification with Unity 5.x
Ebook605 pages3 hours

Gamification with Unity 5.x

Rating: 0 out of 5 stars

()

Read preview

About this ebook

If you are a project manager, game developer, or programmer who wants to create successful end-to-end gamification projects from scratch, then this is the book for you. You do not need any previous experience of working with Unity 5.X. All the details required to make the most of gamifying your projects are provided in the book.
LanguageEnglish
Release dateNov 28, 2016
ISBN9781786462244
Gamification with Unity 5.x

Related to Gamification with Unity 5.x

Related ebooks

Programming For You

View More

Related articles

Reviews for Gamification with Unity 5.x

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Gamification with Unity 5.x - Lauren S. Ferro

    Table of Contents

    Gamification with Unity 5.x

    Credits

    About the Author

    About the Reviewer

    www.PacktPub.com

    Why subscribe?

    Preface

    What this book covers

    What you need for this book

    Who this book is for

    Conventions

    Reader feedback

    Customer support

    Downloading the example code

    Downloading the color images of this book

    Errata

    Piracy

    Questions

    1. The Anatomy of Games

    Not just pixels and programming

    Finding your preferred type

    Playing to learn

    Minecraft

    Kerbal Space Program

    Sid Meier's Civilization

    Stop kidding around, be serious!

    America's Army

    Foldit

    Moonbase Alpha

    Keeping it real with simulations

    Virtual Heroes

    SimCity

    From Dust

    Gamify all things with gamification

    Language learning with DuoLingo

    Game elements and mechanics

    Becoming a better human with Habitica (HabitRPG)

    Game elements and mechanics

    Shop till you drop with AliExpress (mobile application)

    Game elements and mechanics

    What is game design?

    Conjuring the elements

    Getting elemental

    Getting mechanical

    Difference between gameplay and game mechanics

    Competency and complacency; where do we draw the line?

    Examples of feedback and reinforcement

    The internal flame for doing...anything

    Read this and you'll get candies

    A little bit of conditioning to control user behavior

    Classical conditioning

    Operant conditioning

    Avoid spoiling the player

    Summary

    2. Who or What Am I? Understanding the Player

    The players - who are they and where do they come from?

    Getting contextual

    Who is our application targeting?

    The user

    The amount of dedication

    Defining the role of your player

    Deciding on what you want your users to achieve

    Getting the player to achieve it

    Engaging the player

    Getting loopy about engagement

    Engagement loops

    Progression loops

    Creating a user profile system in Unity

    Setting up the Unity project

    Getting personal with some profile information

    Showing off that beautiful smile

    Summary

    3. An Engaged Player is a Happy Player

    Keeping 'em engaged

    How am I doing?

    Keeping it visual

    What's that noise?

    Someone call a doctor!

    Circular health bar

    Lives counter

    On point!

    You've come this far, keep going

    Making progress

    Showing off how awesome you are

    Badges, badges, badges

    Achievement unlocked!

    Implementing an achievement system

    Example of usage

    Taking in the view with dashboards

    There is no I in team

    Adding an element of fun to agile frameworks

    Summary

    4. Organized Chaos - Getting Ideas Out of Your Head and on to Paper

    Brainstorming - getting it all out on the table

    Tools and methods for getting ideas out and organizing thoughts

    Start pinning with Pinterest

    Starting with a fresh slate

    Never forget with Evernote

    Brainstorming activities

    Spinning the wheel of randomness

    Getting in and among it

    Game on with Gamicards

    The great exchange

    Getting moody with mood boards

    Creating the ideal ideation sessions

    Implementing a brainstorming tool in Unity to shuffle ideas

    Making a new friend with editor scripts

    Creating an editor script

    Opening a new editor window

    Drawing something inside our editor window

    Adding a scrollable text area

    Inserting a button and implementing the shuffle function

    Showing the extracted idea

    Testing our brainstorming tool

    Summary

    5. Sculpting the Conceptual Beast

    Creating a Game Design Document

    Google Drive

    Word (and Microsoft Office)

    InDesign

    Creating a prototype - what you'll need

    Gathering your humans

    Having a plan!

    Setting a date

    Scoping it out

    Keeping it short and to the point

    What's your poison?

    Getting your jam on!

    Failing is an option

    Touching base

    Methods of prototyping

    Paper prototyping

    Rapid prototyping

    Tools for prototyping in Unity

    Placeholder sprites

    Composing figures

    Arrow

    Star

    Assets mock-up

    Substituting the temporary assets

    Using labels

    Gizmos

    Getting basic core concepts into Unity

    Quick navigation

    Revisiting the prototype

    Testing with the closest people

    Testing with external people

    How to test

    Revisiting your prototype and iterating

    Summary

    6. Breathing Life into Your First Creation - Creating and Importing Assets for Your Application

    Designing the application

    Creating the game elements

    Adobe Illustrator

    Vector graphics

    An introduction to Illustrator

    Creating badges in Illustrator

    Getting all rounded

    Using the Shape tool

    Using the effect

    Showing the best of you with badges

    Aiming above the bar

    Putting it all together with sprite sheets

    Importing and setting our assets in Unity

    Importing assets

    Import Settings

    The Sprite Editor

    Testing our settings

    Testing the packing tag

    Testing the dimensions of the sprites

    Summary

    7. Get Your Motor Running

    Designing our application

    Getting started

    Creating the application interface

    The lateral menu

    The interface

    Opening and closing the menu

    Adding items to the menu

    The Home page

    The Tasks page

    Navigating through the different screens

    Defining tasks

    Object-oriented

    The Task class

    Dealing with tasks

    A prefab as Task panel

    The Task manager

    Allowing the user to create new Tasks

    Create Task button

    Delete task button

    Adding the icon

    Inserting the title

    Inserting the Due date

    Selecting the Task priority

    Setting up the Tasks page

    Summary

    8. Break, Destroy, and Rebuild - the Art of Playtesting and Iteration

    Playtesting

    Methods of playtesting

    Going solo

    Group testing

    Open or controlled

    Getting the info - have a plan!

    Recruiting the chosen ones!

    People you know

    People you don't know

    The people who you are targeting

    Setting up the play-date for playtesting

    A little goes a long way

    Getting everyone on the same page

    Play time!

    Methods of playtesting - game time!

    Observing how testers are playing

    Asking the right questions

    During the playtest

    After the game

    Asking them to explain the game to you

    Keeping it balanced with rules

    Interacting and the interface

    Post-mortem - evaluating the playtest

    Reflecting at the end of it all

    Iteration

    The iteration cycle

    When to stop?

    Data persistence in our application

    PlayerPrefs in Unity

    The Set function

    The Get function

    Erasing an entry

    Erasing all the data

    Saving local data in a custom file

    Using a database

    Connecting our application to a database

    Why are databases important for playtesting?

    Services for databases

    Playfab in Unity

    Downloading the SDK from the website

    Importing and setting the SDK in Unity for databases

    Creating a login system for your users

    Exchanging data

    Summary

    9. Graduating Your Project to Completion

    Finishing the application

    Optimizing the project for a mobile platform

    Processing the power

    For 2D games

    For 3D games

    Other considerations

    Test, test, and test again

    Don't have access to many devices? Not a problem

    Getting it ready to publish

    Don't be modest, promote your game!

    Sharing is caring

    Facebook

    Twitter

    LinkedIn

    Instagram

    Snapchat and Vine

    YouTube

    Blogs and websites

    Documenting the process

    Describing updates

    MailChimp

    Paying attention to statistics

    Engaging with your audience

    Rewarding engagement

    It's a hoot! Managing social networks

    Remembering time zones

    Tag! You're it

    Getting commercial

    Terms, conditions, policies, and agreements

    The publishing checklist

    Now it's time to press the Build button

    Where do I begin?

    Short-term

    Long-term

    Towards new horizons

    Summary

    10. Being the Best That You Can Be!

    Getting your game on without overdoing it

    Understand what gamification is and what it is not

    Kids see through chocolate covered broccoli, and so do adults

    Using gamification in moderation

    Getting tangential

    Be prepared to fail

    Test it!

    The iterative cycle

    Backup...everywhere

    Teamwork...play nice

    New and future directions

    Uses within education

    Homework management

    Who wants to be a knowledge-aire?

    Hide and seek

    The ultimate race

    Uses within business

    Uses within personal life

    Improving your skills once you have finished this book

    Become a researcher

    Make design a daily habit

    Redesigning your favorite games as board games

    Never. Stop. Learning

    Play to win and play to explore

    Read game guides

    Participate, compete, and get together

    Summary

    Gamification with Unity 5.x


    Gamification with Unity 5.x

    Copyright © 2016 Packt Publishing

    All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

    Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

    Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

    First published: November 2016

    Production reference: 1231116

    Published by Packt Publishing Ltd.

    Livery Place

    35 Livery Street

    Birmingham 

    B3 2PB, UK.

    ISBN 978-1-78646-348-7

    www.packtpub.com

    Credits

    About the Author

    Lauren S. Ferro is a gamification consultant and designer of game and game-like applications. She has worked, designed, consulted, and implemented strategies for a range of different purposes, including professional development, recommendation systems, and educational games. She is an active researcher in the area of gamification, player profiling, and user-centered game design. Lauren runs workshops both for the general public and companies that focus on designing user-centered games and game-like applications. She is also the creator of a game design resource, Gamicards, which is a prototyping tool for both games and game-like experiences, which is centered on player’s preferences for game elements and mechanics.

    She is passionate about the future of games and the technologies surrounding them, as well as their potential to improve the lives people.

    When she is not playing or creating games, you can find her flying kites, creating music, or whipping up a storm in the kitchen.

    Whether directly or indirectly, it takes a combined effort to create something wonderful. For this reason, I would like to thank the following for their contributions towards the development and completion of this book: Packt Publishing and everyone involved in publication of this book. Thank you for providing me with the opportunity to write about gamification. It has been a fantastic journey and I have enjoyed being a part of the community. In particular, I would like to thank Sachin Karnani for his help through the development of this book. Your comments, suggestions, and edits through each stage have helped to make this book great. The reviewers who have taken the time to read this book and provide suggestions and feedback to improve it for the future readers. Francesco Sapio, for his help and support throughout the process of writing this book. His knowledge, experience and expertise has been more than valuable. My parents, who have done everything to support me and for always believing in me. Thank you for being my inspiration and motivation in life, and the reason that I entered into the world of games. Lastly, to you, the reader. Thank you for entering the world of gaming, and allowing me the opportunity to provide you with information and resources that will take you on many adventures in creating your own gaming experiences. Don’t just be a gamer, be a game changer.

    About the Reviewer

    Charles Palmer is a faculty member and administrator at Harrisburg University of Science and Technology, a STEM-focused, private, four-year comprehensive university dedicated to ensuring institutional access for underrepresented students and linking learning and research to practical outcomes.

    As the Executive Director of the Center for Advanced Entertainment and Learning Technologies, Professor Palmer oversees the design and development of ventures in new and emerging technologies, serves as Program Lead for the undergraduate Interactive Media program, is an adviser to the Learning Technology Masters of Science program, coordinates a high school video game academy, and mentors university students on research projects in the fields of augmented/virtual reality, mobile computing, web application development, digital media, and interactive games.

    As a technologist and public speaker, Charles uses virtual reality, 3D printing, gamification, interactive storytelling, social media, and simulations to discuss how training and performance can be improved with the inclusion of the latest technological advances.

    Professor Palmer is also a co-author of the recently released Alternate Reality Games: Gamification for Performance, available from CRC Press and Amazon.

    www.PacktPub.com

    For support files and downloads related to your book, please visit www.PacktPub.com.

    Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at service@packtpub.com for more details.

    At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

    https://www.packtpub.com/mapt

    Get the most in-demand software skills with Mapt. Mapt gives you full access to all Packt books and video courses, as well as industry-leading tools to help you plan your personal development and advance your career.

    Why subscribe?

    Fully searchable across every book published by Packt

    Copy and paste, print, and bookmark content

    On demand and accessible via a web browser

    Preface

    As you can guess from the title of the book, this book is designed to teach you about implementing gamification into Unity. However, this isn’t any ordinary how-to guide. It will give you not only a strong theoretical foundation of what gamification is, but also how it can be implemented to achieve different results. It discusses motivation, reward schedules, feedback loops, and how these all impact the end user. In addition, this book will also guide you through the process of game development from concept to implementation, including testing, iterating, marketing, and finally publishing.

    What this book covers

    Chapter 1, The Anatomy of Games, explains the different components of gameplay and their functionalities. We will explore what games are made up of–the atoms of gaming experiences and how they are used.

    Chapter 2, Who or What am I? - Understanding the Player, tells the readers that in designing and developing a gamified application, it's very important to study and understand the audience, and how they behave as players. Therefore, in this chapter, the reader will be provided with different tools to specifically engage his target audience. More importantly, the readers will learn how to understand and to design these specific tools inside Unity.

    Chapter 3, An Engaged Player is a Happy Player, will discuss ways to provide feedback and reinforcement as well as tracking the progress of the player during their engagement with the application. In addition, it will describe ways to actively engage players throughout the experience.

    Chapter 4, An Organized Chaos - Getting Ideas Out of Your Head and on to Paper, will explain how to design a gamified application before starting to create a final version. The reader will learn different and specific techniques for process of creating gamified applications in different contexts, allowing the reader to have more tools to face the challenge. Furthermore, it is also shown how it is possible to use Unity during the process to help the reader to create helpful tools in Unity to generate new ideas.

    Chapter 5, Sculpting the Conceptual Beast, shows that having a hard copy of the application the reader has in mind can avoid many restructuring and recording later. Therefore, this chapter introduces a series of tools to the reader for creating a physical prototype of the application. At this stage, the reader will get an idea of how to test it with its target audience to avoid wasting time and programming resources later on in the process. This will also extend what the reader has done in previous chapters, but add more functionality.

    Chapter 6, Breathing Life to Your First Creation: Creating and Importing Assets for Your Application!, will show the reader how to gather all the concepts from the previous chapter and get them working together inside Unity. By the end of this chapter the reader will have acquired the right skills to implement all of them inside Unity.

    Chapter 7, Get Your Motor Running, will explain to the reader how to implement various game elements into Unity that relate to the project. This provides the basic foundation and practical skills that the reader will need later on when developing the project. Each game element will be provided with a clear explanation of how to create it within Unity.

    Chapter 8, Break, Destroy, and Rebuild - The Art of Playtesting and Iteration, will reveal methods of playtesting and iteration, in order to improve the design  of their project. It will suggest ways to test, what to look for and what to pay attention to during this stage.

    Chapter 9, Graduating Your Project to Completion, will wrap up everything that we have done as part of the project. It will make sure that the project is ready to publish and that the reader has developed all the necessary skills to get it to the final stage. It will also discuss different marketing techniques and approaches to online social networking services to give a gamified application the best possible chance for success across a wide audience.

    Chapter 10, Being the Best That You Can Be!, will consider everything together that the reader has learned during the process and make recommendations some of the best practices during the design process and some of the key things to look for.

    What you need for this book

    Throughout the book we have used Unity 5.x to develop the gamified application. We have also used Adobe Illustrator to complete some of the images. However, it is possible to use any graphics creation program that you feel comfortable with using. In some instances, word processing software is required to create documents, but feel free to use whatever you prefer (for example, Microsoft Word, Adobe InDesign, Open Office). Other than that, the only requirement from you is to bring your imagination and creativity.

    Who this book is for

    If you are a project manager, game developer, or programmer who wants to create successful end-to-end gamification projects from scratch, then this is the book for you. You do not need any previous experience of working with Unity 5.X. All the details required to make the most of gamifying your projects are provided in the book.

    Conventions

    In this book, you will find a number of text styles that distinguish between different kinds of information. Here are some examples of these styles and an explanation of their meaning.

    Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: Mount the downloaded WebStorm-10*.dmg disk image file as another disk in your system.

    A block of code is set as follows:

    using UnityEngine;

    using System.Collections;

    public class BrainstormingTool : MonoBehaviour {

    New terms and important words are shown in bold. Words that you see on the screen, for example, in menus or dialog boxes, appear in the text like this: They need to be inside a folder named Editor.

    Note

    Warnings or important notes appear in a box like this.

    Tip

    Tips and tricks appear like this.

    Reader feedback

    Feedback from our readers is always welcome. Let us know what you think about this book-what you liked or disliked. Reader feedback is important for us as it helps us develop titles that you will really get the most out of. To send us general feedback, simply e-mail feedback@packtpub.com, and mention the book's title in the subject of your message. If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide at www.packtpub.com/authors.

    Customer support

    Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

    Downloading the example code

    You can download the example code files for this book from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.

    You can download the code files by following these steps:

    Log in or register to our website using your e-mail address and password.

    Hover the mouse pointer on the SUPPORT tab at the top.

    Click on Code Downloads & Errata.

    Enter the name of the book in the Search box.

    Select the book for which you're looking to download the code files.

    Choose from the drop-down menu where you purchased this book from.

    Click on Code Download.

    Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

    WinRAR / 7-Zip for Windows

    Zipeg / iZip / UnRarX for Mac

    7-Zip / PeaZip for Linux

    The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Gamification-with-Unity-5x. We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

    Downloading the color images of this book

    We also provide you with a PDF file that has color images of the screenshots/diagrams used in this book. The color images will help you better understand the changes in the output. You can download this file from https://www.packtpub.com/sites/default/files/downloads/GamificationwithUnity5x_ColorImages.pdf.

    Errata

    Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books-maybe a mistake in the text or the code-we would be grateful if you could report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please

    Enjoying the preview?
    Page 1 of 1