Giter Site home page Giter Site logo

jayfoxrox / thps2-tools Goto Github PK

View Code? Open in Web Editor NEW
22.0 3.0 2.0 22 KB

A collection of tools for Tony Hawk's Pro Skater 2 (Neversoft Big Guns engine)

License: MIT License

Python 100.00%
neversoft tony hawk thps thps2 thps3 thps4 apocalypse activision game

thps2-tools's Introduction

This is a collection of tools for Tony Hawk's Pro Skater 2.

There's a lot of overlap with these other games, potentially based on the Neversoft Big Guns engine:

  • SW: Skeleton Warriors
  • AP: Apocalypse
  • MDK: MDK (PlayStation)
  • SM: Spiderman
  • THPS1!April9: Tony Hawk's Pro Skater 1 (April 9 1999 build)
  • THPS1!July7: Tony Hawk's Pro Skater 1 (July 7 1999 build)
  • THPS1!July10: Tony Hawk's Pro Skater 1 (July 10 1999 build)
  • THPS1: Tony Hawk's Pro Skater 1
  • SM2: Spider-Man 2: Enter: Electro
  • THPS2: Tony Hawk's Pro Skater 2
  • THPS2X: Tony Hawk's Pro Skater 2x
  • MH: Mat Hoffman's Pro BMX
  • THPS3: Tony Hawk's Pro Skater 3 (PlayStation / N64)
  • SDH: Sea-Doo Hydrocross (PlayStation)
  • THPS4: Tony Hawk's Pro Skater 4 (PlayStation)

Known formats

DDX: extract-ddx.py (THPS2X-Xbox)

Extracts THPS2X DDX files (Texture collections).

DDM: disassemble-ddm.py (THPS2X-Xbox)

Make THPS2X DDM files (Material collections) human-readable.

TRG: disassemble-trg.py (THPS1 / THPS2 / SM)

Make THPS2 TRG files (Scripts / Commands and level meta-data) human-readable.

A lot of this is based on SYMBOLS.TDF, which is included in THPS2 (Windows).

PRK: disassemble-prk.py (THPS2 / THPS2X)

Disassembles THPS2 PKR files (User created skatepark).

PKR: extract-pkr.py (?)

Extracts PKR file.

PSX: psxviewer.c (THPS1 / THPS2 / SM)

Viewer for PSX files.

Stolen from https://gist.github.com/iamgreaser/2a67f7473d9c48a70946018b73fa1e40

Unknown formats

There's additional file formats which are commonly found in THPS2:

  • BON (THPS2X-Xbox) = Likely mesh and texture for characters.
  • REC (THPS2-Windows) = Replay files
  • THPS2 CRETEX.BIN = A list of items for skater editor.
  • THPS2 PRE = Container format for small files, assembled from S files
  • THPS2 PSX = Level files (psxviewer.c exists, but Blender 2.80 importer would be good)
  • THPS2 FNT = Font glyph map
  • THPS2 CD.HET/CD.HEP = List of files on CD
  • THPS2 CD.HED/CD.WAD = Container for files on CD
  • THPS2 SBL = Some debug symbols
  • THPS2 SFX = Some sound-effect list
  • THPS2 TS = Trick list

Other formats

STR

PlayStation STR video file format. See https://github.com/m35/jpsxdec/blob/readme/jpsxdec/PlayStation1_STR_format.txt

SFX.VAB (THPS1!-PlayStation)

PlayStation VAB audio file format.

CT.PAL (THPS1!-PlayStation)

Microsoft RIFF Palette.

title_h.zlb (THPS1!-PlayStation)

gunzip to extract BMR image; 640x480, 16 bit per pixel little-endian grayscale.

BMR (THPS1!-PlayStation)

Raw image files, 16 bit per pixel, with 8 byte zero-footer. Typically 640x480, or 512x240.

SYMBOLS.TDF (THPS2-Windows)

This was likely assembled from a SYMBOLS.S (using a tool called stotdf.exe)

PSH (THPS2-Windows)

Header files

S

Assembler directives. The following files are named in other files, or exist. The assembler was either something custom, or common. Possibly different tools were used for different tasks.

SCRIPT.S

This uses another tool to handle S files.

BMP (THPS2-Windows)

Windows Bitmap.

DDS (THPS2X-Xbox)

DirectDraw Surface file.

WAV (THPS2-Windows)

RIFF file format for audio. Windows version uses: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 44100 Hz.

TXT

Most of these are left-overs from debugging / development.

However, there's some additional files which the game potentially uses.

CDPARKS.TXT

List of user created parks that are included with the game.

Further reading

License

The files in this repository may be used under MIT License (see LICENSE.md) unless noted otherwise in the respective file.

thps2-tools's People

Contributors

jayfoxrox avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

thpsdump cybersys

thps2-tools's Issues

Emitted TRG source-code uses custom syntax

I believe that some beta version or port included some source-code for the TRG files. My tools do not reflect that syntax.
However, the command names already stem from files shipped on the game disc, so those already reflect actual Neversoft names.

Support for the full Neversoft syntax could potentially be added in the future.

psxviewer.c is not included

The README mentions psxviewer.c

I actually have a modified variant of it. I did not include it because I'm not sure what state it was left in. If I'm going to upload it, I also want to preserve the history from the gist.

My own PSX converter is, with minor exceptions, more powerful too - so this has low priority.

License undecided

I only didn't add a license because the release was a bit rushed.

I'm fine with GPL, BSD or MIT probably.
Please leave a comment if you want to use the code so I can add a proper license.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.