Networking.

There will be one stickied topic per feature in phase 2. Other discussion may take place on other topics if relevant.
Forum rules
-This forum is about the mechanics and framework of the content. NOT about the content itself, that belongs in phase 3. However, if content discussion creeps in because it is necessary, this is permissible.
Post Reply
Chairman_Tiel
Rear Admiral
Rear Admiral
Posts:1890
Joined:Sat Dec 01, 2012 9:39 am
Affiliation:GLORIOUS REPUBLIC
Networking.

Post by Chairman_Tiel » Tue Jan 21, 2014 8:41 pm

I'm still an advocate of each server being a solar system and owners hosting as many planets as their hardware allows. So a small 512mb setup might only have a single moon in their 'zone', but a larger 3gb one might have a respectable star system within theirs that can be accessed. Travel would be contingent on the existence of a physical gate within a zone...here, let me draw you a picture

Image
Image

Sector administrators would simply be trusted individuals appointed by or composed of members of the development team responsible for overseeing a collection of zones. They would be expected to review each of them regularly to make sure things aren't going fowl.

Minecraft's authentication system should be tapped into...that is to say, no cracked Futurecraft zones; those that inevitably do won't be able to connect to the FMS. Server files should be something applied for in a professional manner, with a valid Minecraft user account necessary to be considered. If a host is found to be in severe error, the IP on their application will be blacklisted from further connections to the FMS. Note that revocation of hosting privileges does not necessarily constitute banning from the entire Futurecraft multiverse, but I can see them going hand in hand quite often.

And speaking of bans, as noted in the diagram, hosts should be able to exile players from their zone. You're going to say this is open to abuse, I agree, but consider that the aforementioned screening process should eliminate the baddies, and even then all a player need do is connect to another instance and report them to the sector admin. Mass bans will likely result in immediate review and ousting of those that would abuse their power. However, a reputation system should also be used - if a linked Minecraft account accrues so many exiles in a certain period of time they'll be automatically banned from the entire multiverse for a period of one day, upon which a sector administrator can look at the ban and either consolidate it into a longer punishment, or overturn it entirely should they feel the player in question was banned in error on multiple occasions.

Hosts would get a cool name, and the ability to bestow substantially-less-but-still-awesome names to players registered with their zone; this is for the sake of donor rewards and the like. They aren't able to do anything else...in a perfect world they'd get an installer to name their planets and specify how many they want (and thus the player limit), but ideally it has to be really difficult for them to do anything other than tamper with said variables. Terrain alteration should be out of the question.

Gates basically enable traffic, but may or may not be traps set up by players within a zone. Some may also be better defended with automatic cannons and the like where others are more or less an invitation to pirates; the idea is to give the player as much freedom as possible.

Factions could also be restricted to five registrations per zone, but I'm not sure how hot you guys are on that. It seems like 'resistance' groups would function just fine given the dedication, and five would mean that every single one would have to be substantial in their own right. Factions could have a 'standard' given to them on creation that, if destroyed, will open a slot in the zone for the creation of another. But again, this is more of my personal opinion on the matter.

FURTHER DISCUSSION
Spoiler:

Code: Select all

[quote="Tiel+"][quote="MercurySteam"][quote="Tiel+"][quote="MercurySteam"][quote="Tiel+"][quote="MercurySteam"]Well, if you think about the size requirements for a server, then we probably wouldn't need any kind of owner selection process. Servers will need quite a large amount of RAM and space just to run FC, and maybe we put a 100 player slot minimum. You probably aren't going to get a server that size then just delete the entire thing when things don't go your way. It could also be set so that an owner can't put his server back on the network after deleting. Monitoring each server really wouldn't be that difficult, either. There probably wouldn't be that many, and if we use separate networks of just a few servers, it could be even easier.[/quote]

A 100 slot minimum isn't going to change much. I could host a 400 slot server on a netbook and none would be the wiser until that actually starts to fill up. At the same time, though, discriminating against smaller setups isn't going to get anyone anywhere - there still stands to be some gain from using them seeing as no big server owner is going to gamble their entire community on an untested total conversion initially.[/quote]

