From 9413449c8ed4c124141f7cc69eb7a34f4d963b40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=91=E5=85=88=E6=A3=AE?= Date: Mon, 11 Nov 2024 16:01:41 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6=20=E5=86=85=E6=A0=B8?= =?UTF-8?q?=E5=A4=96=E5=B7=A5=E5=85=B7=20=E5=88=B0=20=E5=A2=9E=E5=BC=BA?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E7=AA=97=E5=8F=A3=EF=BC=8C=20=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E9=98=B2=E7=81=AB=E5=A2=99=E5=85=B3=E9=97=AD=20?= =?UTF-8?q?=E8=B7=83=E7=82=B9=E4=BF=AE=E6=94=B9=20ping=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 66 +++++- assets/game-step8.png | Bin 0 -> 33022 bytes assets/game-step9.png | Bin 0 -> 35668 bytes composables/netcard.ts | 48 +++++ package.json | 2 +- pages/index.vue | 96 +++------ pages/member.vue | 3 + pages/tool.vue | 323 ++++++++++++++++++++++++++++ src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- src-tauri/capabilities/default.json | 13 +- src-tauri/tauri.conf.json | 4 +- stores/index.ts | 4 + 13 files changed, 487 insertions(+), 76 deletions(-) create mode 100644 assets/game-step8.png create mode 100644 assets/game-step9.png create mode 100644 composables/netcard.ts create mode 100644 pages/tool.vue diff --git a/README.md b/README.md index 93bc19a..6c73d46 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,60 @@ -# EasyiterGame -基于easytier的简易游戏联机客户端 +# [EasyTier游戏联机启动器](https://github.com/EasyTier/EasytierGame) -1. 开发环境如何运行 - 拉取仓库,使用命令行 pnpm install 安装包 - 安装完成后, 使用 pnpm tauri dev 进行rust编译 等待启动 +## 简介 + +EasyTierGame游戏联机启动器,由`nuxt3` `typescript` `rust` `tauri` 开发 +具有简易的界面,附带最新版easytier内核,联机游玩的时候无论是心理上和使用上都能给予您最舒服的体验,同时支持自定义配置文件启动,满足各种需求 + +## 下载 + +Github +Releases: [https://github.com/EasyTier/EasytierGame/releases](https://github.com/EasyTier/EasytierGame/releases) + +- 只有绿色zip包,个人不喜欢安装包各种写注册表,解压即用就行,目录清爽干净 + +![game-step1](/assets/game-step1.png) + + +## 使用教程 + +- 第一次使用,输入一个“主机名”点击启动联机即可,后续可以自建服务器或者使用爱心群友提供的服务器 + ![game-step2](/assets/game-step2.png) + +![game-step3](/assets/game-step3.png) + +- 高级选项里有一些特殊配置,可以自行选择 + ![game-step4](/assets/game-step4.png) + +- 如果还是无法满足您的需求,可以使用配置文件进行启动,具体如何配置,可以查看文档[配置文件](/guide/network/config-file.html) + ![game-step5](/assets/game-step5.png) + +- easytier内核升级后,可以点击更新插件按钮就可以进行更新,但是需要出国,如果无法更新,可以在群里获取 + ![game-step6](/assets/game-step6.png) + +- 1.1.4更新了 配置分享功能 可以与朋友之间分享配置,方便联机 + + +![game-step7](/assets/game-step7.png) + +- 1.1.5 合并额外插件于 "增强工具" 窗口 新增了网卡跃点设置 关闭防火墙功能 ping功能 +![game-step8](/assets/game-step8.png) + +![game-step9](/assets/game-step9.png) + +## 特性 + +- 基于easytier组网工具开发,界面清晰简单 +- 自带“更新”按钮,在easytier组网工具发布新版本时,点击更新即可(需要出国工具) +- 第一次使用,输入一个“主机名”点击启动联机即可,后续可以自建服务器或者使用群友的服务器 +- 配置简单,也含有高级功能,同时也支持自定义配置文件启动 +- 默认开启 **WinIPBroadcast** 不再怕联机找不到房间(例如:无主之地3) +- 已经测试 **艾尔登法环学习版**,**无主之地3**,**深岩银河**,**怪物猎人世界** 等都可稳定联机游玩 + +## 系统支持 + +支持Windows 11 、Windows 10 、 Windows 7 + + + +## 请不要将本程序和仓库代码用于任何违法用途,由此产生的一切后果,仓库所有者和参与开发的人员不承担任何责任 -2. 生产环境发布 - 执行 pnpm tauri build - 产物位于 src-tauri/target/release 下 easytier-game.exe diff --git a/assets/game-step8.png b/assets/game-step8.png new file mode 100644 index 0000000000000000000000000000000000000000..71c4f0b92d1e8e423e50ac7b86b24e5c62a1f47f GIT binary patch literal 33022 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

