Vampire: the Masquerade Renaissance

Monday, March 5, 2018

These last months I've been working on the pixel scenarios in the 2D demake of Bloodlines. As you can see, I've reworked some Santa Monica scenarios trying to achieve an even more old school retro style to my pixels. First, I've been toying with different 32 and 64 color palettes. I enjoy the vibrant colors of the Famicube color palette so I'll probably settle with that for the moment. Also I've been working on the puzzles and quests of Santa Monica but I'll post the final result when it's running on the game.

Sunday, July 30, 2017

I've just realized I haven't posted any news on my bloodlines demake in more than a year. My bad, I've been working too much and my indie games have been slowly progressing at a slower pace than expected. Anyways, now it's time to wrap up a year of indie development and pixel vampires so let's get to it.

Sunday, May 22, 2016

After this second weekend of development, the game is getting closer to becoming a graphic adventure. You can tap on different objects in the environment and a set of contextual actions lets you examine, use, take and perform other typical adventure actions.

Here's a GIF of the first location of the game, a dusty motel room in Santa Monica. This will be the home of your player character, your first haven. Also, it's the first room you can explore so I've added some items and containers to test all the point & click adventure actions.

Sunday, May 15, 2016

It's been almost a year since my last post so I have some serious catching up to do.

First, let me explain the fact that I abandoned the development of Bloodhunt in 2015 when my other indie games were consuming all my spare time. I had to choose between my video games and my board games and it's a hard decision to make. Now, after a year of indie board game design (yay!), I've decided to go back into development and invest my weekends (two nights each week) to develop a spiritual successor of Vampire: The Masquerade Bloodlines in the form of a 2D retro pixel demake.

So this is the first change: time-boxed development.

The second change is the target platform. Bloodhunt is now being developed mainly for mobile devices. Since I'm using Unity I'm sure I'll end up making a PC/Mac/web port in the near future, but right now the main focus of development is iOS and Android smartphones and tablets. Why is that? Maybe it's not such a good idea to launch a 2D retro pixel demake of a story-intensive RPG in the mobile market. However, I enjoy playing my indie RPG in my smartphone and I'm sure other people will enjoy it too. Somehow it feels more retro when you tap the pixels on the screen instead of just clicking your mouse through the game in a full size screen. It's hard to explain but anyways I enjoy the restrictions of mobile game development so that's a good reason too.

Here's a quick screenshot of the first proof of concept of Bloodhunt in my Android phone. Most of the art is reused from old prototypes and art the game (I have lots of folders loaded up with pixels from the old times). So I just have to set up the Asylum level, with some subtle lighting and animations. On top of that I displayed the UI layout with two vampire characters and some dice icons for the main actions of the game: fight, bite, search and use blood. Please don't mind the HP and BP stats, it's just a proof of concept. Gameplay is just a mini-game about gaining more humans than your opponent. It's pretty cluncky so I just dropped the mini-game idea after the first prototype.

After the first technical tests, I started working on the dialog system, which is one of the main aspects of a good old story-driven RPG. The dialog system now supports both phrases and sprite animations (like the beheading example below, in the screenshots section). There's a cool "tap to continue" effect when the character is done talking. Also notice that the portrait animation stops talking when the typewriter effect ends displaying the dialog phrase.

Here's a couple of GIFs displaying the dialog system in motion. I've used the text of the original Vampire: The Masquerade Bloodlines intro sequence for demonstration purposes. It would be great to add the original Bloodlines voiceover but I'm sure I'll get into legal trouble with Paradox or Activision. So let's keep it simple for now.

Prince LaCroix displaying his excellent verbosity in retro pixelart.

The mysterious Sheriff of LA beheading your pixel sire

(whoops I have just realized I forgot to put the main character on the scene).

After these two nights of development I think the game is looking nice and dialogs are flowing like in the old times of NES and 8-bit RPGs. Maybe I have to work a bit more on the character portraits. Prince Lacroix looks odd and shares little resamblance with the original (I tried my best, I swear). Talking animations are too repetitive also. But I'll get into that in another weekend.

Sunday, June 14, 2015

This week I've been working on the Hacking mini-game. The concept behind the mini-game is totally different from the original Vampire: the Masquerade Bloodlines hacking mini-game. Instead of typing commands in a unix console (which is only fun for a programmer), we are hacking a computer in a visual system, trying to avoid being detected by the antivirus.

Let me explain the concept through a step-by-step example. We are in front of a laptop and we need to get some information from the owner. Let's assume it's another vampire's computer. First we need to break in the system. Here's a mockup of the log in screen.

