For$
<!-- begin site header -->
<div id=

Author Topic: Mineserver 2.0 - New look, same great taste!  (Read 27133 times)

deoxxa

  • Administrator
  • Newbie
  • *****
  • Posts: 28
    • View Profile
Mineserver 2.0 - New look, same great taste!
« on: October 23, 2011, 07:28:52 am »

That's right! Mineserver 2.0! Take a look at it on GitHub today! There's not much to see just yet, but we're progressing very quickly. If you're familiar with C++, take a poke around the code and tell us what you think.

We've learnt a lot from writing the first version of Mineserver. One of those lessons was that to maintain a large application, it's necessary to design the application with the right concepts in mind from the very start. This was one of the driving forces behind the rewrite for 2.0. To that end, we've tried breaking up the new codebase into smaller, self contained pieces, while maintaining the speed and efficiency Mineserver is known for.

Planned features (in no particular order):
  • Cleaner code - cohesive, isolated modules make hacking on Mineserver a breeze!
  • Better design - many advanced features that were all but impossible before are now simple!
  • Neater installation - getting started with Mineserver has never been easier!
  • Virtual hosting - host more than one server on the same IP and port!
  • Distributed hosting - spread the load of your game over multiple cores or even physical machines!
  • Plugin repository - find all the best plugins in one convenient place!
  • Multiple protocols - use any Minecraft client!
  • Game hibernation - no resources used while no players are connected!
  • Remote API - interact with Mineserver from any application that can speak JSON!
  • Rich administrative tools - delegate administration of your games over multiple admin tiers!

Any feedback would be greatly appreciated and new contributors are always welcome. We can be contacted in any of the following ways:


* Virtual Stalkers take note: we reserve the right to stalk you back and say "hi" on Facebook every day for the next 6 months
« Last Edit: October 23, 2011, 07:34:12 am by deoxxa »

Ligustah

  • Newbie
  • *
  • Posts: 42
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #1 on: October 24, 2011, 10:23:36 am »
I'm really looking forward to using this, but I'm not fluent with C++, so I highly doubt I'd be any help to the project.
What I think went slightly wrong last time was that it was not feature complete (as in having all features of the vanilla server), which made it more or less unusable for normal hosting, and that there was little consent/communication about features added (that's what it looked like to me at least, I don't know about conversations outside of this forum).

I had a quick look at the source and I personally think the naming convention for the network packets is not easily maintainable. Why don't you stick to the names used in the "official" protocol documentation (http://mc.kev009.com/Protocol) ? Also it might it good to use macros to give names to the protocol IDs, so as to make changes to the protocol handling much more straight-forward.

Hope my two cents are somewhat useful, I'll try to keep up with updates on this project!

MechWarrior001

  • Newbie
  • *
  • Posts: 31
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #2 on: October 25, 2011, 07:44:56 am »
Hmm, would it be possible to add in a full terrain generation function? Instead of generating chunks on the go give the server a option to fully generate the maximum size of the world upon the world creation/initial startup. Just a thought.

Jailout2000

  • Newbie
  • *
  • Posts: 49
  • Enthusiast
    • View Profile
    • My Website
Re: Mineserver 2.0 - New look, same great taste!
« Reply #3 on: October 29, 2011, 03:54:39 am »
Instead of generating chunks on the go give the server a option to fully generate the maximum size of the world upon the world creation/initial startup. Just a thought.
You realize that's around 38,113,107,519,317,796 chunks right? That would take years to generate... yet alone keep track of, or store on a hard drive for that matter.

Your idea is just crazy.

It's much better to generate it on the go... it's not like mineserver takes more than a couple seconds to generate five chunks, lol. Heck it might even do it faster than that.

(For the techies here, 0xFFFFFFFF (the size of an x or z axis) divided by 16 = total chunks on that axis. Square that, and you get how many chunks possible.)
« Last Edit: October 29, 2011, 04:13:50 am by Jailout2000 »
Visit my website to see what's up with me.

Uno

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #4 on: October 30, 2011, 03:45:34 am »
Yay, at last! :D

I'd like to hop on, but when I look at the work that has been already done I get quite overwhelmed and realize how very limited my C++ knowledge really is :)

Any chance you're going to implement plugin support so people like me could start from simpler things? (though I will still be stalking Git Hub trying to figure out how things are done so some day I could join you :D )

Jailout2000

  • Newbie
  • *
  • Posts: 49
  • Enthusiast
    • View Profile
    • My Website
