Tallowmere 2
Work in progress. Subject to change. More fun than you can shake a kitten at.
Tallowmere 2

Lady Tallowmere has begun expanding her empire.

Tallowmere 2 is an upcoming 2D dungeon platformer game, currently in its early stages, being developed by Chris McFarland in Auckland, New Zealand.

Delve Further
Blog Post

The big game development checklist

25 January 2016  •  Chris McFarland

Your game idea is too big. Or is it?

Big games take a lot of time. Complexity goes up. But if you can pull it off, the end result can be fantastic.

I thought it'd be fun to write-up a bigger, detailed checklist of what a typical large-scale game tends to have, including some of the stuff I'll be striving to include in Tallowmere II.

What's in a game?

Marketable hype and features could be condensed and expected as character customisation, loot, dungeons, bosses, random-generation, unlockables, character progression, lore, and multiplayer.

But what's really entailed in a "game"? Not all games have to have the below, but they're nice to have:

Title screen

  • Game logo
  • Background with animation
  • Music
  • Copyright info
  • Options menu
  • Other sub-menus
  • Highlighting the currently-selected option
  • Ability to exit the game

Game states

  • Title screen
  • Character / save file select
  • Loading
    • Loading screen
  • Safe area (eg a town)
    • Tutorial
  • Contested area (eg a dungeon)
    • Combat / fighting
  • Map / area select
  • Paused
  • Saving game
    • Indicator that game is being saved
  • Death

Persistent game info

  • Hardcore or softcore mode
  • Current NewGame+ level
  • What parts of the game have been unlocked

Savefiles

  • All info about your character, stats, and inventory
  • All info about what you've unlocked in the game so far

Choosing a savefile

  • Game should check to see if any save files exist
  • Parse each savefile and display:
    • Character name
    • Character level
    • How the character looks
    • Time last played
    • Total time played
    • Difficulty level
    • Current area
  • Game can either:
    • Artificially impose a limit on how many savefiles can exist, or
    • Allow for any number of savefiles to exist
  • Cater for scrolling or pagination if many savefiles exist

User interface / heads-up display

  • Scalable and resolution-independent
  • Able to be resized by the user
  • Ability for each on-screen part to have its position customised
    • Could be stackable under defined columns or rows
    • Could be positioned freely anywhere on screen
  • Screen padding
  • Listening for when the screen resolution changes and updating sizes accordingly
  • Ability to be hidden for difficulty or immersion enjoyment
  • UI parts:
    • Your character's resource info (eg health, mana, stamina)
      • Resource bars
        • Static background
        • Dynamically-sized filled bar or orb
      • Text representation (min/max points)
    • Healthbars above enemies
      • Must translate each enemy's world position to an on-screen coordinate position
    • Info for currently-targeted enemy
      • Visual indictors, such as an arrow or outline
      • Name of enemy
      • Other text for details about target enemy
    • Overlay for when you take damage
    • Low health warning
    • Current area info
    • Current time
    • Current objectives
    • Notifications and alerts
    • Buffs
    • Debuffs
    • Action bars or item slots
    • Text/chat log
    • Multiplayer info
      • Names above characters
      • HUD info for each player
        • Player names
        • Healthbars
        • Buffs and debuffs
      • Toggleable scoreboards / server info
        • Ping
        • Names of all players
        • Other player info (score, alive or dead, etc)
      • Chat box
        • Chat lines
          • Name of player that said something
          • Text of what they said
        • Input box
          • Blinking cursor
          • Ability to enter text
          • Ability select and copy text

Characters

  • Name
  • Gender
  • Hair style
  • Race
  • Skin shade
  • Class
  • Faction
  • Garments
  • Health
  • Mana
  • Stamina
  • Hunger
  • XP
  • Level
  • Currency balance
  • Inventory / backpack
  • Movement speed
  • Attack speed
  • Hit boxes
  • Animations
  • Buffs
  • Debuffs
  • Passive abilities
  • Resistances
  • States
    • Happy
    • Sad
    • Tired
    • Sleeping
    • Patrolling
    • Chasing
    • Stunned
    • Sneaking
    • Fleeing
    • Crying
    • Hurt
    • Dead

Pets

  • Pets :)

Factions

Main factions typically consist of:

  • Light
  • Dark
  • Neutral

But you can also have multiple smaller groups, or even larger factions, or factions within factions, etc.

Character items

  • Garments for:
    • Head
    • Neck
    • Chest
    • Wrists
    • Hands
    • Fingers
    • Waist
    • Legs
    • Feet
  • Holdable items:
    • Weapons
    • Spell books
    • Consumables
    • Shields

Weapons

  • Melee
    • Axes
    • Bare hands
    • Brass knuckles
    • Clubs
    • Crowbars
    • Flails
    • Knives
    • Maces
    • Swords
  • Ranged
    • Bows
    • Crossbows
    • Hand-casted
    • Staves
    • Thrown
    • Wands

Elements

  • Physical
  • Fire
  • Poison
  • Ice
  • Arcane
  • "Magical"
  • Piercing
  • Dark
  • Holy

Character types

  • Small and weak
  • Average all around
  • Strong and powerful
  • Squishy but powerful
  • Tanky but weak

Ability variations

  • Target types:
    • Target point on ground
    • Target single character or object
    • Target multiple creatures or objects
    • Area of effect
  • Cast types:
    • Instantly applied
    • Charge-up required
    • Channeled
  • Resource cost
  • Cooldown time
  • When ability reaches target:
    • Apply damage
    • Apply healing
    • Apply buff
    • Apply debuff
    • Trigger another ability
    • Spawn something

