I've finally decided on how I'll deal with the story vs exploration problem in 100RTBD. It's quite simple, really! As I'm making the side rooms and the optional paths, I have to ask myself if the player should be allowed to progress or to stumble into a boss fight or something at the point he is in the story. In most cases, the answer is no; You can't fight the second version of a boss if you haven't fought the first, for instance.

So if you get into such a room and you see "Something is missing... Come back later", that means you'll be coming back to that place sometime in the future. For now, it's a good compromise.

Time spent on the project so far: 584 hours

Currently working on: Making side areas

Posted
AuthorJérémie Tessier

I'm fully immersed in side-areas and optional content now. It's a bit scary! I have to make it all, but I don't know where to start. I could go straight for the 'critical path' and ignore the side content for now, but players might experience this stuff as soon as they can - I know I would - so it has to be balanced, no matter at what time you visit it.

Still have to make it fit with the story too! I guess I have a few interesting hours ahead of me regarding how the game will progress!

Time spent on the project so far: 582 hours

Currently working on: Making side areas

Posted
AuthorJérémie Tessier

Some of these rooms take a lot of time to make because of the custom content or animation you'll find in them! That explains why on some good days I can make 6-7 rooms in two hours, and on others - like today - it takes me that time to make 2. I start with what I have in my design doc ("A room full of magma, Defender D is seen wondering if his barrier can protect him from it, he jumps into the magma and dies, an infopack appears afterwards") and then I have to make the little cutscene happen. It's not too difficult, but I'm not crunching these rooms at an incredible rate!

I wonder how things would work if I wasn't a one-man team. Could more than one person work on room generation? Or would it be different tasks like creating the remaining enemies, skills, items, etc. ? I wonder.

Time spent on the project so far: 581 hours

Currently working on: Moving on with the story

Posted
AuthorJérémie Tessier

Didn't do much today since I was distracted by other things. A few rooms, started working on a new challenge where enemies don't do anything but they explode into a plume of fire when they die - and if that fire touches you, you lose. It's not the hardest challenge ever, but if you kill a bunch of enemies at once - like with the poison gun - you'll have a very tough time dodging the fire!

It's been a while since the last screenshot, but when I'm done exploring what I can explore I'll make an animated gif of the map :)

Time spent on the project so far: 579 hours

Currently working on: Moving on with the story

Posted
AuthorJérémie Tessier

I've built a few rooms today! I'm at 56 InfoPacks now! Four more and I'll move on in a big way! I've noticed that although the player can skip some doors here and there and visit rooms with InfoPacks they shouldn't be able to get, storywise - at that moment in the plot - there are probably not going to be any InfoPacks there! That kinda fixes my sequence breaking 'problem' but it's a bit cheap, I'll go with the story I guess. If I can prevent huge gaps between my vision and the actual game, so be it!

Time spent on the project so far: 578 hours

Currently working on: Moving on with the story

Posted
AuthorJérémie Tessier

I've taken a bit of my time today to finish and publish PoutineTime, my #DUPLICADE entry. Otherwise, I've created a few rooms and a few new items. I'm at a point where enemies are quite difficult to deal with because my State is much lower than its maximum, so all of my stats are lowered. This is a reality of 100RTBD and I think that it's a cool mechanic. I've also noticed that all of my sprites were set to trilinear filtering, I'd rather have huge pixels so I changed the import settings on everything!

Maybe this week I'll manage to get to the fight against General G, the last member of the security seven!

Time spent on the project so far: 576 hours

Currently working on: Moving on with the story

Posted
AuthorJérémie Tessier

I've made a few more rooms today. Looking at the map, it's obvious that my initial critical path that I had in mind wouldn't work. Even if I tried to ignore some rooms, the player will definitely be able to gather InfoPacks faster than I had anticipated at first. This is okay, if you have most of the movement abilities and the will to explore, maybe you should be able to go to some places earlier than predicted, right?

If there were no Teleport ability in the game, the problem would be way lesser, because then I would know where you are. But I've decided that fast-traveling between pits/altars is a good mechanic to have, especially if you want to backtrack or go somewhere else quickly. I'll just need to be careful that the story keeps making sense even if you get the InfoPacks in a weird order.

