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

Project1

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

[已经过期] 求自动存档、读档的脚本

[复制链接]

Lv1.梦旅人

虱子

梦石
0
星屑
121
在线时间
1782 小时
注册时间
2010-6-19
帖子
3597
跳转到指定楼层
1
发表于 2010-10-15 18:00:13 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 Wind2010 于 2010-10-15 18:01 编辑

就是说在游戏时可以调用一个指令,自动进行存档,不需要选择存档位置
读档也是,直接读取,不提示

Lv1.梦旅人

虱子

梦石
0
星屑
121
在线时间
1782 小时
注册时间
2010-6-19
帖子
3597
14
 楼主| 发表于 2010-10-16 20:08:10 | 只看该作者
已经没有人看到这个帖子了么……
难道是因为我把X键调出菜单的脚本删掉了?

http://rpg.blue/thread-175056-1-2.html
PVZ型塔防物一个
http://rpg.blue/thread-155199-1-2.html
RMXP技术讨论区手动认可帖,得到答案请认可
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
64
在线时间
4352 小时
注册时间
2007-8-31
帖子
1982
13
发表于 2010-10-16 00:35:52 | 只看该作者
在duqu函数
  1. $game_system        = Marshal.load(file)
复制代码
的前面加上一行
  1. $data_skills        = Marshal.load(file)
复制代码
试试

点评

呃,没有改过任何脚本,只是加了这个保存读取脚本和地图显示变量的  发表于 2010-10-16 13:29
在默认脚本里并没有找到side这个词呢,不知道你的脚本不好判断  发表于 2010-10-16 13:02
按你那样加上的话49行出错:End of file reached 不加的话59行出错:undefined method 'side' for nil:NilClass  发表于 2010-10-16 12:20
我真是王小二过年,一年不如一年。目前正在寻找状态中,努力找回当初的动力!
“底蕴制作者”—asperta最新博客开通!以后将在这里更新制作进度报告!
我的作品官网:http://www.asperta.org/
ASPERTA世界论坛:http://bbs.asperta.org/


回复 支持 反对

使用道具 举报

Lv1.梦旅人

虱子

梦石
0
星屑
121
在线时间
1782 小时
注册时间
2010-6-19
帖子
3597
12
 楼主| 发表于 2010-10-15 23:26:19 | 只看该作者
然后现在自己解决掉存档的问题了……
  1. def baocun   
  2. file = File.open("game.sav", "wb") #game.sav是存档名称
  3.     # 生成描绘存档文件用的角色图形
  4.     characters = []
  5.     for i in 0...$game_party.actors.size
  6.       actor = $game_party.actors[i]
  7.       characters.push([actor.character_name, actor.character_hue,

  8. actor.id, actor.battler_name, actor.battler_hue])
  9.     end
  10.     # 写入描绘存档文件用的角色数据
  11.     Marshal.dump(characters, file)
  12.     # 写入测量游戏时间用画面计数
  13.     Marshal.dump(Graphics.frame_count, file)
  14.     # 保存魔法编号
  15.     # (将编辑器保存的值以随机值替换)
  16.     $game_system.magic_number = $data_system.magic_number
  17.     # 写入各种游戏对像
  18.     Marshal.dump($data_skills, file)
  19.     Marshal.dump($game_system, file)
  20.     Marshal.dump($game_switches, file)
  21.     Marshal.dump($game_variables, file)
  22.     Marshal.dump($game_self_switches, file)
  23.     Marshal.dump($game_screen, file)
  24.     Marshal.dump($game_actors, file)
  25.     Marshal.dump($game_party, file)
  26.     Marshal.dump($game_troop, file)
  27.     Marshal.dump($game_map, file)
  28.     Marshal.dump($game_player, file)
  29.     #Marshal.dump($keymiyue, file) 这个是密钥
  30.     file.close  
  31.   end
