Intro screen.

T U B E F A L L E R

PyWeek 37 “Tube”

T  U  B  E F A L L E R
Game Design Document


Introduction

The game “T  U  B  E F A L L E R” will feature an interactive 3D puzzle based on tubes of varying diameters sliding into holes of another object.

The initial gameplay may be defined as a physics simulation which requires the player to drop cylinders from a given height and at a given speed, and then rotate a receiver, located below the dropping cylinders, full of a pattern of holes offset from the initial configuration of the dropped cylinders. The player rotates the receiver such that the cylinders may fall through the holes (or “tubes”) in the receiver. The diameter of the holes relative to the cylinder diameters may be modulated based on the current level difficulty, IE smaller holes represent a higher difficulty. If the receiver rotation is too far offset from the dropping cylinders, the cylinders will bounce off the receiver, colliding with each other in a physics simulation and subsequently end that turn.

The level difficulty progression may be defined by a few separate difficulty paths. The number of cylinders dropping, the diameter of those cylinders, as well as the relative hole diameters in the receiver will inform the geometric challenge. The speed of the cylinder drop, as well as the allowed speed of the receiver rotation, will inform the reflex challenge.


Rendering

The game will make use of complexpbr and metallic materials for rendering.


Physics

The game will make use of Bullet physics for the cylinder drops and collisions.


Modeling

Blender will be used for the cylinder and receiver modeling. The make_collision_from_model() function used in other complexpbr programs will be used for automatic generation of the collision meshes from the Blender models. Bullet cylinder shapes can be used for the cylinders themselves.

Music

The music will be original electronic dub music fitting the aesthetic of the game.

github.com/rayanalysis/pyweek37-tubefaller

Awards

Give this entry an award

Scores

Ratings (show detail)

Overall: 3.1
Fun: 2.5
Production: 3.6
Innovation: 3.2

Respondents: 10

Files

File Uploader Date
tubefaller_git_release_v1_download_link.txtfinal
Binary release download from git because pyweek.org file limit is too small.
Simulan 2024/03/23 22:40
icon512.pngfinal
Tubefaller icon.
Simulan 2024/03/23 21:49
arena_screen-Sat-Mar-23-17-39-26-2024-110.jpg
Intro screen.
Simulan 2024/03/23 21:41
arena_screen-Sat-Mar-23-17-39-44-2024-1035.jpg
Near-final failure screen.
Simulan 2024/03/23 21:40
tubefaller_2_gbQPAq8.png
Initial graphics, physics
Simulan 2024/03/19 21:00

Diary Entries

First couple days

In the first stretch of "Tube" week, I wrote my initial game design doc and laid down the basic physics simulation that will power the game loop. My level environment with PBR IBL rendering is also mostly complete. I'm now focusing on possible UI elements and level structure implementations.

Add a comment

Music

I also completed the first music track of the game, which I must say, does slap sufficiently.

Add a comment

Technical Update

I implemented a rubber banding effect on the main perspective cam to alleviate some of the apparent frame lag due to the physics update and the very large level area. In theory, this is also frame rate aware, which is important for keeping the instantaneous camera position rational. Still have left the UI to languish on the side, but I'll definitely do something with that either before or after building a couple more levels for the release.

Add a comment

Last day update

I left the packaging and a few procedural level details to the last minute on this project, as I was busy this week doing a lot of nature exploration outdoors. I've managed to build T U B E F A L L E R up to a point that demonstrates the core game loop and, at a minimal level, employs panda3d-complexpbr in a practical executable build.

Add a comment