This course has been especially designed to take your complete beginner or intermediate level skills in Stencyl and build them up to the level required of a professional indie mobile game developer. Where as the foundation course (Create your First Computer Game with Stencyl), teaches you many important skills, concepts, and techniques necessary to implement core gameplay, utilize sound, and implement some basic AI, this course will teach you how to Create a complete, professional grade computer game which can be published on all the most popular platforms -- Google Play, IOS, Windows, Linux, Mac, Flash etc.
From start to finish, you will develop a complete, playable game including all the advanced features and polish you would expect, such as:
We also cover less technical -- but none the less essential -- subjects such as marketing, design theory, game monetization paradigms and various other business and design tips and tricks for game development . After the core game has been developed, the course leads into sections on what it takes to publish it to the various Stencyl supported platforms (Desura, Steam, Google Play, Samsung Apps, IndieCity etc), including platform specific details such as certificates, marketplace restrictions, monetization methodologies etc.
In short, when you've finished this course, you will have learned everything you need to know to start developing, publishing and monetizing professional quality desktop and mobile games with Stencyl. So let's get started!
Hello and welcome to this "Advanced Computer Game Development and Design with Stencyl" course! Here I give you a birds-eye view of some of the specific learning objectives which will be reached on this course. Follow along closely to get a sense of what you'll be achieving with your new-found game development, design and programming skill-set.
All video lectures on the Udemy platform have the same based structure and layout. In this lesson we'll familiarise ourselves with this layout, including the different features which we will be utilising throughout the duration of this advanced course.
This is more of a broad-stroke lecture. We take a look at some of the game engines and content creation software programs which are in use today by computer game developers, most pointedly indie developers. A short discussion of the relative strengths and weaknesses of each software package follows, including an explanation of key aspects such as licensing & publishing options, feature set and other pragmatic considerations.
As well as outlining the many wonderful features of the Stencyl toolset and engine, we draw contrasts between Stencyl 2.x and Stencyl 3.x (and beyond), highlighting the major changes and improvements which you have come into effect since the release of version 3. Among the most notable highlights is the introduction of a unified, cross-platform engine.
In part 2, we continue your discussion of what distinguishes Stencyl 3.x from it's predecessors, and how these feature changes and improvements benefit you directly, as a game developer.
Making games can be almost as fun and endogenously rewarding as playing them, perhaps even more so. But most of us want more than emotional or intellectual rewards from our game design endevours. We want to know how to make money from them. This lecture outlines the most common monetisation models employed in the games industry today, including a breakdown of the pros and cons of each approach.
Marketing is essential if everyone is going to find out about your new games. For the next two lectures, we'll take a look at the concept as a whole, and some of the methods which can be used.
Part two. Here we'll continue our discussion of game marketing techniques and how we can utilise them to get the word out to our target audience.
You can, of course, complete this course using the free version of Stencyl (called 'Starter'). However, if you plan on publishing your creations to Mobile or Desktop, you will need to consider the licensing options available, then decide which one suits you best.
In this lecture we'll take our time going over all the various elements and core features of the Stencyl tool. Take time to absorb the points made in the lesson. Get a feel for the layout of t he software by mimicking my examination of the tool in your own copy of Stenyl. Then proceed on to part 2.
Part 2. Going deeper into our study of the Stencyl environment, we take a look at core concepts such as the relationship between actor behaviours, actor types, scenes & scene behaviours. We also take a look under the hood at what is happening when we click blocks together in the visual programming system. Events, conditional logic and rudementary debugging techniques are also explored.
Part 3. Let's round up our examination of the Stencyl interface, along with it's various tools.
In this lecture, we take a look at the study of play in the broader context of human society and culture. Why do we play? What purpose does it serve? How common, how widespread is it? We'll examine such questions and more in this lesson.
In this lecture we'll take a look at the ludological definition of what constitutes a 'game'. In addition to that, we'll examine the core components of all games, and the main differences between the classical model of games, which is largely abstract, and the more modern emergence of digital games with their additional narrative and fictional elements.
This lesson explains clearly how to download, extract & utilise the game data folder which we'll be working with from this point forward as we begin work on our game project. Please find .Zip files attached to this lesson as downloadable, supplementary material.
It's almost time to start building our game! First, let's take this opportunity to analyse the game concept, including mechanical and thematic elements. We also discuss design requirements for this project, how they have informed the design process, and influenced the development of the game idea.
There has been a minor change to the Stencyl interface respecting the method we use to add backgrounds to our scenes, this video explains it in detail.
The next 3 lessons will be dedicated to all of the essential steps we must take in the early stages of our game project.
Setting up the Game Project Part 2. A continuation of the previous lesson.
Setting up the game project part 3. Let's keep that momentum with our preparatory steps.
Now we can finalish setting up our tilesets, sculpting levels, and performing various other necessary preparatory actions.
We'll begin adding more actors, some of which will be visual embelishments only, and others of which will have a mechanical function in the game.
More Actors: Simple & Complex Pt. 2. A continuation of the previous lesson.
Now we reach the point in our project where we must begin populating our level with actors to add function and aesthetic interest!
Let's start adding behaviours to our game. We'll begin by configuring the basic movement pattern for the air balloon as it trails ahead of us down the mountain.
In the last lesson, we used a predefined behaviour from the library, and configured it to achieving the basic movement pattern we wanted for the air balloon. But you will have noticed that it's very stiff. We need to loosen it up a bit by introducing localised movement/rotation. We are going to write our own custom behaviour to do this, using tweens, a boolean variable, a timed event, a custom event and some if statements.
Let's start programming some basic player interactivity! After all, it wouldn't be much of a game without that. Be prepare to go deep in these next few lessons, we're dealing with some advanced concepts and for some of you, the learning curve may feel a bit steep at first. But stick it out, and you will get there. Includes sections and creating and effectively utilising custom blocks & events.
The Player Handler part 2. In this lesson we'll elaborate on the code we've behaviours we've already begun for the avatar and player input.
Continuing with the programming of your conditional logic for user interactions, let's bring in the adaptive cursor and do preliminary implementation.
In these next 3 lessons we build the bulk of the state management code for the player avatar. It will involve extensive use of conditional logic (if statements), complex conditions and comparison blocks (greater than, less than, equal to, dual conditions), and coordinate based mathematical operations. Prepare to learn a lot here.
State management and movement controls part 2. Let's keep that momentum going, don't give up yet!
State management and movement controls part 3. Let's finalise this triad of lessons by polishing everything off and getting the movement controls functional.
Some bug squashing and iterative design. We'll be refining the rudimentary control system we've already put in place, moving toward the end goal of having a smooth, enjoyable and bug free player experience.
When using a game engine and tool-set to develop your games, a plane reality of life for you as a game developer is that occasional bugs will crop up from build to build. Usually, these get fixed very quickly by the develops, and all you need to do is download and install the latest build of the software. This is one of those occassions.
In creating the Cursor Handler behaviour, we will learn a very important skill -- that of sharing attribute references between actors and actor behaviours. Once you've learned this process, it will serve you very well in your game development career, as it a completely transferable Core OOP (Object Oriented Programming) concept.
Cursor Handler Pt. 2. A continuation of the previous lesson.
Some more debugging. This time, we need to figure out why conditional logic we've written to handle the cursor states isn't doing what it's supposed to. Prepare to do some sleuthing.
We've been experiencing some ostensibly arbitrary acceleration behaviours. This is a bug. Let's chase it down and find a way to eliminate it from our game project.
Now that the Player Handler is functioning as expected, it's time to expand out the core functionality, specifically in relation to how the player interacts with the objects around him. Lets further develop and refine obstacle interactions.
In this exercise, you must attempt to modify the Camera Follow prefab behaviour so that it keeps the player actor offset towards the top of the screen. Please attempt it yourself first, as you will benefit greatly from the problem solving experience. The solution is availble in the next lesson, when you're ready to progress.
This lesson demonstrates one method of solving the problem in the presented in the last lecture.
It's time to spend a little time properly configuring our collision groups so that they reinforce the intended game mechanics for our game project.
Now lets start reacting to collision events by performing certain necessary mechanical actions when they trigger.
Now that we have the functional element of collision more or less implemented, what about aesthetics. Let's start adding in some eye candy to enhance the holistic player experience.
Now, let's learn how we can use the same dust plume actor in a different context to create another aesthetic embellishment in the game.
In this exercise, you mean attempt to extend the logic we began building in the previous lesson, involving the dust plum from the back of the player avatar. Try to figure out a solution to the problem by yourself, and when you're ready, the solution is waiting in the next lesson.
The solution to the problem post in the last exercise. Reminder: please don't watch this lecture until you've at least attempted the exercise yourself first.
Another small bug to squash.
Collecting coins is a game mechanic as old as the hills (and the giant mushrooms & oversized pipes). Let's implement it in our game.
Let's add some GUI elements for score handling and player enjoyment.
In the last lesson, we took our first steps toward creating our first professional standard HUD Element. In this lesson, we'll improve on it through a little programmatic animation.
In this lesson, we'll start getting ready to upload our game APK to Google Play.
In this lesson, I'll show you the basic process of configuring and creating a keystore, or certificate, for your android game.
In this lesson, I'll show you how to build your APK file to then go and upload it to the Google Play store (requires a Stencyl Studio license).
In this lesson, I'll show you how to upload the APK file for your game to the Google Play store (requires a Stencyl Studio license).
In this bonus lesson, we'll see how you can create social links, or buttons, within your game, which will take players to your social pages of choice once clicked.
In this lesson, we'll take the initial steps necessary to implement ads in your mobile games - namely, signing up to admob, and copying the key codes over to Stencyl.
In this lesson, we'll learn exactly what blocks to use in order to display Admob ads in our Android games, and start earning money!
In this lesson, I'll show you an effective and easy way of creating in-app purchases for Android games on the Google Play store.
In this lesson, we'll learn how Stencyl handles the saving and loading of games between sessions, and how to do it ourselves using blocks and game attributes.
Richard Sneyd (1st Class B.A Hons.) is founder and CEO of CyberMyth Games, and administrator of CMG Academy, the no. 1 source of professional quality online training for digital art, development and design courses. In the performance of his duties within the company, he must wear many hats, including that of a programmer, designer, digital 2D & 3D artist, sound designer, scriptwriter, texture artist, leader, marketer and business man.
He is also a fully registered, qualified, and highly experienced lecturer. His speciality subjects include 3D Modelling & Animation, Computer Game Programming, 2D Image Processing, Game Design, Desktop Audio, Psychology, Consumer Behavior, Human Resources & Business Management.
Richard is enthusiastic about his work, with students and colleagues noting that he is a highly dedicated and accomplished teacher. All of his courses are characterized by a steady, incremental flow of information, and a lucid teaching style which is easy to understand and follow for all.