Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Work in Progress / Simple 2.5D Topview game engine in DBPro

Author
Message
jfroco
14
Years of Service
User Offline
Joined: 1st Dec 2009
Location: Chile
Posted: 15th Feb 2010 03:45
Hello,

I'm currently coding a 2.5D topview game engine using DBPro, I'm using:

- Dark Basic Pro
- Evolved's Map Scape for building the levels
- Sparky's DLL for collision detection
- IanM's Matrix1 Utils for hires timers.
- Models from FPSC models packs.


I'm coding a game but my main focus is on building the engine.

So far the game code looks like this:




As you can see the objective is that most of the game be done in the 2.5D engine (DBPro functions)

To Do:

- Lights and Shadows
- Level map in the upper right corner
- mouse-based movement
- Shooting
- Enemies
(I'm thinkg about using DarkAI)

- Entities using Map Scape.

Some screenshots:











I'm uploading a video


What do you think?

Best regards

JF
jfroco
14
Years of Service
User Offline
Joined: 1st Dec 2009
Location: Chile
Posted: 15th Feb 2010 03:47
mmmh.. I cannot edit but the last image should be:



flashing snall
18
Years of Service
User Offline
Joined: 8th Oct 2005
Location: Boston
Posted: 15th Feb 2010 07:01
Looks nice! Kinda looks like full 3d to me, but I know what you mean. Look forward to seeing the vid.

jfroco
14
Years of Service
User Offline
Joined: 1st Dec 2009
Location: Chile
Posted: 15th Feb 2010 08:43
Thank you, flashing snall...

Video here (I'm still learning how to encode HD videos for Youtube so the quality is not the best)


http://www.youtube.com/watch?v=vnts2WkhS_w

Best regards

JF
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 15th Feb 2010 09:33
I can definitely see a remake of Heavy Barrel with this engine, one of my all time favorites!

Virtual Nomad
Moderator
18
Years of Service
User Offline
Joined: 14th Dec 2005
Location: SF Bay Area, USA
Posted: 15th Feb 2010 09:37
the vid looked good but the walls seem way too tall? regardless, good start.

Virtual Nomad @ California, USA
AMD Phenom™ X4 9750 Quad-Core @ 2.4 GHz . 8 GB PC2-6400 RAM
ATI Radeon HD 3650 @ 512 MB . Vista Home Premium 64 Bit
Butter fingers
18
Years of Service
User Offline
Joined: 20th Mar 2006
Location: Mecca
Posted: 15th Feb 2010 16:50
Has potential definately,

my only 2 crits would be
1) Maybe use a curve value to rotate the player, at the moment it's very jerky. even rotating the player using the mouse would afford you more control. I just think that once you put enemies in there, the limited amount of rotation is going to make shooting really hard.

2) There is some really nasty poly-clashing on the trees, it looks like it is rendering backfaces that should be hidden.

Other than that, the light mapping, texturing and collision seem pretty flawless, so good job there!

I want robotic legs.
jfroco
14
Years of Service
User Offline
Joined: 1st Dec 2009
Location: Chile
Posted: 15th Feb 2010 19:23
@TechLord,

Thank you.. I was looking for some "inspiration" and Heavy Barrel is definitely one game to look at.

@Virtual Nomad

Hi, yes I think you are right.. walls are too tall.. I will correct that. Thank you!

@Butter fingers

Regarding player rotation, I hope I can improve that when implementing the mouse-based movement.
I don't like the way the trees look either. I will try to correct that in the next version.
Thank you!

Best regards

JF
Jimpo
19
Years of Service
User Offline
Joined: 9th Apr 2005
Location:
Posted: 15th Feb 2010 20:46
Brighten up your game! Even with my monitor on max brightness your screenshots are nearly solid black.

Hassan
14
Years of Service
User Offline
Joined: 4th May 2009
Location: <script> alert(1); </script>
Posted: 15th Feb 2010 22:03
oh well, brightness looks normal to me..the game looks nice!

Deathead
17
Years of Service
User Offline
Joined: 14th Oct 2006
Location:
Posted: 16th Feb 2010 02:58
Quote: "Looks nice! Kinda looks like full 3d to me, but I know what you mean. Look forward to seeing the vid."

Well, it seems that you are referring to the "old" 2.5d, back in the days when it was really a mix, whereas now it is a 3d game with 2d style controls(stupid eh).lol

On-topic: Great work.



FireIndy
17
Years of Service
User Offline
Joined: 17th Jan 2007
Location: US of A
Posted: 16th Feb 2010 03:22 Edited at: 16th Feb 2010 03:24
It actually looks pretty nice dude. Is the shadow supposed to look that(the one of the person)? I may just be looking at it wrong. But good job


Want to work on Desolation?
Email: davekramer@live.com ; MSN: davekramer@live.com
Grasmann
15
Years of Service
User Offline
Joined: 1st Sep 2008
Location:
Posted: 16th Feb 2010 19:02 Edited at: 16th Feb 2010 19:09
Yes looks cool ... only a few things:

1.
As already said the game is very dark ... I mean I like horror games
and stuff so im used to dark games but I could hardly identify
anything in the video ... or if you want to let it this dark you
could add a flashlight ... I think that would look awsome ^^

