Allegro.cc - Online Community

Allegro.cc Forums » Game Design & Concepts » UberBlox Minecraft Clone Or Something

This thread is locked; no one can reply to it. rss feed Print
 1   2   3   4 
UberBlox Minecraft Clone Or Something
UberFoX
Member #12,314
October 2010

Im making a kinda of Minecraft Clone, The concept is to be above and beyond minecraft (not everybody will agree but we were too annoyed with the direction minecraft was going and couldnt take it anylonger so we making this in the direction we want) we are going to add loads of game modes such as CTF, FortWars (similar to worms), DOOM style FPS, Deathmatch FPS.

At the moment my game is purely Creative similar to minecraft classic but much better (Only 1 game mode is done so far... The deathmatch Arena).

Heres a very brief description of the game and its functions:

  • Around 3,000 blocks to place ranging from almost anything even to letter blocks number blocks smiley faces.

  • A colour picker to place any of 32 million possible colours to create photo realistic picture art.

  • Multiplayer that can handle around 100+ players(per server) (we havent tested much)

  • Built in Fly/Noclip modes

  • Very smooth FPS

  • Supports any map size (but we like to say 512 512 512 is biggest for now since thats the max we are willing wait for a map to load ;D it can take a minute ;p)

  • The server supports INFINITE maps you can simply create new maps and people can go to them by typing /goto mapname

  • There are over 100 commands available (and ranks to choose who is allowed to use them... such as guest, member, operator, admin etc) commands include Cuboid to create blocks super fast (similar to stack but much better), spheroid to create spheres, copy/paste to copy whole sections of map or just buildings from 1 place to another (even saves/loads copy snipits).

  • Dynamic flowing water, lava that kills people

  • Sponges to soak up water/lava if your base gets flooded

  • Maps are saved regularly and uses a incremental backup system

  • Hardcore anti-griefing fucntions which can undo all grief damage in 1 second and jail+ban+kick the griefer

  • Friendly community of course =)

  • Secure login system to servers using encrypted protocols and no password ever being sent to peoples servers (only auth with main server similar to minecraft)

  • Full day/night cycle sky with realistic look stars etc

  • Also mushrooms, plants, flowers for people to place.

  • Selection box to show which block your selected to build on

  • Radar to find players on map anywhere

  • UberBlox is also with XNA (You have to admit its a very fun game development kit)

  • It will be FREE! (although we have a very small team and any donates would be greatly appreciated!)

The list goes on and on your better off seeing some of my uTube videos.

My utube is:
http://www.youtube.com/user/uberblox

Go see game =)

The game isnt publically released yet but people can beta test just let me know if you want to.

We are looking for people to assist development (Mainly sound/graphics people) however an extra coder would be decent too.

Let me know my msn is:
uberfox@hotmail.com

DOWNLOAD LINKS:
http://rapidshare.com/files/427430119/UberBloxRelease3.zip
http://www.megaupload.com/?d=6QPCEPSE

Of visit the HOME PAGE
http://uberfox.no-ip.org/home

Timorg
Member #2,028
March 2002

It looks like quite a lot of effort. I am not quite sure about your definition of better.

Is it compatible with MonoXNA? (ie. Can I play it on my linux laptop?) Do the servers at least run on linux?

Also how do you define a friendly community, you haven't posted a website, and irc channel, or anything that suggests a community?

But yes you have definitely taken it in a different direction, its not a fantasy setting anymore, its just a throw in of every and any feature you can think of.

Will the game be externally scripted? Or any change to behavior requires the binary to be recompiled?

____________________________________________________________________________________________
"c is much better than c++ if you don't need OOP simply because it's smaller and requires less load time." - alethiophile
OMG my sides are hurting from laughing so hard... :D

UberFoX
Member #12,314
October 2010

It looks like quite a lot of effort. I am not quite sure about your definition of better.
// Better = better functions, gameplay, gamemodes

Is it compatible with MonoXNA? (ie. Can I play it on my linux laptop?) Do the servers at least run on linux?
// Never tried but it works on WINE

Also how do you define a friendly community, you haven't posted a website, and irc channel, or anything that suggests a community?
// Well even i talk to people and help them cant say same for Notch who is extremely hands-off....

But yes you have definitely taken it in a different direction, its not a fantasy setting anymore, its just a throw in of every and any feature you can think of.
// Quantity is a quality in itself =)

