I love how you managed to mesh seamless the flat aesthetics with having detailed graphics by using the very mute textured walls!
Daniel "MontyOnTheRun" Monteiro
Recent community posts
With game, I began as a pure scanline racer, but when the time came for placing the cars on the track, I end up cheating a bit and adding proper 3D projection (floating point on the web version, fixed point on the experimental DOS version).
There are some very good tutorials and articles on the subject, but I'm not familiar enough with GameMaker to suggest anything.
Sometimes I feel I should get more familiar with those technologies...maybe I could start shipping more games instead of my current paltry rate.
I definetly know the feeling XD
I like to think that I follow great people with interesting projects, on the cusp of delivering it - keeps on my toes. Focus and don't give up!
Been working now two game engines: one for 8-bit and 16-bit machines and one for 16-bit and 32-bit ones (one evolution of the one used in this game). Each run on various degrees of "good" on both Amigas old school Macintoshes, depending on the configuration. But I do not want to simply retread my steps, but rather ship a really good RPG, that pushes the old machines to some new direction.
Sometimes I feel that targeting those old machines end up getting me stuck, but that's the only target that I feel would make the game relevant :(
Good point - but I had it set for 16MB. Are you using more than this?
I'm not judging you. It's a jam; a mad dash to deliver a game. But might point to the culprit.
It's passing time for me to power on my 486 back again here :D
Unfortunately, both DOSBox and DOSBox-X seem to have issues running the game. It hangs after the sound configuration, with a hourglass on the screen.
Tried 320x200 with both Adlib and PCSpeaker
This is really sad, since this captures the essence of mid-to-late 90s PC gaming.
And it looks insanely fun!
I'm not using anything but simple ANSI C and the standard library (plus some code from Serdaco for driving the OPL2LPT, hacked to support a regular Adlib as well). I should probably be using Allegro, but I'm too lazy for that :P
The last time I touched on Pascal was some good 10 years ago, maybe more. It's a fine language, but I grew too used to C(++) to simply give up from it. Sure, up until 2 years ago, the move from C++ to C would sound ludicrous to me, but now it made perfect sense.
To be honest, as much as I know about interrupts in theory and have invoked quite a few from ASM embedded em C, but not 100% sure I'm doing it correctly. It works and nothing blew up in flames (yet), so I'm ok with that, but I would love to play PCM sound over a Sound Blaster some day. Maybe I will have to get down to some protected mode ASM. But not today.
For running on modern platforms, in situations where there's no direct PCM sound, I simply play a recorded version of my OPL2 sound (like, for instance, what I did with the Android version of Noudar: https://play.google.com/store/apps/details?id=pt.b13h.noudar) - works surpringly well.
I also always keep a debug version working with SDL, so I can leverage modern development tools and simply have a DOS/Amiga/etc Makefile.
Keep the good stuff coming! :D
Congrats on your game - it's no easy feat to ship a game for DOS. And you managed to keep a very good file size!
Did some tests on my machines:
486DX 50Mhz 12MB RAM = runs a little laggy, but playable.
486SX 33Mhz 8MB RAM = crashes at startup due to the lack of math co-processor.
Since Lua Number is a 64-bit floating point, your game will require floating point emulator (if you're using DJGPP, add -lemu at your linker command line).
This is also most likely the reason for the lag on my 486DX and also your known bug. But hey, there is a way around it! If you want, I can help you change Lua Number into a 32-bit integer (and most stuff will still work).
My lastest game, The Mistral Report (https://montyontherun.itch.io/the-mistral-report) also uses Lua (5.2), which I modified to use (almost) no float. At the end of the day, I had to add -lemu, but it's perfectly playable on the 486SX)
Many thanks! It worked!
Frame rate was all over the place and there were some texture coordinates mess up when closer to the near clipping plane, but all in all, it worked. I couldn't test with sound, but the console outputted a lot of errors regarding it.
Core 2 Duo CPU E7400 @ 2.80GHz
Intel HD Graphics
It's not such a bad machine - compiling C++ is a breeze.
Hey Jim - nice to see you around here! Thanks for taking the time.
My first attempt was a Raycasting engine, and while the speed was actually quite nice, I felt it would constrain the kind of environment I wanted to create. To be honest, never considered sprinkling some raycasting into later implementation.
That video you saw was from the SDL version, with me performing a flip on the video surface on every pixel, to help me debug stuff. I actually draw to offscreen buffer first and only then send everything to VRAM. To be fair, there was a fair amount of sloppy level design in there was well.
For my next project (The Mistral Report), while I did employ this same visibility algorithm, other options are still on the table. One thing I want to try is having a 1D Z-Buffer (Doom did that, AFAIK) for every column on the screen and perform the drawing front to back. Or simply go for portals-on-volumetric-sectors for good?
Finally, there is the undeniable bloat legacy from this engine being an port from a Android game I wrote while learning C++14. No wonder the binary end up with 800KB, while the rewritten engine for The Mistral Report is almost pure C99 and only has 150KB or so. Writing code for 486s was eye-opening.
Please, do whip out some awesome Pascal!
I firmly believe we didn't explored the 486s well enough. And Pascal could use some vindication as well.
Hope you had a good time playing. Its a simple game, but gives me great sense of accomplishment and will help testing the grounds for something bigger.
I remember the settings already being at the lowest - I was actually quite impressed by both that being the lowest setting and still looking amazing and by it being capable of detecting the need of the lowest setting. I believe to have closed everything.
Screen goes black once I enter fullscreen (Onda V80 plus tablet. running Windows 10 64-bit).
Who doesn't love a fart noise now and then? =P Had fun playing it. My only gripe is the download size.
I used to do a lot of this kind of stuff when I was learning. Good memories!
Hint: you can make it browser playable by using the Emscripten port of DOSBox. For action games, it's not very good, but for turn based, it's almost acceptable (check my entry to see what I mean)
Sorry, but I don't understand? I click and press keys, but nothing happens (other than a cube falling and a countdown). What's supposed to happen? What should I do?
I have to also report you that it was kind of sluggish on my Win10 64-bit tablet.