Project1

标题: 自主研发的账号和云存档系统 [打印本页]

作者: 神风炽羽    时间: 2021-1-28 20:21
标题: 自主研发的账号和云存档系统
本帖最后由 神风炽羽 于 2022-4-2 19:58 编辑

大家好,我是神风炽羽,今天为大家带来一套网络插件的使用教程。
这套插件的后端是风雨声大佬完善,并提供了相应的接口。我为mv做了一定的适配。
好的话不多说,我们一起来看看。(以下步骤需要用到node.js,大家也可以百度后安装)
首先下载底下的network包,接下来去下载mongodb,百度搜索之后到官网下载安装包。
按照相应教程启动服务。如果你想要可视化的话,可以在安装的时候让他把附属的可视化工具也安装上去,但这可能会需要很多时间。接下来解压network包。打开其中的dist。后面我发现dist发错了。重新发布一份请解压后覆盖。
network.zip (52.8 KB, 下载次数: 44, 售价: 15 星屑)


然后在地址栏输入powershell也就是在这个位置启动。接下来输入 npm i –prod
等他全部跳转完之后。输入node main就可以开始接收了。(记得提前把你本地或者你所部署的服务器上的27017端口打开) .env文件可以决定你打开的端口默认为3000。这是提供服务的端口。不是数据库的端口哦。
然后将底下的js和index.html覆盖你工程文件中的(注意,如果你不希望游戏开始之前强制登陆请不要覆盖你工程中的index.html main.js)

接下来修改main.js
JAVASCRIPT 代码复制
  1. window.onload = function () {
  2.  
  3.     Network.instance.init("http://localhost:3000");//Ip地址和开的端口。
  4.     Network.instance.onLogin = (data) => {
  5.         let obj = JSON.parse(data);
  6.         alert(obj.message)
  7.         if (obj.code == "1") {
  8.  
  9.             document.getElementById("network").innerHTML = ''
  10.             PluginManager.setup($plugins);
  11.             SceneManager.run(Scene_Boot);
  12.  
  13.         }
  14.  
  15.     }
  16.     Network.instance.onError = (data) => {
  17.         let obj = JSON.parse(data);
  18.         alert(obj.message)
  19.         if (obj.code == "100") {
  20.             window.location.reload();
  21.         }
  22.  
  23.     }
  24. };


将上面的位置修改完之后你的游戏就和数据库有了一定交互的功能。接下来我们来讲讲这套系统中。注册登录。存入存档和获取存档的语句。首先是初始化。
Network.instance.init("http://localhost:3000");
接下来是登陆,注册
请注意,在这套系统中,账号的性质是唯一的,不可重复注册。并且开启了单线程防刷功能。只能在一个位置登录。所有平台都算。
Network.instance.login(user, pwd)
Network.instance.register(user, pwd)
存入和读取。
Network.instance.sendSaveJson(json);//发送至服务器
var json = Network.instance.saveJson
注意!上面存入的一定要是Json的字符串。下面获取出来的同样也是字符串。
文件夹中的SfcySaveOnline.js 就是一个暴力修改。存储和获取系统。所得到的云存储。可以直接用,也可以用上述命令进行修改。注意,暴力修改的插件和很多都不兼容。请自行取舍。
这一套系统经过风雨声大佬的授权可以交予我修改和使用。它提供了相应的接口,并且愿意将后端开源出去,相应的我写的插件和修改的也是开源的。可以供各位任意修改。条件是修改完之后请务必给我一份。我的邮箱是[email protected]
这套插件目前还不够完善。后续会继续完善,但由于后续制作速度的不稳定性。目前这一套已经算是比较完备的了。各位可以参考。希望各位能好好使用这一套系统。
(经过我和风雨声的一致认同,这一套系统会收取20星屑来补偿我和他熬了三个夜请各位理解。)
另外还需要注意的是,在打包为移动端或者浏览器上预览的时候,会出现无法获取,存档和无法注册的情况。需要你们自己手动关闭跨域检测,至于关闭方法,请自行百度。
另外,如果觉得index.html不好看的话。可以在style标签中自行使用CSS美化, 这里我就不要脸的向各位要一份,因为我审美不太好。
后续的持续更新请关注一下我。说不定。有你想要的。虽然我技术不是很好。
接下来,有点耍帅意味的附上我自己的座右铭。
我虽不是全能,但会尽我所能。
好的,我们下次再见。
2021.2.1服务端出现PayloadTooLargeError: request entity too large,打开dist/main.js,修改为
JAVASCRIPT 代码复制
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. require("dotenv/config");
  4. const core_1 = require("@nestjs/core");
  5. const app_module_1 = require("./app.module");
  6. const port = process.env.PORT || 8080;
  7. async function bootstrap() {
  8.     const app = await core_1.NestFactory.create(app_module_1.AppModule);
  9.     var bodyParser = require('body-parser');
  10.     app.use(bodyParser.json({limit: '50mb'}));
  11.     app.use(bodyParser.urlencoded({limit: '50mb', extended: true}));
  12.     app.useStaticAssets("www");
  13.     await app.listen(port);
  14. }
  15. bootstrap();

