START 3D RPG Playground

Create a 3D RPG in this ORK 3 tutorial series.

About this Tutorial Series #

This tutorial series will go through setting up an RPG based on the status system setup tutorial series and will cover a wide range of topics: battles, menus, quests, crafting, etc.

The game will use Turn Based or Active Time battles – or both, if you want. It features a large world scene with 2 towns and many fights in between, as well as a dungeon with 5 levels you can access from the world.

There are several sub-series handling certain aspects of the setup with their own tutorial number count:

  • ANIM
    Covers animating battles (starts here).
  • BATTLE
    Covers battle setup independent from the used battle system (starts here).
  • TURN
    Covers setting up the Turn Based battle system (starts here).
  • ATB
    Covers setting up the Active Time battle system (starts here).
  • MENU
    Covers setting up the menu screens (starts here).
  • DUNGEON
    Covers setting up the dungeon (starts here).
  • QUEST
    Covers setting up quests (starts here).
  • CRAFT
    Covers setting up a crafting system (starts here).

The sub-series are sprinkled in-between the overall tutorial numbers and can also continue at a later time. It’s recommended to follow the tutorials as they are listed – also, each tutorial links to the next one at the end.

This tutorial series is still ongoing and not yet complete.

Download the Tutorial Assets #

The assets provided for this tutorial series are not for commercial use.

You can download the tutorial assets here:

Download Tutorial Assets Pack (~60 MB)

Please note!

This package requires using at least Unity 2020.3.

It’s recommended to use LTS (long term support) versions.

You’ll probably get a couple of import warnings for some of the FBX models of the package, you can ignore them.

Special Thanks #

I’d like to thank Jean Moreno (JMO) for letting me use some of his Cartoon FX particle effects in this tutorial. The used particle effects are coming from the Cartoon FX Free, Cartoon FX Remaster and Cartoon FX 2 Remaster assets.
Remember, the tutorial assets are not for commercial use, if you want to use JMO’s effects, please purchase them in the Unity Asset Store.

Another special thanks to Quaternius, who provides a large range of free 3D assets under the CC0 license. If you like Quaternius’ work, consider joining their Patreon to support them!

Completed Unity Project #

You can download the completed tutorial project (up to the currently last tutorial: 15 Changing Choice Dialogue):

Download Completed Tutorial Project (~65MB)

This is a Unity 2020.3 project, extract the content of the zip-file and open the project in Unity.

The project’s Library folder has been removed to keep the size small – upon opening the project Unity will reimport all assets, so this will take a while.

The project starts with the Turn Based battle system in use. Navigate to Battles > Battle System > General Settings and change the Default Battle System to Active Time to use the active time battle system.

Missing Script References #

If you run into missing script reference warnings or don’t see any UI when playing, reimport the following folders (in that order):

  • Assets/Gaming Is Love/Makinom 2/
  • Assets/Tutorial Assets/_Created/

That should solve missing script references on the UI prefabs.

Detailed Setup Guide #

Here’s a detailed guide to setting up the completed project in Unity and reimporting the folders to avoid missing UI scripts:

  1. Download the completed Unity project (zip-file)
  2. Unzip the file
  3. Add the project to your Unity HUB
  4. Open the project with at least Unity 2020.3
  5. Right-click on the folder Assets/Gaming Is Love/Makinom 2/ in the project view tab and select Reimport
  6. Right-click on the folder Assets/Tutorial Assets/_Created/ in the project view tab and select Reimport
  7. Open the Start Menu scene (Assets/Scenes/)
  8. Hit play

First Steps #

Before getting started with the actual 3D RPG playground tutorials, we’ll have to do some basic setup in the Unity project.

  1. Create a new Unity project
    Use Unity 2020.3 or newer.
  2. Set up layer
    The tutorial assets require layer 10 to be set up (see below for details).
  3. Import ORK Framework (including Makinom)
    Import ORK Framework and Makinom’s complete package (DLL files, gizmo icons).
  4. Import the tutorial assets
    Import the 3D RPG playground tutorial assets package.
  5. Add Scenes to Build Settings
    Add the tutorial scenes to Unity’s Build Settings (see below for details).
  6. Follow the Status System Setup
    This tutorial is based on the status system setup tutorial series.
    Either follow the series to set up the status system, or download the completed setup and import it into your project.
    You can also use a different status system setup if you want – just keep in mind to make the needed changes in the setup based on your system (e.g. using different items or equipment).
  7. Initial Unity UI setup
    Follow the initial setup tutorial for the Untiy UI module (see below for details).

You should now have a set up Unity project with ORK/Makinom, the tutorial assets, Unity UI module setup (including TextMesh Pro) and the ready-to-use status system setup.

Layer Setup #

First, after creating the new Unity project, we’ll set up a new layer that’ll be used by the tutorial assets.

Open Unity’s layer settings, either via the Layers popup in the upper right corner:

Or via the Unity menu: Edit > Project Settings… > Tags and Layers

Change the following layer.

  • User Layer 10
    Set to Combatants.

As the name suggests, this is the layer the prefabs of our combatants, but also their equipment, will be placed on. The tutorial assets are already set up that way.

Why? It’s generally a good idea to have things on different layers, e.g. for this tutorial, the ground (and other scene assets) are on the Default layer and the combatants on layer 10 (Combatants). This makes it easy to use raycasting for positions on the ground without being blocked by combatants.

Adding Scenes to Build Settings #

For being able to load scenes in a running game, they have to be added to Unity’s build settings. After importing the tutorial assets, we’ll add the scenes that where included in the package.

Open the build settings using the Unity menu: File > Build Settings…

Add the following scenes to the Scenes In Build:

  • Assets/Scenes/Start Menu
  • Assets/Scenes/World
  • Assets/Scenes/Forest Battle Arena
  • Assets/Scenes/Swamp Battle Arena
  • Assets/Scenes/Dungeon/Dungeon Level 1
  • Assets/Scenes/Dungeon/Dungeon Level 2
  • Assets/Scenes/Dungeon/Dungeon Level 3
  • Assets/Scenes/Dungeon/Dungeon Level 4
  • Assets/Scenes/Dungeon/Dungeon Level 5
  • Assets/Scenes/Dungeon/Dungeon Battle Arena

You can delete the SampleScene that is included in each new Unity project. It’s located in Assets/Scenes/.

Initial Unity UI Setup #

Follow the initial setup tutorial for the Unity UI module, this includes:

  • changing your project’s UI System Type to the Unity UI module
  • setting up TextMesh Pro
  • setting up the UI Environment scene (for prefab editing)
  • creating a first UI box prefab
  • creating default input prefabs

You can also download the UI asset package provided in the initial setup tutorial and use them in your project setup instead of setting up the prefabs. You still need to set up TextMesh Pro and the UI Environment scene.

 

And with that, it’s time to start with the setup – we’ll start with setting up the player to get out into the world.