The Bird Programs

After the clouds in my head cleared and I gained a bit of focus, I decided on starting work on new consumables. This makes item drops more diverse and gameplay a bit more varied as well.

There were more hurdles than I expected to get these items working correctly.

The first item that I made was easy. Hummingbird. It's a single use item that refreshes the cooldown on your Soul (active item). One and done. All I had to do is create a variable and visual for when you have the item, and make it go away when you use it. EZ-PZ.

Adding extra bird programs added lots of complexity.

First, if you have a program in your inventory and you walk over another program, they needed to swap. This means that the new program is destroyed, and the one that was in your inventory is created. The newly created program had to also have a buffer to not allow the player to pick it up for a brief period so they don't infinitely swap.

With that finished, I had to figure out a system to apply temporary stat changes to the player. A few extra variables to hold values before the change and a few timers to keep track of when the effect ends and to change it back and we're good to go.

Now, the player needs to know which effects are active. This was the interesting part that I over-complicated. I wanted to display an icon with a timer beneath it corresponding to the active ability. (ie. when you use "Eagle", it shows an eagle icon with a decreasing number beneath it) This would be easy with only a single effect being available at a time. There are multiple different cooldown effects which the player can have simultaneously. This meant that I needed to make an adaptive system to move icons as cooldowns expired.

A ds_list and a few "for" loops later, I managed to make it work. Now, when you use a program, it shows the icon in the first available space to the right of the last used program. If a cooldown expires, the remaining cooldowns shift to the left. Pretty neat.

In other news, I'm going to have to crack into Spriter soon to work on a couple fire animations. The code that I'm currently using for fire is way too taxing. It looks sweet, but can be done substantially more efficiently. It just takes some fine tailored sprites. I'll post more fire when I have the animations finished.

I feel like I need a fresh set of eyes on the game soon. I'll probably invite over a friend to toy around with the first 2 levels and get some feedback. It's still not feeling very challenging, but it could just be because I've played it so much and I know it so well.


Until next time.


Bomb Launcher

I'm finally getting to a point where things that I need to work on are more interesting and varied. It's pretty nice after spending a couple weeks on laying out level chunks. 

The latest change, which is looking like will cause me to have to make more rooms (irony?), was to make the starting level smaller. Doing this meant removing chunks from the level. What will normally be 25 chunks per level is currently reduced to 16. Substantially smaller. This is making me realize that I may need to add some variance to the core and edge chunks. 

I made something of a mini tutorial quest yesterday. It's a quest that will always show up on the first level which tasks you with fetching an item that is randomly placed within certain areas that require some sort of special action to access. The idea is to make the player figure out how to interact with the different pieces of the environment. It shows that you can shoot fire and dirt blocks to eventually destroy them, you can unlock areas with key blocks, certain blocks are destroyed by explosions, and that some spikes are retractable. 

To make sure the player knew that rock blocks were destroyed by bombs, I made a bomb launcher. This guarantees that the player will be able to make an explosion happen regardless of if they have a bomb or not. This bomb launcher will definitely come in handy in the future. It will help with a bit of puzzle and accessibility. Now, if I want to block off an area temporarily, I can just put one of these bad boys next to it. It can also be used for combat purposes since it's creating a damaging explosion.

I made some sounds to go along with the bomb launcher as well. I think that creating sounds as I go along will help a bunch in the end. It will also help with morale since it'll make the game feel more complete. You can check out the sounds that I created in the video below.

My next goal is to make the active item slot and the temporary effect consumables. (The bird programs) I noticed yesterday that the player can easily get trapped in a scenario where they'll have to take damage. I'm going to try to remedy that with the active item and possibly a new mechanic. We'll see how it turns out.

Until next time.


Big Changes

I've been putting lots of hours into Loop of the Lost lately. It hasn't felt like I've gotten much done looking back at it, but I sort of feel jaded shortly after finishing a portion of the game and moving on to the next. So much of my focus is on the current things that I sort of forget about what all went into the previous.

The big change that's been made is the room spawn system. Each level was originally made up of 36 small rooms built for quick skirmishes. Looking back, I feel like the tightness of each area was a good thing for the most part, but the limitations of the small room chunks made for a very non-organic feel and was a bit claustrophobic. The levels are now made of 25 chunks (and will probably drop to 16 on the starting levels). Each chunk is much larger than the previous chunks. There is also an edge system that makes the map have more variance and feel more natural.