2.
I would make the walk animation twice as fast ... looks a bit strange.

3.
Yes the shadow ... let me guess you build up your model in two pieces
to animate both at the same time ... but I think you just gave the
legs a shadow ... that could be the answer
Hassan
14
Years of Service
User Offline
Joined: 4th May 2009
Location: <script> alert(1); </script>
Posted: 16th Feb 2010 19:16
when i look at your second post, i feel like the room is upside down, or something, i mean, the walls should be wood, not the ground, dunno, just a feeling

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 17th Feb 2010 09:06
Quote: "when i look at your second post, i feel like the room is upside down, or something, i mean, the walls should be wood, not the ground, dunno, just a feeling"
Google Hardwood Flooring.

Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 17th Feb 2010 13:18
Looks good, with top down its never easy to get the characters looking right, but you've managed to get it looking clear and detailed.

The more detail the better, don't skimp on weapons detail etc, even if it's beyond the scope of the actual screen resolution. I mean, even though a hand gun might be less than 100x100 pixels on screen, doesn't mean that the texture resolution should be tailored to suit that. When using higher res textures, the extra detail emphasises the detail you can see, so when it moves you see different details, little marks you might not notice at first, that sort of thing. That's not a critique though, I'm saying it will be cool if you can maintain the detail in everything, make it look really sharp and people will like the looks I think.

These games, I find them more claustrophobic than FPS games, because although the pathways are clear, you can't really tell what is 20 feet in front of you. So having a radar is an idea, but with that it would be great to have threat warnings - like any time you get spotted, have a red highlight showing the direction of the threat. One thing I hope you can avoid is having visibility constraints - like if there's an enemy behind something, you don't know about it until you can see him. Having a sharp transition between being safe and then suddenly under threat around the next corner is frustrating. If you need something like that, consider fading the enemy depending on how visible they are, instead of visible or not, go for degrees of visibility. You might just spot a silhouette out the corner of your eye, but that's more realistic and forgiving. We have more senses than sight, but these games seem to forget that. What about smell, what if you could follow a guards trail of BO, or if he's smoking then it would be easy to track them. If guards are talking, you should be able to tell where it is coming from. At the end of the day, a guard walking around is easier to spot than a player skulking around - the player is far more likely to see the guard first. Within 20 feet, it would be possible to get the location of an enemy within a foot or two. Maybe best not to show an enemy, maybe an indicator instead. Would be pretty cool to think you can hear an enemy, but it turns out to be a dripping tap.

Know what I mean? - historically these games are made challenging by denying the player the basic senses that they were born with, we can only see - we can't hear, smell, or in any other way sense the location of enemies. If you want to make your game more unique and interesting, adding extra senses would be a good way I think - there's too much leniency in AI in these games and too many limits put on the player.


Health, Ammo, and bacon and eggs!
jfroco
14
Years of Service
User Offline
Joined: 1st Dec 2009
Location: Chile
Posted: 17th Feb 2010 14:40
First of all, I would like to thank you all for your time. It's great to receive feedback from you, guys.

I wil try to release a playable demo soon. after I include mouse-based movement.


@Jimpo,

I guess that's why some games have a brightness adjustment screen I will make the game brighter. Thank you.


@Hassan,

Thank you for your feedback!
Yes, the wood texture may be a little confusing

@Deathead

Thank you!


@FireIndy

You're right... I have a problem with the character's shadow. I would like to have a dynamic shadow based on different lights.


@Grasmann

Thank you for your feedback

1.- I would correct the brightness... but, the Flashlight is a great idea.
2.- OK. I will check the animation speed.
3.- Yes, I need to correct that.


@TechLord..

Hahaha.. In my country we use floating floor a lot. It looks like wood.


@Van B

Thank you for your feedbak.
I will try to mantain the detail.
I agree on the claustrophobic feeling. At the beginning I was thinkin on making a shooter game, but now I believe that this view may be better suited for stealth games.
It's a great idea using sounds to be aware of enemies before actually see them. I will try to include that in the game. Regarding BO, I don't think I can include it in v1.0


Best regards

JF
baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 18th Feb 2010 14:09 Edited at: 18th Feb 2010 15:24
Quote: "I would like to have a dynamic shadow based on different lights"

You could check for the closest light source each loop (saved in an array maybe) and set the shadow light position to the closest light when it changes.

Also you could set the strength of the shadow based on distance from the source, that way your shadow wouldn't just suddenly change direction it would fade out first. The only problem I can forsee with that would be if you have too many lights close to each other then enemies near to a light that isn't closest to your main character would have a shadow from the wrong light.

I want to test this theory so if you can wait I'll make a test demo!

EDIT: Here's a quick demo of what I meant (WASD to move!):


Grasmann
15
Years of Service
User Offline
Joined: 1st Sep 2008
Location:
Posted: 18th Feb 2010 16:17 Edited at: 18th Feb 2010 16:38
Mh ... I think for shadows it would be easier to just use a shader by evolved.

I couldn´t find it on the site but the "deferred shading"-system was just great.

