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 / Minecraft-esque Mine Engine

Author
Message
Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 22nd Feb 2011 02:12 Edited at: 22nd Feb 2011 02:21


Hello there! For the past few weeks I've been working on a block based world building engine similar to minecraft classic. I do have an idea for a game I'm going to eventually make with it, but right now I have to focus on optimizing, and getting more of the basic components in such as tools, block health, multi-player etc. Once those are in place I can begin preparing the final game itself. I am planning on eventually releasing the source code for the basic engine to allow people to make whatever they want it.

Currently I only have 3 types of blocks in, although adding more is no trouble at all, and by the end I plan to have around 10 or so. I know this seems like nothing but the game I plan to make won't really be based around creativity and all that will really matter is the function of the blocks. Here are some pics:


Terrain generation is random! (Green Gandalf was a big help getting this working)


Map is as deep as minecraft's, rock starts around 9 layers below.


Building works very well, no sneak yet but I'll add that soon.


Underground room No caves/tunnels yet but that will be added soon too.

So as you can see there isn't much to the terrain yet, it's just dirt, grass and rock however I plan to add gold underground (Yeah that's it). And I'll eventually get some caves into it.

A demo is coming really soon, but there are a few things I need to implement such as bedrock, and min/maxes for building so you don't run into errors if you go too high. A lot of people have said dbpro was too slow to handle something like minecraft, but that simply isn't true and I hope this proves it. Already I'm getting around 60 fps (everything is timer based) and that's with some glaring inefficiencies in the engine that I will address.

Comments and criticism are welcome

Mr Kohlenstoff
17
Years of Service
User Offline
Joined: 7th Jun 2006
Location: Germany
Posted: 22nd Feb 2011 02:21
Hey, now that is some serious win. Looks fun-tastic, and I'm really interested in where you're going with it when the engine is finished.

Quote: "A demo is coming really soon"


I once said that about a game I was working on. That was three years ago. Still no demo. I really hope that you stick to your word, as opposed to me.

Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 22nd Feb 2011 02:23 Edited at: 22nd Feb 2011 02:36
@ Mr Kohlenstoff

By really soon I mean tomorrow or the day after! And thanks.

C0wbox
17
Years of Service
User Offline
Joined: 6th Jun 2006
Location: 0,50,-150
Posted: 22nd Feb 2011 02:39
xD I knew someone would do this eventually.

I thought it was going to be me, but I resisted the temptation and just played the real game instead.

(I did however replicate the some awesome Pig AI if you wana stick it in this xD)

tiresius
21
Years of Service
User Offline
Joined: 13th Nov 2002
Location: MA USA
Posted: 22nd Feb 2011 03:08
Neat. How are you optimizing the level? I believe Minecraft uses chunking of some kind to reduce polys and objects. I'd be interested to hear how you are doing it.


A 3D marble platformer using Newton physics.
Gil Galvanti
19
Years of Service
User Offline
Joined: 22nd Dec 2004
Location: Texas, United States
Posted: 22nd Feb 2011 03:17
Looking good, but what is going to make it different or better than actual Minecraft?


Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 22nd Feb 2011 03:27 Edited at: 22nd Feb 2011 03:27
Quote: "Looking good, but what is going to make it different or better than actual Minecraft?"


Well rocket launchers for one thing , but that's all I'm gonna say for now . Right now I'm just focusing on the engine itself.

@Tiresius

Well as you can see by this crude drawing, what I've done is split the map (which is 128x128) into 9x9 "chunks" which are then combined into single objects, to reduce the total number of objects on screen. What I then do is show the actual individual blocks in the chunks surrounding the player, and hide those chunks. If any changes are made to the chunks, when the player moves outside of them the objects are recombined, if nothing is changed I just show the old chunk.



Attachments

Login to view attachments
Uncle Sam
18
Years of Service
User Offline
Joined: 23rd Jul 2005
Location: West Coast, USA
Posted: 22nd Feb 2011 07:39
Very cool stuff man! Looks like you've figured out how to optimize it too.
Ermes
20
Years of Service
User Offline
Joined: 27th May 2003
Location: ITALIA
Posted: 22nd Feb 2011 09:57
looks great.

but what about fps with all those objects even with the "chunks"?


Ciao facce da sedere!
Van B
Moderator
21
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 22nd Feb 2011 10:08
Looks great! - Will be keeping an eye on this one.

I made something similar, really just because I wanted to see how much DBPro could handle, and as long as your doing a visibility cull check then DBPro copes just fine.

Health, Ammo, and bacon and eggs!
ThoughtWire Software
13
Years of Service
User Offline
Joined: 10th Aug 2010
Location: Inside your fridge, drinking your milk.
Posted: 22nd Feb 2011 14:27
I am very interested to see how this goes. Will be keeping my eye on this one...

ThoughtWire Software -

www.thoughtwire.co.uk
Michael P
18
Years of Service
User Offline
Joined: 6th Mar 2006
Location: London (UK)
Posted: 22nd Feb 2011 21:02
I had a go at this too but I never got the culling algorithms fast enough - good luck!

kamac
13
Years of Service
User Offline
Joined: 30th Nov 2010
Location: Poland
Posted: 22nd Feb 2011 22:20
Wow, good luck!

I thought about it myself, but found it too hard as for me .

In progress of making Archery Simulator... Or maybe not simulator x]?

