Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+1)

Sorry about the buzzing. The HUD is kept stable by abusing the sample channel, which can only read from a particular region in the middle of ROM, and placing things there specifically is nontrivial. I had thought it was pretty quiet, but these headphones might not be very good. I'll somehow point it at all-zeroes in future ROMs. 

The HUD has to use the background now (where previously it was solid gray that scrolled freely) so I could afford to show three ammo counters. I tried using two sprites as the endpoints of their shared gauge, but the budget per-line is eight, so no. Fortunately I was hopelessly stubborn about the sample-channel thing. The NES's audio chip is on a separate clock that only kinda lines up. Using it for timing is rough. But I got it to fire an interrupt anywhere within the first dozen lines of the HUD, which was enough to leave the top part boring and fancy up the bottom. Aaand then I got the range down to within two lines. I'm still not sure how. It has to play a noise to do this, and I will make that noise a period of silence.

Multiplayer currently has friendly fire disabled, purely because I made hitscan independent of rendering, and have not bothered to check for the other player. Multiplayer also has some head-scratching bugs whenever it goes back to singleplayer. I had to push this update with several cans still freshly-kicked.

This update is mostly behind-the-scenes. I spent a few months tweaking performance as hard as possible, to where everything's about twice as fast as the last version. That let me update sprites on every frame and move fireballs more often. The levels are nearly the same, albeit with the new palette stuff, which is smaller and faster. Floor / wall graphics are more flexible, so there's now more than four types, but several of them are still fugly. The sound effects are different, mostly picked from randomly-generated examples. I was having no luck reasoning about the NES's sound chip. I made it cheap to throw a byte into a function and get out some kind of sqwonk or breep. I've picked good ones for everything that should make noise and a few things that are funny when they make noise. 

This was supposed to head toward a NESdev 2024 release. But I guess that's cancelled? Even the Discord look ambiguous. In any case this was all cleanup and prep to have it Done™ somewhere in November. That should still happen. I'm gonna keep freeing up space so I can cram in more levels. Make it feel more like a complete game. That's definitely something the ammo has already changed. The enemy pinatas finally matter!

(1 edit)

Ok so I got a chance to play it a bit more.

Everything is so much faster and smoother! I didn't even notice at first. I booted up an older release and found it kinda jarring compared to this release. Wow.

I love the second level colors with the blueish ground. 

The third level(?) colors are a little confusing as I thought there was hazardous lava and the gray enemies blend in with the mostly gray walls (hard fricking level). It reminded me of The Nether in Minecraft so... cool theme but difficult to navigate. 

I had an idea for turning... maybe double-tap left/right for quick 90 degree turn or back for a 180? I've been playing GunValkyrie lately which gave me the idea while I was playing around with strafing.

Also I had thought strafing moved at the same speed as the forward run but it's just normal walking speed. I don't know if speeding it up would make it too difficult to control and I'm used to it now but it might make some of the more hectic fights easier(?). *EDIT* Regular speed strafing makes a lot more sense. 

Multiplayer went well and definitely benefited from everything rendering faster. Now it runs at about the same speed as single player used to. I kinda liked no friendly fire to make more of a co-op game but then there would be no deathmatch. Maybe make it a separate game mode or a toggle in the menu.

I had some issues on flash cart. Strafing makes a curve and turns at the same time. The gun graphics get a little jittery when running which I think has been present in flashcart for every version. I didn't check if the strafing weirdness was in older versions.

I still haven't 'beat' it but thought I'd sunk enough time so far to give some more thoughts. 

MIND BLOWN yet again :)

(+1)

Controls might be close to final - in part because I've been sloppy. Letting player-two pause keeps breaking things. The easy parts are the hard parts. Strafing is deliberately walking-speed so that the fastest movement option is forward. Or backwards. Some of the new levels have jumping puzzles (floating puzzles?) that are just as easy in either direction.

The menu needs a do-over, which I've been avoiding, even as I've been shaving away wasted space. That code is two years old and fragile. I'm gonna have to redo it from scratch, and I don't waaanna. Which should (should) be good news for passwords, because I found a stupid way to make that simple, and the menu code is bad enough that I'd rather do that.

As for the strafing/turning and gun jitter, I think your turbo button's on.

Oh goodness you're right about me having turbo on... I forgot I was plugged into my four score on the floor and A button turbo was on 😅