But my tip definitely is to first concentrate on the engine ... I
made that misstake to first focus on including shaders and shadows
and stuff. In my opinion it´s very important to get the engine runing
in a solid state before wasting your time with that.

To use those shaders on the map I think its a good idea to split the
map into faces. I made that for my game.

Basically you check how much limbs are in your map and create new
objects out of them.

I don´t know how MapScape is saving them .. I used 3D World Studio.
But I think it´s identical.

The limbs of the map aren´t the cubes and boxes you use ... you will
get the different faces of them ... so one box has 6 faces with 2
polygons.

You can also set up your map to just use as many faces as needed ...
for example the walls which are the map borders just need one side
... so its only one face ... you could delete the others in the
mapeditor.

If you do it like that you can set up every single face in the map
with different shaders and collisions plus you can exclude those not
visible.

In the Mapeditor you can also store hints in the strings of the
different map elements on how to treat them. Those strings you can
read in dark basic and parse them to get all the needed information.
RUCCUS
19
Years of Service
User Offline
Joined: 11th Dec 2004
Location: Canada
Posted: 18th Feb 2010 21:45
Storing every main polygon of a map object as a separate object is not a good idea. That forces DBP to store and update the large amount of object data an object contains (texture, rotation, position, scale, lighting, and much more) for each one.

Yes, use separate objects for each main mesh in your game, but dont go to the extent of cutting each of the polygons of a box into different objects. DBP has polygon culling for a reason.
Grasmann
15
Years of Service
User Offline
Joined: 1st Sep 2008
Location:
Posted: 18th Feb 2010 22:39
I didn´t write "cut in polygons", I wrote "Faces" ( they consist of 2
polygons ... a plain if you like ). And it is no extra effort.

As I already said ... I don´t know how MapScape saves the maps ( or
better objects ). I used 3D World Studio ... and when I made single
objects of the limbs it automatically gave me the different single
faces. So its really no extra effort ...

It´s more an extra effort to build up the cubes and boxes again that
where used in the map editor.

Then you would have to get the limbs out of the main object first and
put the single faces which belong to the same object together again.
jfroco
14
Years of Service
User Offline
Joined: 1st Dec 2009
Location: Chile
Posted: 19th Feb 2010 09:00
@baxslash

Thank you for the code. I was thinking about implementing something very similar, but I wasn't sure it was going to work. Now, thank to you I know iy.

@Grasmann

Thank you for the tip. I agree with, and my focus today is on the game engine. I'm not sure if I implement shadows/shader at least at the first version, but it is very interesting what you are doing with 3DWS. As far as I know MapScape you can import each object directly from the MapScape level file (msl) using an Evolved's MSLimport code. I'm loading the map as a dbo file today.

@Ruccus

Thank you for the advise. I believe that I will focus on performance at least in the first versions, so I don't think that I'm going to separate objects.




Again thank you for your time and valuable feedback. I'm currently creating a new map (an office building), now the character is ducked and I just finished the mouse-based control.

This is the video. Unfortunately no lightmaps, shadows, shaders, etc. in this level yet. And the level looks naked as I haven't finished adding objects. But I would like to show the movement using the mouse.


http://www.youtube.com/watch?v=d3vFelHPKh8


Best regards

JF
RUCCUS
19
Years of Service
User Offline
Joined: 11th Dec 2004
Location: Canada
Posted: 20th Feb 2010 01:15
Grasmann, what are you talking about?

There is no such term as "face" when talking about a mesh. They are polygons. 3D World Studio is just making each polygon a separate mesh. This is fine, if its exported as a single mesh later on. Turning each of these limbs (polygons, because thats how 3DWS is exporting the mesh, cutting each polygon into a separate limb) into a unique object inside DBP is not a good idea, for the reasons I said.

I dont know what you're talking about with the building up cubes and boxes again, I was never talking about cubes and boxes nor was I talking about rebuilding them inside DBP. All I said was keep your major meshes separate (keep a house model as a separate mesh, keep a tree as a separate mesh, etc. ), but don't keep small details separate if they don't need to be (so, if you have 3 logs making up a bonfire, keep the 3 logs as one mesh, don't export each log separately, for example), this includes polygons as you were suggesting.
The Goldorak
19
Years of Service
User Offline
Joined: 29th Aug 2004
Location:
Posted: 20th Feb 2010 11:23
@jfroco : really good job it's just the main caracter's movement just too fast...It remembers me Alien breed on Amiga long long time ago !

Darkbasic is great !
Grasmann
15
Years of Service
User Offline
Joined: 1st Sep 2008
Location:
Posted: 20th Feb 2010 21:11 Edited at: 20th Feb 2010 21:12
When I made my maps and the routine to load them I made objects of the
limbs and they were not single polygons ... I mean I used simple objects
I didn´t use premade objects ... just cubes and boxes.

But the resulting objects were no single polygons ... it was one side
of the cube/box ... so 2 polygons as one object ... more or less a
plain. In 3D World Studio these different sides of cube/box were called
"faces" if I remember right ... but that doesn´t really matter.

Login to post a reply

Server time is: 2024-04-24 20:59:47
Your offset time is: 2024-04-24 20:59:47