This new system will save lots of time in the future. Creating 25 rooms is much quicker than what would have been creating 49 (if I made an edge system for the previous room creation engine), even if the new rooms are larger. The new larger rooms really don't feel like they take much longer to lay out. Now that there's more space, I can toy around with mini sort of biomes.

I'm still figuring out what will feel right as far as difficulty and maneuvering and enemy interaction. Right now it feels too easy with it being so wide open. I'm going to brainstorm on how to make it have more tension; More risks and more rewards.

I've already thought of some time-based triggers which include enemy spawns and possibly using the skirmish border system that I had in originally.


I feel like the maps are going in the right direction, they just need refining. 

Working on games and honestly most art that I work on feels like molding a piece of clay. Unfortunately, I judge my work before it's finished and it's disheartening. I have to keep remembering that I wouldn't judge an incomplete sculpture as a finished product. I'll get there with Loop of the Lost, but right now it's still just a somewhat familiar blob of clay. 

Should have some new art in the next update. I'll try to make another before the end of the month.

Until next time.


Watching Your Child Suffer

Tonight was an interesting experience. After some thought, it was totally my own fault. I wanted to blame other people, and I have valid reasons to do so, but ultimately, if I put in the extra effort, even when it seemed like it wasn't needed, I could have fixed the atrocity that happened.

Suburban Scavengers was chosen to be part of a local game tournament. It was nested with a few other locally developed games. I sent a new build to the organizer (which was totally unnecessary) and was struck with problems. Game breaking bug.

I fixed the bug and exported a new build. I tested an install and noticed that the game clock was off. This is a known issue with Game Maker build exports. I've had this happen before. 

I changed the necessary settings, guessing what I used to fix it before and did another export. Uninstalled and reinstalled the game and everything seemed to be working fine.

Ship the build.

I sent a note to the organizer saying that the new build should be good and that if it felt sluggish to just use the old build.

Well...I don't think the organizer tested this one. I think he just assumed that since I made changes, everything was going to be working fine.

Cut to the tournament. Late into the night, my game is finally up. I'm excited to see people experience it for the first time. There are always fun reactions.

The game is running unbearably slow. Slower than I've ever seen. We're talking 20% normal speed. Sound still works as normal so I know it's a clocking error. This game is set to run at 60fps. The sleep mode setting in Game Maker fucks it up and makes it not.....

I ask the organizer to shut down any other background processes to see if it fixes the issue....Of course not. The build is running as Game Maker has exported it.

I was very embarrassed. This was many people's first impression of my game and it was a buggy disaster because the game was making roughly 5 times more checks per step. Grabs were not grabbing correctly, players were glitching when jumping near the couch (admittedly that kind of happens at normal speed), and the running at 20% of its normal speed.

For those who haven't played Suburban Scavengers, it's a fast paced game. 

I internally blamed everybody possible and beat myself up about it all the way home. It was about an hour and 15 minute ride.

I got home, installed the latest build on my living room pc.

It's slow.     Not to the extent that it was at the tournament, but the clock was definitely off.

I made another build, and the game runs correctly here.

I'm going to continue to learn things from this experience. 

It's put this sort of fear in me about shit going awry outside of my control. I should be used to it by now having worked in computer repair for 6 years, but it still gets to me.

Kind of felt like I needed to get that short rant off my chest.

Going to keep cracking at Loop of the Lost until I have a game to sell.

Until next time.


Save the Name

This is going to be a brief update, but I still feel like it's necessary.

I decided to work on the save file for the still untitled game. I hadn't originally considered that the game would have lots of unlockables, which would require a save file. After a bit of dumb code storage, I have a save system that displays unlocks as they are obtained, and will cycle through unlock splash screens if more than 1 item is unlocked at the same time. It can scroll through everything if you manage to unlock them all at the same time. It should only take a small amount of tweaking to make it work with everything in line.

Game Name. Kale and I have been trying to think of something fitting for a while now. The original plan was to make a game about a delivery guy in an alternate semi-futuristic Nineteen Ninety-X. The more we thought about the original plan, the less feasible it seemed.

After laying some foundation, the game had changed a bit and the theme has as well. We agreed on the basic story of a man in the same time frame that has a ring that has gone missing. It was given to him by somebody very important to him. He's given a mysterious clue that leads him into the woods to look for the ring.

I jumped on and started typing up a bunch of words that sort of fit the theme. I made a name generator that smashes the words together in different ways in hopes that something will click.

Check it out and let me know if anything sounds good to you.

I'm sort of partial to "Loop of the Lost."

I'm hoping to have something that looks like a game by the end of next month. Lots of it depends on art. 

Until next time.