Restricting Edit Module Access?

Is there some way to protect a module with a password or something to ensure other users won’t be able to edit it?

Thus spake Malpertius:

Is there some way to protect a module with a password or something to
ensure other users won’t be able to edit it?

Why do you want to do that?


J.

No.

To make gobs of cash, of course. It’s not really worth it, however.

I think what Joel’s concern is that if companies ever got into the idea of copyprotecting modules, it would be to the detriment of the entire industry.

  • M.

Thus spake mkiefte:

To make gobs of cash, of course. It’s not really worth it, however.

I think what Joel’s concern is that if companies ever got into the idea
of copyprotecting modules, it would be to the detriment of the entire
industry.

That’s part of my concern, yes.

Another part is that I don’t want to leave anybody with the impression
that real copy protection is possible. If someone is telling you that
you can’t access something that your computer clearly must be able to
in order for it to work, then they’re selling you a bill of goods.

But I really would like to understand the original poster’s reasons.


J.

Sorry, should have explained why. No, it’s not to make money.
I would have like to host a tournament on a card game module i’ve created and it’s to prevent cheating… I’ve removed the “Retire” option as it’s too easy to exploit but users can still swap the “image used when masked” with something else to view the cards in the opponent’s hand (which is on the Map Window). And if hands were Private Windows: add their side as viewer. If i’m not mistaken, other users would not notice the mod their opponent uses as been modified.

Wow, sorry, that’s what happens when you jump to conclusions! :slight_smile:

Unfortunately, there is no way to implement what you want. It’s a good idea, but like Joel said, a determined cheater can still undermine it. There has to be a healthy amount of honour in tournaments.

That being said, you can prevent what you describe by having all players synchronise to a neutral observer. The properties to which you refer will just revert back to the state in the observer’s module whatever the players do to their own copies. Still not perfect, but slightly better.

You can get the same effect by having players open a saved game that you provide just before the start (so that they would not have time to alter it).

  • M.

Also a right click on the players name info after they synchronize should reveal the same module CRC as what you are using. Anything different and its not the same.

Thanks, such a simple solution… :unamused:
Btw, i’ve yet to upload this mod here as it still needs fixing but it should be up this month. It’s a module of Battle Spirits TCG (similar to Magic: the Gathering).

On Nov 1, 2010, at 12:42 PM, Tim M wrote:

Also a right click on the players name info after they synchronize
should reveal the same module CRC as what you are using. Anything
different and its not the same.

Of course, this isn’t foolproof either, since you are ultimately
relying on the Vassal program on their computer to report this CRC.
With a custom Vassal running you can make this be whatever you want.
It does up the effort threshold a little bit, in that they would have
to modify and compile their own very special version of Vassal.

Thus spake Thomas Russ:

On Nov 1, 2010, at 12:42 PM, Tim M wrote:

Also a right click on the players name info after they synchronize
should reveal the same module CRC as what you are using. Anything
different and its not the same.

Of course, this isn’t foolproof either, since you are ultimately
relying on the Vassal program on their computer to report this CRC.
With a custom Vassal running you can make this be whatever you want.
It does up the effort threshold a little bit, in that they would have
to modify and compile their own very special version of Vassal.

In the long run, the way I plan to handle this is using public-key
cryptography. Essentially, you have a key pair for each player, and
then a key pair for each “view”. Game data visible for a view is
encrypted with the view’s public key. The private key of a view is
encrypted with the public key of each player who has access to the
view. In order to get the total game data available to you, you
decrypt all of the private keys of the views you have, then use those
to decrypt all the view data you can, then merge all the view data you
decrypted.

With a system like this, I’d be confident that nobody was cheating
by getting information they shouldn’t have, even if I were playing
against professional cryptanalysts.

But, this is a long way of at present.

Checking the CRC is a good idea, for now.


J.