Gameplay Programming (Winter 2022/23)


This course is oriented at gameplay programming. Something that is usually masked as mere “game programming”, which is a wrong term (coding a game engine is also a part of game programming). We will be visiting tips and tricks how to make better games by implementing various game mechanics. Done in the game engine Godot using GDScript. The course is taught at MFF UK as NCGD003.


Follow the appropriate channel at Gamedev Discord!


Lectures + Labs: Mondays, 16:30, SW2 (we start 3.10.2022)

Note that each week, we will spend approx. 90-135 minutes in total in lectures and labs (no clear distinction between those ;-).

Course Exam

The course exam will be practical! You will be given a Godot implementation task. This task will be loosely based around one of the lectures/practicals, and you might also get asked some questions about Gameplay Programming, so make sure to study the materials!

In general, you should be able to talk about the topics in this document.


No. Date Topic Content Slides
1. 3.10.2022 What is Gameplay Programming? Introduction to the field… if a bit confusing. PDF
2. 10.10.2022 Why is Godot awesome? Guest lecture on Godot and GDScript by Adam Dingle Adam’s Godot QuickRef
3 17.10.2022 Game Object Model Game object / Component-based approach to the game object model PDF
4 31.10.2022 Game Feel, Juiciness and Tweening – Part I Pondering on what game feel and juiceness is and how to maximize it (or at least color it) using tweening. PDF
5 7.11.2022 Tweening – Part II Quadratic and Cubic Bezier Curves, Hermite Curves PDF, Video
Privately shared via email. If you do not have the link, DM Jakub Gemrot on Discord
6 21.11.2022 Physics – Introduction Mechanics and Linear/Angular Dynamics, Rigid Bodies, some notes on joints PDF
7 28.11.2022 Physics – Collision Detection Broad, Mid, Narrow phases of collision detection and its algorithms PDF
8 5.12.2022 Uncertainty and Randomness From simple prob. theory to perception of randomness its role in games and human biases about it PDF


You are expected to work at home on the following stuff; some of homeworks must be formally delivered, some just serve as guidelines for you what you should try out or prepare.

Labs Schedule

No. Date Topic Content
1. 3.10.2022 Godot Intro

Play your favorite game!

Source Project


Play your favorite game about which you can say
it has an appealing game mechanics
and see them through the lens of playability
(see the lecture).
Find some section and comment technically
on how the game respond to user inputs.

Send email to: &
Email subject: GPP 2022 – Homework 1

2. 10.10.2022 Deepdive into GDScript Create your own Pong!
Pong Customization Tasks
3. 17.10.2022 First Game Customizing a Game like a Godot developer!
Source Project – RPGBase

not submitted, but further classes and exam assumes you did it
Finish all the Tasks above

4. 24.10.2022 Game with object instantiation Practicing Godot skills, especially around instantiating objects from code
Source Project – Space Shooter
5. 31.10.2022 Tweening! Start with your game from Lab 3! (if you don’t have it, get a solution here)
6. 7.11.2022 Building a Tweening library! Source Project – Tweening Demo

Finish tasks 1 through 9 and implement the Tweening scene in the Homework folder.

Send whole project by email to: &
Email subject: GPP 2022 – Homework 2

7 14.11.2022 Smooth Input Source Project – Platformer Base
TasksGamePad – Text and Tasks (self-study)
8. 21.11.2022 Slingshot Mechanic Source Project – Angry Birds Like Base
9. 28.11.2022 Ninja Rope Source Project – Platformer Base

Finish the tasks (make a working ninja-rope platformer!).
Send whole project by email to: &
Email subject: GPP 2022 – Homework 3

10. 5.12.2022 Ninja Rope assisting
11. 12.12.2022 Animation Tasks
12. 19.12.2022 3D Animation Tasks
13. 2.1.2022 Audio Tasks

Extra links

Example Job Offers

Check some old job offers from various (even well known) gamedev companies, especially check “Requirements” sections, informative 😉

Yacht Club (July, 2020), Remedy (April, 2020), Sucker Punch (January, 2020), Insomniac Games (December, 2019), Snowcastle (December, 2019), Evening Star (November, 2019)