复制代码
然后现在就是读取有问题啊……有人能帮忙看看下面那个读取脚本有什么错误么,我用的是事件标题……
  1. def duqu
  2. if $continue_enabled == true
  3.     file = File.open("game.sav", "rb")
  4.     # 读取描绘存档文件用的角色数据
  5.     characters = Marshal.load(file)
  6.     # 读取测量游戏时间用画面计数
  7.     Graphics.frame_count = Marshal.load(file)
  8.     # 读取各种游戏对像
  9.     $game_system        = Marshal.load(file)
  10.     $game_switches      = Marshal.load(file)
  11.     $game_variables     = Marshal.load(file)
  12.     $game_self_switches = Marshal.load(file)
  13.     $game_screen        = Marshal.load(file)
  14.     $game_actors        = Marshal.load(file)
  15.     $game_party         = Marshal.load(file)
  16.     $game_troop         = Marshal.load(file)
  17.     $game_map           = Marshal.load(file)
  18.     $game_player        = Marshal.load(file)
  19.     #$keymiyue          = Marshal.load(file) 密钥
  20.     # 魔法编号与保存时有差异的情况下
  21.     # (加入编辑器的编辑过的数据)
  22.     if $game_system.magic_number != $data_system.magic_number
  23.       # 重新装载地图
  24.       $game_map.setup($game_map.map_id)
  25.       $game_player.center($game_player.x, $game_player.y)
  26.     end
  27.     # 刷新同伴成员
  28.     new_actors = []
  29.     for i in [email][email protected][/email]
  30.       if $data_actors[@actors[i].id] != nil
  31.         new_actors.push($game_actors[@actors[i].id])
  32.       end
  33.     end
  34.     @actors = new_actors
  35.     file.close
  36.     # 还原 BGM、BGS
  37.     $game_system.bgm_play($game_system.playing_bgm)
  38.     $game_system.bgs_play($game_system.playing_bgs)
  39.     # 刷新地图 (执行并行事件)
  40.     $game_map.update
  41.     # 切换到地图画面
  42.     $scene = Scene_Map.new
  43. end
  44. end
复制代码

http://rpg.blue/thread-175056-1-2.html
PVZ型塔防物一个
http://rpg.blue/thread-155199-1-2.html
RMXP技术讨论区手动认可帖,得到答案请认可
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
48 小时
注册时间
2010-6-26
帖子
292
11
发表于 2010-10-15 21:19:53 | 只看该作者
LZ的意思应该是:按存档时直接存档...读档时也是直接读档吧?
就像口袋妖怪那种一样的吧..意思是只能存一个档..而不是原本的按存档后有4个位置选的..
如果LZ的问题是这个意思..那么这个应该可以在脚本里改的吧...把某脚本里的1、2、3、4选项里删了2、3、4...之类的..(我脚本无能啊...貌似有个叫什么SAVE的东西..LZ会看脚本的话可以修改..感觉难度不大的..重要的是看看里面牵涉到什么脚本- -)..希望能帮到你...

点评

我本来打算直接将存档过程提取出来的 但是会提示错误- - 应该是有关存档名字的问题  发表于 2010-10-15 22:37
板子呀板子
回复 支持 反对

使用道具 举报

Lv1.梦旅人

虱子

梦石
0
星屑
121
在线时间
1782 小时
注册时间
2010-6-19
帖子
3597
10
 楼主| 发表于 2010-10-15 21:06:48 | 只看该作者
不是在每一帧都可以存档啊……
就是在城市中心做个存档事件,触发事件时生成一个存档
然后读取游戏时就读取这个存档

http://rpg.blue/thread-175056-1-2.html
PVZ型塔防物一个
http://rpg.blue/thread-155199-1-2.html
RMXP技术讨论区手动认可帖,得到答案请认可
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
47
在线时间
55 小时
注册时间
2010-8-4
帖子
299
9
发表于 2010-10-15 21:04:15 | 只看该作者
魔石……记忆深刻啊

评分

参与人数 1星屑 -10 收起 理由
fux2 -10 请勿脱离主题,勿发与讨论内容无关的东西. ...

查看全部评分

努力制作金庸主题的高自由度武侠game..求爱好者协助
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42453
在线时间
7605 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

8
发表于 2010-10-15 20:05:22 | 只看该作者
回复 Wind2010 的帖子


    请参考夏娜大人的“即时存档”主题。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

虱子

梦石
0
星屑
121
在线时间
1782 小时
注册时间
2010-6-19
帖子
3597
7
 楼主| 发表于 2010-10-15 19:17:52 | 只看该作者
呃……我要的不是可以在任何时候都可以存档的脚本
我是要一个可以调用的指令,这个指令可以自动生成一个存档而不用选择存档位置
读档的时候也是直接读取这个存档

http://rpg.blue/thread-175056-1-2.html
PVZ型塔防物一个
http://rpg.blue/thread-155199-1-2.html
RMXP技术讨论区手动认可帖,得到答案请认可
回复 支持 反对

使用道具 举报

Lv1.梦旅人

水土火风重逢处

梦石
0
星屑
239
在线时间
691 小时
注册时间
2010-7-17
帖子
3042
6
发表于 2010-10-15 18:55:17 | 只看该作者
我记得好像神域里也有自动存档
独坐望城,望断天涯
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-30 02:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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