设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2699|回复: 5
打印 上一主题 下一主题

[已经解决] 【专业伸手党】在不联机的情况下,如何实现“兑换码”

[复制链接]

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

跳转到指定楼层
1
发表于 2013-3-14 23:26:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
10星屑
以前的作法是,在游戏里面设定一个兑换人员,或者是宝箱
然后在里面设定一个变量123456,设定分歧,当玩家输入123456数字
就能获得一些额外的赠品或者是打开宝箱。

这个123456就是所谓的作弊码,或者可以说是兑换码

一般情况下我会把作弊码放在我其他游戏里面,一旦玩家下载了我的另外游戏
就能看到里面的兑换码,但是这样一来,也造成了数据的固定化

玩家A获知了兑换码后,将它发布出来,另外的玩家即使不下载我的另外一个游戏
也能知道兑换码就是123456,那么我的目的就达不到了。


如何能让游戏里面的兑换码在不同的阶段变化呢?为的就是让玩家不要这么快发现规律
RM是单机游戏,你们懂的,不能联机去验证兑换码,只能通过一些模式来实现了

小瞬有个思路,大家看看可行不可行?
打个比方,设定一个循环模式,当打开兑换码的界面,游戏就读取当前系统的时间,
并且提取其天数的数值,如果当天是1月5号,那么就是数值5,如果是2月2日,就是33

游戏中再进行判断,兑换码的数值会随着天数的变化,而变化。
这样子,365天每一天的兑换码都不一样了。

最后,大家肯定会问,那如何发布正确的兑换码呢?

答:我另外的游戏里面,也会搭载一样的模式,
当你在当天打开我另一个游戏里面的兑换码系统,就能得出我前一个游戏里面的兑换码
不过必须在同一天内打开另一个游戏,不然兑换码又不一样了。

所以这套构思中的“兑换码系统”是这样的形态:

游戏1的兑换码  来自  游戏2,  游戏2的兑换码  来自  游戏3,每个游戏之间的兑换码不共通,
之间的规律由我自由制定,比如游戏2的兑换码比游戏1的兑换码每位数都增加了数字2之类。


希望提供有更好的思路。。。当然最好是完整的工程。
只要能实现以下的目标,可以完全无视小瞬设定的思路:
【让玩家找不到规律,但是作者自己能掌握规律,动态化的兑换码】

最佳答案

查看完整内容

P叔做了一个公式密码系统,你看看好不好用。 除非是存档取档密码才不变,否则即使是同一玩家,如果重新玩,密码也会改变。 防止名叫@main的人在脚本中被@,先把你@了再说。 脚本第20行真心没辙了,请使用这个工具吧http://rpg.blue/thread-287646-1-3.html 范例: 截图: 脚本(使用时请务必注明来源):#============================================================================== # ■P叔的公式密码系统 #-- ...

点评

本帖子也解决很久了,需要作出抉择了。  发表于 2013-4-13 17:48

Lv3.寻梦者 (版主)

八宝粥的基叔

梦石
0
星屑
4694
在线时间
5240 小时
注册时间
2009-4-29
帖子
14318

贵宾

2
发表于 2013-3-14 23:26:30 | 只看该作者
本帖最后由 protosssonny 于 2013-3-15 13:22 编辑

P叔做了一个公式密码系统,你看看好不好用。
除非是存档取档密码才不变,否则即使是同一玩家,如果重新玩,密码也会改变。
防止名叫@main的人在脚本中被@,先把你@了再说。
脚本第20行真心没辙了,请使用这个工具吧http://rpg.blue/thread-287646-1-3.html
范例: P叔的公式密码系统.rar (242.26 KB, 下载次数: 101)
截图:



脚本(使用时请务必注明来源):
RUBY 代码复制
  1. #==============================================================================
  2. # ■P叔的公式密码系统
  3. #------------------------------------------------------------------------------
  4. #                        本脚本来自[url]www.66rpg.com[/url]
  5. #                          使用时请注明脚本来源
  6. #==============================================================================
  7. class Game_Interpreter
  8.   #--------------------------------------------------------------------------
  9.   #本游戏一共需要多少密码,请在下面写好(默认是100个):
  10.   Code_Num = 100
  11.   #--------------------------------------------------------------------------
  12.   attr_accessor   :save_code            # 密码存储的数组变量
  13.   #--------------------------------------------------------------------------
  14.   # ● 初始化对像
  15.   #     depth : 堆置深度
  16.   #     main  : 主标志
  17.   #--------------------------------------------------------------------------
  18.   def initialize(depth = 0, main = false)
  19.     @depth = depth
  20.     [url=home.php?mod=space&uid=217648]@Main[/url] = main
  21.     @save_code = {} if @save_code.nil?  # 生成密码哈希表
  22.     for i in 0...Code_Num               # 每一个密码都经过公式计算生成
  23.       @save_code[i] = formula(1 + rand(99999999)) if @save_code[i].nil?
  24.     end
  25.     if @depth > 100
  26.       print("已经调用过多公共事件。")
  27.       exit
  28.     end
  29.     clear
  30.   end
  31.   #--------------------------------------------------------------------------
  32.   # ● 公式设定(可以自己重新设计,亦可使用默认,默认公式已经够复杂了)
  33.   #--------------------------------------------------------------------------  
  34.   def formula(x)
  35.     # 将给定的数值求正弦
  36.     value = Math.sin(x)
  37.     # 如果值为负数则取相反数
  38.     value = - value if value < 0
  39.     # 不断把值扩大10倍,直到值大于或等于10
  40.     until value >= 10
  41.       value *= 10
  42.     end
  43.     # 将给定的数值求余弦
  44.     value = Math.cos(x)
  45.     # 如果值为负数则取相反数
  46.     value = - value if value < 0
  47.     # 不断把值扩大10倍,直到值大于或等于10000000(也就是最小的8位数,密码要求)
  48.     until value >= 10000000
  49.       value *= 10
  50.     end
  51.     # 值取整
  52.     value = value.round
  53.     return value
  54.   end  
  55. end