Time spent on the project so far: 574 hours

Currently working on: Moving on with the story

Posted
AuthorJérémie Tessier

100RTBD is going well! I've made a bunch of progress today, playing through a big part of the game and even resuming the creation of new rooms - you better believe that I'm going to backup that save file now! I'm also about 3 hours in PoutineTime, my #duplicade submission...

But this DevLog entry isn't about that, it's about how I'm terrible at game jams. I'm terrible at prototyping. I really ca't put myself in the right mindset to do so. I start with the big picture already in my mind and I feel that I can't progress on anything if that polished idea of what the final product should look and feel like.

Time spent on the project so far: 573 hours

Currently working on: Replaying through the whole thing and making new rooms!

Posted
AuthorJérémie Tessier

Maybe I'll submit something for #DUPLICADE, since I have taken upon myself to try and participate in as much gamejams I hear about on the internets (In real life would be a good second step). My idea so far is PoutineTime, a competitive 2 player BurgerTime ripoff where you step on fries, cheese curds and gravy to make delicious poutines.

Speaking of 100RTBD, however, I'm still playing through the whole game and fixing bugs here and there. I really enjoy playing my own game, that's a good sign, right?

Time spent on the project so far: 571 hours

Currently working on: Replaying through the whole thing

Posted
AuthorJérémie Tessier

Another day of testing the whole thing, it went well! A few bugs here and there, and at some points I was wondering what kind of ideas I had when I made certain design decisions, but overall it's a fun experience to play through! That bodes quite well, if I can say so myself.

Time spent on the project so far: 569 hours

Currently working on: Replaying through the whole thing

Posted
AuthorJérémie Tessier

Last week I had a computer problem. My laptop wouldn't boot anymore, and it took me about three days to figure out it was a bad graphic card driver and I had to format twice and reinstall various versions of windows. During all these times I didn't forget to keep backups of 100RTBD on a thumb drive, but it still frustrated me that I couldn't work on it at all. This morning when I finally boot it up, I notice that I forgot to backup the save file as well, so now I'm replaying the whole thing.

It's a little bit frustrating, but not too much, there are always things to improve here and there and the game still feels fun. That's what matters, right? I think I'll still need two or three more days before I can actually move on with new content, but what's actually there will be polished some more.

Time spent on the project so far: 568 hours

Currently working on: Replaying through the whole thing

Screenshot after the jump: Not again...

Posted
AuthorJérémie Tessier

I've created 'a bunch' of new rooms today, all more-or-less on an optional path, not yet in sequence break territory. It's a big relief to leave the Darkness World - even if it is to breakdown to a previous one - that darkness effect was driving me crazy. I don't plan to do exactly the same vision-impairing trick in the Light world, so don't worry about that. Here I was, thinking that the fight against General G was soon-ish, but now I know it's not coming for a few weeks still.

Time spent on the project so far: 566 hours

Currently working on: Continuing the story

Posted
AuthorJérémie Tessier

Another busy day where I have to go to the office, so not much work was done, besides some bug fixing and balancing, and the discovery of many possible sequence breaks. They're a bit out of the way, the player needs to really want to go through them, but as my design doc stands right now, there are a bunch of InfoPacks that you could go and get out of order, and that might mess up the story, I'm not sure yet. I'll keep on exploring the newly unlocked world, now that I can be a ghost!

Time spent on the project so far: 564 hours

Currently working on: Continuing the story

Posted
AuthorJérémie Tessier

I've been fixing a few bugs today and yesterday and creating new rooms and cutscenes for the player to roam after they've found the way to go through ghost blocks. The bugs were mostly related to the way 100RTBD keeps tracks of the rooms you have visited during all of your adventures. I've also added the Enemy Viewer, an accessory that tells you about an enemy's Life, Armor, Damage and Bullet Damage. It's kinda useful if you want that info!