Will the game be externally scripted? Or any change to behavior requires the binary to be recompiled?
// Yea it will have full moddability u will be able to create ur own game modes and script anything even block movements in game

LennyLen
Member #5,313
December 2004
avatar

UberFoX said:

/ Quantity is a quality in itself =)

Often a very bad one however.

By the way, this forum does have a quote feature. Please us it, as it makes posts far more readable.

UberFoX
Member #12,314
October 2010

I would if i could find the quote function :P

There is quote button under your post?

Thomas Fjellstrom
Member #476
June 2000
avatar

UberFoX said:

I would if i could find the quote function :P

Try <quote>TEXT HERE</quote> Or you know, see the "Formatting Help" button.

--
Thomas Fjellstrom - [website] - [email] - [Allegro Wiki] - [Allegro TODO]
"If you can't think of a better solution, don't try to make a better solution." -- weapon_S
"The less evidence we have for what we believe is certain, the more violently we defend beliefs against those who don't agree" -- https://twitter.com/neiltyson/status/592870205409353730

Timorg
Member #2,028
March 2002

UberFoX said:

// Better = better functions, gameplay, gamemodes

That would most likely be closer to the definition of more, not better.

Quote:

// Never tried but it works on WINE

The client runs under WINE? or the server does?

Also how do you define a friendly community, you haven't posted a website, and irc channel, or anything that suggests a community?

Quote:

// Well even i talk to people and help them cant say same for Notch who is extremely hands-off....

You talking to people, is not the same as an active community. You talked to us, and we have not been terrible receptive.

Quote:

// Quantity is a quality in itself =)

Actually from a software engineering point of view, quantity leads to code bloat, which reduces maintainability, which in turn reduces the quality of code.

Quote:

// Yea it will have full moddability u will be able to create ur own game modes and script anything even block movements in game

What scripting language are you using? Have you rolled your own? or are you using any in particular?

In a way it reminds me a lot of Sauerbraten.
So as way of suggestions, phrased as questions.

Will the FPS have deformable landscapes? Because If i fire a rocket launcher and miss, I want to leave a nice crater and have them fall into a lava pit. The blocks could even grow back over time.

Will the in built CTF have more than 4 teams? (I loved the 4 team maps in Team Fortress Classic)

Will there be a 'dungeon' mode? So that people can create a defined world with certain monsters in certain places. So an adventure style game can be made, see the next suggestion/question.

Will you be able to code a NPC type character that can be inserted into the world independent of the game mod? So that you can create a welcome NPC guy that you can talk to.

Will the game server have some sort of external interface, to allow programs or web servers to access it? So that it can be managed from a different machine.

A native linux based server would be really useful. So that they can be ran on the same boxes as other game servers.

Will the server/game be able to update a database? (flat file or better yet an external SQL based database.) Having a script that produces a forum signature, that says how long you have logged on a server, blocks built. This may allow communities to grow up around servers.

Will the game support proper physics? In minecraft I have always wanted to get a box of golf balls and poor them down a hill. While I am throwing out random ideas, I want a modeled slinky that I can send stepping down a hill.

While I am shooting at blocky shaped people, will I be able to blow limbs off? Or better yet, can I yank someones arm off, and beat them to death with the wet end?

Will there be proper fire effects? So that the guy falls into lava, and runs around setting trees and other people on fire, would be awesome for griefing. Also flamethrowers?

Steam clouds when water and lava are in contact?

I am sure I can think of more random things. :D

Edit:
A side on 2d view type modification!!!! :D

Portals so that you can see through a doorway into other maps on the same server? That way I can shoot a rocket through and frag people on a creative server.

A texture that can be updated on the fly, projected movie onto a wall, output of an irc server.

____________________________________________________________________________________________
"c is much better than c++ if you don't need OOP simply because it's smaller and requires less load time." - alethiophile
OMG my sides are hurting from laughing so hard... :D

UberFoX
Member #12,314
October 2010

Timorg said:

That would most likely be closer to the definition of more, not better.

We shall see

Timorg said:

The client runs under WINE? or the server does?

Both

Timorg said:

lso how do you define a friendly community, you haven't posted a website, and irc channel, or anything that suggests a community?

In game...

Timorg said:

Actually from a software engineering point of view, quantity leads to code bloat, which reduces maintainability, which in turn reduces the quality of code.

If poorly coded

Timorg said:

What scripting language are you using? Have you rolled your own? or are you using any in particular?

Probably Perl for scripting

Timorg said:

