Mythruna
April 19, 2024, 03:35:30 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Welcome to the new forums. See "Announcements" for a note for new users.
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: The Coordinate Plague  (Read 9055 times)
Rayblon
Donators
Hero Member
***
Posts: 1861


Hmmm...


View Profile
« on: July 24, 2016, 06:27:44 PM »

So, we probably don't really think about it, but coordinates are pretty powerful things. GPS technology is so good nowadays that knowing your exact location numerically isn't a stretch. You can orient yourself from anywhere, pretty much at any time. Saying that GPS is an integral part of society at this point is an understatement, frankly.

... and a fair number of games openly display them, with other games presenting the possibility through other means. And, you know, some of them can justify it. Plenty of games are set during a period where GPS may well be online and usable. But... well, Mythruna isn't really one of those games, is it? I was just wondering if you planned on facilitating the obfuscation of coordinates somehow, at any point. As an option, moreso than a concrete feature.
Logged

Michael
Donators
Hero Member
***
Posts: 2166



View Profile
« Reply #1 on: July 24, 2016, 07:46:25 PM »

I'd expect Mythruna to have a map and compass... and that's it (besides a location provided by the debug AppState). That's just my two cents.
Logged
pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #2 on: July 25, 2016, 08:52:39 PM »

Yeah, map and compass.  Maybe if you get a sextant or something then you can pinpoint better positions.

That was the plan, anyway.
Logged
Rayblon
Donators
Hero Member
***
Posts: 1861


Hmmm...


View Profile
« Reply #3 on: July 25, 2016, 09:11:12 PM »

Yeah, map and compass.  Maybe if you get a sextant or something then you can pinpoint better positions.

That was the plan, anyway.

Would there be any passive coordinate obfuscation? And, concerning mods, would there be anything preventing a user from modding their client with a coordinate display when the server doesn't authorize it? I'm currently in a situation where, while I want to get rid of coordinates on a server I'm developing, it would give cheaters an increasingly unfair advantage since they can basically keep track of everything's location like it's just another Tuesday.
« Last Edit: July 25, 2016, 10:49:45 PM by Rayblon » Logged

pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #4 on: July 26, 2016, 11:17:14 PM »

Yeah, map and compass.  Maybe if you get a sextant or something then you can pinpoint better positions.

That was the plan, anyway.

Would there be any passive coordinate obfuscation? And, concerning mods, would there be anything preventing a user from modding their client with a coordinate display when the server doesn't authorize it? I'm currently in a situation where, while I want to get rid of coordinates on a server I'm developing, it would give cheaters an increasingly unfair advantage since they can basically keep track of everything's location like it's just another Tuesday.

This would be very difficult to obfuscate and not really worth the trouble, I think.
Logged
Rayblon
Donators
Hero Member
***
Posts: 1861


Hmmm...


View Profile
« Reply #5 on: July 27, 2016, 10:39:13 AM »

Yeah, map and compass.  Maybe if you get a sextant or something then you can pinpoint better positions.

That was the plan, anyway.

Would there be any passive coordinate obfuscation? And, concerning mods, would there be anything preventing a user from modding their client with a coordinate display when the server doesn't authorize it? I'm currently in a situation where, while I want to get rid of coordinates on a server I'm developing, it would give cheaters an increasingly unfair advantage since they can basically keep track of everything's location like it's just another Tuesday.

This would be very difficult to obfuscate and not really worth the trouble, I think.

I'm not entirely sure of the details, but someone managed to do something like it in Minecraft. They're not entirely comparable, I know, but they randomly offset the coordinates of the player every time they logged in or teleported. It's much more than that in practice, but they somehow managed to pull it off in less than 300 lines.
Logged

pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #6 on: July 28, 2016, 12:21:25 AM »

For single player, it obviously can't be done.  The position has to be known somewhere.

For client server, every position of every object would have to be obfuscated per client.  The only real way to do it would be to keep all positions relative to the player.  Even the random offset you mention only works until you pin against a know location.  For example, one need only decide a particular landmark is coordinate X and then it doesn't matter if your coordinates are real or not because they can be made consistent.

...but really now I don't even know why we want to do this.  Because even relative positions would suffer from this locally.  Once you have points of reference, the hack could convert places to world coordinates again.
Logged
Rayblon
Donators
Hero Member
***
Posts: 1861


Hmmm...


View Profile
« Reply #7 on: July 28, 2016, 02:05:53 AM »

For single player, it obviously can't be done.  The position has to be known somewhere.

For client server, every position of every object would have to be obfuscated per client.  The only real way to do it would be to keep all positions relative to the player.  Even the random offset you mention only works until you pin against a know location.  For example, one need only decide a particular landmark is coordinate X and then it doesn't matter if your coordinates are real or not because they can be made consistent.

