Skip to main content

league-tools

PyPI 版本 Python 版本 许可证 发布流程

WAD、BIN、BNK、WPK 文件处理工具库。

介绍

league-tools 是一个用于处理英雄联盟资源文件的 Python 库,提供对以下格式的底层解析能力:

  • WAD(.wad.client):资源包(模型、贴图、音频等)
  • BIN(.bin):游戏配置与逻辑数据
  • BNK(.bnk):Wwise SoundBank 音频元数据
  • WPK(.wpk):Wwise 打包音频文件

音频事件映射默认推荐使用 NativeHIRC:

  • 只关注事件映射所需的 HIRC 音频信息
  • 直接从 events.bnk 读取,速度明显快于 wwiser -> XML
  • 更适合默认映射链和批量分析

如果你需要更完整的 BNK/HIRC 结构、XML 对照能力或调试信息,再使用 WwiserHIRC。

安装

pip install league-tools

如需基于发布分支安装最新代码:

pip install -e "git+https://github.com/Virace/league-tools@package#egg=league_tools"

使用

基础使用示例(四种核心格式):

from pathlib import Path

from league_tools import BIN, BNK, NativeHIRC, WAD, WPK

# 1) WPK:提取音频文件
wpk = WPK("path/to/audio.wpk")
wem_files = wpk.extract_files()

# 2) BNK:提取内嵌WEM
bnk = BNK("path/to/events.bnk")
bnk_wem_files = bnk.extract_files()

# 3) WAD:按已知路径提取文件
wad = WAD("path/to/archive.wad.client")
wad.extract(
    ["assets/sounds/vo/champions/gwen/skin01/vo_gwen_skin01_events.bnk"],
    out_dir=Path("./wad_output"),
)

# 4) BIN:读取音频事件组数据
bin_file = BIN("path/to/skin.bin")
audio_groups = bin_file.data

# 5) NativeHIRC:默认推荐的 events.bnk 解析入口
hirc = NativeHIRC.from_bnk("path/to/vo_events.bnk")

日志默认关闭;上游项目可按需手动开启:

from league_tools import enable_logging, disable_logging

enable_logging()
# ... 业务逻辑 ...
disable_logging()

WAD 打包与替换(输出固定 v3.4):

from league_tools import WAD, WADBuilder

# 从零创建
WADBuilder() \
    .add('plugins/demo/config.json', b'{"enabled": true}') \
    .save('demo.wad.client')

# 打开已有 WAD,替换其中的文件后另存(output 省略则覆盖源文件)
wad = WAD('path/to/archive.wad.client')
wad.rebuild(
    {'plugins/demo/config.json': b'{"enabled": false}'},
    output='archive.modified.wad.client',
)

说明:.bnk/.wpk 原样存储,其余 zstd 压缩;头部签名置零(客户端不校验)。 注意游戏客户端更新/修复会按清单还原被修改的 WAD。

详细示例与格式文档:

音频映射建议

默认工作流:

from league_tools import AudioEventMapper, BIN, NativeHIRC

bin_file = BIN("path/to/skin.bin")
hirc = NativeHIRC.from_bnk("path/to/events.bnk")
mapping = AudioEventMapper(bin_file, hirc).build_mapping()

何时切到 WwiserHIRC:

  • 需要完整 XML / HIRC 结构对照
  • 需要调试 wwiser 输出或排查版本差异
  • 需要的信息超出 NativeHIRC 当前只关注的音频事件映射范围

参考

维护

感谢

Metadata

Release files for league-tools 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for league-tools 1.2.1
File Size Uploaded
league_tools-1.2.1.tar.gz 135.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for league-tools 1.2.1
File Interpreter ABI Platform
league_tools-1.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 237.4 kB

Release files / league_tools-1.2.1.tar.gz

Download URL league_tools-1.2.1.tar.gz
Size 135.1 kB
Tags Source
SHA-256 checksum
How to use checksums
9321d3c733cc7bcdc978de636184b560e424ee4b9e43a050030aaedfcefb98f6
BLAKE2b-256 checksum
How to use checksums
27dfe3205c953429fd41d2f654898eb19d0257d5d679d1ac619f37b2123c923f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release files / league_tools-1.2.1-py3-none-any.whl

Download URL league_tools-1.2.1-py3-none-any.whl
Size 102.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
191ed05f35c117851d590ba7dcd4677438599f1f5dbe6731eb1458d053c83282
BLAKE2b-256 checksum
How to use checksums
678b61b807a1db4ffa974b08963cf4de2861719c725c9c6c66f0fae08ac4d8b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page