Posts Tagged ‘Homebrew


Shaw’s Nightmare 2 for DOS

Today I’m taking at look at a sequel to the homebrew game Shaw’s nightmare, simply called Shaw’s Nightmare II it was released by Michael Muniko in 2016. There is much in common between the two games, such as being made using the Build engine and being heavily inspired by Doom, Doom 2 specifically in the case of the sequel.

Firstly there are a few things I didn’t notice when playing the first game that apply equally to both. They support VESA graphics with resolutions higher than the standard 320×200 VGA, today I’ve used 640×400, although you can go as high as 1024×768. The sprites look a little better with higher resolutions because the scaling doesn’t cut out as much detail. Also items in the game are rendered using a voxel engine that is part of the build engine.

Running at a higher resolution seemed to required more processing power, it worked reasonably well under dosbox with 60-100k cycles. Later I found turning the cycles up to maximum helped with another issue.

Artistically nothing much has changed in the sequel, although there are some new enemies and a new weapon which fit in well with the pre-existing art style. The main improvement comes from the level design, which has better enemy placement and level layout, creating less issues with sprites clipping and blocking your view. There are a couple of levels which are clearly inspired by some found in Doom II.

The basic sound effects are much the same as the first game, however there seems to be some improved music. It’s no symphony, and the quality varies by song, but it’s generally better than the first game.

The controls still suffer from input lag, and a little bit of sluggishness in the movement of the player. I tried using the mouse in combination with the keyboard, but found difficulty with mouse sensitivity. The demo in the game suggests it’s possible to get something more functional, perhaps requiring more processing power to reduce input lag. I tried setting dosbox to maximum cycles and it helped, but didn’t eliminate the problem.

Shaws Nightmare 2 is an incremental but significant improvement over the first. The control lag is still an issue, but it’s more playable. After getting used to the control issues I did start to have some fun. If you want to give it a try you can find it on the authors website here.

This slideshow requires JavaScript.


Dungeons of Noudar 3D for DOS

Today I’m looking at another homebrew game, Dungeons of Noudar 3d made by Daniel Montiero. It’s a simple dungeon crawler game with a similar visual design to something like Eye of the Beholder. After playing with it a while I think it’s in need of some polish, but is really quite impressive from a technical standpoint.

Hardware support is VGA only for the graphics. The main 3d landscape is rendered in a large window and it features fairly detailed geometry. Compared to the basic 3d dungeons that many RPGs had, it offers quite a bit more visual detail. Whilst it doesn’t render fast enough to be comparable to any FPS games, it works quite well for this style of game, which typically doesn’t update the screen as often. The sprite artwork is nice at a distance, but when enemies or items are up close it can be very blocky.

Hardware support for basic sound is included for PC speaker, Adlib and the OPL2LPT. I tried both the PC speaker and Adlib whilst playing using Dosbox. I found that the sounds varied in pitch and length a little, perhaps because of the emulation, it usually coincided with a delayed screen update. The sound effects are fairly basic, and although they sound fine you don’t miss anything by having them turned off. Unfortunately you can only select the sound support with a command line parameter.

The game play consists of some basic puzzles and some bad guys to fight, both within relatively small levels. Puzzles basically involve finding ropes to cut that open doors. Generally this just requires you to explore the level. Enemies roam the levels, the first ones you encounter don’t seem to be very active, but after a few levels they will chase and attack you. Later enemies require you to use specific weapons in order to damage them. If you encounter them without the weapon required you’re generally boned. Luckily you will find the right weapons if you explore the levels thoroughly.

There are some issues which make it more difficult to enjoy. I got stuck on the 3rd level, the prison, and even though I had cut all the ropes I couldn’t find where I had to go next. In a few other instances I reached the level end without having the chance to fully explore the level and find all the items. I think some kind of visual indication on the exit door/location would help greatly, both so you know when you’ve found it and so you don’t accidentally finish a level before you’re done exploring.

I think it could also use the capability to save and load a game in progress, or continue from a check point after death. Not having these features really limited how far I could progress as I’d have to start from scratch each time I started to play. I’d have liked to get further into it, as it was getting more interesting at the point I got up to.

