[WIP] Our Voxel-Based MMO Early Dev-Snapshot Video

Happy new year JMonkey Guys!



My friend eXtIO and me are writing a little voxel-based MMO.

We started programming it in january 2011 as a hobby project. So we took our time and did also some breaks :wink:

The Server is fully written in C.

The Client however is using JME3, so we thought we share a little development snapshot with you :slight_smile:



It’s still far away from being done and there are a lot of open points - So don’t be so hard with us :stuck_out_tongue:



Here we go:



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




Greetings,
-imax.
4 Likes

SpongeBob . I wonder how the blocks are created.

What happens if we don’t want the textures to change? :stuck_out_tongue:



Happy New Years guys!



Voxel engine looks like its comin’ along :slight_smile:

Nice one :slight_smile: Looks like you are taking advantage of jME3’s features in many areas, nice to see. GL with this one!

Thank you for your feedback guys. :slight_smile:


@glaucomardano said:
I wonder how the blocks are created.

The blocks are just 6 planes movedrotated so they form a nice cube :)
They are then organized in a BinaryTree to pinpoint their "LivingRoom" as quick as possible.
Sure they are also GeometryBatchFactory'd after the process :)

A month or two ago we used Boxes. But somehow we weren't pleased with them since
it made the lighting harder for us. Maybe because our lack of game dev experience :P
So we decided to change everything to a 6-planes-are-a-block-system :)


@normen said:
Nice one :) Looks like you are taking advantage of jME3's features in many areas, nice to see. GL with this one!

Thank you normen :)

Yeah we for sure use a lot of jME3 features.
This engine opened a complete new world to us since we are not that experienced in game development
but in programming. So with a bit brain and time it's possible to do amazing stuff in jME3. :)

@phr00t said:
What happens if we don't want the textures to change? :P


Haha, When the game will go eventually live in a few years we will make a "spongebob in plasmaclouds with placeholder lightblocks" texture pack just for you :P


Greetings and thanks for jME3 (and jMP) guys!
-imax.

Looks intresting.



One question I wonder about however, whxy did you decide to make the server in c and the client in java?

Usually most persons I know are more or less fanatic about on of them and hate the other. I wonder why you decided to mix both? Surley there are good c 3d engines as well as there are possibilities to write a server in java.

@EmpirePhoenix said:
Looks intresting.

One question I wonder about however, whxy did you decide to make the server in c and the client in java?
Usually most persons I know are more or less fanatic about on of them and hate the other. I wonder why you decided to mix both? Surley there are good c 3d engines as well as there are possibilities to write a server in java.


Hi!

Since we don't have unlimited resources and we wanted to highly optimize the server to be able to handle massive amount of people
we decided to write the server in C. We also wrote the server with scalability in mind.
The client however started as a prototype with jME. But since it works really nice we are in the process now to clean up the
prototype code and keep it as our real client :)
There are some minor points where we wish we would use CC++ for the client (lack of unsigned -> bitshift party) :D

We are using our own UDP protocol for communication. But we decided to port it sooner or later to TCP
because some unpredictable problems we encounter rarely...

We are no fanatics. If it works we use it. We have plenty of languages we could implement it in.
But the fact jME works so nice we for sure stick with java for the client :)

-imax.
@EmpirePhoenix said:
Usually most persons I know are more or less fanatic about on of them and hate the other.

I think C is a fine language, C++ is what (rightfully) works like a nauseant to most java developers, as they know how *proper* object oriented programming should look like ;)
@imax said:
There are some minor points where we wish we would use CC++ for the client (lack of unsigned -> bitshift party) :D


What are you talking about? Have you looked at >>> versus >>?
1 Like
@pspeed said:
What are you talking about? Have you looked at >>> versus >>?


Hi!

Sure there are ways to do it. But the fact that we have to use the next bigger type just to get the unsigned value is
somehow strange java stuff :)
But yeah. We only have to do this in the network layer so it's OK.

-imax.

Hehe blocks. Great setup, hope you get that massive amount of people to log in, so you can test it.

Hey JMonkey Guys,



We just wanted to share with you another development snapshot of our game.



Let me skip the whole blablabla and lets get right into the video :smiley:



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



Hope you like it! :D

Greetings,
-imax.
5 Likes

Nice, that you’re still working on it, looks good - I like the pink player model with the smiley face. :slight_smile:



EDIT: Hehe, I found the same “business drone” model yesterday. :smiley:

Hello JMonkey Guys!

It’s been a long time.
I just wanted to give you guys an update how things are going.
Yes - we are still developing the game! :slight_smile:

My friend Exo made a detailed video about our (server-)architecture.

It explains how our ‘non JMonkey’-Parts are working together.

[video]http://www.youtube.com/watch?v=gKe1XuEAE38[/video]

Greetings!
-imax.

4 Likes

Interesting that you’re using Tomcat.
What happened with the C-based server?

<cite>@toolforger said:</cite> What happened with the C-based server?

Hey toolforger,

we still use the C-Server. You can even see it in the Video at 0:36 - 0:49. The console app you see there is actual the server in action :slight_smile:

Greetings!
-imax.

What’s the Tomcat used for then?
Maybe I misinterpreted something, but I’m curious :slight_smile: