Unnamed procedural low-poly roguelite

I’m making a game with a friend using jme 3.1. It is for now a simple roguelite game played with an FPS camera. As we are both fond of vaporwave, it is designed with the word retro in mind. Also, the project development is focused on the Agile & Scrum methodologies.

As in many roguelite games, the game heavily uses procedural generation for its levels.

I will mainly post media here and links to my blog. The purpose of this thread is to see the advancement of the game.

https://www.gamedev.net/blogs/entry/2264447-zone-division/
https://www.gamedev.net/uploads/monthly_2018_02/smoothedBorderMap-Gaussian.png.1f710ade1271b3a4745cf18246ce8f08.png

https://www.gamedev.net/blogs/entry/2264544-zone-generation/
https://www.gamedev.net/uploads/monthly_2018_02/image.thumb.png.dabfc74065279611beab5f09c82c5ebd.png

6 Likes

Nice project! Good luck with it!

May I ask what algorithm you have used for the Voronoi diagram? Do you use Fortunes? Or do you go for more complexity than n log n? From time to time I scratch the topic Voronoi diagrams and I had some good lectures about it but I have never seen a working bug free implementation of the fortunes algorithm…

2 Likes

Thank you very much! :slight_smile:

The library I use to create the Voronoi diagram uses Fortune’s algorithm. I then apply three times Lloyd’s relaxation algorithm, which is fortunately included in the library.

Well, in terms of code, it seems pretty bug-free. However, the controllability is not as I expected. I mean, I was able to retrieve each zone “center” point and each edge contrary to Joise which only generates pure N-dimensional noises including Worley’s noise. Nonetheless, I do not have a direct control on how many zones I have in a certain area; it’s actually an approximation from my part, especially because relaxing the graph 3 times extends the global area of all zones. Yet, I do have control of the total number of zones.

2 Likes

Nice find! Thanks for pointing it out, I will check this library.
Sounds like some difficult problems to solve. But I’m sure you will find the right way.

1 Like

Recently, we’ve been working on a more classical approach to terrain generation : dungeons. Dungeon generation will be used for the jungle world. Right now, it generates rooms and corridors by crawling like a snake and thus having a maximum of 2 connections per area.


image

Here’s a blog article I made describing the algorithm.
https://www.gamedev.net/blogs/entry/2264790-simple-organic-and-brute-force-dungeon-generation/

4 Likes

Unit vision control made with cones and ray casting.

https://www.gamedev.net/blogs/entry/2264737-unit-vision/

4 Likes

We added a Navigation mesh algorithm for our AI agent.

https://www.gamedev.net/uploads/monthly_2018_04/path2.png.0550ac2008f14546fa0f998d6133a487.png
https://www.gamedev.net/blogs/entry/2264799-navigation-meshes-and-pathfinding/

6 Likes

We also implemented a dynamic material that is actually a palette:

https://www.gamedev.net/uploads/monthly_2018_04/image.png.f2bcf7967865d5c80777d3e08fb4428c.png
https://www.gamedev.net/blogs/entry/2264805-dynamic-color-palettes/

5 Likes

I’ve made a mock of some type of splash screen for levels.
I think we’ll need to change bits here and there, but it’s something…

2 Likes

We had an idea of using a iridescent shader for one of our model
Something alike CDs:

image
https://www.gamedev.net/blogs/entry/2264817-idea-iridescent-shader/

4 Likes

Tried to follow a tutorial on iridescence shading in our blog, and it’s looking pretty good:

Although the tutorial itself was for Unity/HLSL, I’ve managed to translate it nicely to GLSL…

8 Likes

After a play test event at our workplace, we kinda realigned ourselves.
Here’s a mock-up of our HUD.

I still dont know how we’re going to implement this, but…

https://www.gamedev.net/uploads/monthly_2018_05/mockHud2.png.f230f250a256c5123df80eab983975b6.png

https://www.gamedev.net/blogs/entry/2264834-gui-mockup-2/

2 Likes

We added a somehow easy seeking behavior for our AI agents :

https://www.gamedev.net/uploads/monthly_2018_05/ximage.png.ac120a0dc9ea2cc0e9cb458ea53c6725.png.pagespeed.ic.SQ_H4_KtvU.png

https://www.gamedev.net/blogs/entry/2264855-steering-behaviors-seeking-and-arriving/

We also added wall collision avoidance.

https://www.gamedev.net/blogs/entry/2264856-navigation-mesh-wall-collision-avoidance/

We’ve made some trees. Of course, it’s just a rendering, but we might use the actual geometries in the game.

1 Like

Wall collision avoidance in action

3 Likes

We got food for everyone! it’s on the house :wink:

9 votes and 0 comments so far on Reddit

https://www.gamedev.net/blogs/entry/2264883-low-poly-meshes/

6 Likes

FresnelOutlineShader

Testing out our fresnel outline shader. It will be used as an item selector visual.

Added a nice abstract Zig zag bar. It’s all made with Lemur, so it’s pretty dope :kissing:

2 Likes

Here’s the bog post for the Fresnel shader :

https://www.gamedev.net/blogs/entry/2264941-fresnel-outline-shader-for-picking-up-items/

2 Likes