gpt4 book ai didi

将条形码转换为游戏对象(怪物、元素等)的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:34:17 27 4
gpt4 key购买 nike

我即将编写一个将条形码转换为游戏元素(例如怪物、元素、技能等)的游戏。很像旧的“Barcode Battler”游戏。

不幸的是,我在数学方面不是很有天赋。我需要的是一些提示,我可以如何开发一种算法来从条形码中“解析”某些统计数据(例如攻击点数、生命值……)而不使其可预测。

假设我有这个 8 位条形码:12345678

我的一个 friend 建议用 MD5 和盐对条形码进行哈希处理,但我遇到的问题是我猜这会产生很多冲突。此外,从游戏设计师的角度来看,很难预测获得某些特殊属性的机会。

那么有人知道我该如何从这里开始吗?

最佳答案

MD5 哈希摘要为 128 位,因此有 2^128 种可能的哈希,或 340,282,366,920,938,463,463,374,607,431,768,211,456 (3.402823669e+38) 种可能的哈希。

条形码有12位十进制数字,但其中一位是校验位,所以我们可以忽略它。有 10^11 种可能的条形码,或 100,000,000,000(1000 亿)种可能性。

根据此页面:http://www.iusmentis.com/technology/encryption/pgp/pgpattackfaq/hash/#bruteforcemd5,您需要尝试至少 2^64 次哈希,然后才能在 MD5 上发生冲突,这意味着仅使用一组条形码。

使用 MD5 比简单地使用条形码中的位的优势在于,对于给定的公司,条形码的第一部分将始终相同,您必须考虑到这一点,否则您最终会得到生产类似产品的给定公司。

缺点是散列将散布在所有可能的值空间中,因此您最终可能会得到种类繁多的项目和巨大的差距。

唯一的方法就是试验。

关于将条形码转换为游戏对象(怪物、元素等)的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5842233/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com