Giter Club home page Giter Club logo

xxxthedarkprogramerxxx / ps4_tools Goto Github PK

View Code? Open in Web Editor NEW
277.0 32.0 50.0 575.74 MB

Collection Of Open Source PS4 Tools all in one Library All Written in C#

License: GNU Lesser General Public License v3.0

C# 21.05% C++ 0.92% CSS 0.21% Makefile 15.22% HTML 3.91% Java 54.86% JavaScript 1.49% C 0.01% Lua 0.02% PHP 1.81% Smarty 0.07% Standard ML 0.01% Python 0.19% ASP.NET 0.19% AIDL 0.06%
ps4 rco pkg rcos ps1 playstation csharp neighborhood ps4-pkg unity

ps4_tools's Introduction

PS4_Tools Build status

Collection Of Open Source PS4 Tools all in one Library

Supports Unity

Projects Currently Running PS4 Tools

PS4 PS2 Classics Manager (Unreleased) Github Source

PS4 PS2 Classics GUI Github Source

PS4 PKG Installer (PKG Store) Github Source

PS4 PKG Installer Andorid Github Source

PS4 PKG Tool- By pearlxcore Github Source

PS4 Explorer - By Lapy Github Source | Twitter

PS4 Tools Homebrew (1.3) Github Source | Github Release

PS4 Save Manager Github Source

PS4 Trophy Unlocker Github Source

Project status

GitHub all releases

GitHub repo size

https://github.com/xXxTheDarkprogramerxXx/PS4_Tools/releases/latest

Example Applications

Image Util Build status

Created for DefaultDNB

Atrac9 Player

A simple At9 player

image

Ps4 Tools Homebrew

Created originally just to show the power of ps4 tools but now has alot more feutures

Ps4 PKG Viewer

Created as an example app reads ps4 pkg's Github

PS4 Save Manager

Created to manage save files dumped with either Ps4 Tools Homebrew or with Save Data Mounter by Chendo Chap

PS4 Trophy Unlocker

Well It Unlocks Trophies

image

image

Ps4 Trophy Viewer

Created on the request of @pearlxcore

Getting Started

Add the .DLL to your solution. Done Dusted and ready to use

Class Structure

The class strucutre might change in future releases

namespace PS4_Tools
├── PS4_Tools                                 /*Some Defualt Methods For the Tools*/
│   ├── AppCommonPath()                       /*Returns Working Directory For Tools*/
│   ├── DeleteDirectory()                     /*Recursive Deletes Directory*/
├── SELF                                      /* Reserved class for SELF/ELF Handeling*/
├── Media                                     /* PS4 Media Class*/
│   ├── Atrac9                                /*Atrac9 Class*/
│   ├──   ├── LoadAt9                         /*Loads Atrac9 Method still in the works*/
├── Image                                     /* PS4 Image Class*/
|   ├── PNG                                   /*PNG Class*/
│   ├──   ├── Create_PS4_Compatible_PNG       /*Creates a Complatible PS4 PNG*/
│   ├── DDS                                   /*DDS Class*/
│   ├──   ├── SavePNGFromDDS                  /*Saves a PNG from a DDS File*/
│   ├──   ├── GetStreamFromDDS                /*Gets a Stream from a DDS*/   
│   ├──   ├── GetBitmapFromDDS                /*Gets a Bitmap from a DDS*/
│   └── GIMImages                             /*GIM Image Class*/
├── RCO                                       /* PS4 RCO Class*/
│   ├── DumpRco                               /*Dumps a Rco File*/
├── SaveData                                  /* PS4 SaveData Reserved Class*/
├── PKG                                       /* PS4 PKG Handling Class*/ 
│   ├── Official                              /*Some Methods for Official PKG Items*/
│   ├──   ├── ReadAllUnprotectedData          /*Deprecated*/
│   ├──   ├── StoreItems                      /*Store Items Object Class (Placeholder)*/
│   ├──   ├── CheckForUpdate                  /*Returns a Update_Structure Type*/
│   ├──   ├── Get_All_Store_Items             /*Returns a List<StoreItems> With Download Links and some other infrmation*/
│   ├── SceneRelated                          /*Some Methods for Scene Related PKG Items*/
|   ├──   ├── GP4                             /*GP4 File Class*/
|   ├──   ├──   ├── ReadGP4                   /*Reads a GP4 File Into a Custom Object*/    
|   ├──   ├──   ├── SaveGP4                   /*Saves a GP4 File From a Custom Object*/
|   ├──   ├── Create_FKPG                     /*Creates a FPKG (addon file from store items for a spesific item*/
|   ├──   ├── IDS                             /*IDS Reserved Class*/
|   ├──   ├── PARAM_SFO                       /*Param.SFO Reserved Class*/
|   ├──   ├──   ├── Get_Param_SFO             /*Reads a Param SFO into a Param.sfo structure*/
|   ├──   ├── NP_Data                         /*NP_Data Reserved Class*/
|   ├──   ├── NP_Title                        /*NP_Title Reserved Class*/
|   ├──   ├── ReadPKG                         /*Reads a PKG File (Powered by maxtron)*/
|   ├──   ├── Read_PKG                        /*Reads all unprotected data from a pkg (Powered by Leecherman)*/
|   ├──   ├── Rename_pkg_To_ContentID         /*Renames a PKG File to the Content ID of the SFO*/    
|   ├──   ├── Rename_pkg_To_Title             /*Renames a PKG File to the Title of the SFO*/
│   ├── PS2_Classics                          /*Class For Building PS2 Classics*/
|   ├──   ├── Create_Single_ISO_PKG           /*Creates a Single ISO File PS2 Classic*/    
|   ├──   ├── Create_Multi_ISO_PKG            /*Creates a Multie ISO File PS2 Classic*/
│   ├── PSP_HD                                /*Class For Building PSP HD Items*/
│   ├── PUP                                   /*Class For PUP Tools*/
|   ├──   ├── Unpack_PUP                      /*Unpacks a PUP Files*/
└── (More to come)

