DIV ARENA FORUMS

Mode 8 experiment

BreadCaster - 11-8-2016 at 05:12 AM

Have a screenshot of a thing I'm making!



It's not really got a name at present, though the program is called Spaceport.prg.

Presently it's just got environmental and inventory puzzles, though first person shooter combat is planned.

As well as an inventory, camera bob, crouching, jumping and sprinting are currently a part of the game, though only crouching is currently necessary to clamber underneath horizontal pipes and railings that block your path. The textures are all currently stand-ins, which brings me to the main purpose of this experiment.

I want this game to serve as an example of the cool things that can be done in mode 8, while also serving as a demonstration of the bugs that it plagues developers with. Sprites glitching out of existence, getting stuck in sectors, the engine sometimes flickering in and out of blackness because it can't decide which sector it's in - all this and other things aside can be seen in this game, and though it's quite playable, it's been impossible to work around most of these glitches (yes, I have played around with m8_height and the radius of the camera process - didn't help). Aside from this, I don't really feel it's possible to create the kind of world I want to without 32 bit colour, so the textures will remain as stand ins until I'm able to develop stuff in a full colour range.

But there are also some really awesome things you can do with the engine. When one door opens, a shaft of light is thrown across the hallway you're in, using manipulation of several m8 points - I've got the mode 8 camera tilting up and down to look up and down the stairs as you ascend/descend them, sectors which become shrouded in fog independently of others. Doors open to rooms, seemingly located underneath other rooms.

TL;DR: It's possible to do really great things in mode 8. It's also near impossible to do so because of the bugs. I'm hoping this game will serve as a showcase of how mode 8 can be both amazing, and terrible at the same time. Hopefully it will be of use to Mike and others in fixing mode 8 glitches in the future. :p



[Edited on 11-8-2016 by BreadCaster]

MikeDX - 12-8-2016 at 10:31 AM

Hey Dan.

This is cool. Having something push mode8 to its limits will definitely help us nail down some of the issues.


BreadCaster - 12-8-2016 at 08:47 PM

Awesome! I'm also trying to make it suitably atmospheric too - think System Shock 2 but with less combat and no weapon degradation, but with more inventory puzzles :p

Dennis - 22-8-2016 at 07:06 AM

Quick question: That iron railing, is that a texture? If so, it has transparancy? That seems rather interesting, I didn't know it was possible in mode8

BreadCaster - 22-8-2016 at 11:58 AM

nope! :p it's a row of sprites, a la mode 7. It has collisions on it so the player can't walk into certain areas. It's also used to create pipes that the player must duck under in order to continue :)

wasabi - 16-11-2016 at 12:31 AM

Wow, great work dude. Reminds me Metal Gear, don't know why because you obviously not inspired on it... those railings are very well achieved, can not believe it's a row of sprites.
If you don't mind, it would be awesome to share your findings in M8 capabilities when you feel prepared to (I pressume some tricks will be revealed post game publishing?) Sorry if I'm asking too much.

[Edited on 16-11-2016 by wasabi]

BreadCaster - 16-11-2016 at 05:20 PM

Quote: Originally posted by wasabi  
Wow, great work dude. Reminds me Metal Gear, don't know why because you obviously not inspired on it... those railings are very well achieved, can not believe it's a row of sprites.
If you don't mind, it would be awesome to share your findings in M8 capabilities when you feel prepared to (I pressume some tricks will be revealed post game publishing?) Sorry if I'm asking too much.


Sure! Although I'm not working on this program anymore, it was really just a test of mode 8s limitations (I'll still release it however). My plan currently is a cyberpunk-esque exploration based game made in mode 8, utilising some of the tricks I've come up with - but I won't be starting work on that until DivDX has 32 bit colour, or at least 16 bit. A lot of the tricks I used in this program will be utilized in that new game :)

The sprite bar process is quite simple, however. First, code a process - let's call it spritebar(x, y);

Spritebar is a mode 8 process (ctype=m8) which is simply a 2 or 3 pixel wide bar graphic, with no texture (you can just about manage a gradient, however actual textures are likely to clip into eachother and look... terrible, just terrible. :P)

Then make another process - call it Process renderspritebar(flagnum, direction, dist). Give it a few local variables - call_x and call_y. Set call_x and call_y to the processes coordinates (call_x=x; call_y=y; ) just after the Begin.

Now set that process to a flag (flagnum, so you can call it wherever you like on the map - ahh see, I think of everything ;) haha ). Then have it run through a for loop: for (loopcounter=0;loopcounter<dist;loopcounter++)

Then, nested inside the for loop, have a series of if statements.

If (direction==0); call_x++; end
If (direction==1); call_x--; end
If (direction==2); call_y++;end
If (direction==3); call_y--; end

Then, call the spritebar process - spritebar(call_x, call_y)


Now you should have a game with a spritebar :D I'll leave you to figure out collisions, but this shouldn't be too hard, just do it like you would in any other mode 7 or mode 8 game.

You can use sprite bars for the glass in windows, pipes, overhead beams, lasers, etc - hey, tell you what: if you want a challenge, try to recreate that part towards the start of half life 1, where you have to avoid the laser beams or die! That's entirely possible with this, and could make for a fun little game in itself. If anything, it'd sure get you used to sprite bars =)


[Edited on 16-11-2016 by BreadCaster]

wasabi - 21-11-2016 at 01:56 AM

Quote: Originally posted by BreadCaster  

Sure! Although I'm not working on this program anymore, it was really just a test of mode 8s limitations (I'll still release it however). My plan currently is a cyberpunk-esque exploration based game made in mode 8, utilising some of the tricks I've come up with - but I won't be starting work on that until DivDX has 32 bit colour, or at least 16 bit. A lot of the tricks I used in this program will be utilized in that new game :)

Thank you very much! I love spritebars from now on. And cyberpunk it's one of my fetish theme. I can't wait to see further development.

BreadCaster - 21-11-2016 at 10:08 AM

Quote: Originally posted by wasabi  
Quote: Originally posted by BreadCaster  

Sure! Although I'm not working on this program anymore, it was really just a test of mode 8s limitations (I'll still release it however). My plan currently is a cyberpunk-esque exploration based game made in mode 8, utilising some of the tricks I've come up with - but I won't be starting work on that until DivDX has 32 bit colour, or at least 16 bit. A lot of the tricks I used in this program will be utilized in that new game :)

Thank you very much! I love spritebars from now on. And cyberpunk it's one of my fetish theme. I can't wait to see further development.


Well mode 8 can make things look better than sprite bars, but where you want to do a simple horizontal/vertical line texture with transparency it's all mode 8 has for now, haha :p

If you want a really good example of sprite bars at work, check out Adherbals amazing Wolfenstein 3D remake for Retro Remakes, made entirely in Mode 7 :D

[Edited on 21-11-2016 by BreadCaster]