注册 | 登录

游侠NETSHOW论坛





游侠NETSHOW论坛 游侠NETSHOW论坛 金庸世界 不停的重开档 <------------ 这能不能改进下??? ...
查看: 3684|回复: 21
打印 上一主题 下一主题

[求助] 不停的重开档 <------------ 这能不能改进下??? [复制链接]

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
跳转到指定楼层
楼主
发表于 2013-11-22 11:55:44 |只看该作者 |正序浏览
更新个东西,就要重开档,,,很频繁,这玩家哪里受得了?
为什么会这样,太奇怪了
可以改进吗?

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
22#
发表于 2013-11-26 16:59:40 |只看该作者
看一部分rgss.  
原来所有的开关状态, 在脚本中, 都是通过$game_switches操作的.
所有的开关初始状态都是关闭的.
要把第200号开关打开,直接$game_switches[200]=true即可.
读档后,可对所有的开关进行处理.

使用道具 举报

松琴小筑工作组【组长】

2014年优秀版主勋章

帖子
1439
精华
2
积分
1240
金钱
25791
荣誉
7
人气
504
评议
0
21#
发表于 2013-11-26 12:13:41 |只看该作者
夜现青莹 发表于 2013-11-26 12:02
改变开关位置是指在地图上的位置吗?   试了下,还是不用重开档.

难道指的是,改变开关列表上的位置,把开关 ...

后者

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
20#
发表于 2013-11-26 12:04:35 |只看该作者
最近我的QQ怎么 发表于 2013-11-26 11:12
最简单的方法,弄个箱子,在里面放上自己要的东西,比如经验,这么就不用练级了,省去重开档的很多时间。
...

是啊. 会游戏编辑器的,当然方便了.

不懂游戏编辑的,或游戏被加密的, 就很郁闷了

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
19#
发表于 2013-11-26 12:02:27 |只看该作者
本帖最后由 夜现青莹 于 2013-11-26 12:05 编辑
tyq4590 发表于 2013-11-26 11:08
添加是不会有问题的,但是如果改变位置就会了。不过需要这么做的情况不是很多。主要的问题还是脚本。
...

改变开关位置是指在地图上的位置吗?   试了下,还是不用重开档.

难道指的是,改变开关列表上的位置,把开关序号给变了?

使用道具 举报

帖子
2158
精华
1
积分
1324
金钱
17331
荣誉
3
人气
149
评议
2
18#
发表于 2013-11-26 11:12:06 |只看该作者
最简单的方法,弄个箱子,在里面放上自己要的东西,比如经验,这么就不用练级了,省去重开档的很多时间。

使用道具 举报

松琴小筑工作组【组长】

2014年优秀版主勋章

帖子
1439
精华
2
积分
1240
金钱
25791
荣誉
7
人气
504
评议
0
17#
发表于 2013-11-26 11:08:46 |只看该作者
夜现青莹 发表于 2013-11-26 10:57
试了下,14楼说错了. 没有经过测试果然不行

我添加了几个开关(在最大值范围内)与在地图上设了几 ...

添加是不会有问题的,但是如果改变位置就会了。不过需要这么做的情况不是很多。主要的问题还是脚本。

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
16#
发表于 2013-11-26 10:57:30 |只看该作者
tyq4590 发表于 2013-11-25 04:52
多谢你的研究结果!RM编辑器里地图上随便找个格子双击,然后在执行内容里双击并选择开关操作或者变量操作 ...

试了下,14楼说错了. 没有经过测试果然不行

我添加了几个开关(在最大值范围内)与在地图上设了几个事件.  读档本来就有效,不需要额外修改,不需要重开档才能生效.  (是在L神整合清浊第二弹的脚本上测试的)

使用道具 举报

松琴小筑工作组【组长】

2014年优秀版主勋章

帖子
1439
精华
2
积分
1240
金钱
25791
荣誉
7
人气
504
评议
0
15#
发表于 2013-11-25 04:52:18 |只看该作者
夜现青莹 发表于 2013-11-24 19:53
我的rmxp1.02编辑器上,只有脚本编辑器,没有事件编辑器