Issues aside Dungeons of Noudar 3d whilst a bit slow to start is an enjoyable experience. The 3d renderer is fairly impressive in it’s capability, even if it’s not fast and the basic game mechanics do work and play quite well. It’s not a deep experience by any means, but it you enjoy dungeon crawlers this might be worth a download. You can get it from his website here.

This slideshow requires JavaScript.


Numjump for DOS

Today’s game is another homebrew made by Daniel Remar in 2017. It’s quite interesting as I’d describe it as a turn-based puzzle platform game, an odd combination indeed. He wrote it using QBasic and has included the source code along with some binaries compiled for 16bit MS-DOS as well as 64bit windows (using QB64 as the compiler).

In technical terms the game is fairly basic, it’s essentially using a 40×25 text mode with 16 colours and the PC speaker for sound. Whilst simple, it’s very effective, and the game is quite nice to look at for a text mode game. Sound is quite sparse, with few effects at all, but they are appropriate and don’t become annoying the way some games can become. Looking at the code, this could be ported to anything with a decent Basic interpreter and a 40 column display mode.

What makes the game odd and interesting is the mechanics of it. Your character only really has two goals, collect gold and reach the exit. In order to do this you need to jump around a small level avoiding obstacles that trap or kill you. The player moves one step at a time. The jump mechanic is a bit hard to describe. You have a maximum jump power, which is the number of steps you can travel vertically. For each step vertically you take you can take a step horizontally left or right. Once out of steps you must fall to the ground. You can fall at any time in the process by pressing the down arrow.

It’s a bit tricky at first, but once you get the hang of moving around it works quite well.

The level design works well with these mechanics to make for a challenging but not punishing experience. If you do happen to fall foul of a trap, the level is simply reset without any further penalty. The traps are fairly basic, there are spikes, Laser barriers that can be toggled, and some moving obstacles where timing is critical. Some areas can be inaccessible until you’ve increased your jump power, and others require a bit of thought to find your way in, but in general the puzzles are solvable in a reasonably short period without being easy.

Numjump is fairly short, you can finish it within an hour, but the length feels just about right. You get just enough of each type of hazard and puzzle to feel satisfied, but not so much as to become repetitive. If you’ve finished the game, you can go looking for all the secret dots, or make an attempt at collecting all the gold for the reward of a secret level, one for each achievement. It’s fun and well designed, so I’d say it’s definitely worth a go. I downloaded it from the Dos Haven site here, the official site there is linked to the authors twitter account.

This slideshow requires JavaScript.


MagiDuck for DOS

I was browsing the web recently when I stumbled across DOS Haven, A site devoted to home brew games made for MS-DOS machines. This is a welcome and quite unusual find as there isn’t much of a home brew scene for these machines as opposed to other platforms like the C64 or MSX which have a larger and thriving home brew community.

Though not featured on DOS Haven I found today’s game from a news item there. MagiDuck is an action platform game made for the IBM PC. It was made by Toni Svenstrîm with the latest beta release in 2016. It has especially low system requirements, only needing an 8088 @ 4.77 Mhz, CGA and 256K of RAM which covers pretty much almost any MS-DOS machine except those with MDA displays or small amounts of memory. The low system requirements come about partly because of the graphics mode used, which is a hacked text mode that allows for 80×50 with 16 colours similar but not the same as that used in Paku Paku.

Although the graphics are quite blocky due to the low resolution, the artwork is of quite high quality. Magiduck, the enemies and the levels are all colourful and cute. On the technical side the game animates quite smoothly on even minimal hardware and even manages vertical scrolling. Because early PCs didn’t have sound cards only PC speaker is supported, and the sound is fairly good for that device.

The game controls and responds quite well in a way that most PC platform games do. Although the key layout is a little different, z and x are used for jump and fire, it works just as well as the usual control and alt key layout. Magi jumps and moves as you’d expect, jumping around is fairly straight forward, which is good because the levels are quite vertical. Each level is basically a tower, you start at the bottom and work your way up to a star which represents the end.

I quite like the level design, like the sprites they are colourful and fun. There is some challenge, but not so hard as to be painfully difficult. Whilst they are quite narrow (a limitation of the engine is seems) there are a number of paths of varying difficulty through each level. You can spend time collecting treasure and keys from all the paths for extra points, or speed run the game for a time bonus.

