Show older

gamedev 

Added a new enemy. It attacks when in line of sight of the player. It still needs tweaking. The placeholder spritesheet has unequal sizes for the sprites.

gamedev 

Got the enemy to attack when the player is at most, 4 tiles away from the player and is facing the player. Though admittedly, it should be lower. I was just testing the conditions and I will lower the range to make it more reasonable.

I also got the hitbox to change size during the attack, but that's not demonstrated in this recording.

gamedev 

Tweaked the range to be more reasonable. Ideally it should be within stabbing distance.

gamedev 

The enemy now deflects bullets when facing the player and not attacking.

gamedev 

Added a lives counter to the HUD (was there before but it was just text and I removed it when adding the health bar). Right now, the icon is a coin because I'm borrowing HUD assets from a previous game project which didn't have an icon to represent lives.

gamedev 

Enemies now randomly drop hearts on defeat.

gamedev 

Added an "open door" animation when you reach the exit. Now, you have to press the down key to proceed.

gamedev 

Replaced the solid color tiles with an actual tileset. It's still a placeholder though as it is from another game (Mario Bros.).

gamedev 

Added a menu, imported from my last game. Not sure if I will have high scores for my game though.

gamedev 

Just got started with the level editor, but it's not functional yet and my meds are wearing out, so I have to work on it later.

gamedev 

Level editor is now running, but it's nothing, but an all brick background. Bare with me!

gamedev 

You can now place brick tiles in the level editor, but that's basically it for now.

gamedev 

It's been a while, but I finally decided to take the gamble and use my dying laptop to add the ability to change which tile to place in the editor.

gamedev 

Added a UI bar at the bottom which displays the current tile. I also added a yellow outlined rectangle which represents the area that is actually seen in game. Since the player can walk to one side and appear at the other, I have to include tiles that appear offscreen, so naturally the editor window is larger than the actual game window. This outline shows what will actually be visible.

gamedev 

Level editor can now load levels, though it can only load the tiles and you still can't save.

gamedev 

Game objects (only hearts) can now be placed in the editor. The editor now supports saving, but only the tiles.

gamedev 

Editor now saves objects (still only hearts).

gamedev 

Editor now supports all current object. You may notice a bug in this recording after saving with the fourth enemy being in a lower y coordinate after reloading the file. That's due to the fact that this particular enemy is larger than the game's tile size. I'm working on this issue right now.

gamedev 

Editor can now change the position of the player and exit.

gamedev 

Editor can now change the direction the enemies are facing.

gamedev 

Created the first level in the editor and tested it in game.

gamedev 

Editor can now increase the height of the level by pressing the + key.

gamedev 

Actually creating levels in the editor now. I'm not the best level designer. I kind of create the level as I go and my editors aren't very robust, but make makeshift editors are much better than creating levels from a text-editor.

gamedev 

Added a turret that shoots when in line of sight of the player. I will probably adjust the firing rate though.

gamedev 

Levels can now have a blue background. Now you can have levels either in a cave or in the sky, I guess.

gamedev 

I'm now using triple digit values for each tile in the tile maps because I've added more tiles to the tileset and it gotten to the point that each tile needs a double digit value along with the single digit value that gives the behavior of each tile. Naturally this breaks compatibility with the levels of the older format and I have to convert them manually, and have the reconfigure the level editor as well, but that's the price you pay.

I didn't do it earlier because I didn't expect to use that many tiles. I then decided to include background tiles, so naturally that increases the amount of tiles in the tileset.

You may notice that these tiles are from Mario Bros and CaveStory. I do these as place holders, and I eventually create my own.

gamedev 

Reconfigured the level editor to support the new format. I've also added a way to change the tile behavior and view the behavior of each tile in the editor. Tiles without an overlay are background tiles. Yellow represents solid tiles. Dark blue are platform tiles (ones where you can jump to from the bottom). Tiles with red overlays are spike tiles.

gamedev 

Now here is a level I can make now that the format supports background tiles.

gamedev 

I realize that I didn't include support to change the background color in the level editor, so here it is. It is done by pressing the left control key.

