一款基于Pengu Loader的全服可用英雄联盟客户端增强插件
插件获取方式:后台发送“英雄联盟插件”,即可获取网盘下载链接!

简介

▲ Sona 插件面板 — 按 F1 随时呼出,集成战绩查询、秒抢英雄、队友分析等丰富功能
✨ 功能特性
对局增强
| 自动接受对局 | ||
| 秒选 / 自动 Ban 英雄队列 | ||
| 大乱斗无CD换英雄 | ||
| 分析友方战力 | ||
| 英雄选择阶段增强 | ||
| 英雄 T 级角标 | ||
| 全局战力分析弹窗 | ||
| 对局结束自动返回房间 | ||
| 平衡性调整 buff 提示 | ||
| 对局结束自动点赞 | ||
| 组队界面增强 |
智能配装
| 智能配装、符文与召唤师技能 | ||
| OP.GG 配装推荐面板 | ||
| 自动装备集写入 | ||
| 优势 / 劣势对局 |
战绩查询
| 任意玩家战绩查询 | ||
| 模式过滤 | ||
| 详细战报 | ||
| Game ID 复制 |
社交
| 解锁自定义签名 | ||
| 自定义生涯背景 | ||
| 自定义挑战旗帜 | ||
| 开黑好友标记 | ||
| 增强游戏中好友状态 | ||
| 段位伪装 | ||
| 卸下头像边框 | ||
| 卸下头像 |
美化
| 美化页面 | ||
| 自定义主页壁纸 | assets 中的图片/视频设为主页背景,可调整模糊、底色和取景位置 | |
| 随机壁纸 | ||
| 自定义头像 | ||
| 主题色修改 | --default-color,并支持一键恢复默认 | |
| 资源管理 | assets 相对路径,并兼容粘贴包含 sona/assets 的绝对路径 |
工具
| 回放观看 | ||
| 设置备份/恢复 | ||
| 窗口特效 | ||
| 全局粒子美化 | ||
| 开发者调试面板 |
界面
| Sona 入口 | ||
| 快捷键 | ||
| 增强在线状态 | ||
| 多语言界面 | ||
| DOM 自愈 |
🖼️ 效果展示
英雄选择界面增强

▲ 选人阶段显示队友近期胜率、KDA、头像粒子特效,并支持点击头像查看战绩。
英雄 T 级展示

▲ 在英雄选择网格、己方头像和备选席展示 OP.GG T 级角标。
配装推荐

▲ 锁定英雄后查看当前模式的 OP.GG 配装、符文和召唤师技能推荐。
海克斯推荐

▲ 斗魂、海斗展示海克斯推荐。
增强组队界面

▲ 组队界面旗帜上方展示近期表现,点击成员头像区域可打开战绩面板。
游戏中好友状态

▲ 好友列表中实时显示游戏中好友的模式与对局时长。
自定义生涯背景

▲ 生涯背景选择器支持搜索所有皮肤,包括特殊皮肤与多形态皮肤。
自定义旗帜

▲ 在挑战身份页面本地更换任意旗帜,打造更个性化的客户端展示。
📦 安装
前置条件
Pengu Loader 最新版已安装
安装步骤
Pengu Loader 项目地址,安装方式很简单,在release中下载最新版的setup.exe,直接安装即可。安装完成后打开,如下图启用状态为ready则表示安装成功,后续不再需要打开该软件,正常启动LOL即可。如果需要你选择LOL路径,选择到“英雄联盟”文件夹即可。

接着点击上方右侧的Plugins,打开插件目录,从本项目的release中下载压缩包(不要下载项目源码使用),解压出sona文件夹并拖动至插件目录,注意,loader不支持直接拖入文件,应该点击右下角打开插件目录,然后将sona文件夹拖动进去。

注意,这里要把sona文件夹拖动进来,并确保里面应该是两个index文件。