rm%4aGQN2uf1C!NSfrBjp2{uUQ~(b zu@Y&>aL}+`cc`$)Hq?lTqv#P$d9`DS8>5;^;B#GuMx4H^IO%)sr~zkVEAM*5=8vaW zikfooi%m<@WjorZ6cIk^Iw7yDpZP(3Vc`=`tvNqYAVC-#XIS2OF_(O?eTvI(bp2fS zzAg*n#OVv>yP}UGgeH5#<`g`{5j)N_=@>MDZ>--0dpaL?t3=O6Kg^=~plmLk&Ab@X z$b~^aXjP)=g{!Eby1`oYm@>OWfp|1UqKf?5aYlEa_ZKqGVPwcYGMT@OydtI1yQBWGOyivJp3pUEC0lQtg7VE^sJ%}JKCJrE# zl<)AydirFV_s;6OUhUWjK?W*0VaUT{w-te4b{9BS2~|s0Zk@XBs=y~LNOFJ-U$swA+-rS!{_u4yPBa2IbcHwCqg$^V5@=S~klBj#3 zn)eJC|8K4`zZoL*>EQJC`uk%G$P?b4H@G!zW9QklYIb%hrK(+G;noystBr!|(IaMi z)k?jeOY+sNb*wfK7Z23o-L?uveLZmIH&N?KA-#M!7e8Yj;I5^}!An|s`K_L=InxY} zCX3wl(|aWhvA&nKo5@<1fz%dj&VBr4EK=L{(q$c?AKve!B077T4&2AihnmtpcVe7) z6{i?r15eW5PM+534nJtAPml=0ihand+yvv(rL=l9XE>!uqZfHW$sxfvjKVf>EUJ8j za0)OavB7=s^x;Jdem|65<`tvav-n!2-o?bS*pA@)Ddj|6FYDYt`oq7`5+X;*@X%m> z)>MTgBVZ+Rs(qEILqnS0{xpnIH9PM$Lu_^;@7dvT=xakNGX#6%_ihYUf!^;u;dT9l z$5g7=EcleoY1?U3S1I;q2}qny9L)4g#U)3Rco4 zjApgKAzFIG&|)&3ij3>EF4AsoZB;JS5r(Go1cwliqhZUSYZo$ML#|+G!VvDrA3lr@ zO$Di^MUjg|wVY_j z6Q>LzcV;>1wP5s+fEs!V^21t;J<_S39;{hpyLj#xe;&rsnrbHD53o5YMRGYiar#g= zdgfhhF?|^|IGuEGH5_svkg-sWhK81|0wDCuU0v_rzi)33Jli)D&e15OO-Hr?T_Brmcj3(u*T2=u-7^8pmuL5O2ROf^a@#E>8dPQNLq;(U;+BJ5|Ob@ zo=j)(-s{O-yw>Uv2?d}$Lwm1Pf_9{rfOi;heuMt1LGC^M>dPC@Kr|HvO=zv0W!V1#ZnNvu literal 0 HcmV?d00001 diff --git a/assets/game-step9.png b/assets/game-step9.png new file mode 100644 index 0000000000000000000000000000000000000000..04a0d43fc01b886a339f305c648d80e5f4b448b8 GIT binary patch literal 35668 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 M>FVdQ&MBb@00cABjsO4v literal 0 HcmV?d00001 diff --git a/composables/netcard.ts b/composables/netcard.ts new file mode 100644 index 0000000..53386fa --- /dev/null +++ b/composables/netcard.ts @@ -0,0 +1,48 @@ +import { invoke } from "@tauri-apps/api/core"; +import { Command } from "@tauri-apps/plugin-shell"; +import { ElMessage, type TabPaneName } from "element-plus"; +import useMainStore from "@/stores/index"; + +const getWinIpBroadcastPid = async () => { + const mainStore = useMainStore(); + const pid = await invoke("search_pid_by_pname", { target_process_name: "WinIPBroadcast" }); + mainStore.winipBcPid = (pid as number) || 0; + if (mainStore.winipBcPid && mainStore.winipBcPid > 0) { + mainStore.winipBcStart = true; + mainStore.winIpBcAutoStart = true; + } else { + mainStore.winipBcStart = false; + mainStore.winIpBcAutoStart = false; + } +}; + +export const handleWinipBcStart = async () => { + const mainStore = useMainStore(); + if (!mainStore.winipBcStart) { + try { + await invoke("stop_command", { child_id: mainStore.winipBcPid || 0 }); + const child = await Command.create("WinIPBroadcast", ["run"]).spawn(); + mainStore.winipBcPid = child.pid || 0; + if (mainStore.winipBcPid) { + mainStore.winipBcStart = true; + } else { + ElMessage.error(`启动失败`); + } + } catch (err) { + ElMessage.error(`启动失败`); + console.log(err); + } + } else { + await invoke("stop_command", { child_id: mainStore.winipBcPid || 0 }); + await getWinIpBroadcastPid(); + } +}; + +export const initStartWinIpBroadcast = async () => { + const mainStore = useMainStore(); + await getWinIpBroadcastPid(); + // console.log(mainStore.winipBcStart, mainStore.winIpBcAutoStart) + if (!mainStore.winipBcStart && mainStore.winIpBcAutoStart) { + await handleWinipBcStart(); + } +}; \ No newline at end of file diff --git a/package.json b/package.json index 0048266..c0a3ad3 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "private": true, "author": "leizi97", "description": "A simple network initiator based on Easytier", - "version": "1.1.4", + "version": "1.1.5", "scripts": { "dev": "nuxt dev --dotenv env/.env.dev --host 0.0.0.0", "build": "nuxt generate --dotenv env/.env.prod" diff --git a/pages/index.vue b/pages/index.vue index 389098d..8cb5148 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -22,7 +22,7 @@ v-if="!data.coreVersion" @click="getCoreVersion(true)" > - 获取工具版本 + 获取内核版本 - {{ data.coreVersion ? "更新插件" : "下载插件" }} + {{ data.coreVersion ? "更新内核" : "下载内核" }} @@ -261,34 +261,23 @@