Thanks for fixing the buzzing in the latest release!

I keep forgetting how hard it can be to work with the NES without breaking things. Snap turning might be disorienting and break something else. The accelerated turning you talked about before might do the same. It all works pretty well as-is. Sometimes I get carried away and want to run around like it's Quake for the NES and turning is the only slow-ish point. To compensate I usually run out of firing range, reorient and fire while running toward the enemy, strafing left and right.  Still a load of fun and a total marvel to exist at all. Release this on cart on Kickstarter and it'll make a killing. I think I owe you some money at this point at least :)

I haven't played much with the menu until you brought it up. I didn't know selecting Give Up cycles levels I'm not good enough to reach lol.  Memorize and Recall make sense. Suffer does damage to yourself but not sure why? Pain changes damage and HP I think. Edit is pretty much free roaming camera for me. 

Thinking of it like tank controls helps. You can usually back up while turning and dodge some fire. Some levels are just hard as nails, though. I did a test run for 100% kills yesterday. The first six levels took maybe twenty-five minutes. The last level took fifteen. Ten of them after a mid-level save, just trying to clear the final room.

Some near-future project will just throw sprites. Walls represented mostly by corners, lumpen floors marked as highs and lows, enemies... presumed. Slayer The Hawk was originally supposed to be vertex-only Wave Race, or like, Thunder Helix. But it could be another shooter. Throwing dots is so much faster than trying to squeeze a tilemap onscreen, six columns at a time. 

Pain is the difficulty level, but all it changes is AI speed. Only a few tiles each frame let enemies "think." More pain, more tiles.

Suffer is kind of a joke at this point. I was padding empty space, early on, and leaned into the edgelord vibe of putting an ultraviolent blood-splattered game on NES. It's stuck around because it turns out to be useful for testing health, death, respawning, etc. If I keep it, it could give you ammo, as a trade-off. But it might just disappear. 

Start Over-- is broken again? Dammit. It's supposed to restart the level.

Edit is a full-featured editor. There's terse instructions in the readme. There's mouse support. I'll have to document all the lower stuff at some point. 

There's a secret option below Give Up that toggles scattered versus linear updates.

Mouse support also works with gameplay. Rapid turning causes visual issues, because the NES fillrate sucks. Then again... smooth movements seem fine. Can I just double the turn speed? Oh, wow, yeah, that was easy. Twitchy. Very prone to lingering columns. Especially with scattered updates. 1.5x speed, every-other-frame, judders. And still has visual errors on busy levels. Hmm.

Screw it, I'll upload the bare ROM.

I've been playing the crap out of the game today now that turning is sped up. I think I'm on level 5 with the lava but Maybe they shuffled because I've played it before and don't remember level 4 before today. That last jump puzzle in level 4 had me stumped for a while. 

I thought that if 1.5 speed broke it then maybe 1.25 would be fast enough and tried to dummy find the code that had been changed from "within sight" and alter it but I guess you did move levels or something because most of the code was swapped around lol. I can't say that I notice the jitter but either myself or the level gets discombobulated at times and I lose track of what's where at high speeds. 

I did start using Memorize and Recall a lot more and find it's a great built-in save-state. It was useful before busy rooms or making jumps.

Mouse mode was surprisingly intuitive but turning to fast seemed to register the opposite direction and along with the wonky fill rate I'd get lost as to where I was facing.  Which makes me think why snap turning wouldn't work because it wouldn't have time to fill the screen.                    I do not have an SNES mouse and adapter and was playing in FCEUX with emulated IR mouse  which might be responsible for the opposite input. I will probably end up getting one for Former Dawn along with an SNES controller  though. Which makes me think if Slaughter could benefit from an SNES controller and shoulder buttons for strafing would work. 

The level editor is pretty cool now that I've tried it out. I would've spent a lot of time as a kid building my own levels. I don't know how you'd save them though. I also don't know how to place or edit enemies yet.  A manual for this game would be cool. It's already pretty expansive. I could imagine spending some time reading through it.

The posted version is a full 2x turning speed. It is a bit much, but... it really is better. If you're searching in a cheat-engine, the number wouldn't show up, because it's two INC  or DEC instructions in a row. If you're looking at the source code, first of all, my apologies. But in any case it's about halfway down movement_alone. Ctrl+F "not strafing." 

