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 当前只关注的音频事件映射范围

参考

维护

感谢

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

league_tools-1.2.0.tar.gz (134.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

league_tools-1.2.0-py3-none-any.whl (101.8 kB view details)

Uploaded Python 3

File details

Details for the file league_tools-1.2.0.tar.gz.

File metadata

  • Download URL: league_tools-1.2.0.tar.gz
  • Upload date:
  • Size: 134.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for league_tools-1.2.0.tar.gz
Algorithm Hash digest
SHA256 ab05563b1de98b699038d63c30f2a30de445e4f1e333aa55e4420563e01b5774
MD5 d0052a8030c09777ecf7e4e71e9c8588
BLAKE2b-256 13ac56a91db03cae124c8eb2465d192c7aea215d2e612e022b718c46fa2e766f

See more details on using hashes here.

Provenance

The following attestation bundles were made for league_tools-1.2.0.tar.gz:

Publisher: python-publish.yml on Virace/league-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file league_tools-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: league_tools-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 101.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for league_tools-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 950c71038d900ef0b6ead84587051e39cf6d00ad8b00c16a690375607b001e12
MD5 1406db6f83214865855d738cf8e576c1
BLAKE2b-256 99ad8d063b5d38c6c3790931285abb35f8a441e150f41120d348f301433add10

See more details on using hashes here.

Provenance

The following attestation bundles were made for league_tools-1.2.0-py3-none-any.whl:

Publisher: python-publish.yml on Virace/league-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 files

1.1.5

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.0

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

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