Fuzeboy – Status Update – [9 AUG 2017]

As some of you might know, Fuzeboy’s project scope changed considerably during its development. There’s been an overhaul of features, specifications, goals and deadlines.

A small mobile game…

Originally thought to be a quick mobile only game, we then shifted our vision a bit to make it playable on desktops as well; now we decided to abandon the mobile world altogether to focus exclusively on the Desktop platform.

This opened up a ton of possibilities as we’re not limited to touchscreen inputs anymore. The very essence of the game changed, as we made changes to game mechanics, enriching and expanding the world of Fuzeboy.

This is the tower with the locked doors… very mysterious…

Fuzeboy’s going to be a full fledged, complete platformer game for desktops (Win, Linux, Mac) but we’re not yet ready to show anything new to the world as I’m rewriting it from scratch in GameMaker Studio 2 while Darftey is reviewing (and adapting) all of the graphics.

We’re also starting a new project. Not because we suffer from shiny object syndrome (basically a disease of distraction) but because rewriting Fuzeboy from scratch, made it possible for us to reset our mental state.

Although far from a possible Fuzeboy-induced burnout, our mental state was then set for something new; different. That not only applied to Fuzeboy, but to both of us as a game development team. We took a step back and looked at our future as team Blocksword. And we saw things…

As we reviewed and re-started Fuzeboy, we reviewed our plans, projects and priorities as well. And we saw this…

Here’s a small teaser GIF

Due to the overwhelmingly positive feedback we received, we’re now thinking about making it our primary focus. We’re also considering funding as I didn’t plan to live off of my savings for this long without publishing a commercial title.

Two projects, two options

Should we decide to crowdfund the new game, we will have to define a clear project scope and commit exclusively to that for the time it will take to ship it. In that case the development of Fuzeboy will be put on hold (let’s say we will change it’s queue priority). As of now this is the most probable scenario.

Should we decide to keep going without funding (or fail at funding), we’ll suffer from a bit of a slowdown. I will have to seek a part-time job (or something) while working on both games at our discretion (we would have zero deadlines and relatively more freedom in the way we manage and evolve our own projects).

All of this might annoy someone; especially those who were waiting for Fuzeboy anytime soon this year. Especially if they were waiting for a mobile game. We know it and we don’t like when people get annoyed because of us; we will make up for it.

In conclusion

To sum it up: we’re working on the new Fuzeboy while defining the scope of this second project and defining the resources we need to allocate to each of these projects. Just know that we could completely shift our focus toward this new RPG game very soon (we’re evaluating feedback).

Fuzeboy full steam ahead!

In November 2016 I met Denis (@darftey). He’s a pixel artist. One of the best I’ve ever met, actually. We teamed up to develop Fuzeboy.

Full steam ahead! ouch!

It shouldn’t come as a surprise that since then, the development of KREN has been put on hold indefinitely.

We’re pushing hard on this mobile platformer game.

Unnecessary tricks…

There is still no official release date but we’re making progress 24/7 on every front. From music and sound to gameplay mechanics, from platform specific issues to minor graphic details.

Lots of care is being put into making this game as fun as possible. We care about details. We care about story and gameplay. We are in love with this game and we’re making sure everything goes the way we envision.

Stay tuned for more Fuzeboy news in the near future.

Choosing the right resolution for a 2D Platformer

In this post I'll try to write down the thinking process I made when I chose to develop Kren at a 384x216 sceen resolution.

Tiles

Everything starts with the tiles. If you make tiles your measurement unit, you're going to be able to simplify the visualization process. I made this kind of reasoning: how many 16px square tiles do I want displayed vertically?

