The “incredible truly astounding so beautiful...” Award


Presented by speedlimit35 to:

Devils Tower (tizilogic)
Devils Tower

NOTICE: Depending on your CPU, it can take quite a while before the game starts (Black Screen). On my workstation it loads in about 4-5 seconds, but it could take a lot longer, depending on your CPU and the available SIMD instruction set. There is also a small chance of it getting stuck in an infinite loop while placing certain objects in the world, so give it a chance to do its magic, but kill it and retry if really nothing is happening on screen ;) .

It also seems like the 32-bit Windows build doesn't work properly (at least when I tried it just now, 10/07/19, the Nonogram solver hides after a few inputs and then never shows again!!!) Please try to either to play the game directly from source or, if possible, use the 64-bit Windows build, which doesn't suffer from the problem. Thanks.

About

A puzzle / exploration game that heavily relies on procedural generation.

I wasn't too excited about the theme Tower at first and when searching the web, I stumbled on the "Devils Tower" in Wyoming, USA, which looked like a shape I could more or less generate and thus decided to build a game that takes place around the Devils Tower.

Most of the time, I spent writing various parts of procedural generators as a basis to generate geometry, place objects, etc. Also a notable amount of time I invested in things I wasn't even sure whether they would come in handy later on...

As a challenge I wrote a veeery basic collision system more or less from the ground up. I obviously didn't want to implement linear algebra ops from scratch, when I have libraries that do that faster than I could ever optimize a piece of code... I did implement a quadtree just because I wanted to at the beginning, which in the end proved very helpful together with the collision system.

This was a blast and I'm looking forward to playing all the games in this contest :)

Here's a video of me playing my game in the almost final version you can get here: Playthrough

Build / InstallInstructions
Thanks to rdb I now have a Windows 32/64-bit builds alongside the source, though getting this to run should be easy enough for anyone familiar with pip and the appropriate tool-chains and header-files/libraries to build Python extensions for your OS (No build tools necessary for 64-bit windows, since there are binary wheels available).

This game requires Python 3.6+

To get the appropriate build-tools on Ubuntu, this command does the trick:
sudo apt-get install build-essential python3-dev

My recommendation is to either clone from github or download the zip file and then simply run
pip install -r requirements.txt
(preferably in a virtualenv, imho... if you're unfamiliar with virtual environments and python, this could help fill that hole you didn't know was there before...)

Running the Game

python3 run_game.py / python3 run_game.py

Game Instructions

General
You can move around with whatever keys are mapped to the location, where the WASD keys are located on a US English Keyboard layout. I purposely did not add a bunch of text in the game, because I want the player to explore the world and find out what the goal is on their own. Since my character has a tendency to dive below the terrain, you can move the camera with the mouse movement as to at least see what's above ground...

Nonogram (also called Picross or Griddlers)
One form of puzzles you find around the world are Nonograms, that are a form of logic puzzle that describes an image by a series of numbers. To the left and right of every block, there needs to be at least one empty cell. If to the left of a row or above a column you find "3 2 1", you know, that in that row/column there are 3 connected blocks, one with three, the second with two and the last with just one cell connected, all while between every block remains at least one inactive cells before the beginning and after the end of the block. If its still unclear to you how to solve a Nonogram first read the Wikipedia page about it, linked above or search the web for a more thourough explanation.

When you find one of the puzzles and solved it (or if you want to get back to it at a later time), you can just move away and move around normally. The first time you encounter a Nonogram, a screenshot from the article about it on Wikipedia is shown. To close this screenshot, simply press one of these keys/buttons: (space, enter, right or middle mouse-button).
You don't have to solve a Nonogram completely, the game saves the grid after the last manipulation and you can always come back to solve it later.

Debug switch I left in the game: You can switch to wireframe view with F1 inside the game at any time.

Have fun!!

Credits
  •  Using Nonogram for puzzles was the idea of my good friend Evelyne
  •  SFX and the song playing in the background are from my neighbor/friend Joel
  •  The Panda3D community for helping me figure out  technical problems

Special Thanks to

  • Kathy for keeping my back free during this jam week so I could focus 100% on creating this
  • Evelyne to help brainstorm ideas and help me keep my motivation when I got frustrated
  • My neighbor joel, both for the music and the regular requests to come outside to let our dogs play in the garden -> the only fresh air I got in 7 days :P
  • rdb for motivating me to take part in this competition in the first place

Videos and Screenshots


Nonogram Solver

Mysterious obelisk inside a stone circle...