Initially, yes, we probably aren't going to have large servers, but later, servers need to be able to hold hundreds of players and dozens of ships. As we go, we can add more server groups with larger requirements and a larger number of servers.

[quote]I'm still an advocate of each server being a solar system and owners hosting as many planets as their hardware allows. So a small 512mb setup might only have a single moon in their 'zone', but a larger 3gb one might have a respectable star system within theirs that can be accessed. Travel would be contingent on the existence of a physical gate within a zone...here, let me draw you a picture[/quote]

A variation in number of planets, size, resources, asteroid fields, moons, etc. would be nice. Servers linked with each other should have similar abilities, though, so that a fleet that can operate just fine in one server doesn't crash another.

[quote]snip

Sector administrators would simply be trusted individuals appointed by or composed of members of the development team responsible for overseeing a collection of zones. They would be expected to review each of them regularly to make sure things aren't going fowl.

Minecraft's authentication system should be tapped into...that is to say, no cracked Futurecraft zones; those that inevitably do won't be able to connect to the FMS. Server files should be something applied for in a professional manner, with a valid Minecraft user account necessary to be considered. If a host is found to be in severe error, the IP on their application will be blacklisted from further connections to the FMS. Note that revocation of hosting privileges does not necessarily constitute banning from the entire Futurecraft multiverse, but I can see them going hand in hand quite often.[/quote]

Uh...

[quote]And speaking of bans, as noted in the diagram, hosts should be able to exile players from their zone. You're going to say this is open to abuse, I agree, but consider that the aforementioned screening process should eliminate the baddies, and even then all a player need do is connect to another instance and report them to the sector admin. Mass bans will likely result in immediate review and ousting of those that would abuse their power. However, a reputation system should also be used - if a linked Minecraft account accrues so many exiles in a certain period of time they'll be automatically banned from the entire multiverse for a period of one day, upon which a sector administrator can look at the ban and either consolidate it into a longer punishment, or overturn it entirely should they feel the player in question was banned in error on multiple occasions.[/quote]

Something something bicameral banning? I think that, if a server owner/admin wants to ban someone, they should only be able to put out a bounty or something like that on the player's head, so that it will be a kind of shoot-on-sight for all police NPC and automated defense stuff. Network admins/ops should be the only ones to actually ban people.

[quote]Hosts would get a cool name, and the ability to bestow substantially-less-but-still-awesome names to players registered with their zone; this is for the sake of donor rewards and the like. They aren't able to do anything else...in a perfect world they'd get an installer to name their planets and specify how many they want (and thus the player limit), but ideally it has to be really difficult for them to do anything other than tamper with said variables. Terrain alteration should be out of the question.[/quote]

We could make server hosts automatic generals/admirals, something like that, but we can fuss over faction mechanics later, I suppose.

[quote]Gates basically enable traffic, but may or may not be traps set up by players within a zone. Some may also be better defended with automatic cannons and the like where others are more or less an invitation to pirates; the idea is to give the player as much freedom as possible. [/quote]

I never liked the idea of gates being the sole method of FTL/getting from server to server.
A zone is a server, right?

[quote]Factions could also be restricted to five registrations per zone, but I'm not sure how hot you guys are on that. It seems like 'resistance' groups would function just fine given the dedication, and five would mean that every single one would have to be substantial in their own right. Factions could have a 'standard' given to them on creation that, if destroyed, will open a slot in the zone for the creation of another. But again, this is more of my personal opinion on the matter.[/quote]

I think it'd be best for a server to have one main/beginning faction controlled by the admin or someone appointed by the admin, and for players to have the ability to leave that faction and create another. A limit on the number of factions would make it cleaner.[/quote]

I'm in the middle of making cookies right now, so apologies in advance if any irritation at my back fucking hurting seeps through in my response.

a) Then FC dies on the spot. We don't have the capital to start our own server capable of hosting hundreds of players at a time.

Small servers come first, hosting their own small zones. As larger servers join, the zones they host can then be distributed across sectors as high intensity conflict areas where major fleet actions are to take place...actually, we might have to enforce some kind of ship limit on a per-zone basis. A small one might only be able to carry three, where a large one upwards of ten, and so forth. We direct anything bigger than a scuffle to the larger zones capable of handling it through that.