原因:node限制最大上传大小


作者: 神风炽羽    时间: 2021-1-28 20:22
如果有问题,请尽早提出。我好修复。
作者: 吟游诗人_zhen    时间: 2021-1-28 20:25
虽然我看不太懂教程,但我还是说:"大佬Nb!!!!!!!!!!"
作者: PLeaseS    时间: 2021-1-28 22:46
你真的只是高中生吗
作者: 347780682    时间: 2021-1-29 07:08
有志者、事竟成,破釜沉舟,百二秦关终属楚
苦心人、天不负,卧薪尝胆,三千越甲可吞吴
作者: 神风炽羽    时间: 2021-1-29 18:53
安卓端移植的跨域问题今天已经解决,但是仅仅是针对我自己使用的打包系统。需要自己改。相映的东西。如果各位是使用一键打包来打包的话,如果你使用的链接为HTTP协议的话,那很大概率会无法登陆。因为安卓八以上就无法直接获取铭文通信的权限。需要自己在加入相应配置。具体方法可以百度搜索。安卓八以上访问HTTP,另外就是跨域问题,由于各位使用的和我不尽相同,所以跨域问题的解决方式也比较奇怪。各位可以尝试一下。搜索。快于问题的解决方式,大概率会直接弹出浏览器的。移动端目前也就那么几篇文章。各位耐心寻找一下一定可以的。如果你和我一样使用的是capacitor那么可以去他的官网找相应的插件和修改的方式。但是由于修改后的文件和之前的有很大的不同之处。所以各位以自己的修改为准。稍后我会整合一下。把我解决跨域问题的方式。公布一下。希望各位稍微支持一下。顺便说一下,最上面插件因为两次传错导致各位重复下载,但请一定要更新。不然有些功能就没有办法实现。另外就是有问题可以直接跟帖询问。需要给出截图和问题所在以及制作了哪些操作。希望各位能挖掘出更多的问题。也好让这套系统更加的完善。先谢过各位了。
作者: 落无伤    时间: 2021-1-29 22:14
顶一个先!!!
作者: zhouxy    时间: 2021-1-29 23:44
大佬牛逼
作者: a66294836    时间: 2021-1-30 09:02
卡一个 等其他大佬测试
作者: plain666    时间: 2021-1-30 16:34
楼主太棒了,高手啊。
作者: 走出300加    时间: 2021-1-30 17:27
楼主很厉害
作者: 微笑的迪妮莎    时间: 2021-1-30 18:41
优秀
虽然我不懂


作者: 根五    时间: 2021-1-30 20:46
不明觉厉
作者: m4gaara    时间: 2021-1-31 11:03
Great ! This's very good ! Thank you very much !
作者: 郑真真    时间: 2021-2-3 10:21
大佬历害呀
作者: 落无伤    时间: 2021-2-4 09:17
楼主牛皮啊!!!
作者: 本奕sama    时间: 2021-2-4 17:05
不愧是你  支持
作者: 即使的星空    时间: 2021-2-5 09:30
大佬厉害啊!
作者: loveings    时间: 2021-2-6 19:43
大佬,想请问一下关于服务器那边要怎么接?mongodb不是有个cloud.mongodb.com是不是可以用来做服务器?
作者: Samuel1102    时间: 2021-2-8 15:35
玩出新高度了
作者: Felspar    时间: 2021-2-9 11:58
厉害了,真实萌新路过
作者: mmmmttt    时间: 2021-2-9 13:00
不明觉厉!十万支持!
作者: 小篸    时间: 2021-5-1 20:04
大佬nb!
作者: 楠源    时间: 2021-8-21 16:08
大佬6666
作者: willture    时间: 2022-3-30 22:34
输入npm i –prod后提示缺少package.json是咋回事啊
作者: 是只猫猫    时间: 2023-1-12 21:37
PLeaseS 发表于 2021-1-28 22:46
你真的只是高中生吗

wc,真的c爆了,直接收藏保存




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1