Using PS4_Tools

Please see the testers form to see how some of the classes work if not documented here

Reading a PKG File (Using Official Toolset) /Deprecated 2018-11-18/

Reading and Saving a GP4

 PS4_Tools.PKG.SceneRelated.GP4.Psproject project =   PS4_Tools.PKG.SceneRelated.GP4.ReadGP4(@"C:\Users\3deEchelon\Documents\Sony\Crash Bandcioot Twinsanity.gp4");
            if(project.Fmt != "gp4")
            {
                MessageBox.Show("This is not a valid PS4 Project");
                return;
            }

            //lets validate some pkg item info before saving
            if(project.Volume.Package.Passcode.Length != 32)
            {
                MessageBox.Show("Passcode Lentgh is not valid");
            }

            //to save a gp4 

            PS4_Tools.PKG.SceneRelated.GP4.SaveGP4(@"C:\Users\3deEchelon\Documents\Sony\tempworking.gp4", project);

Displaying a dds file

var item = PS4_Tools.Image.DDS.GetBitmapFromDDS(@"C:\Users\3deEchelon\Desktop\PS4\psp Decrypt\Sc0\icon0.dds");
            pictureBox1.Image = item;

Dumping a RCO File

 PS4_Tools.RCO.DumpRco(@"C:\Users\3deEchelon\Desktop\PS4\RCO\Sce.Cdlg.GameCustomData.rco");

Playing a at9 file

 PS4_Tools.Media.Atrac9.LoadAt9(@"C:\Users\3deEchelon\Desktop\PS4\AT9\prelude1.at9");

Get Game Update Information

            var item =PS4_Tools.PKG.Official.CheckForUpdate(textBox1.Text);

            /*TitleID Patch Data Is Avaiavle Here*/

            /*Build some string*/
            string update = label1.Text;
            update += "\n Version : " + item.Tag.Package.Version;
            int ver = Convert.ToInt32(item.Tag.Package.System_ver);
            update += "\n System Version : " + ver.ToString("X");
            update += "\n Remaster : " + item.Tag.Package.Remaster;
            update += "\n Manifest File Number of Pieces : " + item.Tag.Package.Manifest_item.pieces.Count;

            label1.Text = update;

Get Store Items From a Title ID

    var storeitems = PS4_Tools.PKG.Official.Get_All_Store_Items(textBox1.Text);

Get Unprotected Data From PKG

     PS4_Tools.PKG.SceneRelated.Unprotected_PKG ps4pkg = PS4_Tools.PKG.SceneRelated.Read_PKG(@"C:\Users\3deEchelon\Desktop\PS4\Euro.FISHING.COLLECTORS.EDITION.PS4-DUPLEX\Euro.Fishing.Collectors.Edition.PS4-DUPLEX\duplex-euro.fishing.collectors.ed.ps4\Euro.Fishing.Collectors.Edition.PS4-DUPLEX.pkg");

            /*Lets work with the data shall we*/
            /*Display the PSFO in some type of info format*/
            var item = ps4pkg.Param;
           
            for (int i = 0; i < item.Tables.Count; i++)
            {
                listBox3.Items.Add(item.Tables[i].Name + ":" + item.Tables[i].Value);
            }
            /*Display Image*/
            pictureBox2.Image = ps4pkg.Image;

            var trphy = ps4pkg.Trophy_File;

            for (int i = 0; i < trphy.FileCount; i++)
            {
                listBox4.Items.Add(trphy.trophyItemList[i].Name);
            }

Credits

  • Maxton - For The Amazing Work He has done for the scene ! (LibOrbisPKG)
  • GarnetSunset - Playstation Store DLC Indexer
  • stooged - PS4 DLC Indexer (C#)
  • cfwprph - His help and Vita Rco extractor tool
  • IDC - His PS4 Pup Extractor and other work he has done
  • Leecherman - His tools are always a great reference for me and does some great work
  • Thealexbarney - His great research done on atrac9 files and decoding them
  • RedEye-32 - His help on getting ESFM decrypted (files inside of trophies)

Download

Download - POWER BY APPVOYER

Open Source Projects

My Neighborhood

This is an open source version (alternative) of the PS4 Neighborhood that came with the official ps4 sdk

Follow development board on Trello

What can i do with this ?

This is mainly for developer use on any console that has unsigned code enabled and has the corresponding api installed (release to be announced)

With this you can create your own application / games for ps4 homebrew and instead of creating a pkg each time you can simply attach the application / game to your file serving directory and load your current application in real time (that's the idea anyway)

The project is to resemble the official PlayStation 4 Neighborhood without any of the SCE tools

Requirements

  • API Installed
  • System must be running a semi dev unit (not normal retail)

To change your console from Normal Retail to a Semi Dev one simply use LightningMods's Updater

Console output will look similar to this

ps4_tools's People

Contributors

xxxthedarkprogramerxxx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ps4_tools's Issues

Trophy Section on PS4_Tools Homebrew V1.1, unlocks all Trophys

Thanks for your great software!
Small problem with PS4_Tools Homebrew V1.1 I think.
When I go to the Trophy Section, all trophies from all games are immediately unlocked! And there is no option to undo it. When I start a game the trophy progress is back to normal, but the trophies have the symbol and timestamp. Tested on 7.55 ...

Can't connect to PS4 error 550

Hello,

I just try to connect to my PS4 with FTP payload actived on this one.
When i click on connect, it's return 550 error ?!
I specified port :1337 but it's the same message.
Do you have an issue ?
Thanks

trouble unlocking trophies

A few weeks ago I was unlocking trophies without any problem and now I get this message what is happening
PS4 Tools_20220309112519

Real custom Timestamps for Trophies

Is it possible to enter custom times for trophies?

Changing the times afterwards in the trophy_local.db is not practical because the actual time is stored in the NPWR folder of the respective game. So in trophy_local.db only the visual representation is stored, not the actual time.
If you would synchronize changed trophies with the PSN all times would be wrong again.

Is it possible to unlock single trophies? For me PS4 Tools hangs after I have selected a game, couldn't test the trophy unlocking at all, maybe because I tried it on a new user.

Maybe you could set the internal PS4 clock to the appropriate time before unlocking and only then unlock? Otherwise, you would probably have to decrypt the files in the NPWR folder... Which seems to me somehow more complicated...

Trophies cant be unlocked

Hi,

Is it possible for you to add back the function of tool 1.0 like once you press the triangle button in the app, All of the trophies of every game loaded / played in the current user account will be popped immediately? thanks

PS4_Tools Homebrew V1.1 ( unlocker ) and Trophy Unlocker V1.3 Error 550 with port 1337 , 5.05

Thanks for developing this app :)
When I go to the Trophy Section, all trophies from all games are immediately unlocked! (5.05) and weird bug when i open trophies 100% but other games have 74% or 50% or even 0% (but when i go inside to see tropies i have all of them) i wanted to try Trophy Unlocker V1.3 but for some reason i have 550 error ( i have port 1337,turned ftp)

Pictures after using PS4_Tools Homebrew V1.1 unlock all
20210827_215638_2

20210827_215655_2

Trophy Re-Locking

I know this might be a bit of an odd request, but would it be possible to add the ability to lock a trophy again? It would be useful for people (like me) that try to get that perfect screenshot while unlocking. Or for people (again, like me) that want to experience a game over with all of the trophies available to unlock, sort of like the RetroAchievements option in RetroArch that allows you to "unlock" an achievement every playthrough. Thank you for your hard work, and I hope you have a Merry Christmas.

Issue on save mounting

Greetings,

Is there a limit on the number of files or size when mounting saves?

Cause I tried to mount Days Gone saves and it gives me some kind of full mount error and only mount 16 of the 23 files.

It would be nice if we can select the save files to mount and not every file of each game.

blank trophy timestamp before exploit launch

thanks, the program works fine and have a problem.
when I turn on my ps4 without exploit, all my trophies have blank trophy timestamp but
when I launch the exploit my trophies recover timestamps (problem solved only with exploit),

how can I solve that????

Games with multi trophy Title ID's

Hi.

First of all thank you for your great work and tools.
I have been using PS4 tools(1.33) for some weeks now, and the trophy unkocking has been working really well.
I have just a question regarding games with multi trophy Title ID's.
For example, Borderlands Handsome Collection is a 2-in-1 game, and has two trophy Title ID's, NPWR-07862 and NPWR-07892.
Can PS4 tools unkock both, or its a limitation at the moment? Could not find any information regarding this issue.

Thanks,
Helder F.

No write permission on FTP in FW 9.0

Hello.
It seems that there is no write permission after mounting a save file by FTP.

I have tried to replace the Save file of the Gran Turismo game, but it is not possible. I have FW 9.0 and I use the ps4debug from ctn123. The application can mount the 2 folders of the GT save, but when trying to replace it by FTP there is no write access.
I have tried it with several FTP options: the one integrated in the application, the pyload ftp and the one ingested in GoldHEN 2.b2. It seems that it does not mount with write permissions.

Some screenshot in Filezilla.

sce_sdmemory folder:

image

Local data folder:

image

Unity Project files for Trophy Unlocker

Would it be possible to add Unity project for Trophy Unlocker? I'd like to make some modifications.

Currently, only the eboot.bin is included in CONTENTS.zip file.

two bugs

Hello,
1.issue is that if i open trophy unlocker and unlock all tropies if i try open second game for tropies is always a error but afther closing app and reopen this second game is working.
a.press on game
b.getting tropies info
c.circle pressed to get back to choose game
d.afther i chosen any game i have a error
e.for now i have to unlock trohpies for one game and close tool and re-open
issue on pic
IMG_20220103_144053__01

2.issue is for some game trophy is not working properly example i used for 4 game (all games are fake)
Gran turismo sport CUSA02168 - 100% unlocked
Uncharted 4 CUSA04529 - 100% unlocked
Driveclub CUSA00003 this is little bit werid - 100% unlocked but is not for bike , tool don't even see that category is exists (no is not sperate game)
uncharted lost legacy CUSA09564 ​- only 98% unlocked (1 trophy is locked for ever,i tried unlock all , tried select "locked tropie" and tool not respoing at all (zero errors) , of course if i go back to select game and try open again i have 1 issue with error

PS4 Firmware 5.05 , i used also PS4 Tools Homebrew V1.33 (Xmas Edition)

Winrar file issue

The source code file downloads successfully but the archive is corrupted

PS4 Trophy Unlocker- invalid url on ftp

Sup guys, i can connect my ps4 with filezilla easily but not trophy unlocker, i used on a older version of goldenhen and it was working before

i have enabled the fpt on goldenhen menu with xxx.x.x.1:2121

it says invalid url, invalid specific port .

what that mean?
i want to enable all online troplhies for red dead

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.