- - WinIPBroadcast - - - - - + :icon="MagicStick" + @click="handleShowToolDialog" + > + 增强工具 +
- 主页 + EasytierGame主页
@@ -383,9 +372,10 @@ import { invoke } from "@tauri-apps/api/core"; import { listen } from "@tauri-apps/api/event"; import { open, Command } from "@tauri-apps/plugin-shell"; - import { QuestionFilled, Delete, List, UserFilled, Setting, Share, RefreshRight, Link, Tools } from "@element-plus/icons-vue"; + import { QuestionFilled, Delete, List, UserFilled, Setting, Share, RefreshRight, Link, Tools, MagicStick } from "@element-plus/icons-vue"; import { reactive, onBeforeUnmount, onMounted } from "vue"; import { useTray, setTrayRunState, setTrayTooltip } from "~/composables/tray"; + import { initStartWinIpBroadcast } from "~/composables/netcard"; import useMainStore from "@/stores/index"; import { ElDropdownMenu, ElMessage, ElMessageBox } from "element-plus"; import { getCurrentWindow } from "@tauri-apps/api/window"; @@ -412,6 +402,7 @@ logVisible: false, cidrVisible: false, advanceVisible: false, + toolVisible: false, winipBcPid: 0, //WinIPBroadcast进程id winipBcStart: false, memberVisible: false, @@ -575,44 +566,6 @@ data.releaseList = list as never[]; }; - const getWinIpBroadcastPid = async () => { - const pid = await invoke("search_pid_by_pname", { target_process_name: "WinIPBroadcast" }); - data.winipBcPid = (pid as number) || 0; - if (data.winipBcPid && data.winipBcPid > 0) { - data.winipBcStart = true; - } else { - data.winipBcStart = false; - } - }; - - const handleWinipBcStart = async () => { - if (!data.winipBcStart) { - try { - await invoke("stop_command", { child_id: data.winipBcPid || 0 }); - const child = await Command.create("WinIPBroadcast", ["run"]).spawn(); - data.winipBcPid = child.pid || 0; - if (data.winipBcPid) { - data.winipBcStart = true; - } else { - ElMessage.error(`启动失败`); - } - } catch (err) { - ElMessage.error(`启动失败`); - console.log(err); - } - } else { - await invoke("stop_command", { child_id: data.winipBcPid || 0 }); - await getWinIpBroadcastPid(); - } - }; - - const initStartWinIpBroadcast = async () => { - await getWinIpBroadcastPid(); - if (!data.winipBcStart) { - await handleWinipBcStart(); - } - }; - const handleAutoStart = async () => { let is_enable = await tauriAutoStart.isEnabled(); if (!config.autoStart && !is_enable) { @@ -982,4 +935,23 @@ } ); }; + + const handleShowToolDialog = async () => { + await etWindows( + "tool", + { + title: "增强工具", + width: 460, + height: 480, + resizable: true, + url: "#/tool" + }, + (_, appWindow) => { + data.toolVisible = true; + }, + () => { + data.toolVisible = false; + } + ); + }; diff --git a/pages/member.vue b/pages/member.vue index cc73aa1..7dce83d 100644 --- a/pages/member.vue +++ b/pages/member.vue @@ -4,10 +4,13 @@ {{ "等待成员信息中..." }}