Skip to main content

Python utilities for working with common amLib interfaces. Very much not complete!

Project description

amlibpy

This library is a collection of utilities that can be helpful when working with amLib software.

Surfboard (incl Surfride)

It also includes amlibpy.surf, for working with Surfboard files. This library allows both low-level modification of files, as well as providing a high-level interface to common structures. The high-level interface is very incomplete, but changes made through either interface reflect in the other.

Even though the high-level interface is incomplete, all reading and writing of Surfboard files is performed using the low-level interface, and lossless round-tripping is guaranteed. If you manage to cause losssy round-tripping, that's a bug!

The following is an example of how amlibpy.surf can be used to modify all strings in a given surfboard file:

surf = VTBF_Reader(open("example_input.srd", "rb")).load()

assert surf.type == "SRFF"
sr = surf.children[0]

all_text = sr.find_deep(surfride.SurfRide_TEXT)
for i in all_text:
    i.text = b"Hello world!"

VTBF_Writer(open("example_output.srd", "wb")).dump(surf)

Project details


Download files

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

Source Distribution

amlibpy-2025.10.5.post2.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

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

amlibpy-2025.10.5.post2-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

Details for the file amlibpy-2025.10.5.post2.tar.gz.

File metadata

  • Download URL: amlibpy-2025.10.5.post2.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for amlibpy-2025.10.5.post2.tar.gz
Algorithm Hash digest
SHA256 3911c96d774a8eccf12b9440b9c822dabb1dff69c3d6f2cd83321eaf449ee615
MD5 ad1e3b4dadc3ec831f774158e029f803
BLAKE2b-256 04294cb2b7583b4b5fb581d8e8e2663da972b6371de19564a5d21bdc70a3cd14

See more details on using hashes here.

File details

Details for the file amlibpy-2025.10.5.post2-py3-none-any.whl.

File metadata

File hashes

Hashes for amlibpy-2025.10.5.post2-py3-none-any.whl
Algorithm Hash digest
SHA256 d06bebd9e94e2a3bedf15e9942d0d93b7fdbfe5a091cd63fb2b71b0987dbdcd9
MD5 a9a586d6756b696d983cf8eb923d246a
BLAKE2b-256 2ac716a3ec85455265f26e812d559a4863729478d5f2b3a6fcddfa6821aace21

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page