@There'll be a sig @
Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 23rd Feb 2011 01:21 Edited at: 23rd Feb 2011 01:29
---DEMO---

Yay! Told you it would be here really soon. What I've added is a new block type: bedrock. This can't be placed by the player for obvious reasons, but it's still there on the bottom of the map. Here's what it looks like:


Also I've put in build limits so you can't crash the game (max 128 blocks). Here's the download

Note that this does not reflect the final speed at all as there is still a lot of optimizing to do. Right now I think I'm showing around 4-5 times the amount of polygons I need to, so that will certainly change.Also remember to put in your screen res in the config.ini file, for the best experience.

Comments and criticism are welcome, and please post your avg fps and any bugs you might find. Use f3 in game to see extra details.

Attachments

Login to view attachments
Crazy Acorn
15
Years of Service
User Offline
Joined: 16th Mar 2009
Location: Stalking people...
Posted: 23rd Feb 2011 03:56
hehe I made a castle!! Look!

Attachments

Login to view attachments
Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 23rd Feb 2011 04:13
Nice Gorlocks, better than anything I've made so far in it!

I've noticed some of my friends have been having a problem with falling through the map in the initial load, I'll fix this and put up another demo. This only affects slower computers however, and even then you can get it to work by restarting the program a few times.

Crazy Acorn
15
Years of Service
User Offline
Joined: 16th Mar 2009
Location: Stalking people...
Posted: 23rd Feb 2011 04:25
Lol found a bug. Looking around seems normal but you can go up side down by moving your mouse back all the way.

Mr Kohlenstoff
17
Years of Service
User Offline
Joined: 7th Jun 2006
Location: Germany
Posted: 23rd Feb 2011 14:52
I had just build these cool infinite Escher stairs and wanted to find out if there was a possibility to get into some sort of noclip-mode for a screenshot (doesn't seem to be the case?). Sadly, opening the game again resulted in a crash. Oh and the game shouldn't fix the mouse-position when it's not in the foreground. Not sure if that's easy to implement, but I personally am a fan of minimizing games, hence it would be cool if the game supported that.


...Offtopic: @Gorlock, maybe you should add a link to your signature. I'd be interested in having a look at your plant pack.

The Wilderbeast
18
Years of Service
User Offline
Joined: 14th Nov 2005
Location: UK
Posted: 23rd Feb 2011 17:43
Nice demo! Although I found if you make a small tower out of blocks and jump off the top then you fall through the map.

Crazy Acorn
15
Years of Service
User Offline
Joined: 16th Mar 2009
Location: Stalking people...
Posted: 23rd Feb 2011 23:12
@ Mr Kohlenstoff

http://forum.thegamecreators.com/?m=forum_view&t=178971&b=24

Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 24th Feb 2011 02:36
Quote: "Looking around seems normal but you can go up side down by moving your mouse back all the way."

Fixed now.

Quote: "but what about fps with all those objects even with the "chunks"?"

Well I get about 55-60 fps looking at the entire map, though that will improve quite a bit as optimize it more. It's really just the poly count slowing it down now.

Quote: "Nice demo! Although I found if you make a small tower out of blocks and jump off the top then you fall through the map."

I've fixed this now, too. What sort of fps are you getting? It seems to be a problem around the 20 fps mark. Has to do with the timer system and collision+gravity systems not being programmed properly(my bad!).

Quote: "wanted to find out if there was a possibility to get into some sort of noclip-mode for a screenshot (doesn't seem to be the case?). Sadly, opening the game again resulted in a crash. Oh and the game shouldn't fix the mouse-position when it's not in the foreground. Not sure if that's easy to implement, but I personally am a fan of minimizing games, hence it would be cool if the game supported that. "


I'll add no clip for the next demo, as well as the ability to release the mouse (I'll put in pause or something similar). What kind of crash was it? An error message or did you fall through the map?


