Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

RTL Ski Jumping 2002 (PC) - PAK file

Featured Replies

  • Supporter

Hi. Any tools or scripts available for PAK file from "RTL Ski Jumping 2002" (PC)?
Sample file --> https://drive.google.com/file/d/1BKKgEBWTSye_9ayMGSggAeZ6uBg27AeW/view?usp=sharing

Compression method is currently unknown.

File format should look like this:

// PAK file format

// directory
number_of_files *
{
   4 bytes (uint32) - compressed file size
   4 bytes (uint32) - file ID?
   4 bytes (uint32) - unknown
   4 bytes (uint32) - unknown
   64 bytes (char) - file path  // e.g. "SOUND\TEXTPL\10_001A.WAV"
}

x bytes - padding (nulls)

// data
number_of_files *
{
   8 bytes (uint64) - uncompressed file size??
   x bytes - compressed file data
   x bytes - padding  (filled with 0xAA 0xAA 0xAA...)
}


 

Solved by Thief1987

On 3/13/2024 at 11:11 PM, ikskoks said:

Hi. Any tools or scripts available for PAK file from "RTL Ski Jumping 2002" (PC)?
Sample file --> https://drive.google.com/file/d/1BKKgEBWTSye_9ayMGSggAeZ6uBg27AeW/view?usp=sharing

Compression method is currently unknown.

File format should look like this:

// PAK file format

// directory
number_of_files *
{
   4 bytes (uint32) - compressed file size
   4 bytes (uint32) - file ID?
   4 bytes (uint32) - unknown
   4 bytes (uint32) - unknown
   64 bytes (char) - file path  // e.g. "SOUND\TEXTPL\10_001A.WAV"
}

x bytes - padding (nulls)

// data
number_of_files *
{
   8 bytes (uint64) - uncompressed file size??
   x bytes - compressed file data
   x bytes - padding  (filled with 0xAA 0xAA 0xAA...)
}


 

Not sure of compression, looks like some RLE variation, maybe not too complicated.

In the file table, the second value is the file offset - multiply by 0x800 to get actual offset.

The third value is unknown but always seems to be slightly bigger than the decompressed size.

The fourth value is the decompressed size - it should be the same value as in the file data header

 

 

  • Supporter
set base_off = 0x800

for
get comp long
if comp == 0
break
endif
get offset long
get size long
get decomp long
math offset * base_off
getdstring name 0x40
log name offset size
next

 

  • Localization
  • Solution

Here is the tool for unpacking, with the decompression. To use it just enter archive name in the command line

RTLSki2002.rar

Edited by Thief1987

  • Author
  • Supporter
On 3/19/2024 at 7:11 PM, Thief1987 said:

Here is the tool for unpacking, with the decompression. To use it just enter archive name in the command line

Thanks. Any chance for source code?

And I have some additional questions:
 1. Is the compression method well known or is it something custom?
 2. What was the purpose of 8 bytes right before compressed data?

  • Localization
1 hour ago, ikskoks said:

Thanks. Any chance for source code?

And I have some additional questions:
 1. Is the compression method well known or is it something custom?
 2. What was the purpose of 8 bytes right before compressed data?

well, no problem, but I'm just an amateur so it might be hard to read

 

1. I'm not sure it may be some known LZ variation but I reversed it from exe.

2. It's a decompressed size. Why they need to write it again here when it's already present in the TOC I don't know))

RTL Ski Jumping 2002.rar

Edited by Thief1987

  • 8 months later...

@ikskoks Were you able to make any changes and package it back up and run the game?

Or someone could also add a module to pack it up again to pak file?

Edited by lewyytm

Ok, because I found something on german internet "Real Ski Patch" and I wonder what they exactly do because they propably modified .exe file and extract outside the files graphics
http://olaf-asmus.de/showthread.php?tid=63

Edit:

I little bit analyzed what’s going on and what I see

- there are a few graphics which if we put in springen folder with game the game will load them. But it’s not the rule for all because for example start bib with VCC logo is not working but the lower part of bib we can edit and it’s work. 

- there are also a folder dat with files dat02 and dat03 and it’s responsible for jumper names and skills. They put them a lot of changes and the results on game are very similar to what happens on season 01/02 in real world (Ammann, Hocke) but these files are not readable in hex so I got no idea how they achieve that. 
 

- there is also a modified exe file but is without no-cd crack and I left my original file and I don’t know what was changed in exe file, because names are changed, skills are changed graphics works also.

I still think that unpacking, modification and pack .pak file would give a lot of opportunities like change commentary, modifying team competition, and maybe expand list of jumpers or add new countries? There is also a question how much the exe file and file loading there is a blocker to expand the game. 
 

I hope that almost someone will help us to pack .pak file again and it will be beginning of reactivating this game. 

Edited by lewyytm

  • 3 months later...

Hi everyone!

It turns out packing the packfile.pak file is not necessary. The game searches for files in packfile.pak and if the file is not found it searches in the workdir. 

So you can unpack packfile.pak to the directory containing the game and get rid of the archive. The game should work just fine.

.dat files in Mat directory are simply XOR encrypted using one byte key, which is conveniently written in the first byte of the file. This key must be equal to the sum of individual bytes from the decrypted content. The game follows this logic while saving these files, and checks the key while reading.

It's could be true but I think that we need to improve code to extract .pak file because propably there are still a a few files that are not unpacked.
When I deleted .pak file from main folder and paste all folders extracted I got ERROR  "no ramp 0 preview picture found! FATAL-ERROR"

Are you sure you copied all the files? Especially `GFX/RAMPS/THEMES/OSLO_P.BMP`? This is the preview image for ramp 0 (Yeah, it's Oslo, not Kuopio... Hill numbering is really confusing in this game).

Edited by Xneby

@Xnebyyou're right. I suggested that olaf asmus patch extracted the springer folder to the main folder so I did the same. Now the game turns on while I am not able to enter practice mode. During the start of the competition you can see the graphics of the hill and the game is already generating a hill. However when I click to start the competition the game crashes to windows 😞 

Edit: I reinstall game and now it's work!

Do you think that is possibility to get into the exe file?

To 003.dat I made a XOR operation with first value, then edit and save the file but in game I got error "wrong file" so I think that I need do something more with dat file?

Edited by lewyytm
Update

@lewyytm, what exactly you want to do with executable file?

 

Regarding Mat/003.dat, did you encrypt back the file? If you got `wrong file code !!!` error message, you didn't encrypt the file or did encrypt it with a wrong key (once again, the key *must* be the sum of all individual bytes in unencrypted data).

@lewyytm if I read your Python script correctly, you forgot to include xor key as the first byte of the encrypted file.

 

Regarding modding the game: I believe we are drifting too much from the original topic (PAK file format of the game). Do you mind continuing modding discussion in a different topic / different place?

  • 1 year later...
On 20.03.2024 at 22:59, Thief1987 said:

cóż, nie ma problemu, ale jestem tylko amatorem, więc może być ciężko to przeczytać

 

1. Nie jestem pewien, czy to jakaś znana odmiana LZ, ale cofnąłem ją z pliku exe.

2. To jest rozmiar zdekompresowany. Po co mają go tu zapisywać ponownie, skoro jest już w spisie treści? Nie wiem.

RTL Ski Jumping 2002.rar 1,46 kB · 18 pobrań

How to unpack with this tool?

 

  • Localization
7 hours ago, KamilKamilKamil1991 said:

How to unpack with this tool?

 

Put the tool in the same folder with the archive. Open Terminal or PowerShell in this folder. Enter command  

.\<tool_file_name> <archive_file_name>

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.