b) You're not thinking with zones. Think with zones. We don't have servers, we have zones. Hardware hosts one or more zones, which can contain anything from a single moon to a full fledged solar system. Those hexagons on my chart? Zones. Basically, what's inside a zone is what can be accessed by a player without reconnecting to another server via the gate system. Also, zones wouldn't be 'linked', persay; the construction of a gate basically means anyone can reconnect (travel) to your zone.

c) You're not understanding here. There are no owners. There are no admins. No OPs, no mods, no automated police or NPCs, none of that. There are hosts, there are sector admins. Sector admins are our systems side of things, hosts are merely what the name would imply. Hosts can 'permanently evict' a person from the zone that they're responsible for, nothing more, nothing less, however if a player accrues so many 'evictions' within a period of time they become subject to a one day ban that could become permanent upon review by a sector admin.

These evictions are not for petty stuff like grief or anything like that. They're for hacks and just generally being an awful excuse for a human being. I can understand your desire for RP stuff everywhere but you shouldn't have to jump through hoops to get rid of a rampant cheater.

d) Generals?

No, no ranks. A colored name, something like [HEY GUYS I'M ENABLING YOU TO PLAY RIGHT NOW] next to their name in comic sans or some [i]osik[/i]. Outside of that a host shouldn't have anything else...the idea is to segregate gameplay and administrative duties as much as possible, hence why most of the power lies in sector admins rather than individual hosts (owners, if you haven't caught on). This way a host can certainly start a beginning faction if they want and be head of it without the typical problems lying with such a scheme.

e) A zone is the space hosted by a server in the futurecraft multiverse. It can contain anything from a single moon to a solar system. Have you read anything I've been saying or read my pretty chart?

But no, there's no other way. You could try to develop some algorithm to map out zones in a way that makes sense so the edges line up and you can move from one to another seamlessly, but outside of that very far-fetched proposition it's a pipe dream. Having gates is the only real feasible solution, with perhaps intra-sector FTL drives later on.

f) There are no admins. Now, if you're referring to the host, there's nothing stopping them from creating an initial faction when they get on. I agree with you on limited factions, but the problem with your idea lies in who approves the creation of factions...my proposal was it being the host, seeing as it's their zone that's going to ultimately be hampered as a result, but even without the whole starting faction deal it's possible a host might not welcome any competition. Yet the alternative is a dozen * factions by people who think it's funny...I dunno.[/quote]So what you're saying is that zones are servers, but we're not going to call them servers because it magically fixes things.

A. That's... almost exactly what I said, except if we do separate groups/networks of servers, we could put the high-performance ones together after we get enough of them.

B. Zones are servers, servers are zones. The terminology doesn't really have anything to do with it. 

C, D, F. You're not understanding here. Owners don't disappear because they aren't convenient, they're still going to want to have some amount of power over their server. There are [i]probably[/i] going to be NPCs, they've been discussed quite a bit, and defense is [i]probably[/i] going to be one of their jobs. What you're referring to as "sector admins" I'm calling mods/Ops, and they're the only ones that should have the ability to actually ban someone from a server or "sector" group. Owners/server admins "hosts" should only have power over the main faction's NPCs.

