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
Menus
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