Can you count the tiles? (hint: it's 15x10)
Can you count the tiles? (hint: it's 15x10)

I wanted to be able to show at least 10 tiles. Which then I realized was a pretty low number for a Desktop game. That meant having a vertical resolution of 160px. That was the resolution of Metroid Zero Mission, on a Game Boy Advance. Granted, it looked great even on an emulator, on a Desktop PC... but... did I really want to go with that little number of tiles? Let's look at how others approached the problem...

This is what the player sees on the monitor. Notice the small character and the whole room is in the view.
This is what the player sees on the monitor in Axiom Verge. Notice the small character. Also the whole room is in the view.

Axiom Verge, a more modern desktop platformer, is displaying almost 17 tiles vertically, at a vertical resolution of 270px. So I had to stop and ponder a little. Was it enough? Was it too much?

Too much indeed. Axiom Verge displays gigantic environments around one of the smallest player character I've ever seen. The player's height to screen height ratio is absurd. But it works, for that game.

I wanted to keep a more claustrophobic feeling. Given I didn't want to mess with tile size, I had to display less tiles. Simply by reducing the resolution.

Aspect Ratio

Metroid Zero Mission has a resolution of 240x160. It's a 3:2 aspect ratio and it's not what most computers use today (or even back in the days). In fact the 16:9 aspect ratio is now almost a universal standard. Or at least you can find it in most of the TV sets, desktops and notebooks you see around.

Back to Axiom Verge. It's 16:9, which is great. But I already chose not to go with a resolution as high as 480x270 because I want less tiles on the screen.

Don't get me wrong. If you want to be able to display a great number of 16x16 tiles on the screen, 480x270 is a really great option. I would advise you go with that resolution! It's 1/16th the pixel area of a Full HD monitor. Which means it scales pretty well without pixel interpolation artifacts (you multiply 480 and 270 by 4 and you get the 1920x1080 Full HD resolution).

Next, I looked at the closest 16:9 resolution available with almost the same vertical resolution as the Game Boy Advance: 288x162.

I made a few tests at this resolution and even though I liked it (a lot), it doesn't scale well. There's no easy way to scale the 288x162 resolution to perfectly fit a 1920x1080 monitor. That means problems. Also, even though I liked the effect, it really is a little bit ugly. And maybe a little too much claustrophobic, even for my game; there's barely enough space to fit 10 tiles, vertically. Given my player's height is a bit more than 2 tiles, it meant huge player (yes, you can draw a different character), really small "field of view" and ugly pixels.

The 384 x 216 Compromise

I finally found the optimal compromise resolution: 384x216. Multiply that by 5 and you get the Full HD resolution. This should avoid pixel interpolation distortions. It also allows me to display 13.5 tiles vertically. This is not that far from the Game Boy Advance look, but it sits nicely between Metroid Zero Mission and Axiom Verge.

Testing the resolution and the view size. Notice the size of the Player and the smaller visible area.
What the hell is this?! (just a fun way to test player size, resolutions and ratios). It gave me familiar elements to gauge my observations.

I don't want the player to feel small, inside gigantic environments. I want the players to feel the environment around them. Leaving him/her with little air. But not as little as in Metroid ZM on the GBA. All with a modern 16:9 look.

I found my own resolution with this process and a bit of testing. It might not be the best approach (in fact I'm sure I might have missed some other considerations) but for now it's working great. Your mileage may vary so I recommend a lot of testing.

Kren Devlog #2 – Officially looking for a (Pixel) Artist

Today I started posting around forums. I'm looking for an artist. I have no artistic skills whatsoever; I cannot draw tilesets, sprites, animations... let alone concept art.

My primary objective would be to prototype the game with graphics.

I still don't know if this is going to be a commercial project or not.
Should it become a viable commercial game there could be many options. Here are just some of them

  • Prototype's used to get funding. Then...
    • The artist remains the same, becoming the final game artist. Gets what is due to him/her, plus revenues shares.
    • The artist changes; prototype art won't be used; he/she will get no revenues shares but will get what is due to him/her.
  • Prototype's not a prototype anymore and is ready to market; no more funding necessary. Artist remains the same so revenue share model apply.
  • Project gets cancelled. No one gets anything (this should not happen! at all costs!) Artist is free to use his/her art however he/she sees fit.
  • Project is released as freeware (unlikely). Same as above.

The project is going for the commercial route. It's now a revenue share work relationship.

Right now I'm unable to test the mechanics, to think about what works and what doesn't; to imagine the game world. I need to quickly place things in the levels, test them and get an emotional response as to what works and what doesn't.

That statement is a dramatic exaggeration. But you get the idea.

As of now, everything you see in the image below, except the blocks tilesets, were drawn by me. Ideally, this should change.

Still in early planning stages. Yet testing the platformer engine made in GameMaker.
Still in early planning stages. Yet testing the platformer engine made in GameMaker.

Right now I'm working full-time on this project.

Notes:

  • I will be trying to help the artist as much as I'm able to, given my limited artistic skills.
  • The game will have a resolution of 384 x 216.
  • Player will be more or less 36px tall.
  • The current game art won't be used as a basis (thank god!)

Beware: the game videos/images are only there to show collisions and other tech aspect. The overall feeling of the game is going to differ drastically. Think Super Metroid (there, I said it).

This won't be an action packed game.
In fact, when I think about it, I think about words like

  • solitude
  • isolation
  • mysterious
  • unearthly
  • uncanny
  • dark
  • ghostly
  • unnatural
  • dangerous

If you would like to collaborate, have comments or want to share your thoughts, leave a comment or get in touch via social networks etc.

EDIT:

Use the contact form I set up

How I positioned the tileset in my tech demo

In the earlier tech demo, I had positioned a truckload of similar tilesets. Those bluish/greyish square blocks are not hand picked. I did not make that work in the level editor. I got inspired by the Smart Tile Objects tutorial by HeartBeast.

I simply downloaded the Square Blocks Textures from OpenGameArt.org, cut and pasted a bit in Paint.net to adapt it to my needs, and imported the end result as a background in GameMaker Studio.

My background version. Easier to import in GameMaker Studio.
My background version. Easier to import in GameMaker Studio.

I made so that when the floor/wall object (which is invisible) is created, it places random tile from that background into the level. Covering the same surface the object covers.

This makes for a pretty quick and dirty way to test a level with low object counts. Also gives me a little “randomized” effect every time I start the level.

What if I don’t want all that randomness? It’s as easy as using random_set_seed(1)

So, here is the create event of the smart object.

tile_fill_object(id, bg_blocks_16, 16, false)

And here is the tile_fill_object script

///tile_fill_obj(obj, tile, tile_size, randomize_tiles)

var obj         = argument[0]
var tile        = argument[1]
var tile_size   = argument[2]
var rand        = argument[3]

var col_num = background_get_width(tile) div tile_size
var row_num = background_get_height(tile) div tile_size

if !rand
{
    random_set_seed(1)
}

for (var row = 0; row < obj.image_yscale; row += 1)
{
    for (var col = 0; col < obj.image_xscale; col += 1)
    {
        var col_index = irandom(col_num - 1)
        var row_index = irandom(row_num - 1)

        tile_add(tile, col_index * tile_size, row_index * tile_size, tile_size, tile_size, obj.x + (col * tile_size), obj.y + (row * tile_size), obj.depth)
    }
}

This is how it looks in the level editor

Level editor with few big Smart Tile Objects
Level editor with few big Smart Tile Objects

While this is how it looks in the game

Same few big smart tiles objects. But with randomized tiles.
Same few big smart tiles objects. But with randomized tiles.

My Game Development setup

I'll keep this short and sweet.

Whenever I tell people that I have a notebook, they usually reply with something like "and what about your main computer?".

I do not have a "main computer". I have just this notebook. Which is running Linux and has no accelerated graphic card available (to tell the truth it's an integrated Intel HD Graphics 4000).

Yet I'm using GameMaker Studio. How is that even possible? VirtualBox made it possible. I'm running Windows 7 inside Linux via VirtualBox.

Testing my GameMaker platformer engine.
Testing my GameMaker platformer engine.

Even though I cannot take advantage of all the graphic acceleration stuff (e.g. the awesome graphics in Hyper Light Drifter looks like shit on my notebook; Shovel Knight is unplayable and so on...) I'm able to run my platformer engine with a decent 400 FPS (real). A consistent 60 FPS.

I'm quite happy about it but I just hope I can keep developing with this machine. Fingers crossed.

Testing the platformer engine I’ve been working on

Still in early planning stages. Yet testing the platformer engine made in GameMaker.
Still in early planning stages. Yet testing the platformer engine I made in GameMaker.

I’ll write a longer post soon. You can watch the video on youtube with some audio effects as well.

I’m still early into the planning stages of the game. I just needed a platformer engine I can work with to build the game. It’s going to be a Metroidvania type of game.

More on that later.