Will the FPS have deformable landscapes? Because If i fire a rocket launcher and miss, I want to leave a nice crater and have them fall into a lava pit. The blocks could even grow back over time.

Yes it will .. There is already TNT that blows holes in ground and can be used for blast mining

Timorg said:

Will the in built CTF have more than 4 teams? (I loved the 4 team maps in Team Fortress Classic)

No it will have GUILD VS GUILD.... 1v1 2v2 4v4 etc etc

Timorg said:

Will there be a 'dungeon' mode? So that people can create a defined world with certain monsters in certain places. So an adventure style game can be made, see the next suggestion/question.

Yes total moddability is a key aspect of the game creating your own world then playing it will be part of the FPS/RPG mode styles (As well as the official server maps)

Timorg said:

Will you be able to code a NPC type character that can be inserted into the world independent of the game mod? So that you can create a welcome NPC guy that you can talk to.

Yes you will be able to create your own NPC sprite insert it and give it dialogue
For RPG mode you will also be able to add in quest information and rewards etc

Timorg said:

Will the game server have some sort of external interface, to allow programs or web servers to access it? So that it can be managed from a different machine.

You can use teamviewer on server to do that

Timorg said:

A native linux based server would be really useful. So that they can be ran on the same boxes as other game servers.

Its made with Microsoft XNA so im not sure about linux portability but i know it works with WINE

Timorg said:

Will the server/game be able to update a database? (flat file or better yet an external SQL based database.) Having a script that produces a forum signature, that says how long you have logged on a server, blocks built. This may allow communities to grow up around servers.

Yes it can do that however its a bad idea for it to be global and effect all servers with such stats since people can cheat then...

Timorg said:

Will the game support proper physics? In minecraft I have always wanted to get a box of golf balls and poor them down a hill. While I am throwing out random ideas, I want a modeled slinky that I can send stepping down a hill.

That kind of physic is possible but for the moment its just flowing water/lava and sponges that clean it up

Timorg said:

While I am shooting at blocky shaped people, will I be able to blow limbs off? Or better yet, can I yank someones arm off, and beat them to death with the wet end?

It dosent use blocky people we decided to use Sprites instead so people can create any sprite they want... You can walk around as Zelda, Pikachu or anything you want!

Timorg said:

Will there be proper fire effects? So that the guy falls into lava, and runs around setting trees and other people on fire, would be awesome for griefing. Also flamethrowers?

You get burned up if u go in lava... Althouhg making u into a torch is possible yea

Timorg said:

Steam clouds when water and lava are in contact?

Thats easy to do

BAF
Member #2,981
December 2002
avatar

You should really look into Mono. WINE is atrocious, especially for running .NET apps.

I don't know about XNA, but I do know that Mono is now claiming full support for just about everything up to and including .NET 4.0/C# 4.0. Only a handful of things (that you probably aren't using anyway), like WPF and WCF, are missing.

Karadoc ~~
Member #2,749
September 2002
avatar

It sounds like an ambitious and potentially impressive piece of software, but I don't think it would be my style of game. It sounds a bit too free-form for my tastes. Not enough structure; no coherent style or theme.

-----------

UberFoX
Member #12,314
October 2010

You didnt read the game Modes it will have...

Only free design mode is like that.......

Karadoc ~~
Member #2,749
September 2002
avatar

I did read the game modes. Its a fairly long list of quite varied game modes, and there's a wide range of different team sizes and player numbers, a huge selection of maps, lots of variety in the type of things the map might have, and so on.

From my point of view, the problem is that with each of these options (mode, map, players) you have effectively split the player-base. There will be players who only like CTF and players who only like deathmatch. There will be players who like to play with heaps of people at once and players who want small groups. There will be players who want to play on their own home-made maps and player who only want to play on a defacto-standard map. The player base isn't likely to be large in the first place, and with all of these splits you'll basically be left with no-one playing... People will have to compromise on their choices just to get a game, and even if you do get a game you'll likely be faced with a noisy mish-mash of different looking player avatars; and whatever mode you happen to end up playing is likely to be only very roughly balanced and polished because different game styles have different, and sometimes conflicting, needs.

Maybe I'm not saying this the right way. I don't mean to imply that no one will play your game. I'm just trying to articulate why I get the feeling that the game lacks focus, or structure, or coherence. Maybe the game will turn out to be extremely popular and well balanced and good in every way... but from what I've heard here, I just don't expect it will be the kind of game I would like.

-----------