如果开关/变量 是指以下这几个变量的话

多谢你的研究结果!RM编辑器里地图上随便找个格子双击,然后在执行内容里双击并选择开关操作或者变量操作即可显示开关/变量列表。

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
14#
发表于 2013-11-24 19:53:21 |只看该作者
本帖最后由 夜现青莹 于 2013-11-24 20:38 编辑
tyq4590 发表于 2013-11-24 12:00
-开关、变量打开事件编辑器,查一下开关操作、变量操作2个指令
-第三个商店就是你说的这个
...

我的rmxp1.02编辑器上,只有脚本编辑器,没有事件编辑器

如果开关/变量 是指以下这几个变量的话
    $game_switches   
    $game_variables   
    $game_self_switches

参照武器处理即可吧, 只要它们的改变在脚本中读档位置的前面 就没关系吧. 都可以参照武器那样处理. 当然各数组中已有的元素顺序是不能改变的.   若改变了,需要做针对性处理.尽量不要去改变.
只是在处理时要避免复位了已触发的开关/变量.


嗯,以上是我草草的观感,没有测试过,因为我不知道怎么使用这3个东西
-------------
数据库里的公共事件,是不是就是开关?


使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
13#
发表于 2013-11-24 14:26:13 |只看该作者
本帖最后由 夜现青莹 于 2013-11-24 21:50 编辑

先贴贴代码看看(在实际应用时,代码的插入位置,需要选个适当的地方)

1. 读档时更改,避免在编辑器中修改武器时,需要重读档.(适用条件见9楼10楼)


2.修改真实商店有关.   这个要依据具体情况修改内容(因为真实商店中已有的东西经过游戏后会变的)


3. 增加一个版本号控制读档时,是否要修改东西
3.1在顶部,添加一个全局变量作版本号


3.2在Game_System类中增加一个成员,用来在存储版本号给存档用(做这个改变,可能必须重开档一次)


3.3在游戏开始时,赋值当前版本号(可能在initialize方法中赋值好且简洁 )


在开局时,也赋下


3.4在读档时,判断版本号, 若存档中的版本号小于当前版本号,那么就进入修改

附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

松琴小筑工作组【组长】

2014年优秀版主勋章

帖子
1439
精华
2
积分
1240
金钱
25791
荣誉
7
人气
504
评议
0
12#
发表于 2013-11-24 12:00:51 |只看该作者
夜现青莹 发表于 2013-11-24 11:50
第1个, 算可以搞定

第2个,不知道 "开关" 是什么东西?

-开关、变量打开事件编辑器,查一下开关操作、变量操作2个指令
-第三个商店就是你说的这个

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
11#
发表于 2013-11-24 11:50:32 |只看该作者

RE: 不停的重开档 &lt;------------ 这能不能改进下???

tyq4590 发表于 2013-11-24 08:29
最常见的几个:
1.动了武器、防具的数据库
2.更改了全局变量/开关的位置

第1个, 算可以搞定

第2个,不知道 "开关" 是什么东西?

接下看第3个: 你说的是不是下面这个?

如果是的话,右边那些数字,是不是都在原始数据库中的ID(就是在编辑器中可看到的东西?)

附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
10#
发表于 2013-11-24 10:30:16 |只看该作者
本帖最后由 夜现青莹 于 2013-11-24 10:34 编辑

看了下吧,,貌似只要是满足以下条件的,处理下都可以不用重开档:
1. 该类数据库的初始最大值没变
2. 该类数据库中的物品存储顺序没变.   (新物品可以在最大值以内的新地方添加)

当然,要是上面2个条件不满足的话,每次改变,代码要针对特定变化的写. 会不通用

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
9#
发表于 2013-11-24 10:19:49 |只看该作者
本帖最后由 夜现青莹 于 2013-11-24 10:42 编辑

