Table of Contents

If you are new to game engines and programming you've come to the right place! We have prepared a series of tutorials to introduce you to everything you'll need to start making your own games.

These lectures are designed to be followed in order and they'll provide step-by-step instructions to build simple projects for you to get familiar with the tools and concepts you'll need later.

So, without further ado, let's get started!

Basics

Every information a user needs to know before starting any tutorial. This section covers how to get a project started, basic UI overview and vocabulary

Zilch Launcher

Downloading the Engine, Launcher Interface, Builds, Creating New Project

Editor UI

Windows Overview, Menu Bar, Commands, Save Project


Beginner I

All tutorial pages covered here are aimed to users with no prior Game Engine or Programming experience and they do not include any scripting

Game Objects

Creating Game Objects, Changing Properties

Basic Components

Box / Sphere Collider, RigidBody, Sprite, SpriteText

Physics Effects

Gravity, Drag, IgnoreSpaceEffects, LevelSettings, Region, Force, Buoyancy, Wind

Physics Materials

Physics Materials, MassOverride, Friction, Restitution

Audio I

Importing Sound, Sound Cues, Sound Emitter, Simple Sound, Sound Listener, Attenuators

Hierarchies I

Parenting, Local vs World, Move / Rotate / Scale Hierarchies, Non-Uniform Scale

Archetypes I

Creating, Uploading, Instantiating, Reverting


Beginner II

*These tutorials target users with no prior programming experience. Tutorials in this section focus on covering scripting basics and are of very low complexity. *

Custom Components

NadaScript, Component Class, Initialize, Update, Scope

Variables

Variable Types, Assignment, Acessing Owner Component Variables, Class Variables, Local Variables, Property Attribute

Console Printing

Console Window, Console.WriteLine, Printing Strings, Printing Variables, Basic Debugging

Conditionals

if, else if, else, ==, <, >, <=, >=, ||, &&, !, !=

Functions

Parameters, Return Types, Calling functions on other components

Keyboard Input

Querying Keyboard State, Dynamic Character Controller

Loops

while, for, Infinite Loops, Nested Loops, Loop Control Statements

CogPath

CogPath Property, Accessing components on other objects

Random Context

RNGs, Dice Rolls, Seeding, Random Distribution, % operator

Archetypes II

Spawning Archetypes, Accessing new object properties


Beginner III

Tutorials in this section are aimed at users with limited scripting experience and focus on covering on how to build simple 2D games in Zilch

Events I

LogicUpdate, CollisionEvents, Destruction Events

Events II

Custom Events, Dispatching, Sends, Custom Event Data

Actions

Property, Delay, Call, Sequence, Group, and Looped Actions

2D Rotations

Rotation Basics, Transform.EulerAngles, Math.ToRadians, Simple 2D Vector Math

Levels

Creating New Levels, Reload Level, Load Level, Set as Starting Level

Spaces

Creating New Space, Basic HUD, Clear Color

Collision Groups

CollisionGroups, CollisionTables, CollisionGroup Relationships

Audio II

Sound Emitter Methods, Sound Space, Sound Instances, Sound Tags

TimeSpace

TimeScale, Pause

Sprite Particles

Particle Emitter, Particle Animator, Particle Color Animator, Particle Attractor


Beginner IV

Tutorials in this section are aimed at users with some scripting experience and focus on covering remaining core topics for building a 2D game in Zilch

Zilch Market

Store Interface, Download Packages, Importing Into Project

Swept Character

Character Controller Explanation, Kinematic vs Dynamic, Swept Controller Usage

Gamepad

Detecting Gamepad, Gamepad Input, Deadzone, Rumble

sprite_animations

Importing sprite sheets and generating animations

Tile Editor I

Tile sheet importing, the draw tool, the select tool

Tile Editor II

Tile palettes, tile collision, tile archetypes

Mouse Input

Mouse Events, Screen to World

Custom Cursor

Creating a custom cursor for your game

DebugDraw

DebugLine, DebugCircle

Zilch's UI system, Title Screen, Main Menu, Credits, Quit handling

Arrays

Arrays, Array Methods, Element Iteration

Raycasting

Ray Basics, CastRayFirst, CastResult, CastFilter

Hierarchies II

Parent & Child, Attach & Detach, Hierarchy Events