分享一個 LOL 界面修改的方式
前言
lol 大亂斗玩家, 因為想要一個大亂斗平衡性的頁面. 感覺應該已經有人做了, 搜了一下果然
一個 json 數據里面有所有英雄的所有信息, 其中 aram(ARAM=All Random All Middle) 指的是大亂斗
如何方便的查看
效果圖如下:
是如何修改客戶端的
他竟然能修改客戶端!!!
源代碼如下
注入的方式作者提供了 2 種:
1.IFEO
2.Symlink(客戶端會自動加載 version.dll, 國服沒有這個 dll, 但是有了會加載)
如何注入的和具體原理參考源碼 IFEO.cs 和 Symlink.cs, 我由于沒關 360 自動使用了 Symlink , 理論上 mac 也是可以用的, 作者還在開發中
具體原理是 lol 客戶端用的是內嵌網頁有個 libcef.dll, 然后作者自己做了一個帶調試 / 加載自定義文件 功能的 libcef.dll, hook 了一下原來的 dll 的 cef_initialize
具體代碼見 dllmain.cc
從原理上來說因為是對 dll 的 hook, 所以更新什么的都不影響,cef 是開源的, 理論上來說游戲也不太會更
修改皮膚
效果圖如下:
試了一下國服顯示有問題
用的 Irelia-theme 這個主題
要修改文件 rumi.js
第一行添加
import './rumi.theme.css'
修改文件 rumi.theme.css
添加一個
#rcp-fe-viewport-root > .rcp-fe-viewport-persistent {display: none;}
真實效果圖如下:
自動 ban/pick
假段位
假名字
自動邀請
一鍵刪除所有好友
修改音樂
etc….
有人 github 上不去放上文件
使用:
1. 安裝 Pengu Loader,
2. 打開 Pengu Loader
3. 如果有修改注冊表的權限,
直接第 4 步 (使用 1.IFEO 注入)
如果沒有權限需要:
選擇 LeagueClient.exe
(這個要自己找, 我的在 C:lol 英雄聯盟 (26)LeagueClient), 這個目錄, 定位一下 lol 的 exe.(使用 Symlink 注入)
4. 點擊打開 Pengu Loader 所在的的目錄, 把 assets,plugins 兩個文件夾放進去即可
目錄結構如下:
Pengu Loader/ |assets <- bg.jpg 是背景圖片可以隨便換 |plugins <- js&css
ps: 國服不知道有沒有封號風險, 我才用了一天, 使用需謹慎
ps2: 國服客戶端頁面里面的代碼真亂各種調試信息和報錯, 怪不得那么卡
ps3: 理論上來說所有用這種 cef 做前端的軟件像 wegame, 迅雷, 百度網盤,etc… 都可以這樣修改. 同理用 v8 的也可以, 但是 v8 的一般都會自己編譯一些新的回調函數進去. 不好說