Transforming narrative, one game at a time.

  • Twitter Social Icon
  • LinkedIn Social Icon

Mission & Narrative

Designer

 

KARIN CEDERSKOOG
Indie Designer & Programmer
Golden Moose Collective - In the Heart of Borneo

Largely a NOMADIC STUDIO, Golden Moose Collective traveled across 8 COUNTRIES in the Asia Pacific for over 1.5 YEARS while developing independent games.

The broad range of experiences I acquired during this time period heavily INSPIRED future game design and level design.

In the Heart of Borneo - Level Designer & Programmer (C#)
Unity 5

Engine: Unity 5

Languages: C#

Team Size: Solo project

Platforms: PC

Project Length: 9 months

Year: 2018

I created a 2D jungle survival, simulation PC game, inspired by nonstop travels through Asia for 1.5 years.

 

I wrote DYNAMIC IN-GAME NARRATIVE events and programmed systems in C# (events, cutscenes, time manager, UI manager, etc.).

Game Design

  • Decided on the GAME LOOP and ITERATED upon it.

    • Game Loop: Arrive at Village - Sell Animal Photos - [Optional] Talk to NPCs - [Opt.] Buy Supplies - [Opt.] Sleep - Decide Next Destination (may be a Detour or Village) - Walk to Next Destination (random events, such as Animal Attacks or Animal Sighting/Photo may happen)

  • Decided how GAMEPLAY and SYSTEMS worked together:

    • For example, I decided upon a TURN-BASED SYSTEM for Animal Attacks vs. Animal Photos, where the PLAYERS TRADE OFF proximity to an animal for a better photo (resulting in more money) or possible Animal Attack or Flee.

  • PLAYER DECISIONS AFFECTED possible events and game changes.

    • I.e. The farther the player travels into the jungle, the more likely they are to see (or photograph) an animal.

    • I.e. The less Stamina, the more likely an Injury event will occur.

    • I.e. Player stats affect the outcome of eating a plant (curing the player of an ailment, restoring health, poisoning the player, etc.)

  • GAME SYSTEMS AFFECTED events and game changes.

    • I.e. The WEATHER​ SYSTEM impacted animal sightings (and the possibility of photographs).

  • PLAYER PROGRESSION was tied to Detours and Supplies:

    • Players could climb Hills​ to increase Stamina. Players wouldn't be able to scale mountains in some areas of the game (to proceed to the next area) without both - increasing Stamina and stocking up on Supplies.

  • ROGUE-LIKE gameplay.

    • On death, players started in the last main area reached.

See these systems in action, full GAME DESIGN EXPLANATION and EVOLUTION of my PROTOTYPING PROCESS in my video devlog series:

Narrative Design

  • Wrote DYNAMIC IN-GAME NARRATIVE events:

    • NPC dialogue​

    • In-game event UI popups 

  • Outlined NARRATIVE ARC for full game.

    • Involved a mystery where the player is investigating the jungle to learn about the myth of a man-eating dragon (based upon a real myth on the actual island of Borneo).

  • Developed CHARACTERS - 1 main character, villager NPCs, a girlfriend back home.

  • Wrote IN-GAME UI:

    • PLAYERS UNCOVER more about their relationship with their girlfriend and CHARACTER MOTIVATIONS for traveling in Borneo​ through letters.

    • On player death, I wrote final letters from the main character to his girlfriend, so Game Over would feel less punishing, as it would allow players to uncover more about the characters' RELATIONSHIPS.

Systems Programming (C#)

Due to the systems-driven nature of this simulation game, I programmed many Systems and Managers. Occasionally, I sought advice from a seasoned programmer to create the architecture for my game's systems.

Some of the systems I created:

  • EVENT SYSTEM

    • Depending on time of day, there were different chances each game event could trigger (Injury, finding a hidden village or object, etc.). An Event Base parent ensured all of my game events behaved in the same way, with children inheriting OnStart, OnUIHidden, OnEnd, etc.​

  • CUTSCENE SYSTEM

    • Like the Event system, Cutscenes inherited behaviors from a parent class. I loaded in strings from a comma separated localization file, which were handled by the UI system.

  • ANIMAL MANAGER

    • ​I used information from scriptable objects for Animal Type and Animal Rarity. Animal Rarity (common, rare, etc.) determined how much money the player received from photos of the animal, and Animal Type provided information for the animal. I randomized animals by Rarity to determine which animal a player saw.

  • PHOTO MANAGER

    • Similar to the Animal System, each photo had a different Photo Type (Common, Unique, etc.). A Unique Photo Type, for example, could add to the money a player received from a photo.​

  • TIME MANAGER

  • UI MANAGER

  • Etc.

What I Learned

  • It is critical to give players a chance to ANTICIPATE FUTURE EVENTS & give players a way to RECOVER FROM MISTAKES.

    • In early prototyp​es, events randomly occurred as players traversed the jungle.

    • I later gave players a chance to anticipate events, so they could stock up on Supplies, prior to setting out.

  • This project reiterated the importance of RANDOMIZING ELEMENTS of the game.

    • Originally, the plant (which players randomly come across) only had 2 purposes - restoring health or poisoning players.

    • I later changed this, adding ADDITIONAL POSSIBILITIES (such as reversing a player's poisoned state, or, in the event a player wasn't poisoned, harming them). This ENCOURAGED PLAYERS to STRATEGIZE when to eat the plant.

 
 
 
 
 
 
Additional Prototypes - Level Designer/Game Designer
Unity 5

Engine: Unity 5

Languages: C#

Team Size: 2-5

Platforms: PC

Year: 2017

I created a 2D jungle survival, simulation PC game, inspired by nonstop travels through Asia for 1.5 years.

 

I wrote DYNAMIC IN-GAME NARRATIVE events and programmed systems in C# (events, cutscenes, time manager, UI manager, etc.).

3D Level Design - PC Story-Driven, Co-Op Adventure Game

5 person team (I hired and worked with 3 external collaborators), developed over roughly 3 months.

  • WHITEBOXED/BLOCKED OUT level with CO-OP PUZZLES

  • STORYBOARDED and created a LEVEL DESIGN WALKTHROUGH DOCUMENT

  • Developed main story and CHARACTERS, with another collaborator and ex-PIXAR Story Consultant

  • Set up LEVEL CAMERAS and TRIGGERS

    • The Camera System allowed me control over CINEMATIC EXPERIENCES with a Spline tool (i.e. deciding when to zoom or switch between cameras)​

What I Learned

  • The importance of FAST ITERATION and PROTOTYPING.

  • If I were to do this again, I would spend more time on CO-OP PUZZLE DESIGN, rather than splitting my time with Camera Movement, storytelling, etc.

2.5D Level Design - PC Space Shooter Game

2 person team, developed over roughly 2 months.

  • BLOCKED OUT levels.

  • Used Splines to set up ship AI MOVEMENT PATTERNS and to DESIGN LEVELS.

1st prototype level design

2nd prototype level design

What I Learned

  • Cinematic experiences are time consuming to adjust.

    • The first playable level features a Cinematic Camera, which increased the difficulty of tuning the pacing of the level. For this reason, I simplified the camera movement for the second level.​

2D Level Design & Scripting - PC Story-Driven, Platformer Game

Largely a solo project, developed over roughly 5 months.

  • 2D LEVEL DESIGN for platforming and STORYTELLING

  • WORLDBUILDING, developing CHARACTERS and STORYBOARDING

  • SCRIPTING triggers, camera, etc.

 
 
 
 
Post-Mortem
Experiences as an Independent Game Developer

I learned an incredible amount:

  • DESIGNING ACROSS GENRES,

  • COLLABORATING on development (effectively COMMUNICATING an ORIGINAL GAME VISION and design) and

  • PICKING UP a variety of NEW SKILLS and TOOLS (i.e. programming systems in C#, storytelling with camera movement, etc.).

I also learned far more than I expected - about game development, myself, the world, level design, etc. - by spending over 1.5 YEARS as a NOMADIC INDIE DEVELOPER.

The experiences I acquired through co-founding Golden Moose and creating 5 prototypes, taught me not only about game development, but about what I personally want from developing games:

  • The BIGGEST LESSON I learned is to never UNDERESTIMATE SCOPE.

    • No matter how small I anticipated a game concept to be, the scope generally ended up larger than expected.​

  • Before launching Golden Moose, I wanted to split my time between coding and design, but I discovered my true passion in game development is TO COMMUNICATE STORIES THROUGH GAMEPLAY.

Recommendations

The following recommendation is from an ex-Dreamworks animator, whom I worked with for the 1st prototype at Golden Moose Studios.​