A server would start out with a single faction set up and run by the server admin. This first faction would be the server's main faction, any others would be splinters. When a player joins a server, it joins the faction. Membership in the faction is passive, the player is just a citizen that can buy and sell off of the faction's market and things like that, unless it joins the faction's military. In the faction's military, which the host/admin sets up along with the main faction, players are organized with a rank system, are assigned to ships (or assigned ships and a crew if they're high-ranking), etc. It's 1:40 am and that paragraph is really shitty.

E. I wasn't talking about seamless transitions, I was talking about FTL drives.[/quote]
[quote="MercurySteam"]So what you're saying is that zones are servers, but we're not going to call them servers because it magically fixes things.
B. Zones are servers, servers are zones. The terminology doesn't really have anything to do with it. [/quote]

A zone is the space hosted. A server is the hardware hosting it. There is a difference. A server could feasibly host multiple zones, really.

[quote="MercurySteam"]A. That's... almost exactly what I said, except if we do separate groups/networks of servers, we could put the high-performance ones together after we get enough of them.[/quote]

That's silly. No, we want a high performance server in each sector. Putting them together in some uber sector just means the rest of the galaxy is going to be a lot less interesting and underpowered.

[quote="MercurySteam"]C, D, F. You're not understanding here. Owners don't disappear because they aren't convenient, they're still going to want to have some amount of power over their server. There are [i]probably[/i] going to be NPCs, they've been discussed quite a bit, and defense is [i]probably[/i] going to be one of their jobs. What you're referring to as "sector admins" I'm calling mods/Ops, and they're the only ones that should have the ability to actually ban someone from a server or "sector" group. Owners/server admins "hosts" should only have power over the main faction's NPCs.[/quote]

There have not been any conclusive discussions over how present NPCs will be, and what role they will play, but for the timebeing let's assume they're not even on the table. It'll be easier to accommodate them later than revise a scheme that won't work without them.

I don't see how at any point I've said owners won't disappear. They have a role to play as hosts, but anything more than that just opens everything up to abuse. Defense, for example - why would I even bother rallying the people in my server to oust the invaders when I could just turn the server off and lock everyone out for a time?

And for the love of god, just use the same terminology so this doesn't get confusing. That stubborn streak of yours isn't going to get us anywhere here.

[quote="MercurySteam"]A server would start out with a single faction set up and run by the server admin. This first faction would be the server's main faction, any others would be splinters. When a player joins a server, it joins the faction. Membership in the faction is passive, the player is just a citizen that can buy and sell off of the faction's market and things like that, unless it joins the faction's military. In the faction's military, which the host/admin sets up along with the main faction, players are organized with a rank system, are assigned to ships (or assigned ships and a crew if they're high-ranking), etc. It's 1:40 am and that paragraph is really shitty.[/quote]

I'm running on far less sleep than I should be, so sure, why not. Except military. Why is that necessary?

[quote="MercurySteam"]E. I wasn't talking about seamless transitions, I was talking about FTL drives.[/quote]

The thing with FTL drives is that they'd have to be strictly in-sector and incredibly expensive so as to not be overpowered. We want gates to at least have some strategic significance when it comes to defending.

I was doing some thinking though, and why couldn't we just have every zone be the same size? So arsln's homebuilt server would have the same amount of space as a huge one, but probably just a lot less populated with players and planets. It'd be a lot easier to map that out and enable transitions. But then again, that'd have to be a loading screen that could've otherwise been hidden in a gate jump cutscene, so not exactly seamless.[/quote]

**Reposted from other forum.
Last edited by Chairman_Tiel on Wed Jan 22, 2014 9:35 am, edited 1 time in total.
[spoiler]Image[/spoiler]

User avatar
Tau
Admin
Posts:750
Joined:Mon Dec 10, 2012 9:58 am
Affiliation:Futureville Mafia
IGN:TehPwnzor7306
Location:Ancapistan

Re: Networking.

Post by Tau » Tue Jan 21, 2014 10:00 pm

Is it necessary to have a central server rather than make everything distributed?
Image
Vinyl wrote:"RP" and gaming and homosexuality is what's keeping [the forum] afloat.

CMA
Captain
Captain
Posts:1083
Joined:Fri Jan 10, 2014 3:16 pm
Affiliation:Byzantine Falangists

Re: Networking.

Post by CMA » Tue Jan 21, 2014 10:09 pm

Tau wrote:Is it necessary to have a central server rather than make everything distributed?
For the MMO version, yes. However, I'd like to be able to run isolated solar systems so people don't have to deal with us running things if they don't want to.


Also, I'm on board with pretty much everything Tiel said. I don't really have much time, sorry I've been AWOL.
"Being a christian democrat is like being a christian satanist" - Adam Berces

Vinyl
Fleet Admiral
Fleet Admiral
Posts:3217
Joined:Wed Dec 05, 2012 9:54 pm
Affiliation:Hexalan
IGN:PCaptainRexK
Location:Hexalan

Re: Networking.

Post by Vinyl » Tue Jan 21, 2014 10:39 pm

CMA wrote:Also, I'm on board with pretty much everything Tiel said.
^
cats wrote:I literally cannot be wrong about this fictional universe

Ivan2006
Fleet Admiral
Fleet Admiral
Posts:3021
Joined:Fri Dec 07, 2012 12:10 pm
Affiliation:[redacted]
IGN:Ivan2006
Location:In a universe.
Contact:

Re: Networking.

Post by Ivan2006 » Wed Jan 22, 2014 4:37 am

I am not sure about the player per faction limit.
Also, about inter-server travel, you are forgetting about FTL drives eventually taking the place of gates as a main means of transportation.
I guess there would be various ways to initiate a connection to the FMS, like if you build a FTL before a gate (which would propably make sense in terms of tech progression).
Quotes:
Spoiler:
CMA wrote:IT'S MY HOT BODY AND I DO WHAT I WANT WITH IT.
Tiel wrote:hey now no need to be rough
Daynel wrote: you can talk gay and furry to me any time
CMA wrote:And I can't fuck myself, my ass is currently occupied

Chairman_Tiel
Rear Admiral
Rear Admiral
Posts:1890
Joined:Sat Dec 01, 2012 9:39 am
Affiliation:GLORIOUS REPUBLIC

Re: Networking.

Post by Chairman_Tiel » Wed Jan 22, 2014 7:24 am

Ivan2006 wrote:I am not sure about the player per faction limit.
Also, about inter-server travel, you are forgetting about FTL drives eventually taking the place of gates as a main means of transportation.
I guess there would be various ways to initiate a connection to the FMS, like if you build a FTL before a gate (which would propably make sense in terms of tech progression).
See Further Discussion for more details on how FTL drives fit in tech progression.

In short, they don't. Servers host zones (the most basic FC instance), which are organized into sectors. FTL drives can be used to access zones within a sector without actually physically approaching their current zone's gate, however the destination must have a gate as 'coordinates must be obtained' or some other...this is because inter-server travel must be contingent on the gate system in order for it to work the way we want it to. It's a more convenient method of travel, and works as a really nice fallback if your fleet charges into a server only for the enemy to destroy their own gate and strand you there, though imo should be cost prohibitive.

@above comments

The way this works is if a solar system doesn't want to have anything to do with Futurecraft they always have the option of not building a gate. In fact, on server startup a configuration option should be available to disable the blocks needed for one entirely, just to prevent third parties going ahead with it anyway against a host's desires. I've described this concept in the past as not dissimilar to Pandora's box...if a server is fearful of being overrun they can build up their defenses until they believe they're ready.

I know how you feel about centralization, Tau, but an FMS is absolutely necessary to coordinate connections between servers to transfer player data, ship files, etc. If independent hosts do it themselves then we're just exploit central. I'm also not afraid to admit that we lose any ability to enforce rules and manage who's hosting FC without it.

What we could do, though, is give the ability for other master servers to be created down the line when people begin to express interest. This way independent owners with powerful enough setups can host their own sectors if they so desire.
[spoiler]Image[/spoiler]

Ivan2006
Fleet Admiral
Fleet Admiral
Posts:3021
Joined:Fri Dec 07, 2012 12:10 pm
Affiliation:[redacted]
IGN:Ivan2006
Location:In a universe.
Contact:

Re: Networking.

Post by Ivan2006 » Wed Jan 22, 2014 9:00 am

So you are saying I can't FTL-drive into another server if we use this system?

I do prefer server=system. (if we have to cater for server power, we can still make a system on a small server to be only the star and one planet IMO)

So, basically I don't like the idea.

I prefer if we made it that once a server uses an FTL or gate for the first time, it is connected to the FMS and instead of connections, we have them arranged at coordinates on a star map and where you can travel to is defined by the range of your FTL and, of course, the longer the distance, the longer you'll need. The perk of using a gate would then be that you can travel (almost) instantly while the downside would be that whoever is in control of a certain system controls where they are and what they are surrounded with. Gates would also be able to dial to any other gate within range, but taking more power to establish contact with gates at higher distances. I basically don't see any problems with my idea implementation-wise, but I am not exactly an expert.
Quotes:
Spoiler:
CMA wrote:IT'S MY HOT BODY AND I DO WHAT I WANT WITH IT.
Tiel wrote:hey now no need to be rough
Daynel wrote: you can talk gay and furry to me any time
CMA wrote:And I can't fuck myself, my ass is currently occupied

Chairman_Tiel
Rear Admiral
Rear Admiral
Posts:1890
Joined:Sat Dec 01, 2012 9:39 am
Affiliation:GLORIOUS REPUBLIC

Re: Networking.

Post by Chairman_Tiel » Wed Jan 22, 2014 9:12 am

Ivan2006 wrote:So you are saying I can't FTL-drive into another server if we use this system?

I do prefer server=system. (if we have to cater for server power, we can still make a system on a small server to be only the star and one planet IMO)
No. Each FC instance is what I'm calling a zone, which in practice is usually a solar system with a variable amount of planets, depending on the power of the hardware (see: the server. server=hardware). These zones are grouped together, you see, based on the location of the servers hosting them (which again are the physical hardware) to form localized sectors like Eastern US, etc. So again a sector = a group of zones with a particular localization overseen by a sector admin. What I'm saying is FTL drives would only function to travel between zones on the same sector to prevent straining the system.
Ivan2006 wrote:I prefer if we made it that once a server uses an FTL or gate for the first time, it is connected to the FMS and instead of connections, we have them arranged at coordinates on a star map and where you can travel to is defined by the range of your FTL and, of course, the longer the distance, the longer you'll need.
You're underestimating the calculations here. It is my preference we would avoid trying to map everything entirely and have a shapeless network.
[spoiler]Image[/spoiler]

Error
Moderator
Posts:4205
Joined:Thu Dec 06, 2012 11:49 am
Affiliation:CNI
IGN:FC_Rangefinder
Location:Sol IIIa, School of Hard Knocks

Re: Networking.

Post by Error » Wed Jan 22, 2014 10:51 am

I prefer Tiel's idea, if only for the ability to self-isolate. That way, private servers are possible, and no FTL drives means you can't just roll in and blow them up, because no gate = no travel beyond the solar system.
Image

Ivan2006
Fleet Admiral
Fleet Admiral
Posts:3021
Joined:Fri Dec 07, 2012 12:10 pm
Affiliation:[redacted]
IGN:Ivan2006
Location:In a universe.
Contact:

Re: Networking.

Post by Ivan2006 » Wed Jan 22, 2014 11:20 am

Tiel wrote: You're underestimating the calculations here. It is my preference we would avoid trying to map everything entirely and have a shapeless network.
I doubt that.
Converting an ip/estimated location into angular (to make sure it fits into a circular galaxy) coordinates would propably take less than 10 calculations.
Then converting angular into cartesian coordinates is a simple matter of some sine and cosine calculations.
The above is only neccessary once, when the server first connects to the network.
For each jump, you then have to simply draw the systems onto the map where the destination is set, draw a circle with your range and when someone picks a destination, you run a calculation using the Pythagorean Theorem to determine the distance and THEN you check if it is actually in range, avoiding having to check everything with everything. After the calculation of the range, it will either say it is out of range or tell the pilot that travelling there will take your FTL x time and ask you whether you want to proceed.

That is exactly
2 calculations for getting the relative coordinates
2 calculations to square them
1 calculation to add them
1 calculation get the square root

Makes 6 calculation needed for every jump.

And it won't need many variables either, in fact the calculation can easily work with creating only two new variables (one for relative x, one for relative y) and then reusing them (AFAIK, you can write into a variable with the variable itself playing a role in its calculation without making stuff go weird), so RAM isn't a problem either.

Edit: upon finding out the difference between sectors and zones in Tiel's system, I don't mind it anymore, but I still think mapping should be done, at least inside the zones.
Quotes:
Spoiler:
CMA wrote:IT'S MY HOT BODY AND I DO WHAT I WANT WITH IT.
Tiel wrote:hey now no need to be rough
Daynel wrote: you can talk gay and furry to me any time
CMA wrote:And I can't fuck myself, my ass is currently occupied

Post Reply