Giter VIP home page Giter VIP logo

ff7tk's People

Contributors

caledor avatar myst6re avatar sithlord48 avatar vegetass4 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

Watchers

 avatar  avatar  avatar  avatar

ff7tk's Issues

FF7FieldItemsList possible errors on fields

a user has reported that the following are not being checked in LocationViewer when picked up
kuro_2 (silver rifle)
convil_2 (all rewards)

this needs to be checked before 1.10.0

FF7SaveInfo: Default saves names schemes for types

Several ff7 save formats have very specific naming schemes and we should provide this info to clients. Users could benefit from this with suggestions when creating new file types.

Schemes ff7 will recognize.

PC Save Format

Valid Ext: *.ff7
Valid Names: save00 - save09
Other Notes:

  • Each file contains 15 saves games
  • Used by FF7PC, Android, IOS, PS4, XBONEONE, SWITCH.
  • 2012 and Steam release add a cloud save feature and metadata.xml to track sync
  • ff7tk will use BASCUS-94163FF7-S01 as region data internally. It is not used in game or file.

Switch Save Format

Valid Ext: Files have no extension
Valid Names: ff7slot00 - ff7slot09 ("Checksum" used to export files)
Other Notes: PC Format with a different name.

PSX File Format

Valid Ext: Files have no extension
Valid Names: See Table Below, Depends on region, Name matches Id of disc#1 . FF7-S## where ## is 01-15 and changes the slot shown on the load / save screen as well as the icon seen in the built in memory card manager .

Country PSX FileName Example
US BASCUS-94163FF7-S05
UK BESCES-00867FF7-S15
French BESCES-00868FF7-S01
German BESCES-00867FF7-S08
Spanish BESCES-00867FF7-S02
Japan BISLPS-00700FF7-S04
Japan ("International") BISLPS-01057FF7-S06

Other Notes:

  • A valid name is required when a ff7
  • Raw file stored on a playstation memory card. Real or Virtual.
  • Named like all psx games [REGION]-[GAMEID][GameString].
  • FF7-S## is the "name" seen in the Playstation's memory card manager.

PS3 Export

Valid Extension: .psv
Valid File Names: Based on PSX name above. Replaces the "FF7-S##" with shift-js text (in hex)

Country PSX FileName PSV FileName
US BASCUS-94163FF7-S05 BASCUS-941634646372D533035.psv
UK BESCES-00867FF7-S15 BESCES-008674646372D533135.psv
French BESCES-00868FF7-S01 BESCES-008684646372D533031.psv
German BESCES-00867FF7-S08 BESCES-008674646372D533038.psv
Spanish BESCES-00867FF7-S02 BESCES-008674646372D533032.psv
Japan BISLPS-00700FF7-S04 BISLPS-007004646372D533034.psv
Japan ("International") BISLPS-01057FF7-S06 BISLPS-010574646372D533036.psv

Other Notes:

  • A valid name is required to export this format.
  • PSX Name is stored in the header

PS4 Format

Valid Ext: .ff7 (but not pc)
Valid Name: save00.ff7 - save09.ff7
Other Notes

  • PS4 will export as a folder (CUSA01875 for US maybe all)
  • Uses PC Format encrypted and has a size of 10 Mib
  • save##.ff7.bin Aperars to be the psf key used to decrypt the save.

XBONEONE Format

UNKNOWN.

FF7Save: Xbox One File Support

FF7 Was released for Xbox One in March 2019 . The save should be based on PC format possibly with a new header around it.

Update ff7save to support Openssl 1.1

Currenly ff7save uses the old methods to attempt to sign psv files. In openssl 1.1 you can no longer use functions like EVP_CIPHER_CTX. Untill this if fixed building with psv signing support will be disabled for all OSes.

Explore non x86 builds.

Currently CI only builds x86 Targets, but not all targets are look into building for others.
Related to #52

Qml Friendly : FF7 Save

Make data/FF7Save qml friendly without breaking widgets.
Also data/FF7Save_Types and data/FF7Save_Const
Depends: #24 #39

QML: PhsListWidget

Port PhsListWidget widgets/PhsListWidget
New File: ff7tk/qml/PhsList.qml
Depends #19

Remove Qt4 Support

Qt4 is dead we can clean up abit of code by removing suport for Qt4 completely from ff7tk. The last Qt4 supported branch should be moved to a new branch Qt4Support where it can live if anyone needs it for some reason.

[CMake] Wrong paths for cmake files and pkgbuild