操作完成后,回到loader,点刷新,像上图一样就是安装成功了,接着重启客户端即可。
🚀 使用
启动英雄联盟客户端 点击 Play 按钮旁的 Sona 头像图标,或按 F1 打开面板 在「工具」页开启/配置各项功能 所有设置自动持久化,下次启动自动恢复
🏗️ 技术架构
┌─────────────────────────────────────────────────────┐│ League Client (Ember.js) ││ 内置 Chromium 浏览器环境 │└──────────────────────┬──────────────────────────────┘ │┌──────────────────────┴──────────────────────────────┐│ Pengu Loader v1.1.0+ ││ init(context) → load() 生命周期 │└──────────────────────┬──────────────────────────────┘ │┌──────────────────────┴──────────────────────────────┐│ Sona Plugin ││ ││ ┌─────────────┐ ┌─────────────┐ ┌──────────────┐ ││ │ React App │ │ Features │ │ Injections │ ││ │ (面板 UI) │ │ (功能逻辑) │ │ (DOM 注入) │ ││ └──────┬──────┘ └──────┬──────┘ └──────┬───────┘ ││ │ │ │ ││ ┌──────┴────────────────┴────────────────┴───────┐ ││ │ LCUManager (单例) │ ││ │ REST API (fetch) + WebSocket │ ││ └────────────────────────────────────────────────┘ ││ ││ ┌────────────┐ ┌──────────┐ ┌─────────────────┐ ││ │ SonaStore │ │ Assets │ │ InjectorManager │ ││ │ (持久配置) │ │ (资源映射)│ │ (DOM 自愈守护) │ ││ └────────────┘ └──────────┘ └─────────────────┘ │└─────────────────────────────────────────────────────┘核心设计理念:
- LCUManager
— REST + WebSocket 双通道统一管理,所有 LCU 交互集中在一个单例中 - InjectorManager
— 单一 MutationObserver + requestAnimationFrame 节流,注入点被客户端刷掉后自动补回(自愈机制) - SonaStore
— 内存缓存 + DataStore 持久化 + 变化监听,类型安全的配置管理 - 功能驱动
— 所有功能通过 store 配置开关控制,监听变化自动开启/关闭
📁 项目结构
sona/├── src/│ ├── index.tsx # 插件入口(init/load 生命周期)│ ├── App.tsx # 主应用(侧边栏 + 页面路由)│ ├── lib/│ │ ├── lcu.ts # LCU REST API + WebSocket 封装│ │ ├── features.ts # 功能生命周期注册与部分选人增强逻辑│ │ ├── features/ # 独立功能模块(自动接受、自动 Ban、组队增强等)│ │ ├── store.ts # 配置管理(持久化 + 监听)│ │ ├── injections.ts # DOM 注入点注册中心│ │ ├── InjectorManager.ts # 全局 MutationObserver 守护│ │ ├── assets.ts # 游戏资源映射(装备/技能/英雄/符文/队列/地图)│ │ ├── modal.ts # 模态窗口状态 + 快捷键│ │ ├── hooks.ts # React 自定义 hooks│ │ ├── logger.ts # 日志系统│ │ └── utils.ts # 工具函数│ ├── types/│ │ └── lcu.ts # LCU API 完整类型定义│ ├── components/│ │ ├── pages/│ │ │ ├── HomePage.tsx # 主页(头像 + 粒子动画)│ │ │ ├── ToolsPage.tsx # 工具页(核心功能面板)│ │ │ ├── SettingsPage.tsx # 设置页│ │ │ ├── AboutPage.tsx # 关于页│ │ │ └── DebugPage.tsx # 调试页(开发者模式)│ │ └── ui/│ │ ├── Modal.tsx # 通用模态窗口(createPortal)│ │ ├── Sidebar.tsx # 侧边栏导航│ │ ├── MatchHistoryModal.tsx # 战绩查询弹窗│ │ ├── GameAnalysisModal.tsx # 对局战力分析弹窗│ │ ├── ProfileBackgroundPicker.tsx # 生涯背景选择器│ │ ├── ChampSelectIconEffect.tsx # 选人阶段头像粒子特效│ │ ├── SettingCard.tsx # 设置卡片│ │ ├── SonaButton.tsx # 按钮│ │ ├── SonaSwitch.tsx # 开关│ │ ├── SonaSelect.tsx # 下拉选择│ │ ├── SonaInput.tsx # 输入框│ │ ├── SonaSlider.tsx # 滑块│ │ ├── SonaCheckbox.tsx # 复选框│ │ └── icons.tsx # 图标集│ └── styles/ # 18 个 CSS 文件├── .github/│ └── workflows/│ └── release.yml # CI:推 tag 自动构建 + 发布 Release├── assets/ # 静态资源(Sona 头像)├── CHANGELOG.md # 版本变更日志├── pengu.d.ts # Pengu Loader API 类型声明├── package.json├── tsconfig.json├── vite.config.ts└── LICENSE # AGPL-3.0⚠️ 注意事项
需要 Pengu Loader — 本插件运行在 Pengu Loader 之上,不能独立使用。请先安装 Pengu Loader v1.1.0+。
客户端环境限制 — 插件运行在英雄联盟客户端内置浏览器中,直接通过 fetch 调用 LCU API,无需额外配置端口或 Token。
功能安全性 — 所有功能仅通过官方 LCU API 实现,不修改游戏文件,不注入游戏进程。段位伪装仅影响好友列表名片,不影响实际排位数据。
设置备份 — 备份存储在 Sona DataStore 中,按 PUUID 隔离不同账号,避免客户端重启后丢失。
战绩查询 — 战绩查询优先使用 SGP 接口,支持按队列模式过滤;部分大区、网络或客户端状态异常时可能查询失败。
夜雨聆风