...but really now I don't even know why we want to do this.  Because even relative positions would suffer from this locally.  Once you have points of reference, the hack could convert places to world coordinates again.

It makes it harder to do.

The people that want to cheat the system can't just make a mod that shows your coordinates; they have to include a coordinate anchor feature, and barring a sophisticated and fallible system that automatically detects familiar structures, the player would have to manually calibrate the mod each time they teleport, login, or die(and believe me when I say that armchair cheaters doing it for the lulz won't even bother after about ten times).

Coordinate obfuscation is not going to stop everyone, and it's not perfect either, that much is true... but it heavily cuts down on the viability and ease of development of those kinds of hacks, and makes the unfair advantage that the hacks offer less of a gimme and more something that they have to take time to understand, and that they have to babysit sometimes.

The lazy gimme-skids will get frustrated with it and eventually just stop calibrating the coords because of the inconvenience of it(at least with less sophisticated incarnations of the hack). Some of the younger audience would probably overlook the finer details of coordinate calibration and wouldn't be able to use it in the first place. Some of them would take the initial obfuscation of the coordinates to mean the mod isn't functional, and... you get the idea.

Making it harder for cheaters to communicate locations is a big detail as well. Say someone has the coords x:2000  z:6500. They wouldn't be communicable without them having some sort of universal point of reference or something whose distance from the point of reference is known, making collaboration between griefers/hackers that much more difficult.
« Last Edit: July 28, 2016, 09:48:33 AM by Rayblon » Logged

pspeed
Administrator
Hero Member
*****
Posts: 5612



View Profile
« Reply #8 on: July 28, 2016, 05:41:12 PM »

You are greatly overestimating the amount of work it would take to foil such a system.

I cannot think of a single approach that would be easier for me to write than it would be to defeat.  Every system I think of is trivially defeated by anyone even remotely experienced with coding.  It only takes one person.

So it's totally not worth the effort.
Logged
Rayblon
Donators
Hero Member
***
Posts: 1861


Hmmm...


View Profile
« Reply #9 on: July 28, 2016, 08:35:44 PM »

You are greatly overestimating the amount of work it would take to foil such a system.

I cannot think of a single approach that would be easier for me to write than it would be to defeat.  Every system I think of is trivially defeated by anyone even remotely experienced with coding.  It only takes one person.

So it's totally not worth the effort.

It's not even about the efforts on the side of the coder(and is more of a side note -- you're no longer simply fetching coords is all). I get that there's no way to significantly hinder development of these kinds of mods, and the "harder to do" part is more in relation to the user and in part depends on how the server operates. For instance, some minecraft servers place you at a random location in the world, which can be anywhere between 200 and 3,000 blocks from spawn when you first join. With no obfuscation and a coordinate mod, you'll know exactly where you are and can instantly begin navigating to a griefer's base to get munitions for the coming storm.

I actually went on a server where the coordinates were "randomized" on Minecraft, once(To be precise, they changed with every teleport, respawn, and login). There weren't many of them around, maybe a couple dozen that used it. One or two big servers did. Teleporting always showed the "loading terrain" screen like you were changing worlds, so all the terrain unloaded before the new terrain at my destination loaded up. On a server like that... it could take hours for you just to find a point of reference, and that's assuming you even go in the right direction. Having some experience with these kinds of gigs, obfuscation on servers like that would be really effective against the users themselves(AKA the ones that picked up a client off of god-knows-where and just like burning houses), since 99% of the time, as a zero-day griefer, you want to go in, blow stuff up, maybe kill a few things, and get outpretty quickly. It's supposed to be something you do in an afternoon for a fair number of people. Having the extra time sink of getting your bearings for what could be the better half of an hour or several hours kills it for the griefers themselves. In a reasonable capacity it depends on the servers and how they decide to introduce new players to the world. A static spawn won't help hinder navigation, of course.

Though, there is one thing that I absolutely hate that can be prevented with this pretty reliably. Let's say there's a town that's legitimately at x:15000 z:22950, and it has a warp portal in the middle of it. The town, naturally, is surrounded by walls and a sealed gate that only townspeople can get through. So, you're enemies with this town and happen to have this fabled coordinates mod. Unobfuscated, you instantly know where to go start building a raid base. When it's obfuscated, you can't leave the city to make a warp gate for your friends to come to, and, of course, all the coordinates you do have are relative to a point of reference that is lost when you teleport to an unknown destination.

TL;DR It's less about making it hard to code against, and more about making it inconvenient enough for people that just join a server to meet up with strangers to get griefing gear that they get bored trying to find the agreed upon point of reference. It prevents people from "coord harvesting" by warping into towns, and although it depends on the server it can be very effective with "zero-day" griefers that join for the sole purpose of griefing through the afternoon.
« Last Edit: July 28, 2016, 09:25:40 PM by Rayblon » Logged

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!