Package: shroudstone
shroudstoneShroudstone is principally a tool to automatically rename replays of your
Stormgate ladder games.Say goodbye toCL44420-2024.02.03-08.28.SGReplayand say hello to2024-02-03 08.28 L 03m03s Pox IvI Veni Vidi Vici - Broken Crown.SGReplayShroudstone also acts as a general Python/CLI toolkit for working with
Stormgate replays - right now it's probably not useful for much else, but
hopefully it will grow over time :)Made possible by the great work of theStormgate
Worldteam!Installation & UsageOn Windows: .exe downloadSimplydownload the latest standalone executableand double-click it to launch the user interface.On Windows: Using pipInstall Python 3.11 usingthe Microsoft Storeor theofficial installer. If using the
official installer, make sure to check the "add python.exe to PATH" option.Open Command Prompt and typepip install shroudstoneto install shroudstone.You can now invokepython -m shroudstone guifrom the command line to
launch the user interface, orpython -m shroudstone --helpfor usage
instructions for the command-line interface.You should also be able to get it working using a non-UWP python install, or
using WSL - justpip install shroudstoneand you should be good to go.On Linux: using pipIf you're running Stormgate on Linux+Steam+Proton, this should also work for
you!Ensure python 3.8+ and pip are installed using your system package manager.
(e.g. on Ubuntu, runsudo apt install python3-pip.)Runpip install shroudstonein a terminal.Launch the GUI withshroudstone gui, or check outshroudstone --helpif
you want to use the CLI.UpdatingRegardless of your operating system, if you installed usingpip install shroudstoneoriginally, you can update to the newest version with a simplepip install --upgrade shroudstone.If you downloaded the .exe, just download a new one to replace it!NotesShroudstone can currently only rename 1v1 ladder games - this is because it
relies on the Stormgate World API to fetch most of its information.Stormgate names your replays using your local time. After renaming, the times
will be in the UTC timezone, as on the Stormgate World leaderboard.Your settings are saved in %LOCALAPPDATA%/shroudstone/config.json on Windows
or ~/.local/share/shroudstone/config.json on Linux/WSL. Note that if you're
using Python from the Microsoft Store, this %LOCALAPPDATA% might not be
what you expect - usepython -m shroudstone config-pathto find out exactly
where it is.If using the CLI, Your player ID, replay directory path and replay format
string can be configured by passing command-line options topython -m shroudstone rename-replays; but you probably want to use the config file
instead so you don't have to provide them every time. Usepython -m shroudstone edit-configto edit the configuration file.Customizing replay namesYou can customize the filenames of your renamed replays by editing the format
string in your config file. (Usepython -m shroudstone edit-configto open
the config file in a text editor, or click the "Edit Config File" button in the
GUI.)The default format string is{time:%Y-%m-%d %H.%M} {result:.1} {duration} {us} {r1:.1}v{r2:.1} {them} - {map_name}.SGReplaywhich results in e.g.2024-02-03 08.28 L 03m03s Pox IvI Veni Vidi Vici - Broken Crown.SGReplayNote the usage of:.1to take just the first letter of the race and result strings.Format strings can use the following values:us(str): Your nicknamethem(str): Opponent nicknamer1(str): Race/faction you played (Vanguard or Infernals)r2(str): Race/faction opponent playedtime(datetime): Creation time of matchduration(str): Game duration (e.g. "15m10s")result(str): Your game result (Win, Loss, Undecided)map_name(str): Name of the map on which the game was played (extracted from replay file)build_number(int): Build number of Stormgate version on which the game was played (extracted from replay file)ContributingContributions are welcome - feel free to open a PR, or message Pox on the
Stormgate Discord if you want to discuss with me first.