gamedev 

Added walkable cloud tiles for this particular level.

I have no idea what this game is going to be about. It probably will be a mix of sci-fi and fantasy, at the rate at this thing is going.

gamedev 

Added support for horizontal scrolling levels. Given, that this game is somewhat Kid Icarus-inspired and Kid Icarus did include horizontal levels, I decided I might as well include them.

Including this was a pain as I didn't originally planned to include this. I still haven't included this in the level editor yet, but I think I could get it done. I just feel like the game should be more than about some character jumping all the way to the sky.

gamedev 

In the level editor, I had to change the camera controls from the arrow keys to WASD because the left and right keys were giving me segmentation faults for whatever reason. Luckily, I can still use arrow keys in the actual game.

Follow

gamedev 

Honestly, having a compiler/debugger telling you exactly what went wrong is something I like about higher-level languages like C#, Java, or Python, instead of this "segmentation fault" bullshit.

· · Web · 2 · 0 · 2

gamedev 

I found the problem with the segfaults. I was already using the arrow keys for changing the facing direction of a select object and I forgot to make the current object pointer null by default. I'm probably going to stick to WASD for camera movement though.

gamedev 

Created a horizontal sky level. I'll probably have this level come after the vertical mountain climbing level.

gamedev 

Created the first boss fight. It takes 60 hits to kill. I plan on having it shoot homing attacks at the player.

gamedev 

Created a second boss. Currently, it's using the same placeholder sprite. This one jumps. I might have it shoot between jumps.

gamedev 

Second boss now shoots projectiles at an arch in-between jumps.

gamedev 

For whatever reason, I get this random bug that causes the sound effects to be high pitch. It only happens on my new System76 laptop and I don't know what is the cause. It's completely random. Sometimes, it sounds normal. Other times, not so much.

gamedev 

I've added a freeze frame after defeating a boss along with explosions. Ignore the high-pitched, corrupt sounds and me breaking the golden rule of keeping the cursor out of the recording.

gamedev 

Bosses can now be placed in the level editor.

gamedev 

So apparently, I broke compatibility between my game and level editor and I'm still trying to figure out how.

gamedev 

Ugh. Incorporating horizontal levels in a vertical platformer has made the code a huge mess.

gamedev 

Fuck it. I might have to scrap this project. I can't constantly tinker shit. And deal with broken compatibility with the level editor and game itself, while also having two modes.

I might redo the dungeon crawler project since I've been working a lot on procedural generation.

gamedev 

I really do hate scrapping projects, but I seriously can't deal with this tedious shit right now.

re: gamedev 

@xianc78 does MSVS/GDB give any useful info?

re: gamedev 

@binkle I ain't touching Visual Studio. I don't know what GDB is. Is it GNU Debugger or something?

re: gamedev 

@xianc78 yeah - you oughta look into it. Setting breakpoints and stepping through code can be helpful (and i say this as someone who does 95% of debugging with print statements)

re: gamedev 

@xianc78 @binkle What the fuck. And how long were you using C++? Ye, it's no wonder segfaults were an issue

compile with -g
run: gdb ./program
type: start
it tells you exactly where it segfaulted with 10x more useful info than you'd get in python or something. Type `p x` or `p *foo.bar` or whatever to inspect variables, bt for a backtrace

Sorry to hear that. For what it's worth this looks like a fun game to play.

@luke The biggest mistake was shoehorning in horizontal levels into a game the originally only supported vertical ones.

It sounds like that would add variety to keep the game from getting boring, but feature creep can kill projects for sure. What exactly is the problem?

@luke For vertical levels I have the player go from one side to the other. This required me to include tiles offscreen. I shoehorned in a horizontal mode, but that required extra code (like repositioning the camera). Too make matters worse I was also working on the level editor so I had to shoehorned those features as well.

Some levels ended up looking corrupted from the level editor to the game itself as a result and I was constantly fixing it.

Sign in to participate in the conversation
Game Liberty Mastodon

Mainly gaming/nerd instance for people who value free speech. Everyone is welcome.