一个SL系统的想法
摆一魔#5788
摆一魔
江西
很早玩WE有几年了,自娱自乐没什么作品,晋太元中听说SC2免费,准备来耍耍,游戏正在下载,说说以前考虑过的一个SL系统。
WAR3有些ORPG地图用过此类系统,比如-load XXXX-XXXX-XXXX-XXXX,实现云存档很迪奥,不知道什么原理,但是我有自己的思路...
1、转进制
众所周知二进制01,十进制0~9,十六进制0~F,三十二进制0~Y,四千进制0~爱。
二进制的111001(2)表示57(10)、39(16)、1S(32)、?(4000)抱歉算不出。
假定某个英雄ID为111,某个物品ID为001,串在一起就是111001(10)、1b199(16)、3CCS(32)、?(4000),给每一个新建单位自定义ID(单位编辑器),这样就能将需要记录的ID串起来压缩,得到一个短小易于记忆的密码。
4000进制:其中包括数字、符号、简体汉字库,我不知道内存占用情况、地图编辑器变量上限、整数和字符串长度上限有多少,姑且算100个,创建一个变量组a[n],每个变量记录100个字符,用loop+split截取字符串,4000*n次搜索可能会卡顿自己加点延迟就好。
2、再次压缩
假如记录2个单位001+002=001002,如果加上单位等级9级那就是0010900209,再加点别的就更长了,整数有上限,只能分组记录,最后会得到:”我爱你爱到ABC........”很长的字符串。
4000进制这么迪奥已经没必要再进了,还要继续压缩,这里用到变量组排序,比如0在第1组第1个位置,表示为”01001”,”爱”在第33组33位表示”33033”,10转4000进制最后会得到:”我爱你爱....”,还是很长,那就再压缩n次,最后得到一个字”爱”。
3、验证系统
经过n次压缩,字符串已经面目全非失去了自我,原路返还是不可能的,这里套用一个简单的验证码,自己取一串密码,比如”我爱他”,每次压缩时额外串入记录中作为密码:”我爱他0010900209”,相信撞车的几率不到1%。。。。。。
同理可得验证玩家名字,验证单机状态,验证地图MD5码/滑稽。

最后-load 爱

也许SC2自带上传,我也不会去做ORPG地图,留个记录。
举报 回复

使用道具

临川#51734
临川
江西
有生之年等一款不卡的RTS游戏
举报 回复

使用道具

快速回复

请举报任何违规行为,包括:

暴力威胁。我们将严肃对待此类行为,并会上报有关部门。

发布的主题中包含其他玩家的个人信息。包括实际地址、邮箱地址、电话号码及不当的照片和/或视频。

骚扰或歧视性用语。此类言辞将不允许出现。

点击此处显示论坛主题发布规则