[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4756: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3891)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4758: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3891)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4759: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3891)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4760: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3891)
World of RoboFarmCraft • View topic - What's the worst that could happen? (Farm copying)

What's the worst that could happen? (Farm copying)

Questions posed to our users about new features or possible UI updates.

What's the worst that could happen? (Farm copying)

Postby worfc » Wed Nov 04, 2015 7:12 pm

Because of the way farm-recovery is being implemented in v1.4 ("Soon!"), it will be possible for multiple copies of your farm to exist.

Because of the the way auto-save works, it will be possible to run 2 copies of your farm, make changes in both, and have one of the copies "stomp"-save over the other, costing loss of progress.

Because "safeguard" and "recover" farm is being implemented via Facebook login (soon: Google, others), anybody who can login as you on Facebook can get a copy of your farm.

My question to you is:

What's the worst that could happen?

I mean this from all angles. Obvious ones include:

* What's the worst possible cheat someone could effect using multiple copies of their farm?
Item duplication? Coin duplication? I don't think so, but maybe I'm missing something.

* What's the worst possible user experience related to multiple copies of their farm.
What comes to mind is: (a) user could purchase IAP on farm #1, then farm #2 auto-saves without IAP-information and they lose real-world cash.[1] (b) You could sign-in to Facebook on someone else's iPad, forget to sign out, they use the "already logged in" feature to "recover" your farm (putting a copy on their device), then forget about it. You spend the next month working really hard and advancing your farm, then the other person launches your month-old farm and saves it. The next time you launch, you're back to that old farm.

What else might go wrong?

What are some possible fixes?

Thanks!


---
[1] There are big, giant warnings about how you shouldn't do this, baked into the system. I can't help people who willfully damage themselves.
Posted by WORFC, board admin, moderator, game author.

Please
You can also follow us on
Check out the (short updates 1-3x/week.)
User avatar
worfc
Site Admin
 
Posts: 226
Joined: Wed Apr 15, 2015 5:08 pm

Re: What's the worst that could happen? (Farm copying)

Postby noivad » Wed Nov 04, 2015 7:36 pm

I don’t have either FB nor Google for several reasons.

Also, can’t you timestamp saves so only the latest save loads instead making “copies.” IF you want to actually make a clone of the farm, can’t you fork the farms by adding a new farm ID concatenated with the User ID (or however you uniquely label farms/users)?

The reason I mention this is because, I designed a shared document DB where I had to allow forks and then allow merges (much like say github does it now) for the primary content last millennium for a company. Of course there were a ton of metadata columns I could pull from to make sure I could combine UserID+ContentID+Timestamp to prevent overwrites—That’s assuming you have a relational structure—no idea since I dunno anything about your DB’s structure.

The scripting language I had to use was no where near as full featured as Obj-C nor even php, but it was more advanced than mySQL’s stored procedures (or at least a lot easier to write), but I was able to hack it together without much slowdown (probably due to the DB’s script cache architecture—like memcache, and various other caching of script output, etc.) and it was solid. Then again, the scripting language didn’t allow you to make mistake (more safety nets in a scripting language after all). So, adapt that idea if you think it’s useful.
noivad
 
Posts: 23
Joined: Tue Jul 14, 2015 12:10 pm
Location: SF Bay Area

Re: What's the worst that could happen? (Farm copying)

Postby worfc » Wed Nov 04, 2015 7:53 pm

No FB or Google: These aren't required (and other OpenID solutions are "on the list"), it's just a mechanism to offer people a way to safeguard their farm.

You may have noticed that WoRFC is currently "login-less login" -- you never see your UserID or password. However, if you delete & reinstall your app, the new copy of your app never sees your UserID or password, either, and tries to create you a new farm.

"Safeguard your farm" is intended to allow you a way to recover a thus-lost farm. However, as a side effect, it means I can hand you my iPad, you can log-in, and "recover" your farm to my iPad. Now we both have your farm.

While there might be complicated schemes to prevent this sort of thing, my #1 goal is to give people a way to not lose their progress. #2 is to make the experience not-horrible. "Protect users that are actively hostile to themselves after they've been multiply warned" is way-way down on "The List" ;)

Merging forked farms: This sounds like the perfect way to create item/money duplication problems. Again, I'm ok with slogging through the issues and dealing with them all... "later." For now, I'm just trying to give users a way to not experience "I lost all my hard work." Again, it's not required; it's just an available option.

Preventing overwrites: Well, I guess that's one of the questions -- is this important? The "normal" use case is to recover an otherwise-lost farm and get back The One True Copy. The only way to get multiple copies is if you're "messing around with it", and this is strictly warned against (just not prohibited). Are you suggesting that putting effort into prohibiting this is important?

If I do a thing where I give the recovered farm a new ID, I guess I'd have to invalidate the old farm so it could never be saved again. Else you'd have the cheat where one guy just runs off duplicate copies of his far-advanced farm and gives them to people.

But, again: that's extra effort that takes away from other more-fun features so, again, we're back to "is that important?"

I'm not arguing for or against; I'm honestly asking for your (collective) thoughts.

Thanks!
Posted by WORFC, board admin, moderator, game author.

Please
You can also follow us on
Check out the (short updates 1-3x/week.)
User avatar
worfc
Site Admin
 
Posts: 226
Joined: Wed Apr 15, 2015 5:08 pm

Re: What's the worst that could happen? (Farm copying)

Postby noivad » Fri Nov 06, 2015 3:52 am

noivad
 
Posts: 23
Joined: Tue Jul 14, 2015 12:10 pm
Location: SF Bay Area

Re: What's the worst that could happen? (Farm copying)

Postby worfc » Fri Nov 06, 2015 7:52 am

Posted by WORFC, board admin, moderator, game author.

Please
You can also follow us on
Check out the (short updates 1-3x/week.)
User avatar
worfc
Site Admin
 
Posts: 226
Joined: Wed Apr 15, 2015 5:08 pm

Re: What's the worst that could happen? (Farm copying)

Postby noivad » Fri Nov 06, 2015 4:54 pm

noivad
 
Posts: 23
Joined: Tue Jul 14, 2015 12:10 pm
Location: SF Bay Area

Re: What's the worst that could happen? (Farm copying)

Postby noivad » Sat Nov 07, 2015 3:12 am

The short version of part of that is: “trust your user not to be trusted ;)” or “the only way to make something fool-proof is to make foolish actions impossible.”
noivad
 
Posts: 23
Joined: Tue Jul 14, 2015 12:10 pm
Location: SF Bay Area


Return to How should it work?

Who is online

Users browsing this forum: No registered users and 0 guests

cron