Futurecraft Forums

A forum dedicated to communication and innovation!
 
HomeCalendarFAQSearchMemberlistUsergroupsRegisterLog in
Welcome, one and all, to the Futurecraft Forums!

Share | 
 

 Let me see if I got this right

View previous topic View next topic Go down 
AuthorMessage
Munchkin9
Newbie
Newbie


Posts : 5
Join date : 2011-12-16

PostSubject: Let me see if I got this right   Fri Dec 16, 2011 4:27 pm

FIRST, a disclaimer:
I am not sure what state this 'mod' is in. I might talk of certain things that have already been dropped, changed or replaced. Just correct me politely if something of the sort occurs. I also might have misunderstood certain things, there is no one place to get all the information for this so my knowledge is based solely on what I could piece together.

NOW, wall of text:
Space: Are you all completely insane?! What is all this talk of making planets cubes or spheres or whatever? Nothing of the sort needs to be considered. The point of the mod (from what I understand) is to connect servers that are a part of this to create a universe like effect. This is a brilliant idea. But you do NOT make it seamless. If you try you will kill yourselves and never finish this mod.

A fair while ago there was a mod called something like Server Portals that allowed the player to create portals that could move you between worlds. This mod had roughly the same idea as you do, only without the multiplayer. Using the same general system you could do this:
The players are on their server which generates the terrain vanilla style (with whatever added resources and such you want). Then they create a space ship out of blocks that turns into a moving entity by activating a special block (Zeppelin mod style). When this space ship goes high enough, activates a special sequence or whatever method you want the entire spaceship along with any players, mobs and inventories on it get moved to a special server hosted by the creators of the mod. Moving between the servers is the same 'effect' as moving from the overworld to the nether: a loading screen. This server is the 'space server' and has the players ship appear next to an object that represents the planet they just left (make it round, cubic, in the shape of a troll face it doesn't matter). For simplicities sake you will want to make this object NOT life size and pass it off as simply being that the ship is already pretty far from the planet and it therefore appears small. Using an activated sequence or flying towards the object will return the player to their original server by our good old friend the loading screen.

Flying to different 'planets' (servers) will work the same. You fly towards the object that represents that planet and consequently server and upon flying close enough (or whatever method you end up using) enter the new server with your ship and everything on it.

The end result being that the only thing you need to figure out is how to have enough 'space' so that players can have wars in space and still allow them to find the planets they seek. I recommend some sort of special GUI on a block that serves as an Astronavigating console.

As for the rest: It all seems pretty good. I like the idea of giving ships an overlaying health system instead of trying to blow individual blocks of the ships which would never work, technically. The main thing is remember not to over complicate things, which is the impression I'm getting from reading the space thread.



Now why should you listen to a word I say? Good question. No particular reason. I can't wave any special project I've worked on in your face. I can tell you I have fairly extensive programming experience (I make games as a hobby) but my experience with JAVA is slightly more limited. I have never tried to make a mod for Minecraft, so I don't know the specifics of the engine you are working with.

However, call me biased, but it is my view that you should at least pay a cursory amount of attention to anyone providing advice. As I said I have experience programming so I know how a project can become awfully complicated very quickly. And most of all: I wish to help. I did not write a wall of text because it amuses me but because I thing what you are attempting to accomplish is extremely difficult, extremely ambitious, and extremely brilliant.
Back to top Go down
View user profile
ectrimble20
DEV
DEV
avatar

Posts : 441
Join date : 2011-11-07

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 5:01 pm

Nice little wall of text there.

Anywho, yes, the server to server travel is insane, I'm aware, however, I don't know where you get the idea that we'd be trying to do this seamlessly. That doesn't even make sense to me and I know how complicated and resource intense that can be.

I like your idea of a intermediate server, its kinda what I've been pitching since I started working on this mod. I'm quite familiar with the server-to-server transfer levels available in Java, I use them at work to control transaction based information transfers, which is basically what we would need. Wrap a bunch of info in a soap message, put an interpreter on each end of the request and use that to pass the information into the game. We've also discussed setting up a database to handle the requests and for "logging" and "recovery" from server crashes. So far I do not think anything is set in stone.

Thanks for the input regardless of how much is used/discarded, any advice is advice none the less.

Back to top Go down
View user profile
Munchkin9
Newbie
Newbie


Posts : 5
Join date : 2011-12-16

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 5:19 pm

Ah glad to hear you are on top of things. I was mostly talking with this thread in mind.

How they were talking of having to walk 'around' the edges of the world and making the blocks the right size and all that seriously worried me.

Anyway keep up the good work, it is good to see that you are capable of taking advice from random people. That is not something everyone can do it seems.
Back to top Go down
View user profile
roguenerd
Newbie
Newbie


Posts : 32
Join date : 2011-11-11

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 7:37 pm

I never really thought the "seamless" part would work, but I do believe that it is possible to have individual servers controlling regions of space around them. There really is just nothing there, that wouldn't be a bad load on a server. And since worlds wouldn't be infinite anymore the server would have a less of a load.

And setting up an intermediary server hosted by the creators would likely need to be quite robust and therefore expensive.

Look at the Gravity Mod topic and look at the video, the whole cube gravity thing has already been started on.

I'm pretty sure "Copernicus" or however its spelled doesn't use the Zeppelin approach, I think it has something to do with floating chunks. But don't quote me on this I have absolutely no idea.
Back to top Go down
View user profile
Buggy1997123
DEV
DEV
avatar

Posts : 393
Join date : 2011-10-18
Location : Somewhere, somewhen.

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 9:12 pm

Munchkin9 wrote:
FIRST, a disclaimer:
I am not sure what state this 'mod' is in. I might talk of certain things that have already been dropped, changed or replaced. Just correct me politely if something of the sort occurs. I also might have misunderstood certain things, there is no one place to get all the information for this so my knowledge is based solely on what I could piece together.

NOW, wall of text:
Space: Are you all completely insane?! What is all this talk of making planets cubes or spheres or whatever? Nothing of the sort needs to be considered. The point of the mod (from what I understand) is to connect servers that are a part of this to create a universe like effect. This is a brilliant idea. But you do NOT make it seamless. If you try you will kill yourselves and never finish this mod.

A fair while ago there was a mod called something like Server Portals that allowed the player to create portals that could move you between worlds. This mod had roughly the same idea as you do, only without the multiplayer. Using the same general system you could do this:
The players are on their server which generates the terrain vanilla style (with whatever added resources and such you want). Then they create a space ship out of blocks that turns into a moving entity by activating a special block (Zeppelin mod style). When this space ship goes high enough, activates a special sequence or whatever method you want the entire spaceship along with any players, mobs and inventories on it get moved to a special server hosted by the creators of the mod. Moving between the servers is the same 'effect' as moving from the overworld to the nether: a loading screen. This server is the 'space server' and has the players ship appear next to an object that represents the planet they just left (make it round, cubic, in the shape of a troll face it doesn't matter). For simplicities sake you will want to make this object NOT life size and pass it off as simply being that the ship is already pretty far from the planet and it therefore appears small. Using an activated sequence or flying towards the object will return the player to their original server by our good old friend the loading screen.

Flying to different 'planets' (servers) will work the same. You fly towards the object that represents that planet and consequently server and upon flying close enough (or whatever method you end up using) enter the new server with your ship and everything on it.

The end result being that the only thing you need to figure out is how to have enough 'space' so that players can have wars in space and still allow them to find the planets they seek. I recommend some sort of special GUI on a block that serves as an Astronavigating console.

As for the rest: It all seems pretty good. I like the idea of giving ships an overlaying health system instead of trying to blow individual blocks of the ships which would never work, technically. The main thing is remember not to over complicate things, which is the impression I'm getting from reading the space thread.



Now why should you listen to a word I say? Good question. No particular reason. I can't wave any special project I've worked on in your face. I can tell you I have fairly extensive programming experience (I make games as a hobby) but my experience with JAVA is slightly more limited. I have never tried to make a mod for Minecraft, so I don't know the specifics of the engine you are working with.

However, call me biased, but it is my view that you should at least pay a cursory amount of attention to anyone providing advice. As I said I have experience programming so I know how a project can become awfully complicated very quickly. And most of all: I wish to help. I did not write a wall of text because it amuses me but because I thing what you are attempting to accomplish is extremely difficult, extremely ambitious, and extremely brilliant.
The thread post is massively outdated.

As for vehicle health, afaik its planned to use a per-block destruction system, which isn't that hard with the methoid we are using for ships.

As for navigation, we plan to have a sort of hyperdrive/warp drive/slipspace/subspace/ftl system where individual planets are on a server and servers are entire solar systems.

We have a expert on servers and the such who's handeling the interserver thing, and thanks to Cubic Chunks and a wip gravity mod by someone else planets can be square and space effectively infinite.

Planets are going to be full-size and seamless, meaning you can see features on the surface from space and fly down onto it.
Or build a ship and fly up from it. You could also walk between the faces of it(each of which will have individual time periods).

We arn't planning to have any sort of central server afaik, at least not for players to connect to.
Back to top Go down
View user profile
fr0stbyte124
Super Developrator
Super Developrator
avatar

Posts : 1835
Join date : 2011-10-13

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 10:21 pm

Seemless world transition is a critical aspect of the Copernicus Framework. I am working on Futurecraft to further Copernicus, not the other way around. The fact that they go so well together is just icing on the cake.
Back to top Go down
View user profile
ectrimble20
DEV
DEV
avatar

Posts : 441
Join date : 2011-11-07

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 10:56 pm

And to recap now that Frost has injected his wisdom of the matter, I'm not doing anything "server" related with building code until he's got the Copernicus stuff working to his approval. Once its at that point, we can go from there and work some server-to-server stuff in and see what we can do.

If the engine works well with seamless transitions, then that is what we will do.
Back to top Go down
View user profile
Buggy1997123
DEV
DEV
avatar

Posts : 393
Join date : 2011-10-18
Location : Somewhere, somewhen.

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 11:00 pm

ectrimble20 wrote:
And to recap now that Frost has injected his wisdom of the matter, I'm not doing anything "server" related with building code until he's got the Copernicus stuff working to his approval. Once its at that point, we can go from there and work some server-to-server stuff in and see what we can do.

If the engine works well with seamless transitions, then that is what we will do.

Well, yes, I wasn't saying you were working on it as we speak, but you know the most about it out of all of us as far as I can tell.
Back to top Go down
View user profile
ectrimble20
DEV
DEV
avatar

Posts : 441
Join date : 2011-11-07

PostSubject: Re: Let me see if I got this right   Fri Dec 16, 2011 11:12 pm

Well, I'd suspect I know the most about it in a functioning environment, I do not know how much experience Frost has with transport level stuff in Java, so I think the ultimate end product with be a combination of our knowledge plus some sweat and elbow grease debugging stuff.

But yes, I will begin working on it once Frost has a stable functioning copy of FC with the Copernicus engine. As for now, I've pretty much halted working on my dumb little items as I want to see how the engine is going to look. My main reasoning for this is that items are easy to implement (blocks even easier) so they're not a big concern of mine, suppose I'll update my log to reflect this, but I'm also saving up a little bit of money to get a new board to setup a linux server at my house. Once I have that, I'll probably start playing around with ways to hook minecraft's code into something of a interpreter to allow us to call items from an outside source and load them into the game at a given point (the basics of what we'll need for server to server travel). That way I'll have the ground works laid out for when Frost is ready.
Back to top Go down
View user profile
Buggy1997123
DEV
DEV
avatar

Posts : 393
Join date : 2011-10-18
Location : Somewhere, somewhen.

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 12:15 am

ectrimble20 wrote:
Well, I'd suspect I know the most about it in a functioning environment, I do not know how much experience Frost has with transport level stuff in Java, so I think the ultimate end product with be a combination of our knowledge plus some sweat and elbow grease debugging stuff.

But yes, I will begin working on it once Frost has a stable functioning copy of FC with the Copernicus engine. As for now, I've pretty much halted working on my dumb little items as I want to see how the engine is going to look. My main reasoning for this is that items are easy to implement (blocks even easier) so they're not a big concern of mine, suppose I'll update my log to reflect this, but I'm also saving up a little bit of money to get a new board to setup a linux server at my house. Once I have that, I'll probably start playing around with ways to hook minecraft's code into something of a interpreter to allow us to call items from an outside source and load them into the game at a given point (the basics of what we'll need for server to server travel). That way I'll have the ground works laid out for when Frost is ready.
Yknow, for ores and simple items theres a tool I found that makes making those incredibly easy. You could use it to make base items to create more advanced stuff off of. Or to make the simple, boring stuff. It would make it much faster.
Back to top Go down
View user profile
Munchkin9
Newbie
Newbie


Posts : 5
Join date : 2011-12-16

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 11:59 am

So you are going to make planets seamless. How do you plan dealing with a straight wall at the edge of one of the faces of the cube planets? Does someone going from one face to the other walk 'up the wall' which is flat to them? Or does the server crash?

Sorry for the cynicism, I'm naturally like that, I have seen to many good projects fail because of over reaching, including many of my own.
Back to top Go down
View user profile
fr0stbyte124
Super Developrator
Super Developrator
avatar

Posts : 1835
Join date : 2011-10-13

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 4:54 pm

Pretty sure I've written quite a bit on making planets seamless, so I'll be brief. Essentially you render different parts of the world simultaneously with different techniques which allow for a range of resolution, all whilst doing everything possible to keep the geometry count down. It's challenging in this case because the world is fully destructable and you can't make a whole lot of assumptions about what can be culled, but I've made headway on that, too. Actually, it's looking like that's going to be finished first.

I initially disregarded cube planets because of the complicated edge conditions, but after seeing it sort of work in the Gravity Mod, I think we'll give it another shot. At the very least we'll get neat artificial gravity effects out of the deal. When you jump over an edge, or more accurately the diagonal, you will continue falling a short distance downward from your original frame of reference. Then, once you pass a certain threshold you will realign with a new "down" and start falling that direction. This will keep you from constantly flipping back and forth on the edges and corners.

Spherical planets will not truly be spherical but I've definitely talked about that before. Also cube planets may or may not have a limit to how deep you can go, depending on whether we use the cubic chunk framework and some other technical limitations. It will all be terribly complicated, but none of it is insurmountable.
Back to top Go down
View user profile
tonyri
Newbie
Newbie
avatar

Posts : 126
Join date : 2011-09-04
Age : 21
Location : Wisconsin, USA

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 5:27 pm

Both would need a bedrock core, otherwise I can't imagine what would happen to your client if you got caught in the middle of the gravity focal point.
Back to top Go down
View user profile
fr0stbyte124
Super Developrator
Super Developrator
avatar

Posts : 1835
Join date : 2011-10-13

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 6:02 pm

Well, if getting stuck is a worry, we could always tweak the switchover threshold to make you sort of slingshot further each pass, which along with your standard directional influence should eventually get you clear. In any case, spherical worlds need a bedrock to avoid the problems that go along with not actually being round.
Back to top Go down
View user profile
Munchkin9
Newbie
Newbie


Posts : 5
Join date : 2011-12-16

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 7:32 pm

I don't feel like this answers my question: what happens if you build a wall straight up at the very edge of one of the edges? From what your saying it seems that you would walk up part of the wall then once you cross the diagonal you will continue for a little bit and then start falling back down the wall (pass the diagonal again) until another certain point where you will land on the wall. In short wtf-moment.
Back to top Go down
View user profile
fr0stbyte124
Super Developrator
Super Developrator
avatar

Posts : 1835
Join date : 2011-10-13

PostSubject: Re: Let me see if I got this right   Sat Dec 17, 2011 9:02 pm

Munchkin9 wrote:
I don't feel like this answers my question: what happens if you build a wall straight up at the very edge of one of the edges? From what your saying it seems that you would walk up part of the wall then once you cross the diagonal you will continue for a little bit and then start falling back down the wall (pass the diagonal again) until another certain point where you will land on the wall. In short wtf-moment.

Here, let's try a graphical explanation.


The gravity of whatever your current orientation is extends past the diagonal by a specified amount. Your local gravity does not change until you pass that threshold.
If you were to build a plank over the edge, you could walk up the plank until you passed the threshold, then your gravity would shift and you would fall down a short distance at which point your gravity would once again reorient. If the plank ends right at the diagonal, you could walk off the edge, fall momentarily, and then start walking again along the other edge.

The threshold doesn't have to be big either; it could be as as short as one meter. It's just there to prevent the two gravitational forces from competing when you are right on the edge.

At one point I had also entertained having a continuous transition of the gravity vector, but that gets really awkward when you start involving stairs.
Back to top Go down
View user profile
Munchkin9
Newbie
Newbie


Posts : 5
Join date : 2011-12-16

PostSubject: Re: Let me see if I got this right   Mon Dec 19, 2011 11:57 am

Ya so that's what I thought would happen. I suppose it works but it is a little odd. Anyway I guess we will see. Good luck in any case.
Back to top Go down
View user profile
tonyri
Newbie
Newbie
avatar

Posts : 126
Join date : 2011-09-04
Age : 21
Location : Wisconsin, USA

PostSubject: Re: Let me see if I got this right   Mon Dec 19, 2011 5:34 pm

How would coordinates work? There won't be a flat earth to base it off of. From my understanding, to get a location in three dimensions, you need either one fixed object with known 3 axis, two fixed objects with one known axis each, or three fixed objects with no known axis. The only one that seems logical in a space environment would be the first method. It could be based in something central such as a large star. The first one is also the most mathematically complex. To use the third method, you would use simple trigonometry. With the first method, it is one of those things where you know it is possible, you just don't know how to accomplish it.
Back to top Go down
View user profile
fr0stbyte124
Super Developrator
Super Developrator
avatar

Posts : 1835
Join date : 2011-10-13

PostSubject: Re: Let me see if I got this right   Mon Dec 19, 2011 8:23 pm

I'm not sure I understand the question, but it doesn't really matter in space where the origin is, or even which way is up (though it might be helpful to keep players from getting nauseated). You can pretty much pick anything and the math will still be the same.
Back to top Go down
View user profile
tonyri
Newbie
Newbie
avatar

Posts : 126
Join date : 2011-09-04
Age : 21
Location : Wisconsin, USA

PostSubject: Re: Let me see if I got this right   Mon Dec 19, 2011 9:22 pm

fr0stbyte124 wrote:
I'm not sure I understand the question, but it doesn't really matter in space where the origin is, or even which way is up (though it might be helpful to keep players from getting nauseated). You can pretty much pick anything and the math will still be the same.
I was just asking how you will display coordinates if players are walking around a sphere instead on a flat terrain and in space with no terrain. If one planet had Y as down, then that would only last until the player moves to the other surface side. Plus, the people on the other planets would be confused as well.
Back to top Go down
View user profile
Sponsored content




PostSubject: Re: Let me see if I got this right   

Back to top Go down
 
Let me see if I got this right
View previous topic View next topic Back to top 
Page 1 of 1

Permissions in this forum:You cannot reply to topics in this forum
Futurecraft Forums :: Development :: Idea Center-
Jump to: