Python tools for working with Star Citizen data files.
Project description
scdatatools
Python API for interactive with the data files in Star Citizen.
Free software: MIT license
Documentation: https://scdatatools.readthedocs.io.
Hey! Listen!
This tool is in very early development. The CLI is a WIP and may not be completely plumbed up yet. If you’d like to help out and know Python, try out the API a little bit and see if you run into errors parsing files! We’re also at the stage that feature/usability feedback would be much appreciated.
Features
cli interface
TODO
CLI Examples
usage: scdt [-h] [--verbose] [--stderr] [--command-timeout COMMAND_TIMEOUT] [command] ...
positional arguments:
[command] Subcommand to run, if missing the interactive mode is started instead.
cryxml-to-json Convert a CryXML file to JSON
cryxml-to-xml Convert a CryXML file to xml
unforge Convert a DataForge file to a readable format
unp4k Extract files from a P4K file
actionmap Dumps the default profile action map (keybinds) as JSON
API Examples
Read a DataForge database (.dcb)
from scdatatools.forge import DataCoreBinary
dcb = DataCoreBinary('research/Game.dcb.3.9.1-ptu.5229583')
jav_records = dcb.search_filename('*javelin.xml')
print(dcb.dump_record_json(jav_records[-1]))
Use the StarCitizen class:
from scdatatools.sc import StarCitizen
sc = StarCitizen('D:/Path/To/LIVE')
sc.p4k.search('idris')
sc.datacore.records[0]
Special Thanks
A huge thanks goes out to dolkensp (aka alluran) for doing all the initial hard work reversing the P4K and DataForge file formats! This would’ve taken a lot longer with his efforts.
History
0.1.3 (2020-12-06)
Added SC profile dumping (actionmaps)
New StarCitizen class convenience wrapper around the installation dir
Support for looking up localization strings
Dataforge fixes
0.1.2 (2020-05-20)
Initial commit
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.