I'll have the next demo out this weekend, with another block type(iron blocks!) and possibly some test caves. I'm trying to fix all these strange bugs before I start optimizing it just so I have something solid to work with.

Mr Kohlenstoff
17
Years of Service
User Offline
Joined: 7th Jun 2006
Location: Germany
Posted: 24th Feb 2011 11:57 Edited at: 24th Feb 2011 11:58
Quote: "What kind of crash was it? An error message or did you fall through the map?"


An error message, I think it was "object doesn't exist". Will have a look into it as soon as I've got more time.

OK I just did - Object doesn't exist at line 142. Object Number not found: 2.

kamac
13
Years of Service
User Offline
Joined: 30th Nov 2010
Location: Poland
Posted: 25th Feb 2011 15:57
I tried make something alike like you, but i think i don't have enaught good ideas for it. Could you explain to me the techniques you used in your game?

Limit's of this sig are really low o_o 200 characters and i can have only 2 carriage-returns ..:..:..
Lost Dragon
13
Years of Service
User Offline
Joined: 22nd Aug 2010
Location:
Posted: 26th Feb 2011 08:19
Nice job.

Really nice. Keep it up.

I always thought Minecraft engine would make a fun RPG. I know Mojang was talking about doing something like that, but they seem to have gone off on a permanent crafting/building tangent now.
Sharlenwar
15
Years of Service
User Offline
Joined: 4th Mar 2009
Location:
Posted: 27th Feb 2011 05:30
You have to remember, that Minecraft used to be developed by an individual who then seemed to get the right people to help him move the game forward.

In the 1.3 update, they added beds which now cycle the night time to day time.

To me right now, I see a great Minecraft clone that is created with DBPro. I am definitely going to be watching this project, as it will be interesting to see the direction Satchmo will take this all. As well, this is pretty amazing at what one can do with DBPro! Just gives me fuel to hurry up and post my Space RTS I'm working on.

Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 28th Feb 2011 00:14 Edited at: 28th Feb 2011 00:23
Quote: "To me right now, I see a great Minecraft clone that is created with DBPro. I am definitely going to be watching this project, as it will be interesting to see the direction Satchmo will take this all. As well, this is pretty amazing at what one can do with DBPro! Just gives me fuel to hurry up and post my Space RTS I'm working on.
"


Thanks for the encouragement. I'd like to see that RTS, I haven't seen one on the wip for a while.

Quote: "I always thought Minecraft engine would make a fun RPG. I know Mojang was talking about doing something like that, but they seem to have gone off on a permanent crafting/building tangent now."


Hmm, I don't know if what I'm going to do with it can be considered an RPG, but it's definitely a different direction from minecraft. I will end up posting the engine code so anyone can take it and make their own game with it.

Quote: "I tried make something alike like you, but i think i don't have enaught good ideas for it. Could you explain to me the techniques you used in your game?"


There are a few techniques here, I'll take the time later and do an in depth explanation.

--DEMO--

I mostly spent the time fixing the issues people have been having with the demo, now you no longer fall through the map and I'm pretty sure I've fixed those missing file errors. I've also changed many game timers to work with the timer based system so they're consistent at any frame rate (this apples to jump timers and build timers). And finally I've added a vsync flag in the config file, and added limits on how far up/down you can look.

On the surface I've added an extra block as well, iron:

Here it is, it will be one of the stronger blocks in the actual game

Here's a bunker I made with it, you will need to create these sort of things in the final game(hint hint)

View from inside

No real optimization work yet in this demo, barring any unseen issues that comes next. Also, I've added a pause button, just hit p to pause or unpause the game(no noclip yet, unfortunately). Remember to set your screen resolution in the Config file!

