Golem Quest Day 6

Only a little more than a day to go. The greatest of today’s achievements is pictured below: a title screen / main menu.

Glorious main menu.
Glorious main menu.

Now that there is a menu where some choices can be made (namely controller and 1 or 2 players), I’ve reintroduced gamepad support and local co-op. I got them somewhat working already at the very beginning, but they were disabled for several days and required some fixing.

The picture also illustrates the background story and goal of the game. It’s rather trivial, but I need to keep the scope narrow if I want to complete this in time.

Still on TODO:

  • Implement win condition
  • More enemy types
  • Make golems differ more
  • Enemies should drop loot
  • More interesting and variable environment
  • Tune visuals
  • Balancing

Finding and processing 3d assets has been the nastiest part in making this game – and I still have some of it ahead of me. I miss ASCII.

(Cross-posted from blog.tapiov.net)

I think I’m going to call it Golem Quest

I didn’t write a 7DRL update yesterday, because not much changed on the surface, so the screenshot would have been basically the same as before. But anyway, here’s the outline of things I’ve achieved in the past two days:

  • Gameplay changed to turn-based
  • Improved AI
  • In-world hit messages
  • Game over / death screen
  • Some sidebar functionality
  • 3d model for enemies and player
  • Visuals tweaking
  • Basic item collecting system, currently only health potions
  • Basic combat system with some stats affecting it
Player’s stone golem model kind of blends into the background here, needs tweaking…
Player’s stone golem model kind of blends into the background here, needs tweaking…

I’ve decided I won’t be bothering with animated mobs, static models shall suffice. I’m currently thinking the player can choose between ~3 golems with a bit different stats and then embark on a quest to vanquish an undead horde while collecting magical gems to enhance stats. Or something. It’s kind of worrying that my overall game design is still wide open and I only got about 2,5 days left. Luckily a game starts to emerge nevertheless.

(Cross-posted from blog.tapiov.net)

Monsters in sight

Monday’s progress summarized:

  • Added killable enemies (very basic implementation)
  • Plugged in a pathfinding library and made the enemies hunt the player
  • Smooth camera and actor movement between grid cells
  • Started drafting UI
  • World generation tweaks
  • Display renderer debug information
Screenshot
How it looks currently. Orange cube is an enemy. UI is a mock-up without any connected functionality.

(Cross-post from blog.tapiov.net)

7DRL with Three.js

I have been struggling with what should I create, ideas ranging from making 2.0 versions for pretty much all my previous 7DRLs, to new stuff such as espionage or pirate themed stuff. However, the thing I most wanted to get back to was playing with 3d stuff and as I’m not an artist by any stretch, I need to design in terms of what assets are freely available to me. As such, I’m going to go with the traditional approach of medieval / fantasy setting.

After about 1,5h of hacking - something on the screen.
After about 1,5h of hacking – something on the screen.

I’ve been working with Three.js graphics library before, and it shall be my weapon of choice once again. I think making the game playable in browser makes the barrier to try it so much lower that many more people will try the game, even though WebGL support is not ubiquitous. For full disclosure, I’m going to copy paste some snippets from my previous JavaScript projects which you can find here: http://tapiov.net (they are all open-source).

My 7DRL 2011, A Little Anxious When It’s Dark, was also a WebGL game, but it didn’t use Three.js and WebGL was in its infancy back then. Nevertheless, I don’t just want to create a remake, so with this new game, I’ve started with an “overworld” wilderness as pictured below. My tentative plan is to add castles and caves for the player to discover and loot. I’m also playing with the idea of turn-based local multiplayer co-op.

Sunday evening, about 5 hours of coding since the start: movable placeholder player characters with collision detection against the environment, populated by some 3d models.
Sunday evening, about 5 hours of coding since the start: movable placeholder player characters with collision detection against the environment, populated by some 3d models.

I started coding my entry at Saturday 1pm my time, but unfortunately I’ve been away most of the weekend, so not much progress has been made. I’m hopeful that I can catch up during the week though.

This year, there is also Procedural Death Jam running concurrently. I’m actually not yet certain if my entry will be a full roguelike, but as I’ve started it with more traditional design than some of my ideas, I’m going to see where the game takes me and decide later.

Law­man – Days 4&5

Progress is slow but being made. Here’s a list what’s done since last update:

  • There’s now an inventory and some functional items
  • The item system is beautiful: adding new ones is simply setting the properties for a prototype and it will then automatically show in the UI with a key help if the player has it and is able to use it currently.
  • Combat system is vastly improved, but still not good enough
  • Experience system with beginnings of character attributes and level-up screen
  • Buy menu: no shops yet but the menu is mostly working
  • Slightly improved furniture placement

Lawman – Days 2&3

Past two days I haven’t been coding as much as I’d hoped, but I have still made some progress. Since day 1, the most visible addition is the UI (pictured below), which features some stats and weapons. It’s functional, although you can’t yet buy weapons, so the inventory is hard-coded.

Another important addition is enemies and combat. It’s still very primitive and being ranged instead of melee brings a whole lot of issues that need thinking. However, it is now possible to kill bandits and die yourself.

lawman-bandits

Other things include some cosmetic changes and adding furniture to the houses (needs improvement though, and there aren’t any special places like a saloon yet). At some point I thought of actually using one of my previous 7DRLs, City of the Condemned (C++) as a starting point when I realized the town generator is going to need a whole lot of stuff that’s already in CotC. However, being playable in web browser and not particularly liking CotC’s generator code (the output I find very nice though) tipped the scale to Unicodetiles.js.

My plan for next is improve the combat mechanics and start adding important shops like a doctor’s office and a gun store. However, as I’m not a huge fan of menus, I might need to think about the implementation a bit.