1 of 14

By Torchlight

CPSC 4160 Milestone 1 Presentation

Will Gray

2 of 14

Game Description

Genre: 2D side-scrolling puzzle platformer

Story: A lone Scout lost at night in the woods must find their way through the woods, lighting strange bonfires to brighten their path as they seek a way out. While exploring, the Scout is hunted by shadows, taking the appearance of faceless, distorted versions of the Scout.

Objectives: Light all torches and seek a way out of the woods. Avoid coming into contact with the shadows.

3 of 14

Game Information

Skill Rating: Ages 12+

Players must be able to navigate through slightly challenging platforming courses with limited visibility and solve puzzles with increasing difficulty as levels progress.

Audience: Anyone 12+, though there are some horror/unsettling elements

Subgroups: Platforming/puzzle fans, fans of cryptid/urban legend/creepypasta horror

4 of 14

References/Inspiration

“Golden Scapegoat” minigame from Honkai: Star Rail

5 of 14

References/Inspiration

Slender: The Eight Pages

Screenshots from Rosswood

6 of 14

Color Palette

7 of 14

Entities - Player Character

The Scout:

  • Moves left or right, can climb up on ladders, jump (if torch is extinguished), and extinguish/light their torch
    • A and D or left and right arrow keys for moving left or right
    • W or Up keys for climbing ladders
    • Spacebar for jump
    • Shift for manipulating torch

Scout Beta Sprite

8 of 14

Entities - Enemies

Shadow:

  • Enemy that follows player’s movements, either patrolling its own area or actively hunting for player
    • Will use an AI algorithm for the shadow’s behavior

Stalker:

  • Lurks just outside of view of the player
  • No interaction during the game with the Scout, but is important for the ending

Shadow Beta Sprite

Stalker Beta Sprite

9 of 14

Entities - Objects

Bonfire:

  • Lit bonfires illuminate the “level” around them. Win condition is met when all 8 bonfires are lit.
  • Scout just has to reach a bonfire to light it. No special control or command is needed, except that the Scout’s torch must be lit to light the bonfire when colliding with it.

Lit and Unlit Bonfire Beta Sprites

10 of 14

Game Mechanics

  • Platforming: The core gameplay of By Torchlight revolves around platforming, where players control the Scout as they traverse through the darkened game map platforms to light the scattered bonfires.

  • Climb and Jump: Players can make the Scout climb ladders to reach higher elevated platforms by pressing the W key or the Up directional key. If the Scout is not currently carrying the lit torch, the player can make the character jump by pressing the space button.

  • Manipulating the Torch: By default, the Scout carries a lit torch to brighten a radius of the game map around themselves. By pressing the shift button, the player can make the Scout extinguish the torch, granting the player character a faster movement speed and the ability to jump. By pressing the shift button again, the player can make the Scout relight the torch. The torch must be lit to be able to light the bonfires found across the map.

11 of 14

Game Mechanics

  • Lighting: The game map is inherently very dark to limit player visibility and increase the challenge. The player can make use of the Scout’s torch to light up a surrounding radius around them to better see areas of the map. By lighting bonfires, the player can increase the amount of light in certain areas, increasing their visibility and allowing for greater exploration of these areas.

  • Enemies: The game features one main type of enemy, the shadows. These enemies are dark parallels of the player character that hunt them down through the darkened game map. If a shadow reaches the player character, the player dies and the game either resets or sends the player back to the last bonfire that they had ignited. When shadows get within a certain distance of the player, the screen and game audio distorts and grows more distorted the closer the enemy gets to the player. The stalker is the other enemy type, but is a passive enemy type that simply lurks on the outskirts of the players range of vision.

12 of 14

Technical Description

Modules:

  • Player
    • Movement
    • Torch manipulation
    • Collisions
  • Enemy
    • Shadow
      • Collisions
      • Behavior AI
    • Stalker
      • Behavior AI
  • Lighting
    • Torch & Bonfires
    • Screen effects
  • Map
    • Platforms
    • Parallax scrolling

Technical details:

  • Lighting will use alpha and shape overlays to simulate darkness/lighting
  • Collision detection will be used for player interaction with the environment/platforms, shadow enemies, and bonfires
  • Levels will be denoted by each platforming course for each bonfire, but the whole map will be interconnected (challenge increases as player progresses to next bonfire)

13 of 14

Software Architecture

Initialization

Main Game Loop

Player

Movement

Manipulate Torch

Enemy

Shadow

Stalker

Behavior AI

Behavior AI

Lighting

Torch

Bonfire

Screen Glitch

Scrolling Map

Platforms

Parallax Background

Collision detection

Keyboard inputs

Change lighting

Keyboard inputs

Keyboard inputs

Update

Collisions

Enemy

pygame.quit()

Shape overlay

Alpha value

Shape overlay

Alpha value

Shape overlay

Alpha value

Audio distortion

Bonfire

If torch is lit:

Brighten area

Collision detection

14 of 14

Timeline

Priority Modules:

  • Player
  • Map for first level
  • Torch and bonfire lighting
  • Shadow enemy

Difficult Modules:

  • Torch and bonfire lighting
  • Enemy AI
  • Collision detection

Initial Targets for Milestone 2:

  • Simple first level layout
    • Along with parallax background
  • Player character movement (specifically left and right, possibly climb and jump if enough time)
  • Collision detection with bonfire and shadow for player character
  • Begin work on lighting for torch and bonfire