点评

这个确实略麻烦 咱觉得应该有更偷懒的方法  发表于 2013-3-15 14:05
P叔做完后发现做复杂了,但是这个复杂点的系统可以轻易实现RMB付款功能,即玩家告诉你游戏账号并把钱打到你卡上,你把密码告诉他,他完成注册。  发表于 2013-3-15 13:59

评分

参与人数 2星屑 +170 收起 理由
Password + 150 精品文章
tjjlb + 20 我很赞同

查看全部评分

《逝去的回忆3:四叶草之梦》真情发布,欢迎点击图片下载试玩喵。

《逝去的回忆3》的讨论群:
一群:192885514
二群:200460747
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4422
在线时间
1911 小时
注册时间
2010-12-21
帖子
2365
3
发表于 2013-3-15 15:37:28 | 只看该作者
本帖最后由 黄亦天 于 2013-3-15 18:13 编辑

继承系统.rar (253.29 KB, 下载次数: 75)
继承系统02.rar (253.45 KB, 下载次数: 71)

和P叔用的是完全不同的方式
彻底偷懒的方法233

『1号工程』会在指定的路径内生成指定的文件
密码则是随机的
只要运行【密码继承设定】这个公共事件就可以
需要设置的内容:
【变量ID】:用来代入对话框或者其他地方的变量 两个工程的ID可以不同
【子密码】:用来核对密码出自哪个游戏  2号工程的ID必须和1号工程的ID相同 可以用来制作多个游戏的继承密码 并且也可以储存在同一文件内
【存档】/【读档】公共事件的ID:如题
【目录】:格式为;
  1. $save_path_jc = "盘符:/路径/"
复制代码
“/”不要少了 也不要打反了
【文件名】:格式为;
  1. "文件名.后缀"
复制代码
后缀应该随意 打成.avi都没人管

公共事件【存档】里面
可以设置后面的内容 请自行修改
也可以放到地图事件里再读取 因为变量已经代入完毕了

『2号工程』就会判断有没有这个文件
依旧只要运行【密码继承设定】这个公共事件就可以
设定同上
公共事件【读档】里面
■■■■■■■■■■■■■■■■■■■■■
■ 需要修改使用的变量ID ■
■■■■■■■■■■■■■■■■■■■■■

以下的内容是需要修改的地方
【数值输入处理】的变量ID需要自行修改
【条件分歧:变量1==变量2】 的两个变量ID也需要自行修改 就是数值处理的ID 和前面需要代入的ID
【密码正确/错误的场合】这两个地方根据需求修改
【标签 空白下面】:标签千万别删 标签下面的内容是没有指定的文件下的情况 可以随意修改

之后如果再运行工程1的事件 密码还会随机改变
但是同样工程2依旧可以读取

貌似路径中的文件夹最前面可以带个"."(小数点) minecraft的游戏文件夹就是这样的 路径是 XXX/.minecraft
手动创建这样的文件夹是不允许的 可以防止乱复制

其实不需要密码就能够验证了 如果这个密码存在 其实就代表前面的游戏已经通关了或者怎么怎么样了
不需要密码的话 把【数值输入处理】、【条件分歧:变量1==变量2】  这两个东西删掉  直接修改成验证成功的结果也可以
当然也可以让他输入密码来多费一些功夫

多个游戏的继承密码的话 依旧是复制多个【密码继承设定】这个公共事件 修改参数设置就可以了
【读档】或者【存档】里面的内容如果需要多种 可以自行增加判定 或者自行复制多个重新修改
绿坝娘素材库企划

素材库获取方法:暂时中止,需求者私聊。
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

4
 楼主| 发表于 2013-3-15 18:56:28 | 只看该作者
纠结了。。。。。。两个都挺好,,,明天给答复哈哈哈
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
239
在线时间
2399 小时
注册时间
2008-4-11
帖子
12326

贵宾第6届短篇游戏比赛季军

5
 楼主| 发表于 2013-6-21 13:15:04 | 只看该作者
黄亦天 发表于 2013-3-15 15:37
和P叔用的是完全不同的方式
彻底偷懒的方法233

这个方法简单有效。。。。

也想评最佳答案啊,等我VIP多起来再回来补给亦天兄啊

点评

嘛嘛 小瞬子还是给个期限吧 不然实在容易犯拖延症 OTZ 到7月中旬之前还得做些别的东西 OTZ 有个时间安排比较妥当 6月份之前是真新赶 只能专心一样OTZ  发表于 2013-6-22 13:52
没事儿,不急  发表于 2013-6-22 12:49
OTZ 之前大富翁问答系统还坑着呢 OTZ 各种瓶颈+各种别的事情 OTZ 坑到现在还没完成抱歉的说 OTZ  发表于 2013-6-22 09:31
回复

使用道具 举报

Lv2.观梦者

会吐槽的画师

梦石
0
星屑
782
在线时间
3431 小时
注册时间
2011-6-10
帖子
6535
6
发表于 2013-6-21 20:56:46 | 只看该作者
润有一个方法,就是在游戏中写一个密码事件,随机生成一个数字,比如27685278364902648926……好吧太长了,比如随机生成了10,然后赋予一个变量,作为某一个宝箱的开关,同时显示玩家:兑换码是10*2,也就是20,然后玩家带着20询问“密码是多少”你就告诉他是“10”。
长名公主玩家群:372588926 攻略娱乐应有尽有
了解更多新RM游戏,游戏制作请加入RPGmaker支援群:113622890
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-22 23:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表