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

Project1

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

[实况直播] 【C语言(sharp)开发】RMSaver开发实况——RM游戏的云存档!

[复制链接]

Lv1.梦旅人

梦石
0
星屑
168
在线时间
17 小时
注册时间
2018-2-13
帖子
34
跳转到指定楼层
1
发表于 2018-6-6 23:15:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 吕乐乐 于 2018-6-6 23:17 编辑

好久不见!

好吧,可能有人还记得我,几个月前我说要用JAVA写个小游戏来着
然后由于各种瓶颈加上工作繁忙,以及我做出来后发现,
它,并不好玩,我为什么不去玩昆特牌呢?
所以那个项目就删了... so sad...

今天我给大家介绍的是另一个我自己的项目:

RMSaver —— RPG Maker云存档系统


我觉得很多玩RM做游戏的人应该都有这个想法,
给自己的游戏做个云存档!即使游戏被删了重新下载或者换电脑了也能恢复存档!
RMSaver 就是这样的一个开源、公益的软件!
他不仅强大,而且,易用性极强,你根本不需要任何开发知识,甚至你不必是游戏作者!
你也不需要注册账号,也不用搞什么密码,也没有一堆复杂的程序。
RMSaver会自动匹配你当前游戏的RPG Maker版本,包括XP VX 等等。。。
那么问题来了,RMSaver是怎么区分你和别人的存档呢?答:CPU识别码(反正你也听不懂


RMSaver由C#语言编写,balabala,反正你们听不懂(都是废话,哈哈)

好了我们直接进入正题:
RMSaver这软件是开源免费的,并且极其易用,非常简单,
我还没写完,因此也就没有样品图给大家!不过代码还是有的,,,,
等我写完了会开源的哦,有人喜欢可以直接拿去用:


使用方法:
第一步,下载我们的软件,并将其解压到你的游戏根目录!
第二步,不要用原本的游戏程序exe进入游戏,请使用RMSaver来进入游戏,完事!
然后你就会发现,每次你游戏退出的时候,RMSaver 都会把你的存档备份到云端服务器。

好啦,就说到这里了,这东西还没做完,。。。
估计,,明天差不多就能做完了!
我们的联系方式: 格兰蒂协会!QQ群:664015345!协会网站
本人接受软件编程开发定制!
本人QQ: 1207223090
格兰蒂协会: http://www.relatev.com/
协会QQ群: 664015345

Lv5.捕梦者 (版主)

梦石
1
星屑
23994
在线时间
3339 小时
注册时间
2011-7-8
帖子
3926

开拓者

2
发表于 2018-6-7 01:47:44 | 只看该作者
应该就是一个文件上传、验证、下载的功能吧,算是同行交流一下

1. CPU识别的话意味着换台电脑就无法获取到存档了?
2. 退出时上传存档,可以考虑 hook 掉 exit 方法?
3. 如何确保在传输过程中存档不损坏?



熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
168
在线时间
17 小时
注册时间
2018-2-13
帖子
34
3
 楼主| 发表于 2018-6-7 07:51:59 | 只看该作者
guoxiaomi 发表于 2018-6-7 01:47
应该就是一个文件上传、验证、下载的功能吧,算是同行交流一下

1. CPU识别的话意味着换台电脑就无法获取到 ...

1.我会提供一个按钮来手动换电脑存储的
2.直接Timer 检查进程是否存在,如果进程消失,开始保存存档
3.这个没啥说的啊,很简单的,他只是个文件完整性验证机制,哪个都行,比如MD5验证
本人接受软件编程开发定制!
本人QQ: 1207223090
格兰蒂协会: http://www.relatev.com/
协会QQ群: 664015345
回复 支持 0 反对 1

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5039
在线时间
1780 小时
注册时间
2012-7-3
帖子
1799

开拓者

4
发表于 2018-6-7 09:18:39 | 只看该作者
这个需要长期维护一个服务器……
如果是登录到steam,只需要在后台设定存储路径和存档文件后缀(不设定默认上传存档路径下所有文件),平台就自动为你搞定了………………………………

评分

参与人数 1+1 收起 理由
吕乐乐 + 1 我自己架设和编写服务器

查看全部评分

Project Ktr进行中:
   
------------------
SRPG开发之六-天气与地形互动
→→围观
→→→去Lofter围观
------------------
离经叛道的扯淡者/伪独立游戏爱好者/Decade Studio(?)/造轮子真TM开心呀
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1803
在线时间
133 小时
注册时间
2013-10-6
帖子
193
5
发表于 2018-6-7 10:14:52 | 只看该作者
一个字也看不懂的围观群众随意吐吐槽,请务必不要往心里去

0.标题明明是C语言嘛 点进来发现是C++++?
1.既然要做那就把服务端一块发了嘛,然后用户可以选择自己host服务端也可以用你提供的公交车,数据完全可控
2.存档上传这种事儿居然是手写TCP(迫真)楼主服务端怕也是C++++写的,数据持久化怎么做的?
3.存档ID这种事情应该透明一点吧,比如第一次启动写一个Guid.NewGuid()到游戏目录下的配置文件,作为该存档的实例ID,允许用户备份/更改
4.等待游戏进程退出没必要用Timer,(反正你有P/Invoke)你CreateProcess之后PROCESS_INFORMATION里不是有进程句柄嘛,找一个线程WaitForSingleObject这个句柄,退出之后句柄就激发态了。另外存档这种事儿得提供一个flush机制,做一个Ruby的接口,存档完成后立刻获得通知并上传更好。接口怎么做呢,提供一个思路:Ruby不是可以call Win32API吗,你C#不是也有Hwnd的Wrapper吗,你先起一个Message-Only Window然后把窗口句柄用命令行交给游戏主程序,在里面取得命令行Parse出窗口句柄,定义一个消息,用户存档一好就给你的Window SendMessage
5.写代码不女装直播还行?
6.以上内容均为脸滚键盘,不代表本人立场
←你看到一只经常潜水的萌新。
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
168
在线时间
17 小时
注册时间
2018-2-13
帖子
34
6
 楼主| 发表于 2018-6-7 10:54:30 | 只看该作者
不死鸟之翼 发表于 2018-6-7 10:14
一个字也看不懂的围观群众随意吐吐槽,请务必不要往心里去

0.标题明明是C语言嘛 点进来发现是C++++?

...
C Sharp = C#
本人接受软件编程开发定制!
本人QQ: 1207223090
格兰蒂协会: http://www.relatev.com/
协会QQ群: 664015345
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
785
在线时间
59 小时
注册时间
2017-9-30
帖子
127
7
发表于 2018-6-7 14:53:40 | 只看该作者
本帖最后由 hyperzlib 于 2018-6-7 14:57 编辑

如果突然断电不就不能存储了吗?
建议还是通过rm脚本dll调用,存档时触发同步事件
而且建议还是加个可以登录的选项,方便多游戏同步。
tcp crc加了吗?如果文件传输错误就直接掉档了
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

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

开拓者贵宾

8
发表于 2018-6-7 15:33:25 | 只看该作者
唔,如何确认产出数据是存档呢,如果只适用于默认存档倒是没什么问题。

快来使用RGD!退出时可以balabala自己敲代码!
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 1 反对 0

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
168
在线时间
17 小时
注册时间
2018-2-13
帖子
34
9
 楼主| 发表于 2018-6-7 17:01:28 | 只看该作者
fux2 发表于 2018-6-7 15:33
唔,如何确认产出数据是存档呢,如果只适用于默认存档倒是没什么问题。

快来使用RGD!退出时可以balabala ...

(自己写判断系统
用以识别RMXP 或者 VX
然后只需要将save文件夹存档就好了
本人接受软件编程开发定制!
本人QQ: 1207223090
格兰蒂协会: http://www.relatev.com/
协会QQ群: 664015345
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
168
在线时间
17 小时
注册时间
2018-2-13
帖子
34
10
 楼主| 发表于 2018-6-7 17:01:50 | 只看该作者
hyperzlib 发表于 2018-6-7 14:53
如果突然断电不就不能存储了吗?
建议还是通过rm脚本dll调用,存档时触发同步事件
而且建议还是加个可以登 ...

断电这个也,,太
RM 的DLL我没仔细看过

点评

写过PDC的云存档系统  发表于 2018-6-7 20:33
我可以来帮忙啊/滑稽  发表于 2018-6-7 20:32
本人接受软件编程开发定制!
本人QQ: 1207223090
格兰蒂协会: http://www.relatev.com/
协会QQ群: 664015345
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-14 23:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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