I've discovered a small sequence break I didn't plan for during the design doc writing phase of this project, but I think I'm going to leave it in. Well, right now that's what I'm thinking, the consequences might be too much for the story to be told, if that's the case, I'll do the necessary.

Time spent on the project so far: 563 hours

Currently working on: Continuing the story

Posted
AuthorJérémie Tessier

Didn't have much time to work on 100RTBD today because of work-related issues, but I'm done with a challenge where - much like that one with Brigadier B in which you dodged bombs - you have to dodge a powered-up version of the Energy Blade skill from Colonel C. The reward is a Bayonet, a gun part that gives you a chance to use the Energy Blade skill for free whenever you shoot. Pretty good deal!

Time spent on the project so far: 561 hours

Currently working on: Creating a challenge

Posted
AuthorJérémie Tessier
any game involving exploration that presents itself in such a way that you can easily encounter all of it is inescapably boring

I saw that tweet yesterday and immediately thought of 100RTBD. Metroidvanias don't shine if everything is presented to you on the critical path. There needs to be some out-of-the-way type discovery for it to feel meaningful. Backtracking, pushing through tough fights or solving difficult puzzles are ways to make content harder to reach and by consequence, making sure some people will never see it.

100RTBD is full of that stuff. As of right now, I'm pretty sure that the 'main' content in the game will be about 30% of the final product and the whole other 70% will be optional content. I don't mind making content for a lesser percentage (of my already low) playerbase, actually I tend to make the optional content before the critical path, but that's just how I roll!

Time spent on the project so far: 560 hours

Currently working on: Continuing the story

Posted
AuthorJérémie Tessier

Here are the rules of being a ghost:

  • You can go through certain blocks!
  • Enemies no longer knock you back if you get hit!
  • You take double damage from enemy attacks!
  • You can no longer attack, use skills or items!

Time spent on the project so far: 559 hours

Currently working on: Continuing the story, ghosting

Posted
AuthorJérémie Tessier

While trying to make mini-bosses interesting and tougher than most encounters, I have to be careful and to strike a balance between 'too easy' - you can stand at a specific spot and just shoot forever and win - or 'too hard' - you'll spend considerable resources defeating the boss, and then only if you are lucky. I've turned a simple flying/shooting enemy into a bullet hell monstrosity, and I had to tone it down!

Ghosting is almost completely in, I'm still unsure about certain details. Is it a toggle? Does it go away after a certain time? While you're ghosted, can enemies hit you? Does it go away if you shoot/use a skill? An idea I'm having right now is that it's a toggle and you can go through enemies without suffering knockback while using it, but you'd also take double damage? Maybe?

Time spent on the project so far: 557 hours

Currently working on: Continuing the story, ghosting

Screenshot after the jump: A bit too much

Posted
AuthorJérémie Tessier

Today I reworked the fight against FirstClass F a bit since I've made it to the point where you could fight his hologram. Even with care put into making sure he moved to places relative to where he started - instead of using absolute coordinates - I still had to fix a few things related to character position and the slot machine skill itself. Then after I've defeated it, I got enough experience to reach a level where my Skill Effect got up!

So I had to add the various level 4 effects to all the skills in the game. Tomorrow I'll add Ghosting - the ability to double-tap the Up key and become translucent, allowing the player to go through certain blocks and dodge enemies if he's good at using it!

Time spent on the project so far: 555 hours

Currently working on: Updating skills, updating the fight against FirstClass F

Posted
AuthorJérémie Tessier

You figure out obvious things everyday, both in programming and game design and today I've figured out that the way I spawn enemies in room isn't the best. You'll tell me that it's only a line of code, but applied about a thousand times, it adds up!

Here's how I used to spawn single enemy types:

invokeSpawn (new string[]{"kilobyte"},new int[]{2});

I did it that way because sometimes, there are more than one enemy type per room. That being said, what's to prevent me from using:

invokeSpawn ("kilobyte",2);

And overload the invokeSpawn function so I can either give it an array or a single string? It's a small improvement, but learning and working on personal projects is all about small improvements!

Time spent on the project so far: 553 hours

Currently working on: Continuing the story

Posted
AuthorJérémie Tessier