If we know the username and the password (maybe there's a post-it note near the computer) we can simply type in the corresponding fields and hit enter. However, most of the times we won't have that information and therefore we need to hack in the system. If we have at least 1 point of Hacking in our character sheet, we can plug in a pen drive with some hacking programs installed. Let's do it.

When we plug the pen drive in, a window pops up showing all of our hacking programs. In this mockup our character only has 1 point of Hacking and therefore there's only one hacking tool, the CodeBreaker. Of course, with each level of Hacking we will gain a new program so there's up to 5 hacking tools. For now, let's double click CodeBreaker.

CodeBreaker is a super-basic tool for breaking passwords. First you have to click on the link button in order to select the pass we are going to hack. Let's start by the username field. Once CodeBreaker is linked, we can click the start button to begin the hacking.

Here's the hack in progress. Lots of numbers start to flow (just like the atm hacking scene of Terminator 2) and the correct characters start to pile up. But we can't just sit and wait until the program hacks the entire password.

Here's the antivirus alert. The system knows that we are breaking in. From now on, all of our hacking actions will be monitored by the antivirus. Each hacking action increases the level of threat of the antivirus. So if we want to remain undetected we have to tread carefully. Here's a mockup of one of the tests that the antivirus will use to detect us: the vertical scanner.

The blue horizontal line starts scanning the window.

If the scan line hits one of your hacking tools, the window becomes blue and the threat level rises. Note that there's a progress bar below the antivirus alert. When this threat level reaches a 100% you are kicked out of the system (going back to the log in screen). Be kicked out 3 times and the system will shut down. This means game over. Well, mini-game is over.

So the core mechanic here is hacking passwords, avoiding the system security while on a tight time preassure. This often means pausing the hacking tools when a scanner is in course, minimizing your hacking windows to avoid the scanner lines, and in general terms a lot of desktop multi-tasking while the hacking tools do their magic. Of course, the antivirus will throw different tests at you, not only scan lines: popups of spam, logic bombs, auto-closing all blue windows, etc.

I think that's more than enough for a hacking mini-game. Now, wouldn't be a shame not to spend at least a single point at Hacking in your character sheet?

Sunday, May 31, 2015

These weeks I've been focused on risk management. In other words, I've been trying to identify (and subsequently eliminate) all potential road-blocks and hazards for the correct development of Bloodhunt. It's not an easy process, since we subconsciously avoid looking at risks (we reject staring at the eyes of death, of course). But it's really healthy for your development process, noticing your problems before they're too close to react.
So I made a list of Bloodhunt's most difficult tasks, everything that consumes too much time and represents a threat to the game. The top 5 points where variations on the same idea: Backgrounds.
Since the beginning of the game I've been struggling with location mockups, 2D and 2.5D perspectives and backgrounds in general. The Asylum took me weeks to complete, and the street level has finally blocked the creation process. Therefore it's time for taking a small shortcut. Let's just skip the street level for now. Which is the next level? The lair of the Lycanthrope. Ok, I have 5 hours to develop a full mockup of the lair, from sketch to textures and lighting. That's the Background Challenge. Also during the challenge I have to optimize the process for the next background. And so I did. Here's the final result.

Don't panick. I said "lair of the Lycanthrope" and I have added a big rat the size of a dog. That's not a werewolf. It's a new enemy I've been toying with, codenamed: Rat-Dog.
I'm pretty happy with the tunnels of the level, the crates and barrels (I love classical beat-em up cliches). Also, I have learned a couple of Photoshop tricks for working ultra-fast with pixels. They're super basic, but somehow I've worked without them until now.

You can work with 1-pixel resolution and then scale up x4 with the close neighbour algorithm that produces no antialiasing.

You can add scattering to the pixel brush to paint random pixels around your brush. It's great for texturing the walls and floor. Also I used the trick in Rat-Dog hair (but I'll probably undo it, since it's maybe too much).

The challenge was so fulfilling that I took some extra time to animate the Rat-Dog. Nice.

Sunday, May 17, 2015

It's been some months since I left Bloodhunt development. These last 5 months I've been trying to cope with my three indie projects at once (plus my job and life). Multi-tasking has been really difficult, mainly because I love all my games but there's only time for advancing one at a time.

Luckily, I've had time to reflect and I'm determined to resume Bloodhunt development with a much more realistic schedule. First, I've allocated 5 hours per week to the project. At first glance that may seem like not too much, but I think it's a good point to start getting things rolling again. Also, I've divided my time schedule in small chunks of 1 hour which can be invested in design, art, code or marketing (in fact the time I'm using right now to write this post is counting on the marketing slot). This method allows me to time-track my advance in the game at a much smaller scope so I can react faster to risks, demotivation, development roadblocks and what not.

So the good news is Bloodhunt is back in development. The catch is that I'm really determined to finish the game. And this means that I will be systematically reducing the scope of the game from "Bloodlines demake" to "minimal RPG" in order to get things done. I hope you get the idea: first finish Bloodhunt, then iterate on all those fantastic improvements.

And here's the results of the first week of development. I've started redesigning the game to make it smaller, more linear and somehow similar to a demo. Your character starts as a mortal in the Asylum bar. The barman gives you a first quest: go kill an injured lycanthrope in the sewers. You just go there, killing some baddies in the way to the werewolf's lair. Then there's a small boss fight to defeat the lycanthrope. And finally you can retreive the mystic dagger that poisoned the werewolf to the barman of the Asylum. It's a fairly basic quest but it will serve as an introduction to the game. No vampire stuff yet.