Magiduck is technically very impressive and is very well designed and built. It does have some minor flaws, but generally they don’t impact getting enjoyment out of it. The hardware it can run on is very impressive, the original IBM PC was not considered capable of scrolling colourful graphics until later machines got much more powerful and the first EGA/VGA cards became common place. This game can do it on an original PC @ 4.77 Mhz and a CGA card. If you own an old machine this is certainly something you should give a try, you can find it on IndieDB here.

This slideshow requires JavaScript.


Download for Bob’s fury

This week, after much time thinking about it, I decided I’d finally offer my old school platform game, Bob’s Fury for download. I originally wrote it in Qbasic back when I was 14 with the help of my younger brother who did some of the graphics, levels and helped play test it. The idea for making my own platformer had grown out of playing two of my then favourite games, Xargon and Hocus Pocus.

VGA Screenshot

VGA Screenshot

I originally had much larger plans for it, I had wanted to make water levels and puzzles like those in Xargon and run and gun sections like those in Hocus Pocus. At this stage I was still using gwbasic and I found that it was difficult to store enough graphics and tile information for one screen, it seemed like I wasn’t going to be able to build anything at all when I discovered Qbasic on the school computers.

Qbasic had many advantages, it supports a better graphics mode which allowed 256 colours at 320×200, then a common resolution for most PC games. The interpreter also had roughly twice the memory available to it which allowed me to use many sprites and get two screens per level. It took me roughly a year to build the engine and most of the levels. It was still quite limited in many aspects and didn’t live up to the original dream, but it was still a significant achievement.

Later in high school I had a computer studies teacher who did a bit of programming themselves. I know it seems odd, but not that many teachers of computer studies could actually program in those days. Anyway I was lucky enough that he gave me a copy of Borland Turbo Pascal 6.0, which was to be the first compiler I’d get to use. It was a bit of a learning curve, but I managed to learn pascal much quicker than either basic. I decided I wanted to port Bob’s fury as Pascal was a much faster language and wouldn’t be as limited as Qbasic.

EGA Screenshot

EGA Screenshot

I had a few problems however when I learned the graphics library. Firstly I hadn’t encountered pointers before, and they were required for bit mapped graphics. So I experimented with some simple vector graphics at first. Also Pascal didn’t have any support built-in for the graphics modes I wanted to use. So I put off making a port until I could learn more about the language.

Shortly after I went to University and got internet access I was able to solve some of these problems. I practised and learned how to use pointers in general and I found files that provided support for the graphics modes I was after. By 1999 I had built much of the tools and libraries for graphics and a few ancillary libraries needed. I’ve been working on this port sporadically since then.

I’ve been reluctant to release it for a few reasons. The first one being it’s quite unfinished. I haven’t really made enough new levels, I’m only really half way through making the first episode. The bulk of the levels are actually from the original Qbasic version, which are obviously quite limited. I’ve built a system for playing Adlib music, but haven’t made any music yet, appart from tracks for testing the software anyway.

CGA in game.

CGA in game.

So why am I releasing it? Well because despite the limitations it’s pretty cool, and I have fun playing it. (one of the reasons progress has been slow!) I want to motivate myself to get busy making more levels, now I realise there will probably be little interest in it, but stuff that I post about on my blog tends to get worked on. So having it here is a great motivation for doing more work and perhaps reporting progress as I get more done.

I’ve put a ZIP file on my download site here.


Blogs I Follow

Enter your email address to follow this blog and receive notifications of new posts by email.


Mister G Kids

A daily comic about real stuff little kids say in school. By Matt Gajdoš

Random Battles: my life long level grind

completing every RPG, ever.

Gough's Tech Zone

Reversing the mindless enslavement of humans by technology.

Retrocosm's Vintage Computing, Tech & Scale RC Blog

Random mutterings on retro computing, old technology, some new, plus radio controlled scale modelling.


retro computing and gaming plus a little more

Retrocomputing with 90's SPARC

21st-Century computing, the hard way


MS-DOS game reviews, retro ramblings and more...