UberFoX
Member #12,314
October 2010

Actually there will be servers dedicated to each game mode that will be full of people who love said game mode.

m c
Member #5,337
December 2004
avatar

Hey, good luck!

Quote:

Hardcore Anti-greifing, undone in 1 sec

So what does this mean? That all updates made to the map are logged what it used to be so a command can roll it back (in case someone used blocks to draw dicks all over your pictures for example?)?

How much disk space would be used for a 512x512x512 map with lots of stuff all around the edges and in the middle too (so that there isn't so much free space that it just compresses away if zip or RLE or something)?

By my calculations, if each block took 4 bytes

(24bit RGB color, and an extra byte that could be 0 if its a block or 1 if it's 1x1 object taking that space sitting on a block or any of the other 254 left for other information, maybe if it can be walked through or if it hurts, or the intensity of it's colored glow, etc).

and if the map is a filled 3d array of elements, and it was 512x512x512 then that is 512megabytes raw file!

I guess logging changes would only be a fraction of that usually though.

UberFoX said:

Maps saved regularly, incremental backup system

This is part of the anti-grief I suppose, right?

Can the clients cache a version-tagged copy of the map, and when they connect to the server the server sends them the incremental updates from their last copy to a "major" version and then the binary diff from that major version to the current major version, and then incremental updates from that to the true current version?

It just sounds easy to implement to me, I suppose the other way is bi-torrent-esque hierarchical hash updates, because of the interactive nature it could start out low resolution and go as fine-tuned as makes sense once the changed parts are narrowed down.

I say it like that because maybe calculating the binary diffs is a time-consuming process (bsdiff is a tool that can do it and its code is simple for C, don't know about C# but it could be run in BG I guess), so if it is slow then it would only make sense to do it say hourly and compress those into daily, and anyone more than a few days out of sync can just download the whole thing!

How do you do it now?

What happens if the map is changed since they started the download? Does it finish the download and then say "stuff you already downloaded has since changed" and download those super blocks again the new versions?

(\ /)
(O.o)
(> <)

UberFoX
Member #12,314
October 2010

m c said:

So what does this mean? That all updates made to the map are logged what it used to be so a command can roll it back (in case someone used blocks to draw dicks all over your pictures for example?)?

It logs all changes from all players can undo anything any time (even weeks after event took places) it can also undo past xx seconds all way to past years since server started if u wanted

m c said:

How much disk space would be used for a 512x512x512 map with lots of stuff all around the edges and in the middle too (so that there isn't so much free space that it just compresses away if zip or RLE or something)?

512 512 512 is 3.0 MB file no matter what is on the map (it compresses everything)

m c said:

and if the map is a filled 3d array of elements, and it was 512x512x512 then that is 512megabytes raw file!

each block is 2 bytes

m c said:

This is part of the anti-grief I suppose, right?

no thats automatic backup so you dont lose ur map and so u can do timelapse later

m c said:

Can the clients cache a version-tagged copy of the map, and when they connect to the server the server sends them the incremental updates from their last copy to a "major" version and then the binary diff from that major version to the current major version, and then incremental updates from that to the true current version?

In theory it could but its rather pointless since it would still need to check every byte against cient map so it might as well just send new map

m c said:

How do you do it now?

It just sends the whole map in chunks

m c said:

What happens if the map is changed since they started the download? Does it finish the download and then say "stuff you already downloaded has since changed" and download those super blocks again the new versions?

Any changes will already be on map when it finishes loading

m c
Member #5,337
December 2004
avatar

I see so the map files are still small, well that's good then, you don't need to worry about such complicated things then.

Just out of curiosity, does the map have to include block textures, or does the game have standard textures for the blocks?

Then the images on the maps are made of solid-colored blocks, so blocks can have 16bit solid color or a texture?

(\ /)
(O.o)
(> <)

Karadoc ~~
Member #2,749
September 2002
avatar

UberFoX said:

A colour picker to place any of 32 million possible colours to create photo realistic picture art.

UberFoX said:

each block is 2 bytes

How does this work?

-----------

UberFoX
Member #12,314
October 2010

QUOTE "I see so the map files are still small, well that's good then, you don't need to worry about such complicated things then."
Yup

QUOTE "Just out of curiosity, does the map have to include block textures, or does the game have standard textures for the blocks?"
The save contains block IDs... etc
1
1
1
2
3
5
7
8
1
1
2
6
7

QUOTE "Then the images on the maps are made of solid-colored blocks, so blocks can have 16bit solid color or a texture?"
If you see the first video it has photorealistic pictures using full 32-bit spectrum... One video "colour picker" shows you the games PICKER... its a full 32 bit spectrum colour picker that can do any r g b you want.

QUOTE "each block is 2 bytes"
Each block is USHORT... this is 2 bytes long
The game can have a maximum of 65,535 unique BLOCK types... NOTE all COLOURS (all 32 million) are just 1 block type!

Karadoc click here to see how COLOURs are selected
http://www.youtube.com/watch?v=iZUJU-THISM

m c
Member #5,337
December 2004
avatar

I see, so you have 2^16 different block IDs, and each ID can either be a texture or a full 32bit color (so it's like index color only 16bit not 8bit).

That is something that I thought of but didn't mention. I'm surprised to see that it is true.

Just a note, if every block ID possible is used, ie:

1
1
2
65300
12354
12341
61234
54123
3453
4
5
64346

etc
and if almost each one is for an R G B 32bit color value, then the palette will only take up 256kb of RAM.

(\ /)
(O.o)
(> <)

UberFoX
Member #12,314
October 2010

The map file doesnt store textures it stores BLOCK ID...

lets say the Block is Brick... it will store it as its ID lets say brick is ID 3

The file will contain the "3" only nothing else.

If the block is a colour it will store it with a speical ID... example say colour blocks are ID 10

10,255,255,255 (it will store it like that saying block type and the special r g b)

Karadoc ~~
Member #2,749
September 2002
avatar

What you seem to be saying is that each block on the map is represented by a block id number. The id number is a 16 bit number. Every possible texture that a block can have is associated with one of these numbers; for example, a picture of mario might be number 5513, and a picture of a dog might be number 4111. There is a special id number which represent a coloured block, for example, it might be number 0. The coloured block can by any of 32 million possible colours (a 24 bit colour value) – all of the possible colours are represented by the same block id.

All of that sounds fine, but I guess the point of my earlier question is that the 24 bit colour value for each of these coloured blocks has to be stored somewhere, and therefore coloured blocks must take more than 2 bytes. And even if the id number itself was used to identify the colour, 2 bytes is less than 24 bits, so you wouldn't get the full range of colours.

It's no big deal though. All it means is that these special coloured blocks take more space to store.

-----------

m c
Member #5,337
December 2004
avatar

Yeah I made a mistake in my last post, but I see what you are saying now.

Here is what I thought you were saying:

Every block has a 16bit ID.

Then there is a palette or lookup table of IDs.

#SelectExpand
1#include<stdio.h> 2#include<stdlib.h> 3 4// 0-9 are things like brick, grass, 10+ are colors 5#define NUM_MAP_TEX 9 6 7struct tex_tag 8{ 9 void* texture_pointer; 10 float u,v; 11} textures[NUM_MAP_TEX]; 12 13struct pal_tag 14{ 15 int rgb; 16} colors[(1<<16)-NUM_MAP_TEX]; 17 18 19struct 20{ 21 short split; 22 struct tex_tag* textures; 23 struct pal_tag* colors; 24} blocks = {NUM_MAP_TEX,textures,colors}; 25 26void draw_block(float x, float y, float z, short the_blocks_ID) 27{ 28 if(the_blocks_ID <= blocks.split) texdraw(x,y,z,blocks.textures[the_blocks_ID].texture_pointer); 29 else solid_draw(x,y,z,blocks.colors[the_blocks_ID - blocks.split].rgb); 30}

But instead, when the game is loading the map file, it says "if the BLOCK ID is for grass or brick then make a grass or brick block, otherwise if its a special code, take some more numbers for Red Green and Blue and then color it like that".

I think that the map file might be much bigger if someone got really carried away with that, but it also allows full true color images so it'd look better and has no dithering.

Hey here's another question, with a big 512x512x512 map with lots of stuff in it, how much RAM does the program use when you are playing on it (like in task manager or something).

(\ /)
(O.o)
(> <)

UberFoX
Member #12,314
October 2010

If you want to test game let me know... I can send u download linky

m c
Member #5,337
December 2004
avatar

What version of .net would I need? I only got 2.5 and I'd have to update mublinder to get a newer one I think...

(\ /)
(O.o)
(> <)

UberFoX
Member #12,314
October 2010

It needs 2.0 (u should be ok)

m c // check ur PM

 1   2   3   4 


Go to: