A Terraria player editor written in Gleam
Find a file
Lily Rose aeef40df5c
Some checks failed
test / test (push) Failing after 2s
Add supported versions to readme
2026-02-24 00:06:17 +11:00
.github/workflows In progress initial commit 2026-02-19 02:03:25 +11:00
dev Bump version to v1.1.0 2026-02-22 20:01:01 +11:00
src Rename hidden info and builder acc status fields 2026-02-22 20:00:28 +11:00
test Rename package to cthulhu 2026-02-22 01:32:27 +11:00
.gitignore In progress initial commit 2026-02-19 02:03:25 +11:00
gleam.toml Bump version to v1.1.0 2026-02-22 20:01:01 +11:00
manifest.toml In progress initial commit 2026-02-19 02:03:25 +11:00
README.md Add supported versions to readme 2026-02-24 00:06:17 +11:00

cthulhu

Package Version Hex Docs

A Terraria player editor written in Gleam.

gleam add cthulhu@1
import cthulhu
import simplifile

pub fn main() -> Nil {
  let assert Ok(encrypted_player) = simplifile.read_bits(test_player_path)
  let assert Ok(raw_player) = cthulhu.decrypt(encrypted_player)
  let assert Ok(player) = cthulhu.decode_player(raw_player)
  echo player
}

Further documentation can be found at https://hexdocs.pm/cthulhu.

Supported Game Versions

  • v1.4.5.x (file version 315)

Compilation

Compilation may take a minute or two due to this project being quite large. To speed up compile times at the expense of runtime performance feel free to build with the ERL_COMPILER_OPTIONS variable set to one of the below options:

ERL_COMPILER_OPTIONS="[no_ssa_opt_alias]" (faster compile, moderate runtime performance impact)

ERL_COMPILER_OPTIONS="[no_ssa_opt]" (fastest compile, higher runtime performance impact)

You probably don't want to build your entire project with these flags, just this dependency.

Development

Testing requires a player file named test.plr in this package's root directory.

gleam test  # Run the tests