[href=https://forumfiles.thegamecreators.com/download/2168571]Download/href]

Attachments

Login to view attachments
thenerd
15
Years of Service
User Offline
Joined: 9th Mar 2009
Location: Boston, USA
Posted: 28th Feb 2011 00:19
Minecraft RTS!

TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 28th Feb 2011 19:17
Although it is a first person view... MineCraft RTSFPS!!

TheComet

The CGman
18
Years of Service
User Offline
Joined: 6th Apr 2006
Location:
Posted: 1st Mar 2011 02:06
I like, Looks good so far.
kamac
13
Years of Service
User Offline
Joined: 30th Nov 2010
Location: Poland
Posted: 1st Mar 2011 19:05
I don't even know when did you have time to make that engine . Also, seems you're skilled if you could do that .

Limit's of this sig are really low o_o 200 characters and i can have only 2 carriage-returns ..:..:..
zerosimms
13
Years of Service
User Offline
Joined: 25th Feb 2011
Location:
Posted: 1st Mar 2011 23:24
Just wanted to add my two pence worth of comments, this looks great! Keep it up, stay away from a pure clone of minecraft and add your own unique angle to it, remember that Notch was inspired by InfiniMiner but made minecraft his own. There's no reason why you cant do the same. I wish I had your brain power!



www.bensimms.co.uk
charger bandit
14
Years of Service
User Offline
Joined: 10th Nov 2009
Location: Slovenia
Posted: 2nd Mar 2011 15:34
This would be pretty cool with weaponry,then you could have it teambased and each team would build a castle,then fight. Looks great so far


kamac
13
Years of Service
User Offline
Joined: 30th Nov 2010
Location: Poland
Posted: 2nd Mar 2011 16:12 Edited at: 2nd Mar 2011 16:13
And remember about multiplayer


Also, some bigger thing - make people able to go into the modern times. So they can make pistols, machineguns That would be really something.

Indicium
15
Years of Service
User Offline
Joined: 26th May 2008
Location:
Posted: 4th Mar 2011 21:29
45fps at 1920x1080 I couldn't run fullscreen though, just blank.

Specs:

amd athlon 64 x4 3.0ghz
4gb ram
ati radeon 3000 < probably why :p

Nice work though, i tried it myself and couldn't get my culling system to work, it only rendered one row at a time... It's brilliant, can't wait to see what you do with it xD

kamac
13
Years of Service
User Offline
Joined: 30th Nov 2010
Location: Poland
Posted: 4th Mar 2011 22:29
I hope he still makes it

Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 5th Mar 2011 02:14
Quote: "45fps at 1920x1080 I couldn't run fullscreen though, just blank.
Nice work though, i tried it myself and couldn't get my culling system to work, it only rendered one row at a time... It's brilliant, can't wait to see what you do with it xD"


Thanks! Yeah those speeds should come up I finish the new rendering system.

Quote: "I hope he still makes it "


Lol I'll do my best!

Indicium
15
Years of Service
User Offline
Joined: 26th May 2008
Location:
Posted: 5th Mar 2011 13:44
I'm also wondering if you're using cubes, or plains, if you use plains you can exclude the plains that are the sides of the cubes that you can see, for example, when two cubes are joined If you're already doing this then ignore me xD

zappi
13
Years of Service
User Offline
Joined: 16th Oct 2010
Location: with your mother
Posted: 5th Mar 2011 23:32
excuse me for the off topic, can you explain me how has you build the algorithm to create a random world????
(excuse for bad english i've used google translate)
Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 5th Mar 2011 23:47
Quote: "I'm also wondering if you're using cubes, or plains, if you use plains you can exclude the plains that are the sides of the cubes that you can see, for example, when two cubes are joined If you're already doing this then ignore me xD"


Currently doing entire cubes but the new culling system will just use plains.

Quote: "excuse me for the off topic, can you explain me how has you build the algorithm to create a random world????
(excuse for bad english i've used google translate)"


Sure, it's called the diamond square algorithm, you can find it here:
http://www.gameprogrammer.com/fractal.html

zappi
13
Years of Service
User Offline
Joined: 16th Oct 2010
Location: with your mother
Posted: 5th Mar 2011 23:56
thank you very much you are my god XD
Acrethaen
13
Years of Service
User Offline
Joined: 7th Mar 2011
Location:
Posted: 7th Mar 2011 23:50
Nice, i'm actually trying the same thing myself, but i have some good ideas as well, so what is some of the techniques you found were useful?

MINECRAFT 4EVA!!!!
Juxtupositious
C: del\ ENTER
Coldfire
15
Years of Service
User Offline
Joined: 22nd Oct 2008
Location: Indiana
Posted: 10th Mar 2011 13:37
I'm also working on a similar experiment and have came across a blog of Notch's that actually shows some of the techniques he uses. The one that really caught my eye was the way that he creates the landscape. It is so simple, I can't believe I didnt think of it before.

He uses perlin, but not 2d perlin-the 3d variant. Given this would normally yield swiss cheese-esque environments, he adds the height to the sampled amount to ensure a denser landscape the further down you go.

I found that very insightful and figured I'd share

For some more info(most of which it appears you already know, check out the blog.
KISTech
16
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 11th Mar 2011 17:26
My 10 year old son just today discovered Minecraft. He's BEGGING me to buy it for him.

This looks good. Keep it going.

Indicium
15
Years of Service
User Offline
Joined: 26th May 2008
Location:
Posted: 14th Mar 2011 22:14
Quote: "He's BEGGING me to buy it for him. "


Buy it for him! :p Hehe, I can't think of a more productive game in fairness, some things take a lot of thought.
Agent
19
Years of Service
User Offline
Joined: 7th Sep 2004
Location: Sydney, Australia
Posted: 16th Mar 2011 20:41
Very impressive, Satchmo!

So much so, that I am probably going to abandon my own minecraft clone. I didn't think anybody else was attempting to clone minecraft, but you're doing it better than I have been, and there's no point trying to compete

I like it, mate, and I hope you carry on with development. Minecraft is stupid addictive, and if you are building with multiplayer in mind then you have a lot of options at your fingertips. Some sort of battle system would be fun.

I was planning on creating a gametype in my clone in which there are two teams of players, and on each team one player is designated the "Commander". The two Commanders are placed randomly on a large randomly generated map, and the objective is to find and then kill the opposing Commander, who has lots of health but cannot be healed. The two teams split up into a couple of roles - some of them will head off to start searching for the enemy Commander, some will stay behind to protect their own Commander, and some will head off to mine blocks and bring them back to their Commander. The Commander uses these blocks to construct a fort around himself to protect himself from the enemy team. In the opening minutes of the game, the location of the enemy will be unknown, so the teams will be balancing between searching for the enemy, and mining construction materials to build the fort before their Commander is located. Weapons can damage and destroy blocks, so the fort will take damage during the match. The team will need to keep mining blocks and bringing them to the Commander so that he can repair damage to his fort.

I thought this would be a fun gametype, so if your development continues successfully and you have been coding with multiplayer in mind, I'd like to see it come to fruition
Westmere
14
Years of Service
User Offline
Joined: 12th Mar 2010
Location: Germany
Posted: 16th Mar 2011 21:35
I like your game idea, Agent. I also think that something like this would be pretty nice for a minecraft clone ^^

Maybe you can add some way to build your own weapons. I have seen huge minecraft cannons. If it was possible to build stuff like that on a smaller scale it could make some pretty cool multiplayer battles.

GIDustin
15
Years of Service
User Offline
Joined: 30th May 2008
Location:
Posted: 20th Mar 2011 00:50
Posted so I get updates to this. I saw a friend playing minecraft and it looked like it had the potential to be alot of fun.

Looking forward to how this turns out.

TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 30th Mar 2011 17:39
How big do you plan to make your maps? If you have problems with framerate, I have a few tips for you

TheComet

kamac
13
Years of Service
User Offline
Joined: 30th Nov 2010
Location: Poland
Posted: 30th Mar 2011 18:12
He didn't post news for so long time, that it seems he've stopped working on it

Satchmo
18
Years of Service
User Offline
Joined: 29th May 2005
Location:
Posted: 31st Mar 2011 06:12
Work will pick up again in a bit, though I recently started learning java so that's sort of the programming related stuff I've been doing lately. I will start again and will continue the project in darkbasic still, I just started this project at an awkward time, right before I started learning a different language XD, but in time I'll start it up again.

@ The Comet, I'd like to hear them, framerate has sort of been an issue for me, I have a gaming comp and still get around 60 fps on a small map, so anything you could tell me would be great.

Login to post a reply

Server time is: 2024-04-19 08:48:42
Your offset time is: 2024-04-19 08:48:42