GithubHelp home page GithubHelp logo

openorbis / create-gp4 Goto Github PK

View Code? Open in Web Editor NEW
5.0 5.0 5.0 28 KB

Golang based tool to generate .GP4 files compatible with Maxton's publishing tools for producing .PKG files for the PS4.

License: GNU General Public License v3.0

Makefile 0.63% Go 85.10% Batchfile 9.54% Shell 4.73%

create-gp4's People

Contributors

backporter avatar cpasjuste avatar cryptogenic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

create-gp4's Issues

No support for trophy folder on dir tag

As it is the tool generates incorrect gp4 files when the file list contains a file from the sce_sys/trophy folder.

create-gp4 -out pkg.gp4 --content-id=EP9000-CUSA07410_00-00000000GODOFWAR --files "eboot.bin sce_sys/about/right.sprx sce_sys/param.sfo sce_sys/icon0.png sce_sys/pronunciation.xml sce_sys/nptitle.dat sce_sys/npbind.dat sce_sys/trophy/trophy00.trp sce_module/libc.prx sce_module/libSceFios2.prx"

The tool produces this xml code:
<dir targ_name="sce_sys"> <dir targ_name="about" /> </dir>

But should procude this one:
<dir targ_name="sce_sys"> <dir targ_name="about" /> <dir targ_name="trophy"/> </dir>

Trying to build the incorrect gp4 file with "PkgTool.Core pkg_build" gives this error:
Unhandled exception. System.InvalidOperationException: Sequence contains no elements at System.Linq.ThrowHelper.ThrowNoElementsException() at LibOrbisPkg.PFS.PfsProperties.FindDir(String name, FSDir root) at LibOrbisPkg.PFS.PfsProperties.BuildFSTree(Gp4Project proj, String projDir) at LibOrbisPkg.PKG.PkgProperties.FromGp4(Gp4Project project, String projDir) at PkgTool.Program.<>c.<.cctor>b__6_2(String[] args) at PkgTool.Verb.<>c__DisplayClass4_0.<Create>b__0(Dictionary2 _, Dictionary2 _2, String[] a) at PkgTool.Verb.Run(Verb[] verbs, String[] args, String name) at PkgTool.Program.Main(String[] args)

As the xml seems to be hardcoded in the tool a simple solution is to add the "trophy" dir tag after the about folder tag.

A more elaborate solution would require to parse the path part of every file and add the necesary "dir" tags to create a proper tree hierarchy in the xml output.

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.