:o
(https://vjointeractive.files.wordpress.com/2019/10/screenshot-2019-10-31-at-14.42.20.png)
There seems to be loads of talk around mazes, so in further extension to the maze code I released, here is a purely 2d (3d) maze - currently no monster...
Yep, maze games are cool. 8)
Quote from: iWasAdam on October 31, 2019, 14:45:05
There seems to be loads of talk around mazes, so in further extension to the maze code I released, here is a purely 2d (3d) maze - currently no monster...
Do it, Adam. You know you want to. I'd do it in GMS2, if I could think of a way.
well, to be honest, it is easy to build a big maze map all in code, so yes it is a good approach for lone devs...
curious to see what you can create (in 3d!) ;)
@RemiD Yep, the maze create code is very simple (as posted elsewhere), but the actual 2d drawing is not quite as straightforward as it first seems as you need to write all the 2d code to deal with the correct drawing - there's no bitmaps used here.
A (true) 3d version would be much more simple, just create the base primitives and display - but (in this case) what is the fun in that? ;D
current version with some design lines to aid with the 2d plus a slightly modified 'maze':
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-01-at-07.12.58.png)
Reminds me a bit of a maze game I created on my C64. For rendering,I had an array of PETSCII strings for each wall and path. I would check left of the player, if blocked, then I'd draw the wall string, otherwise, I'd draw the path string. Id do the same for right and in front. If the front is not blocked, I'd then check that space's left and right and front. I'd continue this way until the path was blocked, or I had gone the maximum depth.
now with doors and 'visited' map
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-02-at-07.24.50.png)
It's very 'pure', no graphics getting in the way of things and distracting me.
Next step is to work on some zoning and logic. E.G. there might be something that needs attention in zone 1 before progressing to zone 2, maybe the you need to collect something, etc.
I like the fact that it is neutral, so it could be a spaceship, or a pyramid, etc
automatic zones completed and being shown in different colors:
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-02-at-10.13.46.png)
defining zones is also good for combining surfaces / textures, and determining what is visible and what to hide/show/render, and which entities to update, so yeah, way to go (i do something similar)
@ RemiD
Do not mix up what iWasAdam might understand with "zones" (game logic wise) and your "zones" (render/physics engine wise).
So "zoning" can be useful for what you propose - but it cannot be the same as what "game logic zones" would be.
Adam's zones are possibly there to eg allow stuff like "explore the area to open a door" stuff whilst your is there to improve performance by skipping handling of certain elements - or to skip rendering walls or so.
I think for now Adam is using them to display what you have visited (he wrote that :D) so on bigger maps you can have some "auto (mini-)map" which draws what you "know" + some area around. So it is a visual helper which could be used for game effects too (explore 75% of a map and trigger a special event - like a new boss mob spawning).
But maybe I assumed wrong and just brought in some new ideas :D - it is up to Adam to clarify.
bye
Ron
Quote(explore 75% of a map and trigger a special event - like a new boss mob spawning)
That is pure genius :o
Just to clarify my use and creation of zones for everyone.
zones are just arbitrary numbered areas. Where the number refers to it's position in the abstract map logic.
E.G.
a door has a zone of 3
therefore placing the key to zone 3 anywhere in zones 0/1/2 is valid. As zone 3 can be accessed from possibly zone 0 or 1 or 2. But not anything higher.
So lets say you have 6 zones (0,1,2,3,4,5)
and the exit is in zone 5, but is full of acid
in zone 4 is a handle to drain acid
But zone 4 needs a key to enter
in zone 2 you find a key to zone 4
:)
All this chat about mazes reminds me of the the "Hunt the Wumpus" simple grid maze game that I posted the source into the old forums a few years back. I wrote that bugger with a stinking hangover as well as it was new years day, I think :) That used a data structure that was a grid with different numbers indicating what kind of hazard was in it. Just didn't have the ability to put a 3d maze graphic system into it. Not sure if I could do it now with gamemaker, hmmmmmm......
zones can be defined in different ways : cells of a grid or other shape (made of flat triangles), and useful not only to uptade / render only some entities, but also for gameplay (keys and locks/doors or triggers and events), i am aware :)
there can be all kinds of zones : youtube.com/watch?v=C2VfmhAlTO8 :))
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-07-at-08.01.52.png)
More or less done. There are monsters and some other stuff. The green diamond above is a monster!
What I have found is that using 2d to represent 3d is not a brilliant idea, but is great to learn general concepts.
The 2d top down map view, could become it's own game
doors and zones makes things complex for no reason, so they were removed
Will be interesting to see about doing a 3d conversion. possibly Faux to begin with
Quote
using 2d to represent 3d is not a brilliant idea
no need to reivent the wheel ? :P
Quote
doors and zones makes things complex for no reason
not really... but ok
Quote
Will be interesting to see about doing a 3d conversion
curious to see.
maybe go for a graphics style similar to this :
store.steampowered.com/app/249630/Delver/
(seeing how you already know how to make such "animated images")
Quotemaybe go for a graphics style similar to this :
store.steampowered.com/app/249630/Delver/
Good thought. I will see about getting the initial 3d render system operational with import for models, etc first :)
OK, got the (very) basic import and display routines operational. Needed to modify the entity code so you are dealing directly with mesh and material, the scene then automatically handles the entity system itself - trying to minimise copies and optimise itself.
Here's the initial test with 2 cell positions with contents to form the start of a corner...
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-08-at-12.06.26.png)
Next up will be to add a mini maze and link them together... >:(
per pixel lighting/shading, will you add ?
yep. I've got a nice solution for lighting. but let's not get ahead at this early stage...
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-09-at-12.52.54.png)
I've got a primitive map and position system, next up is map collision...
And sliding collision sorted 8)
Started work on a door, the frame and the door itself.
Shown below is the first peek with the final shader being activated as a test:
(https://vjointeractive.files.wordpress.com/2019/11/door.png)
In operation it feels incredibly claustrophobic. And that is without the lighting system being operational.
I can already see how it should be - doors should open automatically (unless locked) and then close.
Sound should also be very prominent. doors should scrape, there should be some sort of ship background hum, maybe cracking and creaking as the ship shifts?
It's sort of like a cartoon 'Alien'. there is a real feeling of dread...
and a quick anim for you, showing the automatic door
(https://vjointeractive.files.wordpress.com/2019/11/door.gif)
Looks like it's working well :) - What's "RCO" stand for?
Rescue Corridor
Ron Corp :D
Royal Corps
Random Character Overlay
bye
Ron
Quote from: Qube on November 10, 2019, 15:57:33
Looks like it's working well :) - What's "RCO" stand for?
Right Corner .. ;D
Hey... Who turned out the lights? ::)
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-11-at-07.06.36.png)
But seriously. if you were creeping arounf this place and something jumped out on you... Just have that extra pair of undies ready!
The look of this is great, reminds me a little of perfect dark on the N64.
I've not played Perfect Dar. Maybe I should give it a go?
ok. For the time being I'm not using the noise.
Added crouch, so pressing 'c' squats you down - would be good for avoiding laser beam traps possibly, or getting into vents?
Here's the first look (crouching) with the lighting enabled (the red door is locked and it flashes). You can also see that doors have raised (yellow/black) floors. When you go over them, there is a slight jump in height too.
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-12-at-08.50.21.png)
You can also look up and down. Heres me crouching and looking up at the light on the door
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-12-at-08.59.08.png)
this looks nice, maybe take a look at alien vs predator 1 (windows), similar environments, low details graphics, nice lighting effects (using scaled "flares")
good suggestion :)
Here's the result of some shader messing about: :D
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-12-at-15.08.46.png)
I do like the art style that you have going on there
8)
Excellent - looks like i'm on to something :)
Next up is dealing with FOV and only showing what can be seen. I can then begin culling the 3d models as needed. that way I can have big levels...
well step 1 - what's in the fov triangle wasn't too bad:
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-13-at-08.32.38.png)
Just need to do a recursive check through the visible fov positions next
it took a bit of wierdness with checking floats to int and making sure that a .5 and above would be rounded up (and not down).
But in the end the recursive routine starts from your position, and works it's way around the field of view and outputs the correct result - even taking into account doors that can be opened:
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-13-at-12.06.07.png)
You can see on the minimap the dark red squares are the active field of view. The bright red squares is the current visible cells. the door is shut, so no further cells are added.
Final stage will be to take the bright red output, feed it into a list, and render the contents of the list - nice and simple process :)
> it took a bit of wierdness with checking floats to int and making sure that a .5 and above would be rounded up (and not down).
local rounded:int = int(floatValue + 0.5)
2 = int(2.4 + 0.5)
2 = int(1.5 + 0.5)
1 = int(1.4 + 0.5)
bye
Ron
Even simpler - thanks Derron :)
ok, next step is to introduce objects into the map - these are static things that will need movement checking, etc.
But for now, this is the first revision of a 'hold' with a barrel. There is only the light from the door.
Because there are no walls, you can also see that the 3d objects behind the door are no visible and being properly culled 8)
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-14-at-07.22.36.png)
and now with some walls and lights and crates - The Hold!
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-15-at-07.12.30.png)
And here we are crouching behind some crates and looking up at the Hold ceiling showing details that might be missed. My thought is to have some form of mist coming from the overhead vents?
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-15-at-14.32.34.png)
I like the way the lighting is subdued - it's actually a warm yellow, but the light fixtures have a nice glow to them :)
so, is this "emissive lighting" (with a shader) or just fullbright surfaces ?
Neither, it's a variation of light propagation.
First look with some particle stuff going on - lots of recoding to get it to work :(
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-17-at-12.19.04.png)
and something less subtle with some additional motes
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-17-at-12.29.20.png)
in blitz3d, smoke / fog, looks better with the blendmode "add" (instead of only considering color+alpha), maybe this can help...
Quote
Alpha:
This blends the pixels according to the Alpha value. This is rougly done to the formula:
Rr = ( An * Rn ) + ( ( 1.0 - An ) * Ro )
Gr = ( An * Gn ) + ( ( 1.0 - An ) * Go )
Br = ( An * Bn ) + ( ( 1.0 - An ) * Bo )
Where R = Red, G = Green, B = Blue, n = new pixel colour values, r = resultant colour values, o = old pixel colour values.
Alpha blending is the default blending mode and is used with most world objects.
Multiply:
This blend mode will darken the underlying pixels. If you think of each RGB value as being on a scale from 0% to 100%, where 0 = 0% and 255 = 100%, the multiply blend mode will multiply the red, green and blue values individually together in order to get the new RGB value, roughly according to:
Rr = ( ( Rn / 255.0 ) * ( Ro / 255.0 ) ) * 255.0
Gr = ( ( Gn / 255.0 ) * ( Go / 255.0 ) ) * 255.0
Br = ( ( Bn / 255.0 ) * ( Bo / 255.0 ) ) * 255.0
The alpha value has no effect with multiplicative blending. Blending a RGB value of 255, 255, 255 will make no difference, while an RGB value of 128, 128, 128 will darken the pixels by a factor of 2 and an RGB value of 0, 0, 0 will completely blacken out the resultant pixels. An RGB value of 0, 255, 255 will remove the red component of the underlying pixel while leaving the other color values
untouched.
Multiply blending is most often used for lightmaps, shadows or anything else that needs to 'darken' the resultant pixels.
Add:
Additive blending will add the new color values to the old, roughly according to:
Rr = ( Rn * An ) + Ro
Gr = ( Gn * An ) + Go
Br = ( Bn * An ) + Bo
The resultant RGB values are clipped out at 255, meaning that multiple additive effects can quickly cause visible banding from smooth gradients.
Additive blending is extremely useful for effects such as laser shots and fire.
great read there :)
Looking down I found some sort of space tool so I picked it up...
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-18-at-14.33.30.png)
it took bugger long time to get that glove sorted too 8)
Here's a quick look showing the tool + your arm and pressing escape brings up the option, map window...
(https://vjointeractive.files.wordpress.com/2019/11/arm.gif)
just working on the 'dos' part when you lift your arm.
Here's the map view:
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-20-at-07.18.44.png)
You can also see the debug map in the bottom left
Got the noise sorted and a new widescreen viewport.
Also now has stable 60fps windowed or fullscreen :)
As it's a monster maze I thought we needed a monster...
I think inspiration is going to be halflife, alien and the thing!
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-22-at-08.53.23.png)
I think this looks really good!
Thanks, it's sort of coming together :)
Been working on the 'crab' a bit more adding some texture to it. The red underside gives it a much nastier look - which is great... I'll have to work out how to animate it now >:(
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-22-at-10.54.50.png)
Coming along really well, looks great :) - You are such a fast coding machine that I think you are an AI from the future :o
more an old git from the past with a good tool chain 8)
Lets see when you abandon this project for the next distraction ;-)
Bye
Ron
touche! ;D
But seriously - this is more a cumulation of everything before it...
Working on some interesting but a mind boggling stuff with the 'crabs'.
E.G.
1. when you get close they should turn to face you - without going round in circles like a dancer - sorted
2. when you are in their line of sight they should turn to face you - not yet sorted
generally got the detection sorted. Whilst doing testing of positions I used the light material by mistake and found it works great on the crabs.
So a little tinkering later - they now glow with a pulsing light...
Good? Bad?
(https://vjointeractive.files.wordpress.com/2019/11/screenshot-2019-11-23-at-11.43.47.png)
They should glow "poisonous" or contaminated/radiated - so greenish or so. Depends on the scenery but a "white" would mean it is kind of a deap sea animal wit flourescent material.
bye
Ron
i have seen a similar creature, if i remind correctly, it was in the game blood 2 ? or maybe in half life 1 ? (this horrible thing jumps on your face to grab your head and then eat you, it was really scary ! :'( )
HalfLife: Headcrab
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2F66.media.tumblr.com%2Fda97121dacdcf59bb6e1082e56853cd0%2Ftumblr_mib0v6ZSqR1qcb7k0o1_500.gif&hash=7582696f2f9908df5cc624bb9bc387a4da1a52c8)