Re: Mineserver 2.0 - New look, same great taste!
« Reply #5 on: November 11, 2011, 09:52:37 pm »
Any chance you're going to implement plugin support so people like me could start from simpler things?
Of course; it's not implemented, but it's planned.
Visit my website to see what's up with me.

Uno

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #6 on: November 15, 2011, 05:53:34 pm »
Well then, can't wait for it to come out :)

We're ready to host a linux version of Mineserver as soon as it's released :D

Any news on when it will be good enough to make an official release?  :)

deoxxa

  • Administrator
  • Newbie
  • *****
  • Posts: 28
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #7 on: November 16, 2011, 12:41:45 pm »
Any news on when it will be good enough to make an official release?  :)

No hard dates right now, but I'm going on holidays from work in a couple of weeks and I plan to spend a good chunk of time on the project. It'll be faster if/when more people join in :).

Any chance you're going to implement plugin support so people like me could start from simpler things?

Definitely! As soon as I have a somewhat solid base working, that'll be the next step.

I'm planning on using ZeroMQ to implement a plugin interface so you can write code in any language with a ZeroMQ binding. That way anyone can join in the fun, and if something is deemed important enough, an organic process consisting of "people with C/C++ skills think this needs to be implemented in C/C++" will see it ported in a timeframe directly relative to how many people like it.

I actually plan to use it to prototype things in Javascript via Node.JS and node-zmq, then port them to C++ as required.

There's a few things left to get the core operational right now:

  • Map generation
  • Chunk sending
  • Lighting
  • Entity management
  • Block manipulation
  • Physics
  • Chunk storage

...in roughly that order.

I wrote a rudimentary "flatlands" map generator today, and am currently porting the 1.0 NBT code to work with 2.0's library setup. Hopefully this will achieve completion of the first two points, though I'm not sure when I'll get a chance to finish the NBT stuff off (it's getting late here in Melbourne!).

Lighting is a solved problem - we have working code in 1.0 that can be ported pretty easily.

So yeah, progress is coming along, albeit slowly right now.

Jailout2000

  • Newbie
  • *
  • Posts: 49
  • Enthusiast
    • View Profile
    • My Website
Re: Mineserver 2.0 - New look, same great taste!
« Reply #8 on: November 17, 2011, 07:10:11 am »
Any news on when it will be good enough to make an official release?  :)

No hard dates right now, but I'm going on holidays from work in a couple of weeks and I plan to spend a good chunk of time on the project. It'll be faster if/when more people join in :).

I'm now helping him in the project, so things will move a little bit faster.
Visit my website to see what's up with me.

Fador

  • Administrator
  • Full Member
  • *****
  • Posts: 126
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #9 on: November 17, 2011, 05:04:20 pm »
Lighting is a solved problem - we have working code in 1.0 that can be ported pretty easily.

Lighting needs to be fixed..light doesn't propagate across the chunks properly ;) I was working on a more optimized lighting generation, maybe I could finish that for ms2..

Kane

  • Global Moderator
  • Newbie
  • *****
  • Posts: 14
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #10 on: November 18, 2011, 08:20:00 am »
Looking amazing guys this is just pure sex! I'm really looking forward to the future and I'm just about to tell my players about our Future 2.0 hehe. I got worried a bit but it looks like you have owned your way to the top with 2.0!

balticum

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #11 on: December 03, 2011, 05:09:09 am »
I like the idea, but please don't mess with Java, nobody likes lag :)

Uno

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #12 on: January 04, 2012, 03:29:02 am »
So, any news on the development? :)

Can't wait for a Linux test version :)

Timatooth

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #13 on: January 04, 2012, 12:59:54 pm »
Development has been pretty quiet the past few weeks. devs on holiday perhaps?  You can already build it and connect with a 1.0.1 client.
Basic features working already;
-Chat
-Digging
-Placing blocks
-Movement and head orientation works but buggy.

Edit: I completely forgot that flamer has added the land generation back as well.

Ive been playing around with my own fork trying to get mobs and dropped items to appear.
« Last Edit: January 04, 2012, 01:02:04 pm by Timatooth »

tbar

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Mineserver 2.0 - New look, same great taste!
« Reply #14 on: January 04, 2012, 01:17:30 pm »
Edit: I completely forgot that flamer has added the land generation back as well.

How does land generation work? I've tried with the latest code but did only see a flat landscape...