Got a blog started

Community Forums/Showcase/Got a blog started

AdamStrange(Posted 2014) [#1]
OK, I'm deep into dungeon creation and thought I'd start a blog showing progress (good and bad, or just indifferent)

http://vjointeractive.wordpress.com

Currently it shows various stages of random dungeon creation and how to tell the difference is rooms, etc

All with BlitzMax on OSX

Let me know your thoughts...


Matty(Posted 2014) [#2]
I like it. I see how you are genersting the dungeons. How many different methods did you try before you found one you were happy with?


AdamStrange(Posted 2014) [#3]
hmmm, good question...

This is my current one that I'm using to see how it finally looks with all the different zones, etc (currently working on different floor height).

the 2d dungeon game I was working on before (the code will all be integrated later) has 4 different generation methods to give completely different types (outdoor, indoor, crypts, sewers, tunnels, rooms, etc)

Each method is completely different (one block based, one maze based, one maze based with added rooms, the outdoor one uses a walking method)

The one featured on the block is the latest, had a lot of trouble getting all the zones to connect correctly.


RemiD(Posted 2014) [#4]
I am also interested in procedural building of underground shelters/caves.
I have not used a premade algorithm to generate the passages, corridors, rooms, of my underground structure, but instead i have tried to think about how the ancient humans would have thought and what they would have done depending on the environment and this can produce good results.
For example, a simplified version would be :
if number of tries is inferior to 100
choose a wall
check if there is enough empty space to create a corridor/room
if yes
create the corridor/room
if no
goto choose a wall
else
exit

Have fun :)


GaryV(Posted 2014) [#5]
has 4 different generation methods to give completely different types (outdoor, indoor, crypts, sewers, tunnels, rooms, etc)


Sounds awesome


AdamStrange(Posted 2014) [#6]
Generating the "dungeon" map is the first step.
Making it logical so that it flows correctly is another (linear vs non-linear)

But both of these (i find) don't add up to much if the look is wrong, so decoration becomes uber important... (I've not got to that stage yet, but it's close)


Why0Why(Posted 2014) [#7]
Nice blog. I love roguelikes and procedural generation has always been one of my favorite things to do. I have experimented with many different methods over the years.

@Remi - Try the cellular automata method for great caves.

http://www.roguebasin.com/index.php?title=Cellular_Automata_Method_for_Generating_Random_Cave-Like_Levels


AdamStrange(Posted 2014) [#8]
Try the cellular automata method for great caves.

mmm, excellent technique - one that I've heard of but not seen a good description of.

I've updated the blog detailing how I achieve outdoor parts. It uses a brush system to get similar results


RemiD(Posted 2014) [#9]
I have though of another approach to generate caves :

the caves are made of tunnels and intersections and "rooms"
each tunnel is a kind of subdivided cylinder
each intersection is a kind of subdivided cylinder with a variable quantity of holes on the sides
each room is a kind of subdivided cylinder or subidivided sphere with a variable quantity of holes on the sides
each part can have a different width, height, depth
each part can be connected to another part (i mean the vertices are at the same position where there is a connection between 2 parts)
and at the end of the generation, random deformations are done to the vertices of each part so that the walls looks "rocky"/irregular.
then add some stalagmites, some stalagtites, some columns
then add the nodes on each passage and around each stalagmite, each stalagtite, each column
then i don't know do what you want.


AdamStrange(Posted 2014) [#10]
Updated things with some new UI stuff and faux 3D with virtually no CPU usage.

Maps now have floor heights and automatic wall removal.


Matty(Posted 2014) [#11]
Ahhh good automatic wall removal - perfect for revealing hidden locations! ha ha!


Chapman7(Posted 2014) [#12]
Pretty awesome blog, Adam! I was wondering if you could point me in the direction of where I can assets like that


zoqfotpik(Posted 2014) [#13]
I was going to mention cellular automata too. Combining different numbers of neighbors in different processing steps or in different regions can yield interesting results-- try the Von Neumann neighborhood and the Conway neighborhood.

Also, and this is just a matter of taste of course-- but I think the anime stylization you seem to be going for with the character is very questionable, it is done to death and there are tons of different styles you could use, Binding of Isaac and Spelunky are examples of different art styles that are fresh.

The floors are really interesting, I would love to see more of that.


AdamStrange(Posted 2014) [#14]
where I can assets like that

The simple answer is "make them" - not helpful I know, I've been working away at the graphics for months on and off - refining, pushing pixels. Some come from an older rpg I was working on:
http://www.blitzbasic.com/gallery/view_pic.php?id=2314&gallery=&page=11

I think the anime stylization is very questionable, it is done to death and there are tons of different styles you could use, Binding of Isaac and Spelunky are examples of different art styles that are fresh.

Noted, I can modify things later as I want. currently limited to 24x24 pixels. Got to say I hate the Binding of Isaac style though - just simply awful - hehehehehe

The floors are really interesting, I would love to see more of that.

What would you like to see more of? i'm working on texturing and detailing and possibly something else with the architecture. The floor heights have given a very different feel to things


zoqfotpik(Posted 2014) [#15]
I agree about BOI but that sort of sickening color scheme and twee, My Little Pony like characters are what kids like these days. I was just using that and Spelunky as different examples.

Something is seriously wrong with kids these days.


AdamStrange(Posted 2014) [#16]
Yep, they all have arms and legs and everything - lol

unlimited dynamic lighting now operational (shadows not possible, but not really missed)

Been working on room visiting - rooms fade the lighting as you move away from them - starting to feel game like now :)


AdamStrange(Posted 2014) [#17]
Basic monster code integrated now with monsters having facing directions, colour, lighting, etc

No monster movement yet, but getting there...


Chapman7(Posted 2014) [#18]
Keep it coming!


AdamStrange(Posted 2014) [#19]
Keep it coming!

LOL - Great comment there... Just been adding different doors to the map system, working on water - luckily it's just a matter of taking what already exists previous and integrating :)


TeaBoy(Posted 2014) [#20]
That is a smart looking project you have there!


AdamStrange(Posted 2014) [#21]
Water functional now :)



Matty(Posted 2014) [#22]
Looks good.


degac(Posted 2014) [#23]
Interesting blog!
What are you using to 'draw' walls and floor?
I red your blog, but I missed something; from a basic 'vector' room you have a colourful maze!

About sprites: I will prefer a well-defined sprite than this 'old-style' one. Wall's texture are high-def compared to the player & enemy sprites. Not so good to see (for me at least)


AdamStrange(Posted 2014) [#24]
About sprites: I will prefer a well-defined sprite than this 'old-style' one.

would you believe they are the same?
main sprite is 24x24 pixels
floor is 24 x 24 pixels
wall is 24 x 48 pixels

I'll see if I can put something up about the OpenGL sprite generator :)


AdamStrange(Posted 2014) [#25]
Here's some new pics from the blog and the current status:

walls have been augmented with top blocks and made slightly taller to give some weights to them - particle mist - hmm secret door?


initial work with traps - mainly a flame trap to get a feel for things. Also the heights have now been filled in making everything look solid


And here are some crates - yay, there are always crates. Small boxes can be picked up and moved which means possible sokoban puzzles?

Also you can see that doors now have lintels over them

It is starting to have an ultimate (plays the game) feel to it.

One thing to add it has very low cpu use and moves/rotates very fast


Chapman7(Posted 2014) [#26]
Are you able to rotate the world? The perspectives change


AdamStrange(Posted 2014) [#27]
yep, the entire world rotates instantly - no delay or lag.
although you can move left right, the main mechanic for going different directions is to rotate and move forward/backward - no 3d involved.

Here's a pic of the world rotating around the central figure:


It's also resolution agnostic: it doesn't care what window size (or full screen) resolution. It will scale to fit


Matty(Posted 2014) [#28]
Love it.


AdamStrange(Posted 2014) [#29]
currently dealing with sound which turns out to be a bit more complex than I thought:

- You have environment sounds - their position relative to you
- your sounds - footsteps - different types of floor (wet dry, etc)
- (I suppose) item sounds - pick up item, put of armour, etc
- atmospherics - things like the sound of steam for a steam trap, sound of pulsing teleport

Luckily Wave2 comes in handy for dealing with sound editing, It can load virtually any sound sampler format and allows me to instantly edit, mangle, adjust sound visually and quickly.

Currently most sounds sit at 100k and I think I'm happy with that :)


Chapman7(Posted 2014) [#30]

no 3d involved.



:O you should make a demo or a video of it so I can see this in action more. This is blowing my mind.

For isometric game mechanics, did you find any solid resources that helped you accomplish all of this?


Steve Elliott(Posted 2014) [#31]
Not my cup of tea, but you seem to have thought this out and are progressing nicely. Best of luck with this project. :)


AdamStrange(Posted 2014) [#32]
No Problem on the Tea front :)
It's a slow process, but keeps bringing a skill to me, specially with the new sounds.

Been working on keys and lock picks. keys will open doors, lock picks will do the same but have a chance of breaking.


Chapman7(Posted 2014) [#33]
I am still very flabbergasted that you can rotate the world and it doesn't draw tris to do so. Do you just have a sprite sheet for each tile and pick depending on the camera angle, or do you just take a tile and do some image manipulation so it rotates it?


AdamStrange(Posted 2014) [#34]
It's using OpenGL - so it is drawing triangles (sort of).

I've got a simple quad filler

The quad filler fills a polygon with an area from my tile map.
Give it four screen positions and the tile graphic (row/column) and it fills it.

Use some quick (very simple maths) to obtain the initial rotation, and use this for all the map tiles (the blog has all the details)

I have toyed with moving to an OpenGL renderer - not for the 3d (I'll keep it exactly the same), but for the depth buffer and automatic depth sorting - this would be simple to add