制作可编辑的游戏保存文件

时间:2012-05-02 22:26:34

标签: java file console blackjack

我正在做的是制作一个有趣的控制台二十一点。我想省钱,以便用户可以日复一日地玩,但我不想将其保存在文本文件中,用户可以随意轻松更改金额。

我已经考虑过使用密码制作隐藏文件或加密文件,但我不喜欢这样。我希望它有点像你打开一些随机的dll文件,所有你看到的都是你无法理解的胡言乱语。

4 个答案:

答案 0 :(得分:2)

防止用户篡改其统计信息的防弹方法是在远程服务器上存储远离它们的统计信息。但这将要求用户在游戏过程中在线。 OTOH你可以展示顶级球员的阶梯等等。

如果您想要离线存储,加密文件可能是最佳途径。您只需要正确隐藏文件即可。

在修改文件之前,请先阅读修改时间。更新后,恢复时间。用户将更难以确定哪个文件已更改。

使用游戏使用的无辜文件,格式允许的数据块。它可以是将加密字符串存储在注释中的XML文件。它可以是JPG或PNG文件,将加密的字符串存储在注释或EXIF部分中,具有已知的偏移量(因此您无需解析文件)。 WAV,OGG,MP3也允许包含非解释数据。当您在实际像素值中隐藏数据时,这不是真正的隐写术,而且更容易。

我想您明白,使用反汇编程序和调试程序的确定破解程序可以破解此方案。但普通用户可能不会打扰。

答案 1 :(得分:1)

听起来你在谈论Steganography,但传统加密可能更安全,更容易实现。

答案 2 :(得分:1)

您可以加密文件中的值: 看看:http://dinofilias.com/encrypt.htm 使用此类基本加密,只要用户无权访问密钥,您的数据就相对安全了。

答案 3 :(得分:1)

您可以通过加密获得包含乱码的文件的效果。只需将加密数据保存为字节(不转换为ASCII表示)。由于加密数据的值可以在0x00和0xFF之间,因此会出现乱码。

以下是如何加密文字的简单示例:http://www.exampledepot.com/egs/javax.crypto/desstring.html