Describe the bug
I've created a simple vcpkg portfile that allows to build this library and make use of it in Makou Reactor. Thw whole library builds just fine but I found out two misplaced elements that just need to be put differently once you build the library using CMake.

  • lib/cmake/ff7tk/*.cmake should be instead put in share/*.cmake NO ACTION REQUIRED.
  • share/pkgconfig/ff7tk.pc should be instead put in lib/pkgconfig/ff7tk.pc

Thanks again and feel free to ping me if any other question arises!

To Reproduce
Steps to reproduce the behavior:

  1. Build the project using CMake
  2. Look at the exported artifacts

Expected behavior
The cmake files and the pkgconfig files are put in the right folders.

Screenshots
N/A

Desktop (please complete the following information):

  • OS: Windows
  • Compiler: MSVC
  • Version: v0.83.0
  • Qt Version used: QT 6.4.2

Additional context
N/A

New folders: core and io/files

I think "utils" is not a good folder name for Archive and Lgp classes. I advice to move these files to a new folder named "io" or "files" (which is the best?) for everything related to reading/writing file formats.
For everything else, we can rename "utils" to "core", I think.

Update QML Integration

Update the QML Integration to Qt 6.5 standards

Todo:

  • Remove all the old exports and start from scratch Done [#127]
  • Enforce use of Cmake version needed for Qt policy and 6.5 support Done[#137]
  • Set QtPolicy0001 to NEW (Qml imports to :/qml not :/ by default) Or otherwise set the qml import path [#137 ]
  • Create Plugins for each ff7tk library as needed to be used for QML based applications Data, Core [#137]
  • Create Components for ff7tk general QML use. [#137, #140]

LocationViewer: not alway sizing peview correctly

the preview on locationview is not set to the correct size on two cases

  1. initial viewing is always at smallest size
  2. when viewing a field w/ no items after viewing a field with items the preview is smaller then it should be

FF7Save Header / Footers use 0-size array

headers and footers for some formats are 0size arrays that doesnt seam safe lets redo the header / footers using QByteArrays and make it much easier to read and simpler.

FF7Save: Compressed SRM [LibRetro]

Reported in sithlord48/blackchocobo#21

Danixu asks for compressed srm support

Hello,
Playing with your program and Recalbox, I have noticed that it is not compatible with the compressed SRM format. This is the default option in RetroArch 1.8.5 and up, so this make impossible to open that files using this program until you deactivate the savegame compression, which can be a bit annoying, and even dangerous because can be activated again if not done correctly and will replace the savegame.
To avoid to be playing with the advanced options of the RetroArch program, will be nice to add compatibility with compressed SRM files.
I have created an example program which is able to compress and decompress SRM files, so maybe will help you with this feature:
https://github.com/Danixu/srm-compressor
I am using the RetroArch source files directly, which is a bit coarse, but is working... sweat_smile
Thanks!

Some numbers not decoded correctly on big-endian systems.

When I load a save on my PowerBook G4 (running Debian Sid), all multi-byte numerical fields are read incorrectly.

For instance, in the following picture, the Races won, Acceleration, and Cooperation values are all correct as viewed on an amd64 machine (also running Debian Sid). But Rocco's Stamina should be 3506, Run speed should be 1735/2650, and Sprint speed should be 2135/3050.
big-endian-bug-black-chocobo

I should have 40988 Gil, and 453 battles. 0 escapes is correct.
big-endian-bug-black-chocobo_2

Use CPack to Package all deployments

CPack should make the following packages for each Qt and Architecture supported.

  • Windows
    -- IFW (with Dependencies) [done #66]
    -- 7z (with Dependencies) [done #66]
  • Mac OS
    -- IFW (App's contain depends) [done #66]
    -- ZIP (App's contain depends) [done #66]
  • Linux
    -- IFW (with Dependencies)
    -- DEB (May need a job w/ qt-dev installed to pull SHLIBS depends, generate on launchpad?)
    -- RPM (maybe be best to generate on OBS?)
    -- tar.xz (Appimage used in place of bin dir)

TODO:

  • Handle Linux CI Deployment
  • Fix IFW Not making Start menu entries
  • IFW - bundle Linux ff7tk_runtime_depends
  • IFW - Linux Embed icon ?
  • IFW - Add Update support via install-tool
  • Fix Deb / Rpm Package Dependencies(
  • Split Deb / Rpm Packages to have dev/demos and src packages (dbg?).
  • Generate Source package
  • Repository for deb / rpm and IFW (Additional Patch?)

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.