Procedural RPG

Community Forums/Showcase/Procedural RPG

grindalf(Posted 2016) [#1]
Ive been playing around with this for a while now and have chunks generating quite nicely now.










I still have the desert Biome to make buildings for and then I can move onto the next step which is stitching everything back together(I stripped the seamless loading so I could work on the biomes easier) then its..... gameplay.
Ive been trying to make a procedural RPG for quite a few years now and keep failing/losing code/ getting stuck ect. Hopefully I will finish this one.


https://www.facebook.com/grimoireofworlds/


RemiD(Posted 2016) [#2]
I like the graphics style, this reminds me Daggerfall, :)
I am curious to see what game you will manage to create...


RemiD(Posted 2016) [#3]
Can you please explain briefly how you generate a city ? (the logic, the steps)
And how you build the meshes and textures (with premade parts or all in code ?)


grindalf(Posted 2016) [#4]
Thanks. Im going for a snes style but in 3D. Im even using 15bit color palette for my textures to keep the old feel. And most of my textures are 32x32 pixels.

meshes are all premade models.
city is generated by creating roads. I take a random starting position and direction and move for a random amount of spaces then another random position is taken and the cycle starts again. A path cannot be placed if another path tile is to either side of it. then after Ive finished with the roads I fill in the blank spaces with houses, trees ect.


markcw(Posted 2016) [#5]
This is looking awesome now, well done!


AdamStrange(Posted 2016) [#6]
any chance of a top down view so we can see the roads :)


grindalf(Posted 2016) [#7]


Happy to oblige.
The program is currently making some houses with no road touching them. I will change that at some point so it only puts trees in those spots


Volturna(Posted 2016) [#8]
Love the style!

A few years ago i did something similar but didnt get to draw graphics. Those spots you're talking i set them as a backyard of the adjacent houses, so its something you can easily do.


grindalf(Posted 2016) [#9]
Ooooh Backyard, I like that idea. Thanks Volturna


RemiD(Posted 2016) [#10]
@grindalf>>Your buildings look all the same, the only difference seems to be that some have 1 level and some have 2 levels correct ?
Maybe try to build different kinds of buildings depending on the purpose of the building (house, tavern, clothes shop, armors shop, weapons shop, spells shop, potions shop, temple, guard barracks, chief house, bank, etc...) (easier said than done, i know)


Cocopino(Posted 2016) [#11]
Very nice!

But "keep ... losing code" is sub optimal :)
Have you ever tried GIT + Bitbucket? Checking in your code may take some time of getting used to, but it will pay off bigtime.


Matty(Posted 2016) [#12]
I do like these minimalistic style designs where palette limitations and similar are used....it gives me some ideas for my next project (whenever that may happen)


RemiD(Posted 2016) [#13]
@Matty>>I also like the graphics style, especially the use of a limited number or colors for coloring and for lighting/shading. For a similar graphics style, i use one main color per "material" and 1-2 colors for lighting and 2-3 color for shading, then the result is similar to what we use to see in the drawings in comic books/mangas...


@Grindalf>>a simple improvement you may want to add is lighting/shading on your texture (usually lighting at the top of the texels shape and shading at the bottom of the texels shape (for example on the windows/doors/beams)), this will add fake relief to the texture... (similar to bump/normal mapping but less noticeable and with static lighting/shading)


RemiD(Posted 2016) [#14]
@grindalf>>here is an example of what i mean : (each image/texture is scaled 800% so that we can see the relief and lighting/shading better, the originals are only 33x33pixels/texels...)

colors only :


colors + lighting+shading :



markcw(Posted 2016) [#15]
I agree the houses need more work, they stand out a bit. I was thinking of mentioning that before but didn't want to nitpick, maybe if you took the bottom edge of the diagonal roof and pixelated it so it wasn't a straight edge it would blend in more.

Also I think you need to change the house wall texture, the windows are too small and low down and the door is too low, unless it's a munchkin town, also maybe some beams under the eaves, there's just too much white space there.


RemiD(Posted 2016) [#16]
Also, since you use this graphics style (big texels), you may want to disable bilinear filtering so that your textures look sharp, just like images... See : http://www.blitzbasic.com/Community/posts.php?topic=103591 (post#17)


AdamStrange(Posted 2016) [#17]
Agreed on the texture filtering ;)


grindalf(Posted 2016) [#18]
@RemiD I have a similar effect on the windows already but I prefer yours so Im going to steal that :P

I will look into disabling the texture filter


RemiD(Posted 2016) [#19]
@grindalf>>Yes i have relooked at your previous screenshots and i have seen that you already use one main color per "material" and several lighter/darker colors for lighting/shading, this looks good overall. You just need to make sure it looks consistent (= the same style, the same logic when coloring and lighting/shading)

For example look at the leaves at your trees (post#1 screenshot3) the fake lighting/shading with texels colors is not correct on the leaves at the bottom (but correct on the leaves at the top) (if we assume that the light comes from the top (sun or moon) and the shaded areas are at the bottom)


grindalf(Posted 2016) [#20]
First some screen shots....




So I'm still working on this and am making some progress.
Since my last post I have managed to create a world wrap, as in, when you walk off the left side of the map you walk onto the right side. Theres no jerk or pause it just starts loading up the chunks from the other side of the map.
I've added in the main player(or one of the starting classes anyway)
You can now pick up the props(mushrooms, berries from bushes, herbs, ect)
You now have a basic inventory showing everything you've picked up.
And finally I've added in the first enemy the Evil Eye and basic combat(no real stats working yet just 10 hp each and a single point of damage when attacking)

I looked into that link to disable the texturefilters but its a DLL and I don't like them. I've had major problems with them making my games not work on other computers in the past and I want this to work on as many computers as possible. I've found that increasing texture size keeps the texture nice and crisp. Most of my textures are upscaled from 32x32 pixels to 128x128 pixels(I upscale them in gimp before hand, I guess I could do it in code but it would increase loading time by quite a bit) I think that in this day and age a texture of 128x128 is still very low res so I'm not worried about it.
But opinions would be nice.

Btw: come and visit me on facebook https://www.facebook.com/grimoireofworlds/


RemiD(Posted 2016) [#21]

its a DLL and I don't like them. I've had major problems with them making my games not work on other computers in the past and I want this to work on as many computers as possible.


Yeah it must be because of the evil eye... No seriously i have tested to disable bilinear filtering with this decls+dll on different computers with windows xp, windows vista, windows 7, windows 8.1, and it always worked well. (this is not like Ashadow or FastExt which may break compatibility with some graphics cards...)



I've found that increasing texture size keeps the texture nice and crisp


Yes that's another way to do it. But you will need many texels for big surfaces (like fences or buildings). A trick to avoid that is to subdivide your big mesh in several subparts and uvmap each subpart in a way to use the same texture space for the repeating textures. (example : wall, window, door, tile)


grindalf(Posted 2016) [#22]





I'm still working on this.
Added a new enemy the Slime, it can throw slime balls at the player.

BTW: Come visit me on Facebook
https://www.facebook.com/grimoireofworlds


RemiD(Posted 2016) [#23]
The textures look less blurry, well done.


AdamStrange(Posted 2016) [#24]
Overall, not too bad.

I would put shadow under everything on the ground so they don't look like they are hovering mid-air
you might want to try and desaturate the grass, to make the green slime pop a bit more
the dark pixel edge on the tree leaf texture doesn't look brilliant, possible suggest using a transparent edge instead so the edges don't stand out


RemiD(Posted 2016) [#25]
Another improvement imo, would be to try to have approximately the same texel size when coloring your shapes, because here it looks a little weird (but this is a minor issue)


grindalf(Posted 2016) [#26]
@Adamstrange I initially thought about putting shadows under everything but then dismissed the idea. I think you are right though. Its at least worth a try.
As for desaturation I'm not that good an artist.

@RemiD That has proven to be a near impossibility.

As ever thanks for the feedback. Its always appreciated


RemiD(Posted 2016) [#27]
It is possible to have approximately the same texel size if you texelsfill and uvmap in a certain way, but since the players will probably not notice or not care, this is not a priority...


However you may want to correct the wrong shading/lighting of the bottom leaves of you trees (the light is supposed to come from the sun, so the shading should be at the bottom and the lighting at the top...)


grindalf(Posted 2016) [#28]
Yeah the tree texture is on a fix list
I will get to it eventually


grindalf(Posted 2016) [#29]
Small video showing some of the gameplay so far

https://www.youtube.com/watch?v=Gg0vQtc4a3k


RemiD(Posted 2016) [#30]
It looks good and seems easy enough to play (zelda like), well done.


Can you please explain how you have made your 2d textures for the animated characters ? They seem to be textured sprites/quads with different textures depending on the character and the animationpose and the angle...
If yes, you must have a huge number of textures ! How do you manage that ?


Also, if the characters are textured sprites/quads, how do you plan to manage the character equipment (clothes, armors, shields, weapons), will you recreate all textures of a character each time the player equip/unequip something ? Is it fast enough to do that ?


grindalf(Posted 2016) [#31]
Thanks, It will have a bit more to it as I manage to add stuff in.
as for your question....
The player is a pivot with a sprite attached. I have a load of preloaded textures(32 so far) that I switch between according to the angle of the player in relation to the angle of the camera. the weapon is a quad placed at different positions according to the players current animation and angle.
Shields will be handled the same as the weapon.
No other equipment will be visible, as in make no change to the characters visual appearance. The game is based on old snes games and equipment changes were rarely visible then so I feel its the best direction to go in.
there will be class changes though that of course change your visual appearance.


grindalf(Posted 2016) [#32]


So I now have working Portals.
You can enter a portal and a new world is created that you are loaded into.
I will have it so you can visit old worlds as well but its not written into the code yet.


grindalf(Posted 2016) [#33]
So I'm still working on this...
Added in mountains. Its a whole new chunk system that allows for tiles stacked upon tiles.


I've also been playing around with day/night cycles. I'm still not entirely happy with it yet so we shall see if I decide to change it.


https://www.facebook.com/grimoireofworlds/
https://twitter.com/GrimoireofWorld


OldNESJunkie(Posted 2016) [#34]
Looking good so far, can't wait to see it in action.


EdzUp MkII(Posted 2016) [#35]
Looking good :D

Have you got slopes or is it just blocks?


grindalf(Posted 2016) [#36]
I will be adding slopes as well. but even the blocks are not full square blocks. They have curves and rounded edges ect. I use 3D models as the ingame tiles.

I do have a vid on youtube but its quite old now
https://www.youtube.com/watch?v=Gg0vQtc4a3k

The game has progressed a bit since then


grindalf(Posted 2016) [#37]




Still making progress. Added minmap, swimming, saving/loading, levelling, inventory, item usage and a few other things.


grindalf(Posted 2016) [#38]




I've been working on adding new things to the game.
It now has limited crafting, chopping down trees, new enemies, caves are being worked on and so are towns folk(still need to add better sprites for them)
The game is becoming quite fun to play though :D


RemiD(Posted 2016) [#39]
Maybe a small video about the gameplay ? Just to give us an idea.

You may want to take a look at this game :
https://www.youtube.com/watch?v=Dn6kl501JP8
which has similar graphics than yours, it may give you some ideas...


Guy Fawkes(Posted 2016) [#40]
AWESOME freakin' RPG man! Keep up the good work! =D

~GF


RemiD(Posted 2016) [#41]
You seem to not care about my previous advices, and you can indeed choose not to, but i will say them a last time just in case :
-your lighting/shading is not coherent. Especially on the leaves of the trees... Thelighted areas must be lighter, the shaded areas must be darker...
-the coloring is consistent but the texel size is not, and since you have not desactivated bilinear filtering of textures and rather chosen to increase texels density in each texture (which is not a smart approach), now look at the blured colors on your houses compared to on the characters.

But again, it's your game, you do what you want !


grindalf(Posted 2016) [#42]
Actually RemiD a lot of the things you mentioned are in a list of "To do" but I don't get much free time I work a 50plus hour week and don't get much time to work on my game. when I do I prefer to add content/features than do graphical touch ups.

You really think its a bad idea to not use plugins?
Ive had a game that was completely unplayable because of my use of a plugin in the past I really don't want to make that same mistake again. But lets leave it to a small poll(As Ive never used a plugin for blitz)


Has anyone ever had any problems releasing games in blitz with plugins?


RemiD(Posted 2016) [#43]
@grindalf>>yes i understand that we all have lives/works and our free time is limited, these are just suggestions, you do what you want with them !


About external libraries (decls+dll) it is not that all are reliable or all are unreliable, it depends on what they are trying to do.

Some functionalities of FastExt and of AShadows and of DevilShadows may cause problems with some os/graphics cards because they require some specific capabilities of the graphics cards or do a little of hacking in memory to achieve some effects.

But to disable bilinear filtering is rather safe and reliable (it is just a setting of directx7), i have tested it on many different computers with Windows XP/Vista/7/8 old/low end and it never caused any problem.

The best way to know is to download my code example (with the decls/dll) and to test it on all the computers that you have access to. This way you will see by yourself that it is safe with most computers (maybe not older than 2002 (the beginning of Windows XP))


grindalf(Posted 2016) [#44]
I will try and give that a go sometime during the next week.
It would save me a little work and memory


RemiD(Posted 2016) [#45]
Yes it would simplify your texturing (it will appear on the textured mesh just as in your drawing tool).


Please report if you find a compatibility problem with some os/graphics card. It would be good to know what is the os/graphics card.


grindalf(Posted 2016) [#46]



The inside of caves and fishing. Still having problems with leaving caves but its getting there.
Fishing is finished. Each chunk has different fish so it means you need to try fishing in different areas to catch everything(Or even a different world)
I've just added in the DLL that disables texture filters so at the moment I'm just going through all my images and sizing them down(Going to take me a few days)


OldNESJunkie(Posted 2016) [#47]
Still cannot wait to try this out. Looking better and better with each update.


RemiD(Posted 2016) [#48]

I've just added in the DLL that disables texture filters so at the moment I'm just going through all my images and sizing them down


This seems to look good, let us know if the "disable bilinear filtering" works well on the computers you have tested it on.


RustyKristi(Posted 2016) [#49]
Looking good. Btw, would you mind posting your blob shadow routine? ;-)


grindalf(Posted 2016) [#50]
@RemiD So far I have only tested it on my computer and it runs perfectly.

@RustyKristi the blobshadow is just a sprite parented to the feet of my character. if the character is touching the ground I show the sprite if the character is not touching the ground I hide the sprite. there are occasional overlaps where the character is stood right on the edge of a drop and the sprite hangs over the edge but I remember such things from the days of PS1 and I am going for retro so it seems like a good enough excuse to leave it that way to me :P


grindalf(Posted 2016) [#51]
I added the .decls to disable bilinear texture filters and its worked fine for months now all of a sudden it keeps saying userlib not found and I cant seem to get it working again.

Any ideas/advice?


RemiD(Posted 2016) [#52]
@grindalf>>when you test your program by fast building it (with the rocket button), you only need to have the decls(s) and dll(s) in the Blitz3d/userlibs/ directory
However when you want to test the executable (.exe file) you need to have the .dll(s) in the same directory than your executable or it will not work. (including the fmod.dll)

Firstly i would delete all decls(s) dll(s) in your userlibs directory and put only the decls(s) dll(s) you need in your userlibs directory (in this case they are DX7DBF.decls and DX7DBF.dll)

Secondly, i would try to uninstall Blitz3d and reinstall it in a directory different than c:/program files/ to prevent errors caused by the restrictions to read/write in this directory (with Windows Vista/7/8/10)
For example, my Blitz3d is installed in a custom directory c:/Progs/Blitz3d/
Then put only the decls(s) dll(s) you need in your userlibs directory (in this case they are DX7DBF.decls and DX7DBF.dll)

You can find the last version here : http://rd-stuff.fr/disable-bilinear-filtering-of-textures-201612021732.zip
(i have modified the values sent to the functions according to the directx documentation)

And the previous version (the one provided by feeble) here : http://rd-stuff.fr/disable-bilinear-filtering-of-textures-201509131549.zip


Let me know how it goes on your side.


grindalf(Posted 2016) [#53]
There is no DX7DBF.dll in my userlibs folder and when I try to redownload the file it says its a virus and wont let me proceed. Do you think windows could have deleted it? Its been a few months but I'm sure I had it(Plus the game worked)

If windows is recognising it falsely as a virus and deleting it how do I get around that


grindalf(Posted 2016) [#54]
Ok Ive stopped windows defender from deleting the Dll(I even had to turn off windows defender to download it) but this is not going to help people play my game on other computers as their windows is just going to delete the dll and asking people to turn off windows defender is asking a lot.

Any ideas on how to resolve this?


RemiD(Posted 2016) [#55]
I have just analyzed the decls dll with microsoft security essentials and with malware bytes anti malwares and all is fine here.

But a virus may have infected the dlls on your computer, i don't know...
Try to delete them and then to copy the ones from the last archive (zip) i posted the link in post #52


grindalf(Posted 2016) [#56]
Yeah everytime I download them it says they are a virus.
Ive set defender to ignore them. I guess if its just defender then its not a big deal as most people don't use defender anyway. I wonder if other anti virus programs have a problem with the dll


RemiD(Posted 2016) [#57]
Another check which reports that it is safe :
https://virustotal.com/en/file/d543afbba069acb745bd0c890b45a340e605fd7713ac1a620193ac15071ebcc1/analysis/1481114453/

However as i said, there may be a virus on your computer which infects a .dll each time it is accessed/executed...

Or maybe it is your anti viruses/anti malwares tool which is paranoid...


grindalf(Posted 2016) [#58]
It wont actually let me download them. before it starts the download it says they are a virus and aborts the download. I doubt a virus on my computer would get them at that point so I'm thinking its an update to defender. lets face it, its only defender its not a huge deal.