看了下,在最大值和东西顺序不变的情况下, 用编辑器添加修改武器/防具, 可以不用重开档. 在读档时处理下,应该可行.  测试了一个长剑,读档,在打铁铺中看到变化,通过.
已经在背包里的武器或在开局后新生成且又不在原始数据库里的东西(编辑器里看不到的), 如果被改到, 需要额外处理.  典型的一类就是打造合成出来的东西, 我想重新去打一把比重开档代价要小很多吧

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
8#
发表于 2013-11-24 09:14:59 |只看该作者
夜现青莹 发表于 2013-11-24 09:07
先研究下第一个

我在武器数据库里 把  长剑 攻击力从30改成60,应用,保存, 为什么重开档之后,松柏送的长剑 ...

知道原因了,,原来武器数据库里有同名的地方,,,下面还有一个 长剑

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
7#
发表于 2013-11-24 09:07:20 |只看该作者
本帖最后由 夜现青莹 于 2013-11-24 09:08 编辑
tyq4590 发表于 2013-11-24 08:29
最常见的几个:
1.动了武器、防具的数据库
2.更改了全局变量/开关的位置

先研究下第一个

我在武器数据库里 把  长剑 攻击力从30改成60,应用,保存, 为什么重开档之后,松柏送的长剑还是攻击力30???(还有,数据库里长剑价格是500, 为什么松柏送的价格是750?)

试了下物品数据库, 不用重开档,只要载入存档,就能看到修改变化

使用道具 举报

松琴小筑工作组【组长】

2014年优秀版主勋章

帖子
1439
精华
2
积分
1240
金钱
25791
荣誉
7
人气
504
评议
0
6#
发表于 2013-11-24 08:29:29 |只看该作者
夜现青莹 发表于 2013-11-24 08:15
这个看上去比较复杂

先从简单的做起

最常见的几个:
1.动了武器、防具的数据库
2.更改了全局变量/开关的位置
3.在真实商店脚本里的哈希表中添加了新的商店

使用道具 举报

帖子
236
精华
0
积分
120
金钱
584
荣誉
0
人气
15
评议
0
5#
发表于 2013-11-24 08:15:03 |只看该作者
tyq4590 发表于 2013-11-23 08:54
其实最主要的问题是2个脚本:真实商店(价格浮动/补货)、随机装备属性。技术上比较麻烦的是随机装备属性 ...

这个看上去比较复杂

先从简单的做起

能不能先讲一下, 在编辑器里做了什么操作(举个最简单的一种), 需要重开档了.  测试地点就在游戏刚开始的地方, 七侠镇什么的吧.

使用道具 举报

松琴小筑工作组【组长】

2014年优秀版主勋章

帖子
1439
精华
2
积分
1240
金钱
25791
荣誉
7
人气
504
评议
0
地板
发表于 2013-11-23 08:54:00 |只看该作者
夜现青莹 发表于 2013-11-23 07:54
知道具体是啥原因吗?
玩游戏一般只想玩自己的档

其实最主要的问题是2个脚本:真实商店(价格浮动/补货)、随机装备属性。技术上比较麻烦的是随机装备属性这个脚本,因为它的原理是从原始数据库(即RM编辑器里设置的那些)里读取武器的属性作为基础属性,然后再在上面添加随机属性、前后缀,最后生成新的武器存入自定义的数据库(这个自定义数据库包含原始数据库里的内容+添加生成随机属性以后的装备)。每次读档的时候,系统不再从原始数据库里读取武器和防具,而是从自定义的数据库里读取。这么一来,如果更新中添加了新的武器、防具,由于这些武器、防具仅存在于原始数据库里,如果不重新开档就会无法在游戏中导入这些新添加的数据。

使用道具 举报

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

手机版|Archiver|游侠NETSHOW论坛 ( 苏ICP备2023007791号 )

GMT+8, 2025-7-31 14:24 , Processed in 0.376792 second(s), 12 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

分享到