In terms of pixelart, I'm reusing all art from the previous prototypes. Here's what I've been toying with these last days. Lots of animating pixels. Hope you enjoy it.

Tuesday, January 6, 2015

It's been a while since I've had time to devote to Bloodhunt. First, here's a couple of mockups that may help visualizing the transition to the smaller realm of 2D pixel RPGs.

In this first mockup we can see the character selection screen. The changes are subtle:

There's no male/female to choose from. Now you choose between the 7 different vampire bloodlines, meaning there's no female and male version. Less pixel work.

Instead of Tremere now we can read Lumiax. Vampire: the Masquerade names have been replaced by a new vampire mythology. This is just a tricky way to avoid CCP shutting down the game for using their IPs.

In the second mockup we can see an interior location depicted in 2D instead of 2.5D. Again, this is just for the sake of simplicity. The 2.5D Asylum nightclub now becomes the 2D Sanitarum nightclub. Here's the old 2.5D version so you can compare size and complexity versus vibe.

We've lost the pole dancer, the security cam and nothing more. I think we can live without the 2.5D then.

Sunday, September 21, 2014

Just a quick update of this week of development. I'm working on adding enemies to the level. The sewer levels already have some interesting toxic waste, toxic bubbles, falling rocks and other vertical hazards that challenge the player to jump and progress through the level avoiding being hit. I have no horizontal hazards yet but I'll come out with something.

Enemies, on the other hand, are very complex game entities. They don't only challenge the player movement but their overall combat strategy. I've decided to start by the most simple enemies, in order to grow in complexity by small increments. And this leads me to the rat and the spider, our most basic sewer enemies.

The rat is controlled by a simple patrol script that moves the enemy between two points of the level. This patrolling behavior even thou may not sound very realistic for a rat, will be very useful for other enemies such as security guards, police officers, etc. Rats do not attack, they just flee from danger. Maybe if they saw you eat a fellow rat they flee much quicker. Of course, you can eat a rat to gain 1 blood point (I have no animation yet). Nosferatu vampires gain 2 blood points from rats. And Ventrue just can't feed from rats, they vomit the rat blood.

The spider also has a simplistic behaviour, it just goes up and down the spiderweb trying to catch the player in the process. If the spider touches the player, you lose 1 health point. As simple as that. Next week I'll add some AI behaviour for the basic enemies. Maybe the spider can crawl by the ceiling waiting to jump down to the player just as in Zelda 2. Also, I have to add some weapon to attack the spider. More to come soon.

Thursday, September 11, 2014

These last weeks I've been pushing the demake concept a little bit further. Imagine that you're a kid in the 80s and your parents bought you a brand new cartridge for the NES: it's a Vampire: the Masquerade video game! And it has intense storytelling and platforming! How can we ask for more?

In order to achieve this degree of realism in the platformer-RPG mechanics, I've studied very closely all platformer-RPGs in the market (there're not so many games in this sub-genre so it was quicker than I expected). The overall conclusion is that Zelda 2 can be considered the father of this small sub-genre even though Castlevania refined the formula almost to perfection after a long series of installments (ending with Castlevania: Symphony of the Night). However, in its original simplicity for the NES, Zelda 2 can still teach me some important lessons about platforming applied to RPGs. Since the platformer-RPG is not a crowded genre, I'll start applying these basic principles:
Let's start by the most basic type of challenge in a platformer-RPG: environmental hazards. Zelda 2 is filled with a great diversity of elements that damage Link just by contact: fireballs, bubbles, rocks. Therefore, the player has to avoid stepping into these hazards in order to avoid losing health points. Environmental hazards typically appear as a static zone or fluid that the player can't touch: lava, fire, spikes, etc. Also, some hazards are thrown to the player either vertically (such as bubbles) or horizontally (such as fireballs), forcing the player to manouver to avoid taking damage.
Here's a quick mockup of the sewer levels in Bloodhunt. These underground sewers, filled with toxic waste and strange abominations are a good narrative justification to add some interesting hazards in the form of toxic bubbles emanating from the waste, acid drops falling from the ceiling, radioactive worms attacking from the depths of the toxic water and huge spider falling from the darkness above.

After some tweaking in Unity, the mockup translated almost exactly to the game. I started working on the hazards, trying to add some basic challenge for the player. Since Unity uses a component-based approach, I just created a single hazard script to control a generic hazard, and then attached that simple code to all hazards. With a bit of lighting, particle effects and whatnot, here's how it looks so far.

Note that the sewer lights are tilting randomly. Also, in order to anticipate the zones where rocks fall from the ceiling, a bit of pixel dust falls as particles.

These are a closer shots of the toxic wast lighting effects, the falling rocks and the overall sewer level design. After all these screenshots we can say that the game is looking pretty nice (even better than the mockup). It has all hazards implemented (when the player gets hurt when she hits the toxic water, the bubbles, the falling rock or the acid drop). However, there's a lot to be done yet. Enemies (the spider, the worm), a better player control (jumping still feels ankward), items and pickups, NPCs, and so much more.