Project: Sherlock – Dev Log 1

August 18, 2018 at 4:22 pm (Game Development, Games, Graphics, Java, JavaScript, Processing, Programming, Video games) (, , , , )


This is the first dev log for a project I’ve been working on in my spare time for the past little while. What is it: it’s a game. Kind of a cross between Resident Evil (without the combat) and the overworld map from Super Mario 3. It’s built using the game engine I wrote myself several years ago. Here’s a small list of some engine details:

Game Engine Details:

  • 2D-in-3D sprite-based engine. Characters are 2D billboard sprites, while levels are 3D tiles and blocks
  • Physics engine (JBox2D)
  • Scripting engine (JavaScript)
  • Handles and organizes game and render code (Rendering uses Processing, which uses OpenGL and GLSL)
  • Level editor for building the scenes

 

So what have I done so far? Well, I’ve just finished my 6th iteration/milestone, so I’m going to take some time to work on the design and levels of the game before I implement more features (I have a big/growing list of features to work on though). Here is a brief video demo of the flow of the game at this point in time:

Here is a non-exhaustive list of the interesting stuff and features implemented for this project so far:

  • Set up a new game/app that uses my existing engine. Re-used most of my game art, etc. so I could get it together faster
  • Basic mechanics implemented:
    • Rails movement: Click on nodes to walk to that location
    • Actions: Some locations have specific actions the player can take, such as opening a door, taking an item, or searching that location.
    • Condition system: Some locations or actions have conditions (aka you need an item or to have done something). It uses a Mongo-like expression evaluation system.
  • Title screen and level select screen. Basic stuff, but had to be written
  • New game art:
    • New Character art and animation sequences. Still in progress, but right now it at least looks like a dude walking around the levels
    • New isometric pixel art for random objects in the levels. This is so the levels feel more like a world instead of an empty room
  • Task queuing system. Requirement for this type of game. You give the engine some work to do and it’ll do it in order (stuff like “move here, then play sfx, then do something else”)
  • Session auto-save system. Loads your game session when you boot up a level and manages everything you’ve done in the game (inventory, completed tasks, etc)
  • Various minor engine tweaks: Camera zoom, thicker walls, etc
  • Added a handful of levels and added a bunch of objects like wall art, desks, dressers, etc.

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: