gg

module
v0.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2022 License: BSD-3-Clause

README

gg

PkgGoDev Build Status Go Report Card

A set of command line tools and Go packages to work with Thimbleweed Park data files.

The project name "gg" was chosen, because the names of some of these formats start with those two letters, e.g. "ggpack" or "GGDictionary". They were conceived by Grumpy Gamer (Ron Gilbert). This project is not related to him or Terrible Toybox, Inc.

Command line tools

  • ggpack A tool to inspect, unpack or create "ggpack" files.
  • ggdict A tool to convert back and forth between the GGDictionary format and JSON.
  • retext A tool to replace ID placeholders like @12345 in files with texts from a text table file in TSV format.
  • nutfmt A tool to indent Squirrel script files.
  • yack A tool to run Yack dialogs.
  • ggsavegame A tool to convert savegame files to JSON format and back.
Installation

Either download binaries for your operating system from the latest release or build from source with Go:

go install github.com/fzipp/gg/cmd/ggpack@latest
go install github.com/fzipp/gg/cmd/ggdict@latest
go install github.com/fzipp/gg/cmd/retext@latest
go install github.com/fzipp/gg/cmd/nutfmt@latest
go install github.com/fzipp/gg/cmd/yack@latest
go install github.com/fzipp/gg/cmd/ggsavegame@latest

Go packages

  • ggpack Read and write ggpack files.
  • ggdict Read and write the GGDictionary format.
  • texts Replace text ID placeholders with texts.
  • yack Read and run Yack dialogs.
  • wimpy Read and write Wimpy room files.
  • savegame Read and write savegame files.

Related, but independent packages:

Projects by other people with similar objectives:

  • NGGPack .NET based tool for reading and writing ggpack archives.
  • ggdump Python based tool for listing and extracting files from ggpack archives.
  • r2-ggpack Radare2 plugins to manipulate ggpack archives.
  • engge Experimental game engine for Thimbleweed Park by the same author as NGGPack.
  • Thimbleweed Park Explorer An explorer/viewer/dumper tool for Thimbleweed Park
  • ggpack Command line tool for inspecting ggpack files, written in Go.

License

This project is free and open source software licensed under the BSD 3-Clause License.

Directories

Path Synopsis
cmd
ggdict
A tool to convert back and forth between the GGDictionary format and JSON.
A tool to convert back and forth between the GGDictionary format and JSON.
ggpack
A tool to inspect, unpack or create "ggpack" files.
A tool to inspect, unpack or create "ggpack" files.
ggsavegame
A tool to decrypt and encrypt Thimbleweed Park savegame files.
A tool to decrypt and encrypt Thimbleweed Park savegame files.
nutfmt
A tool to re-indent Squirrel scripting language source code.
A tool to re-indent Squirrel scripting language source code.
retext
A tool to replace ID placeholders like @12345 with actual texts from a text table file in TSV (tab-separated values) format referenced by these IDs.
A tool to replace ID placeholders like @12345 with actual texts from a text table file in TSV (tab-separated values) format referenced by these IDs.
yack Module
crypt
bnut
Package bnut encodes/decodes .bnut files within a ggpack.
Package bnut encodes/decodes .bnut files within a ggpack.
xor
xor/rtmi
Package rtmi encodes/decodes data with XOR encryption as used by Return to Monkey Island.
Package rtmi encodes/decodes data with XOR encryption as used by Return to Monkey Island.
xor/twp
Package twp encodes/decodes data with XOR encryption as used by Thimbleweed Park and Delores games.
Package twp encodes/decodes data with XOR encryption as used by Thimbleweed Park and Delores games.
xxtea
Package xxtea is an implementation of the XXTEA (Corrected Block TEA) block cipher as described in: David J. Wheeler and Roger M. Needham (October 1998).
Package xxtea is an implementation of the XXTEA (Corrected Block TEA) block cipher as described in: David J. Wheeler and Roger M. Needham (October 1998).
Package ggdict reads and writes the GGDictionary binary format.
Package ggdict reads and writes the GGDictionary binary format.
Package ggpack reads and writes ggpack files.
Package ggpack reads and writes ggpack files.
Package texts replaces ID placeholders like @12345 with actual texts from a text table.
Package texts replaces ID placeholders like @12345 with actual texts from a text table.
Package wimpy reads and writes wimpy files.
Package wimpy reads and writes wimpy files.
Package yack reads and runs yack dialogs.
Package yack reads and runs yack dialogs.
cond
Package cond defines conditions for statements of the yack language.
Package cond defines conditions for statements of the yack language.
stmt
Package stmt defines statements of the yack language.
Package stmt defines statements of the yack language.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL