Gamification with Unity 5.x
()
About this ebook
Related to Gamification with Unity 5.x
Related ebooks
Corona SDK Mobile Game Development Beginner's Guide Rating: 5 out of 5 stars5/5Mastering Godot: A Comprehensive Guide to Game Development Rating: 0 out of 5 stars0 ratingsUnity 5.x Game AI Programming Cookbook Rating: 0 out of 5 stars0 ratingsNGUI for Unity Rating: 0 out of 5 stars0 ratingsSwift 3 Game Development - Second Edition Rating: 0 out of 5 stars0 ratingsPractical Svelte: Create Performant Applications with the Svelte Component Framework Rating: 0 out of 5 stars0 ratingsGame design Complete Self-Assessment Guide Rating: 0 out of 5 stars0 ratingsUnreal Development Kit Game Programming with UnrealScript Beginner's Guide Rating: 3 out of 5 stars3/5Unity from Zero to Proficiency (Beginner): Unity from Zero to Proficiency, #2 Rating: 5 out of 5 stars5/5Test Driven Development A Complete Guide - 2020 Edition Rating: 0 out of 5 stars0 ratingsMy First Webpocalypse: Beginner HTML, CSS, and Usability (Virtual Boxed Set): Undead Institute Rating: 0 out of 5 stars0 ratingsA Discipline of Software Engineering Rating: 0 out of 5 stars0 ratingsUnity 3.x Game Development Essentials: Game development with C# and Javascript Rating: 0 out of 5 stars0 ratingsGameMaker Essentials Rating: 0 out of 5 stars0 ratingsOuya Unity Game Development Rating: 0 out of 5 stars0 ratingsMicrosoft Conversational AI Platform for Developers: End-to-End Chatbot Development from Planning to Deployment Rating: 0 out of 5 stars0 ratingsBuildbox 2.x Game Development Rating: 0 out of 5 stars0 ratingsAndroid: Game Programming Rating: 0 out of 5 stars0 ratingsOriginal Games and Novel Game Variations Rating: 0 out of 5 stars0 ratingsGrome Terrain Modeling with Ogre3D, UDK, and Unity3D Rating: 0 out of 5 stars0 ratingsMastering AndEngine Game Development Rating: 0 out of 5 stars0 ratingsLearning AWS Lumberyard Game Development Rating: 0 out of 5 stars0 ratingsMastering Unity 2D Game Development - Second Edition Rating: 0 out of 5 stars0 ratingsAndroid Studio 2 Essentials - Second Edition Rating: 0 out of 5 stars0 ratingsUnity from Proficiency to Mastery (Artificial Intelligence): Unity from Proficiency to Mastery, #1 Rating: 0 out of 5 stars0 ratingsGPU-based Parallel Implementation of Swarm Intelligence Algorithms Rating: 0 out of 5 stars0 ratingsHeterogeneous System Architecture: A New Compute Platform Infrastructure Rating: 0 out of 5 stars0 ratingsGameSalad Essentials Rating: 0 out of 5 stars0 ratingsCryENGINE 3 Game Development Beginner's Guide Rating: 0 out of 5 stars0 ratingsPhaser III Game Prototyping Rating: 0 out of 5 stars0 ratings
Programming For You
Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Python QuickStart Guide: The Simplified Beginner's Guide to Python Programming Using Hands-On Projects and Real-World Applications Rating: 0 out of 5 stars0 ratingsPython: Learn Python in 24 Hours Rating: 4 out of 5 stars4/5Python Programming : How to Code Python Fast In Just 24 Hours With 7 Simple Steps Rating: 4 out of 5 stars4/5Python Machine Learning By Example Rating: 4 out of 5 stars4/5Learn SQL in 24 Hours Rating: 5 out of 5 stars5/5SQL: For Beginners: Your Guide To Easily Learn SQL Programming in 7 Days Rating: 5 out of 5 stars5/5Python: For Beginners A Crash Course Guide To Learn Python in 1 Week Rating: 4 out of 5 stars4/5Coding All-in-One For Dummies Rating: 4 out of 5 stars4/5Learn PowerShell in a Month of Lunches, Fourth Edition: Covers Windows, Linux, and macOS Rating: 0 out of 5 stars0 ratingsPYTHON: Practical Python Programming For Beginners & Experts With Hands-on Project Rating: 5 out of 5 stars5/5Excel : The Ultimate Comprehensive Step-By-Step Guide to the Basics of Excel Programming: 1 Rating: 5 out of 5 stars5/5Learn to Code. Get a Job. The Ultimate Guide to Learning and Getting Hired as a Developer. Rating: 5 out of 5 stars5/5HTML & CSS: Learn the Fundaments in 7 Days Rating: 4 out of 5 stars4/5Modern C++ for Absolute Beginners: A Friendly Introduction to C++ Programming Language and C++11 to C++20 Standards Rating: 0 out of 5 stars0 ratingsSQL All-in-One For Dummies Rating: 3 out of 5 stars3/5SQL QuickStart Guide: The Simplified Beginner's Guide to Managing, Analyzing, and Manipulating Data With SQL Rating: 4 out of 5 stars4/5C++ Learn in 24 Hours Rating: 0 out of 5 stars0 ratings
Reviews for Gamification with Unity 5.x
0 ratings0 reviews
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
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