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.
Zero Tolerance for Disrespect

Naruto Shippuden: Ultimate Ninja 5 Bin File Unpack

Featured Replies

  • 4 weeks later...
  • Localization
48 minutes ago, Jinxmargo said:

Can you also create the import tool, but that's up to you, if you don't mind.

If I have some extra time I can look into this. No promises, though.

  • 2 weeks later...
On 8/10/2026 at 6:41 PM, Jinxmargo said:

I found another file in CCS format, and I don't know what's in it.

PUPPET.rar

these .CCS files are just GZIP containers in what looks like an ID table for in-game text though i might be wrong.

to open it, rename it from .CCS to .gz

On 7/28/2026 at 4:51 PM, Jinxmargo said:

Can you also create the import tool, but that's up to you, if you don't mind.

import os

import struct

import tkinter as tk

from tkinter import filedialog

STRUCT_FORMAT = "<IIIIIIII32s"

def pack_folder_to_bin():

root = tk.Tk()

root.withdraw()

target_folder = filedialog.askdirectory(title="Select Folder to Pack")

if not target_folder:

return

files_list = []

for item in os.listdir(target_folder):

item_path = os.path.join(target_folder, item)

if os.path.isfile(item_path) and not item.startswith("packed_"):

files_list.append((item, os.path.getsize(item_path), item_path))

if not files_list:

return

files_list.sort(key=lambda x: x[0])

num_segments = len(files_list)

size_1 = files_list[0][1] if num_segments > 0 else 0

size_2 = files_list[1][1] if num_segments > 1 else 0

size_3 = files_list[2][1] if num_segments > 2 else 0

fourcc_int = int.from_bytes(b"MWo3", byteorder='little')

load_address = 0x00c00000

start_callbacks = 0x0

end_callbacks = 0x0

first_file_name = files_list[0][0]

filename_bytes = first_file_name.encode('utf-8')[:32].ljust(32, b'\x00')

header_bytes = struct.pack(

STRUCT_FORMAT,

fourcc_int,

num_segments,

load_address,

size_1,

size_2,

size_3,

start_callbacks,

end_callbacks,

filename_bytes

)

output_filename = f"packed_{first_file_name}"

if not output_filename.lower().endswith('.bin'):

output_filename += ".bin"

output_path = os.path.join(target_folder, output_filename)

with open(output_path, "wb") as out_file:

out_file.write(header_bytes)

for , , file_path in files_list:

with open(file_path, "rb") as f:

out_file.write(f.read())

if name == "__main__":

pack_folder_to_bin()

This is my attempt on importing stuff. Tell me if it works or not, i'm new to modding please be patient

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.