Buffs and debuffs

  • Alter:
    • Movement speed
    • Attack speed
    • Health / mana / stamina
    • Attack power
    • Accuracy
    • Resource costs
    • Certain abilities

World

  • Overworld map, much initially unexplored
  • Various areas
    • Forests
    • Deserts
    • Ruins
    • Mines
    • Mountains
    • Jungles
    • Caves
    • Industrial
    • Towns and cities
    • Plains
    • Graveyards
    • Snow
    • Fantasy
  • Fast travel

Cities and towns

  • Name of city/town
  • NPC characters
    • Important characters
    • Non-important characters
  • Buildings
    • Inns
    • Shops
    • Houses
    • Public areas
    • Architecture types
  • Props
    • Beds
    • Tables
    • Shelves
    • Chests
    • Wall decorations
  • Events
  • Map

Dungeons

  • Dungeon name
  • Dungeon theme/skin
  • Multiple levels
  • Multiple rooms
  • Randomly-generated rooms
  • Locked rooms
  • Puzzles or obstacles
  • Unique encounters
  • Lots of enemies
  • Bosses
  • Loot
  • Map
  • Special dungeon modifier

Maps

  • Zoomable
  • Scrollable
  • Points of interest
    • Icons
    • Text
  • Gradually uncoverable

Merchants

  • Able to sell stock to you
  • Abile to buy things from you
  • Buyback system in case you sell something accidentally

Dialogue

  • Dialogue trees
  • Dialogue with multiple characters
  • Decision trees and choices
  • Altered dialogue based on what has or hasn't happened yet in the game
  • Character portraits
  • Fade text in
    • Let text be displayed immediately

Game mechanics

  • Running
  • Jumping
  • Dealing damage
  • Receiving damage
  • Avoiding / preventing damage
  • Using items
  • Using spells / abilities
  • Interacting with objects
  • Talking to people
  • Overcoming obstacles
  • Looting
  • Inventory management
  • Crafting
  • Skill management
  • Progressing the story
  • Unlocking new items, areas, and characters

Story

  • Something bad has happened
  • Have to do things to resolve the issue
  • Along the way, new events come up that you can (optionally) resolve
  • Give each character and area background and lore
  • Make it all seem real and believable enough

Cutscenes

  • Sequence of events
  • Possibly let the player advance each part of the cutscene to the next sequence (sort of like a glorified dialogue conversation)
  • Different camera positions and zoom levels
  • Subtitles
  • Ability to be skipped

Objectives

  • Quest lines to help further the game's story and lore
  • Typically requires you to slay, collect, talk to, or deliver something
  • Objective log

Fields

  • Random encounters

Audio

  • Music
  • Dynamic music
  • Background ambience
  • Sound effects for everything
  • Voice acting (optional)
  • Every audio type's volume able to be adjusted
  • Master volume able to be adjusted

Loading screens

  • Artwork or something fancy to look at
  • Animated loading bar or percentage-agnostic loading indicator
  • Game tips

Game options

  • Video options
    • Screen resolution
    • Vertical sync
    • Screen mode
      • Windowed
      • Fullscreen
      • Windowed but borderless
    • Anti-aliasing
      • None
      • 2x
      • 4x
      • 8x
    • Framerate
      • Target framerate
      • No limit
    • Descriptions for every option so the user knows what it actually does
  • UI
    • UI scale
    • Position of screen elements
    • Toggleable elements:
      • Floating combat text
      • Objective markers
      • Creature healthbars
  • Audio
    • Volume levels
      • Master volume
      • Background ambience volume
      • Music volume
      • Voice volume
      • Quick option to mute all sound but retain volume levels
    • Output type
      • Mono
      • Stereo
      • Quad
      • Surround (5.0)
      • 5.1
      • 7.1
  • Input
    • Mouse sensitivity
    • Remappable actions
  • Game
    • Difficulty
      • Easy
      • Medium
      • Hard
    • Decal limit
    • Physics stepping count
    • Death type
      • Casual / come back to life
      • Hardcore / permadeath

Input handling

  • Keyboard
  • Mouse
  • Controller / gamepad
    • Controller disconnect handling
    • Controller swap handling
    • Rumble support
  • Touch-screen

Binding actions to inputs

  • Controlling your character
    • Move
    • Jump
    • Use main-hand ability
    • Use off-hand ability
    • Interact
    • Toggle inventory
    • Toggle main menu
    • Special slot or ability activation
  • Menu navigation
    • Up, down, left, right
    • Confirm
    • Cancel

Local couch co-op

  • Multiple players (typically up to 4 players)
  • Shared screen or split screen
  • Ability to have players join or leave mid-game
  • Extra game modes

Network multiplayer

  • Lots of players
  • Dedicated server, or turn a client into a server
  • Extra game modes

Bragging rights

  • Achievements
  • Local high scores with name entries
  • Online high scores

Development console

  • Useful for entering debug commands and cheat commands
  • Useful for viewing errors

Language translation

  • Support for multiple languages
    • Czech
    • Danish
    • Dutch
    • English
    • Finnish
    • French
    • German
    • Hungarian
    • Italian
    • Japanese
    • Korean
    • Norwegian
    • Polish
    • Portuguese
    • Portuguese-Brazil
    • Romanian
    • Russian
    • Simplified Chinese
    • Spanish
    • Swedish
    • Thai
    • Traditional Chinese
    • Turkish
    • Bulgarian
    • Ukrainian
    • and possibly more!
  • Every string of text should have a unique ID and is then looked up against the current language table

Start small

So after reading (and typing) all that... If you're making a game, start small, and grow and grow as you keep at it. Your project will snowball and blossom as time goes on. This stuff doesn't happen overnight; good things take time.

‒ Chris