Skip to content

Releases: MajsoulPlus/majsoul-plus

雀魂Plus v2.0.0-beta.2

19 Jul 09:53
Compare
Choose a tag to compare
Pre-release

警告

Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」

更详细的说明请参考 Wiki!

说明

经过 beta.1 的 bug 修复后,该版本目前尚且稳定,可以开始尝试使用。

Bug 修复

  • 修复账号注入机制中可能出现的 [] 变为 {} 的问题
  • 修复完善扩展资源包功能
  • 修复本地 JSON 格式错误导致的程序崩溃
  • 修复当 active.json 中数据出错时的卡死问题

新特性

  • 扩展的代码现在会在匿名函数中执行
  • hack 扩展的 console 使之显示扩展 ID
  • 增加 fetchSelf 以快速获取扩展自身的资源
  • 增加导出资源/扩展/工具打包的默认文件名

#PrayForKyoani

雀魂Plus v2.0.0-beta.1

16 Jul 15:31
Compare
Choose a tag to compare
Pre-release

警告

Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」

更详细的说明请参考 Wiki!


雀魂 Plus 2.x 的区别与破坏性更新

为了更好的可维护性,雀魂 Plus 在 2.x 版本进行了大幅度的重构。在 2.x 中,原有的概念被推翻(扩展),带来的是新的特性与更方便的功能。下面将列出 雀魂 Plus 2.x 的区别与破坏性更新的内容。

区别

  • 现在默认启用 asar 打包,这意味着现在你不能以任何形式修改 雀魂 Plus 自带的源码了。
    值得注意的是,可能有人之前是为了删除 雀魂 Plus 自带的某些 模组 / 插件 / 工具而修改其自带的源码。现在,雀魂 Plus 自带的内容会在第一次启动时复制到用户目录(appData)。在雀魂 Plus 资源管理器的界面内即可删除,不需要修改原目录了。
    此举大大增加了雀魂 Plus 的安全性。在下面的破坏性更新中也有这一方面的内容。

破坏性更新

  • 原“模组”系统更新为“资源包”系统,二者功能有重合之处。不再提供模组的支持(可能为了方便仍然采用模组的名称,请注意 1.x 和 2.x 功能上的区别)。
  • 原“插件”系统更新为“扩展”系统,二者功能大致相同,但在代码结构上存在变化。原插件系统将不能识别,请原插件作者尽快更新到当前的扩展系统。
  • 原“工具”系统现加入了 electron 沙箱,现在只能调用特定的 API。允许调用的 API 参见 Wiki 对应篇目的介绍。
    如果你有无法在现有沙箱条件下实现的工具功能,请通过 issue 手段提出。我们将在评估其安全性后在沙箱中暴露确认安全的接口。

现在 2.x 仍处于 beta 状态,但基本框架已经确定不会大改,之后维护的重点也将移至 2.x