Reversed mouse input is definitely the game. I have no idea why it does that. I tried fixing it recently, to use the input more directly, and turning left was twice as fast as turning right. That's straight-up haunted. It's on the same to-do list as the hilarious variety of ways multiplayer can break. Less debugging, more exorcism. 

Enemy placement is the screen with letters and numbers on top of floor tiles. There's a 7x7 subscreen, showing a zoomed-in view, since the grid for enemies is finer than the level grid.

How you'd save levels is a password system. Which I really thought I had an easy solution for. Quicksaves are already in VRAM - that's where they're stored.  So this week I figured, I could store them as hex. Displaying the second screen would be a human-readable version of that data. Unfortunately for that human, even simple levels weigh about two hundred bytes, and then get fatter as enemies move around and bleed on things. My approach to that problem was: tough shit. The idea of someone typing in a four-hundred-digit "password" is funny enough, before the implication of a mapping scene. Unfortunately for me, even with compression, doubling the size of passwords like that can easily wind up too big to fit on one screen. So I still have to do it the hard way. 

In the meantime, the way I save levels to put them in the ROM is opening up Memory Tools and copying them straight out of RAM. 

(+1)

The level design is outstanding. I've noticed some really ingenious layouts all over the game but I finally found the last enemy in level one and man... I thought those glide jump paths in later levels were sneaky but here in level 1 was the sneakiest I'd found so far. I actually thought it was a glitch because I went over the level many times searching to no avail.

If it's any help with save size I think I'd be ok with/without blood on the ground. 

Hey there's friendly fire amongst enemies! And boy it helps in the last level. I cleared out all the enemies in the open ground and let the ones in the cave kill themselves a bit but unfortunately got taken out before I could reach the finish. So close.  It's neat though to see their shots and bodies explode behind walls, reminiscent of the Farsight gun in Perfect Dark. 

(+1)

I 100%-ed the game! ...sorta. I killed all of the enemies but try as I might I couldn't find the final portal. I did end up using the Give Up menu to cycle through to see what was past the last level and man, the credits... much appreciated!!

The value of this game is crazy. 7 fully populated and varied 3D environments with platform puzzles and diverse enemies. I don't think I'd ever have believed someone describing this game to me on NES.

It blew up on youtube! Awesome! It looked like the top comments were neck and neck with how impressive but dizzying/confusing the graphics were. I went into NESDEV and response seemed about the same. I personally love the graphics and both my 11yo son and I had no issues navigating the environment or identifying enemies, especially with the recent releases. I checked the post again and I see a lot more support now. I think it just needs more footage out there and more people playing it to gain traction and grow wings.

The game now has what I think are the two final levels, and one of them should clear up the final level. The other kind of final level. You know what I mean. 

Enemies are a little more diverse, but not super well balanced. I tore out a bunch of code expecting I'd draw more guys, and instead let each level change their height and behavior. That needs tweaking. Enemy placement and quantity also need tweaking. Mostly to fill out secretive areas beyond that one trolling hidden guy in the first level. That was a placeholder for a secret exit or something, an entire year ago, but I might as well put some combat in the upper area if that's simply not a feature.

The game isn't done, done, but I think this is it for capital-c Content. I went from barely fitting four levels to having enough ROM for ten or eleven. There's nine and that's enough. According to John Romero that's a megawad.

The menu needs a whole do-over. It works for both players, finally, but it should really appear on either side. (Same side or opposite side?) God help me, I may yet redo the whole sprite-projection function, or at least drop it to 30 Hz when the game chugs. The tileset is surprisingly underused... and a lot of diagonals and dropoffs are still placeholders, somehow. It deserves music, and I have room, but apparently I cannot be arsed. I took a hard look at SNES controller support and said no. Maybe after I leave it alone for another six months.

I'm not sure what comes after this. Possibly chopping down a quick and dirty Wolf3D port. Possibly aforementioned dot-throwing. Possibly a C64 port, since I've got all the hard parts in 6502 assembly, and that machine could save your edited levels. But from here to at least the end of the year, it's only tweaks, fixes, and telling people the game exists. 

The latter of which I did get scooped on.

It has been fun to watch the numbers go up, and tell people on Youtube to try their own ridiculous projects. Mmmight do a lower-detail version, per suggestions? It'd be an easy ROM-hack. I could add a mapper and make the tile graphics swappable, but quite frankly, I don't wanna. It's too much of an invitation to put in even more work. I want to do what's next.