特性

  • 支持代理服务器设置 (#54)
  • TypeScript 重构 (#60)
  • 一定程度的移动端支持 (#63)
  • 多服务器支持 (#65, #67)

Bug 修复

  • 静态文件现在会缓存到有权限的位置了 (#46)
  • 修复微信登录 (#64)

雀魂Plus v1.12.1

07 Jul 04:35
Compare
Choose a tag to compare

欢迎

  由于开发者们的时间安排问题,距离上次更新雀魂 Plus 正式版已经过去了长达四个月时间,深表抱歉!
  随着雀魂 Plus 用户的增多,插件和模组不断涌现,账号的安全保护也愈发重要。在全新的 v1.12 版本中,雀魂 Plus 加入了全新的沙箱机制,并在插件中允许了引入 node 模块,力求在安全和扩展上两开花。(虽然目前沙箱写的超超超烂)
  开发者注意:新版雀魂 Plus 新增了破坏性改动,并不再信任所有证书,详细破坏性改动请参考后续说明。

新特性

  • 独立插件和模组内置插件现在需要进行权限申请才可访问一些敏感数据,具体权限申请说明请参考后部分破坏性改动说明 f78218b f14e47b

修正

  1. adm-zip 包已更新,现在雀魂 Plus 导出的扩展资源会是标准 zip 格式了
    0e6adf1
  2. macOS 下修正了无法使用复制粘贴的问题 398ec6c
  3. 修正了自带的强制报番插件无法正常工作的问题 d0f9625

改进

  1. 雀魂 Plus 访问远程服务器的安全性被提高了,现在不再会信任所有 https 证书 e2c886c
  2. 内置插件新加入了跳过实名认证插件 faab210 69bfe5c
  3. 牌谱查和好友房功能得到了改进,现在复制其他人发送的链接,启动游戏,就会自动查牌谱或加入房间了 e4d2cbb

开发

  1. node-sass 模块的引用已被移动至开发依赖 #48 f0e2e27
  2. i18n 修改了 Proxy 的生成策略,略微提升了运行性能 22c1839
  3. 在设置页面加入了 禁用 GPU 黑名单 选项以在部分不受支持的硬件下启动游戏 c41a825 7f03b87
  4. 您现在可以在插件中通过申请权限使用 node 模块了 f78218b
  5. adm-zip 包已更新,现在雀魂 Plus 导出的扩展资源可被雀魂 X 正确读取了
    0e6adf1

已知问题

  1. 微信登录失效,无法使用微信登录

TODO

  1. 添加证书信任列表以及相关 API,以方便开发者使用自签名证书等
  2. 添加日/美服支持(原型已实现,尝试添加至当前项目中)
  3. 添加雀魂游戏语言选取功能,恢复雀魂隐藏的该功能
  4. 完全重构项目 UI 组件,模仿 POI 将管理器和游戏窗口合并

破坏性改动说明

在新版本中,雀魂 Plus 加入了插件的权限控制功能,插件在使用一些敏感对象时需要预先申请权限,以下是具体权限说明。
插件需要在 execute.json 或是 mod.jsonexecute 属性下使用 executePreferences 对象,以键值对方式声明插件会使用到的权限,一个典型的 execute.json 举例如下

{
  "name": "雀魂Plus插件",
  "author": "Majsoul Plus Team",
  "description": "这个插件申请了文档对象,本地存储对象的访问权和对全局对象的写入权",
  "entry": "main.js",
  "executePreferences": {
      "document": true,
      "localStorage": true,
      "writeableWindowObject": true
  }
}

对于 executePreferences 对象,在当前版本雀魂 Plus 环境下可以拥有以下可选属性,插件开发者可以根据需求进行使用。

属性名 说明 默认值
nodeRequire 是否允许使用 node require 语句 false
document 是否允许访问和编辑 document 对象 false
localStorage 是否允许访问和编辑 localStorage 对象 false
XMLHttpRequest 是否允许使用 XHR 对象 false
WebSocket 是否允许使用 WebSocket 对象 false
writeableWindowObject 是否允许写入全局对象 false

提示

  • 本次更新后可能会导致部分旧有插件失效,如果出现此情况,建议联系插件开发者按照上述说明改动。(此外,因为沙箱实现问题很大且意义很小,未来可能会移除该特性,如果真的发生了这种事的话,提前向各位插件开发者道歉。)

雀魂Plus v2.0.0-alpha.1

06 May 17:31
Compare
Choose a tag to compare
Pre-release

破坏性更新

  • 整个项目使用 typescript 进行了重构

新特性

  1. 项目使用 TS 重构
  2. 基本的多服务器支持(进行中)

提醒

  • 该测试版暂仅提供 Windows 版本下载
  • 该版本尚未稳定,您需要承担一切使用该版本造成的后果,如果您目前仅在中国服务器游戏,您可以先尝试该版本:v1.12.0-beta.4

警告

  • Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」

雀魂Plus v1.12.0-beta.4

15 Apr 19:14
Compare
Choose a tag to compare
Pre-release

改进

  1. 雀魂 Plus 访问远程服务器的安全性被提高了,现在不再会信任所有 https 证书
  2. 修正了自带的强制报番插件无法正常工作的问题
  3. 内置插件新加入了跳过实名认证插件

警告

  • Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」

雀魂Plus v1.12.0-beta.3

06 Apr 06:33
Compare
Choose a tag to compare
Pre-release

欢迎语

  时过境迁,随着新的插件和模组的不断涌现,雀魂 Plus 对于账号安全保护的要求也就越发重要。新的 v1.12.x 相比 v1.11.x 对于插件安全性的控制得到了提升,引入了新的沙箱机制来保护您减轻受到的第三方插件的安全影响。对于插件开发者,新的雀魂 Plus 版本添加了 破坏性改动 ,还请注意。

新特性

  • 独立插件和模组内置插件现在需要进行权限申请才可访问一些敏感数据,具体权限申请说明请参考后部分 破坏性改动说明 f78218b f14e47b

修正及改进

  1. 牌谱查和好友房功能得到了改进,现在复制其他人发送的链接,启动游戏,就会自动查牌谱或加入房间了 e4d2cbb
  2. macOS 下修正了无法使用复制粘贴的问题 398ec6c

开发

  1. node-sass 模块的引用已被移动至开发依赖 #48 f0e2e27
  2. i18n 修改了 Proxy 的生成策略,略微提升了运行性能 22c1839
  3. 在设置页面加入了 禁用 GPU 黑名单 选项以在部分不受支持的硬件下启动游戏 c41a825 7f03b87
  4. 您现在可以在插件中通过申请权限使用 node 模块了 f78218b

破坏性改动说明

在新版本中,雀魂 Plus 加入了插件的权限控制功能,插件在使用一些敏感对象时需要预先申请权限,以下是具体权限说明。
插件需要在 execute.json 或是 mod.jsonexecute 属性下使用 executePreferences 对象,以键值对方式声明插件会使用到的权限,一个典型的 execute.json 举例如下

{
  "name": "雀魂Plus插件",
  "author": "Majsoul Plus Team",
  "description": "这个插件申请了文档对象,本地存储对象的访问权和对全局对象的写入权",
  "entry": "main.js",
  "executePreferences": {
      "document": true,
      "localStorage": true,
      "writeableWindowObject": true
  }
}

对于 executePreferences 对象,在当前版本雀魂 Plus 环境下可以拥有以下可选属性,插件开发者可以根据需求进行使用。

属性名 说明 默认值
nodeRequire 是否允许使用 node require 语句 false
document 是否允许访问和编辑 document 对象 false
localStorage 是否允许访问和编辑 localStorage 对象 false
XMLHttpRequest 是否允许使用 XHR 对象 false
WebSocket 是否允许使用 WebSocket 对象 false
writeableWindowObject 是否允许写入全局对象 false

警告

  1. 此次更新主要为为开发者进行新版本破坏性改动的浏览和测试,不建议普通用户下载使用。
  2. Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」

雀魂Plus v1.11.2

12 Mar 00:47
Compare
Choose a tag to compare

修正

  1. 修正了 macOS 无法使用复制粘贴等编辑快捷键的问题

警告

  • Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」

雀魂Plus v1.11.1

09 Mar 16:38
Compare
Choose a tag to compare

v1.11.0 更新内容可 【参照这里】

修正

  1. 修正了 macOS 崩溃的严重问题

雀魂Plus v1.11.0

06 Mar 17:29
Compare
Choose a tag to compare

欢迎语

  欢迎体验全新的 v1.11.0 版本,相对于 v1.10.6 ,雀魂 Plus 重新编写了整个扩展资源管理器的逻辑代码,使其可以更方便地进行后续功能的扩展;此外,距离上次更新时隔一个月的时间,这一个月的时间使得可以充分找出潜藏在程序内的意外和错误,使得新版本具有更佳的稳定性。
  在功能方面,新版本主要提供了若干组新的快捷键以及多语言显示的支持,并在部分功能上加以优化使得使用体验更加流畅。
  由于自动更新适配等问题,在新版本暂时下线了在线自动更新功能,对此深表歉意。
  以下是详细的更新说明,如果您有任何功能建议或是发现了任何一个 Bug,请【点此提交】

新特性

  1. 现在雀魂 Plus 提供的大多数文本会根据系统语言而变动了
  2. 加入了新快捷键,老板键,使用 Alt + X 按钮将雀魂 Plus 所有窗口隐藏并静音
  3. 加入了新快捷键,重新载入游戏(Ctrl + R / Cmd + R
  4. 现在您可以在安装扩展时一次性选中多个项目进行安装了
  5. 现在您可以在扩展中正常使用 window.open 语句了 2312a73

改进

  1. 移除了 Mod 的缓存机制,防止在第二次进入游戏时新选中的 Mod 无法生效的问题
  2. 现在关闭窗口时的保存操作会延迟到窗口隐藏后再执行
  3. 现在自动保存窗口尺寸时会计入边框尺寸了

修正

  1. 修正了左侧卡片意外移除的被选中效果
  2. Linux 系统中的 in-process-gpu 选项已经被禁用了,您暂时无法手动启用 #29
  3. 修正了特定情况下 Json 保存错误的问题
  4. 修正了 Linux 和 macOS 春节主题文件名大小写问题导致的载入错误
  5. 修正了标题彩蛋显示概率错误地为 0 的问题
  6. 修正了插件导出时,文件扩展名错误的问题
  7. 修正了模组自带插件无法工作的问题
  8. 修正了用户设置保存失败时,下次进入雀魂 Plus 导致崩溃的问题
  9. 修正了上次退出程序时自动保存失败时,下次启动游戏可能会造成崩溃的问题

开发改进

  1. 提供了 i18n 接口
  2. 适配 ESlint Standard 规则
  3. 完全重构了管理器的业务逻辑
  4. 移除了 manager.js
  5. 现在位于 manager 路径下的 scss 文件会自动编译为 css 文件了
  6. 修正了 Windows 平台 npm start 语句会意外返回退出码 1 的问题

已加入未生效

  1. 「暗」配色主题风格已经被内置到了雀魂 Plus 中,目前仅在 macOS 的 dark 模式下自动启用
  2. 「竹」配色主题风格已经被内置到了雀魂 Plus 中
  3. 为 macOS 提供的毛玻璃特效设置已经被包含在版本内了,升级 Electron 至 3.x 以上即可使用

雀魂Plus v1.11.0-rc.1

05 Mar 09:08
Compare
Choose a tag to compare
Pre-release

新特性

  1. 现在您可以在安装扩展时一次性选中多个项目进行安装了
  2. 现在您可以在扩展中正常使用 window.open 语句了 2312a73

修正和改进

  1. 当尝试加载一个损坏的配置文件时,会自动将其重置为空
  2. (开发)修正了 Windows 平台 npm start 语句会意外返回退出码 1 的问题

RC 版本说明

  • 该版本以用于雀魂 Plus v1.11.0 抢先测试使用,如果在一定期限内没有出现意外的 Bug ,将会推送到主要更新通道内。所以希望您能够积极使用并参与到 Bug 发掘之中。【点此提交一个 Bug】

警告

  • Pre-release 版本并未经过充分测试,使用 Pre-release 版本导致的任何后果请自行承担,如果您希望使用稳定版本,请访问 「最新稳定版」