Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - picklejar

Pages: [1]
Anyone know where I can find source code for reading battle models and animations?

The only program I know that can do this is Ifalna by Ficedula, but all the links I've found so far are either broken or only point to a binary.

Idea #1: Language-agnostic Binary data schema

So... most of our projects involve consuming, editing, and writing binary data like Final Fantasy game asset files.

This community has been awesome as far as bringing people together to reverse engineer the file formats, publish their findings on Wiki, and sharing source code.

So now, it would be super nice if we could go just one step further and to create actual schema definitions, in a structured format. "That way, we could auto-generate documentation. And most importantly, I wouldn't have to develop code to parse the data, because it can just be parsed automatically, by my program, which by the way is written in... uh, my preferred programming language..."

Yeah. Exactly. That's why we don't have schema files. Everyone has different needs, prefers different programming languages, etc.

But still... just imagine the possibilities if we could agree on a language-agnostic schema. This is a common problem and there are solutions for it. For example, perhaps we could use one of these:

Even if the language-agnostic schema isn't super-friendly to your preferred programming language, it would not matter if there were utilities to generate documentation for you to read and understand it in a user-friendly way, and if there were utilities to translate the schema to data structures in your preferred programming language. Right?

Well, for new projects, yeah, that might be fantastic. But... for existing projects... well, suppose we did come up with such a plan and even developed the tools to generate docs and code in everyone's preferred language. Would we expect the authors of existing tools to re-factor their code to use the new auto-generated code? Probably not.

But, if you are such an author, then you probably have some good insight into what kind of features you would want such auto-generated code to have, in your preferred programming language. So, perhaps you would be interested in contributing ideas, or even code, to translating universal schema to "code in my preferred language".

And long-term, imagine the possibilities with future tools!

I'm sure this community has talked about this before numerous times, so my main question is, do we have a forum topic dedicated to this? If not, can we create one? And if there are any individual threads where this has been discussed at length, can you point to them?

Idea #2:

It would be cool to have a tool to auto-reverse-engineer new file formats. The tool could use a repository of known file formats / characteristics (like "magic numbers", other patterns to look for, etc.). It could even be interactive and show different interpretations to the user and let the user guide the tool to choose the right interpretation. Finally, it could output schemas for the user. What format should the schema be in, though? See idea #1 above. (See?! That's another reason we need it!)

General discussion / Wiki
« on: 2019-04-29 20:35:11 »
I just signed up as a new member of the new *.ru Wiki site. It looks like my account was created successfully. And I can access edit pages (haven't tried to submit yet though) and I can see History pages. But, every time I click on a user link on a History page, I get a weird error like "user is not registered", even for Qhimm. Is this expected?

Scripting and Reverse Engineering / Field IDs
« on: 2019-04-04 17:21:01 »
Where in the original game files can I find a mapping of field ID (like 116) to field name (like md1stin)?

Couldn't find this. Looks like it's hard-coded in Makou Reactor. Didn't check Ochu source code yet. I'm guessing maybe in flevel.siz but I couldn't read it.

    Kujata is a suite of tools that translates FF7 assets to web-friendly formats like JSON and glTF, and also provides metadata and statistics.
    • Translates field models to glTF
    • Translates field data to JSON, and field entity/group scripts to Javascript
    • Provides metadata like field map links, op code usage statistics, etc.

    The Kujata webapp is a website that illustrates examples of what could be done with the data.

    Browse every field model in the game:

    Browse every field map in the game:

    See field map details, including links to other maps, field models used in the map, scripts, etc.:

    See op-code statistics, sort and filter by specific fields, and export to CSV.
    Example: See every place $GameMoment is set:

    Edit: Made the screenshots above into links

    So, I know there are a few tools out there that can import FF7 models, and even a couple that can display the animations, but are there any tools that can export the animations to a more popular format like obj or fbx?

    If not, I am seriously considering writing such a tool. Many years ago I already wrote a program, using the great data on this forum about the file formats, that could read FF7 model and animation files and display the animations. So all I'd need to do is learn a popular file format (perhaps obj or fbx) and write the export logic.

    But before I go down this path... are there any tools out there that already do this?

    And if I end up writing such a tool, does anyone have any feature requests?

    Completely unrelated / A new esoteric programming language
    « on: 2017-12-17 15:13:16 »
    There's a breaking new programming language:

    Some basic examples:

    Q-Gears and all FF Tools in general should be immediately re-written in this new language.

    I've created an app that helps people learn Japanese in a fun way by using Final Fantasy VII as examples!

    No need to download or install anything. It's a public web app.

    Home Page:

    Current Version: 1.1

    Newest Features:
    • Added statistics around which kanji strings are the most common in Final Fantasy VII. New as of 1.1
    • Major UI improvements: Much better menu, much cleaner pages in general. (Using Twitter Bootstrap.) New as of 1.1
    • Users can now add comments at the bottom of each page. (Using Disqus.) New as of 1.0
    • On the search results page, you can click on a result to navigate to the corresponding page (dialogue or non-dialogue). New as of Beta 0.11
    • Finally added credits/thanks on the home page, to DLPB, Luksy, Herman1134, Qhimm community. New as of Beta 0.10
    • Search for any text you want in Final Fantasy VII, Japanese or English. New as of Beta 0.10

    Other Features:
    • Explore the full Japanese Hiragana "alphabet" (syllabary). Click on a syllable to see examples where it's used in Final Fantasy VII.
    • Explore the full Japanese Katakana "alphabet" (syllabary). Click on a syllable to see examples where it's used in Final Fantasy VII.
    • Explore the full Japanese Kanji, grades 1-6 & S. Click on a character to see examples where it's used in Final Fantasy VII.
    • Explore the full list of Final Fantasy VII dialogue text.
    • Explore the full list of Final Fantasy VII non-dialogue text.
    • Explore statistics to see which hiragana, katakana and kanji strings appear the most often in Final Fantasy VII.
    • Shows side-by-side the Japanese text, English PSX text, English PC text, and Beacause retranslation text.
    • Shows examples from dialogue text and non-dialogue text. (Non-dialogue refers to names of characters, locations, monsters, abilities, items, menus, etc.
    • Shows screenshots of the Final Fantasy VII Character Naming Screen, which shows how the alphabets are displayed in the game. Look on the hiragana and katakana pages.
    • Shows furigana (pronunciations above each kanji character) on the kanji page.

    Features that might be in a future version:
    • Make the UI more mobile-friendly. The new UI overhaul made a big improvement regarding the menu, but it made some things worse, and this needs to be fixed.
    • Show screenshots of other parts of the game, like character dialogue, menus showing Materia, battle scenes showing monster names, etc.
    • Provide actual lessons to help people learn things in the right order, instead of just exploring. Considering multiple goals, such as "learn a few things to allow me to get pretty far in the FF7 game", as well as, "learn a few things to allow me to actually understand Japanese in the real world as well."
    • Make learning even more fun, perhaps using mini-games or scenarios. Example: You're fighting Jenova Birth, what should you equip to defend against her water-based attacks? (Can you distinguish between the Japanese words for water and fire? Can you locate your Water Ring and/or your Elemental+Leviathan Materia?)
    • Incorporate audio to help with pronunciation and make it more fun and immersive.

    Special thanks to:
    • Luksy and DLPB for the touphScript and Beacause projects and their feedback on this project
    • Herman1134 (Jason Maltz) for his spreadsheet that correlates the Japanese and English dialogue text together
    • The Qhimm community
    • Your name goes here if you provide valuable feedback

    Hope you guys like it! Would love to hear your feedback and suggestions!

    I didn't see any threads about reverse engineering FF7R so far, so I figured I'd get one started.

    Note: Use this thread to discuss reverse engineering FF7R only. If you want to discuss your thoughts on FF7R in general, please do that elsewhere. I say this because we already have plenty of drama in this General thread:

    Now, on to business. 8)

    Q1: Who is interested in reverse engineering FF7R, and/or developing tools for it? On the one hand, many people have already spent valuable time developing fixes and enhancements and hacks for the original FF7, so maybe it kinda sucks that the interest (of players and especially the developers themselves) are now divided and will probably slowly gravitate towards FF7R and away from the original FF7 and from all the hard work put into it. On the other hand, we've been working on FF7 for almost 20 years, and we've done almost everything possible with it, such that the only remaining projects are the really big or difficult ones (like separating out the engine, doing a full HD remake, fixing deep-rooted issues like limitations with FPS/timing, etc.). So, my question for you guys is, are you "committed to the original until death" (DLPB maybe?), or are you "it's WAY too early, I'm not gonna waste time on this now, but hey, if you find any info, please share it with us" (perhaps the majority of us), or are you "I'm excited, let's trailblaze and start proactively pursuing this!"?

    Q2: For those that are planning to get involved, what strategies and ideas do you/we have for reverse engineering FF7R? You may think "it's nowhere near release time so we don't know much yet". But what I'm asking is, what do we know, and what can we do to find out more, sooner, and when will we start thinking about organizing and documenting what we know on Wiki or something? For example, we know it will be released on PS4 first, and it's somewhat likely that the engine will be the same as, or similar to, FFXV, and possibly file formats and such. So, some of us could start trying to reverse engineer FFXV (demo now, releases later) and/or PS4 games, and at the very least we'd learn valuable things from that process, right? And as we hear leaks/rumors, we can track and document those, etc. What other info/ideas do we have?

    General discussion / Vision: Final Fantasy 7 ONLINE
    « on: 2012-06-07 03:51:43 »
    I have a vision for a "Final Fantasy 7 Online" game, and I'd like to share that vision with everyone and to get your feedback.


    IMAGINE... an online game where people can re-live Final Fantasy 7 and play with each other... ONLINE.

    What does that MEAN, exactly?  Well, for instance, one person can play Cloud, and another person can play Tifa, etc., and they can do various things online... TOGETHER.

    "Do what things, exactly?"  THE SKY IS THE LIMIT.  We can play the main story together, PvP against each other, explore the world, roleplay, minigames, and whatever else YOU think would be fun.

    The game might have different modes.  Let's start off with STORY MODE, and PLAY MODE, and BATTLE ARENA MODE.

    With STORY MODE, people can re-live the FF7 story, starting with the Bombing Mission.  But this time around, it's different.  One person plays Cloud while another person plays Barrett!  Once they finish the bombing mission, they have unlocked the next part of the story, and they have also UNLOCKED TIFA ON THEIR ACCOUNTS and can start to play her.

    The BATTLE ARENA MODE is for PvP.  You can pit your ferocious Red XIII against my Yuffie.  Or maybe we can stage some virtual battles against Sephiroth!

    The PLAY MODE is for everything else.  Socialize and ROLE PLAY.  Buy materia/gear for your characters.  Play minigames.  Go out into the world to gain experience.  Have fun while you are "queued up" for a Story Mode instance.  (See, that's where the game pairs you up with other people online to help you advance in the Story.)

    GUYS... THIS IS NOT LIKE ANY OTHER ONLINE GAME.  This isn't FF11 or FF14 or World of Warcraft.  You're not creating some random character that nobody knows.  You are playing a character that you and all your fellow FF7 fans LOVE AND ADORE.  And we're all playing TOGETHER.

    Each player has their own account and their own copy of all the FF7 characters.  A newbie's account might have a Level 7 Cloud, a Level 5 Barrett, and a Level 6 Tifa, and that's it.  An experienced player's account might have unlocked all the FF7 characters with higher levels.  It might even be feasible to let people play other FF7 characters like Sephiroth, Reno, the Don, etc., but only in certain situations.

    Yes, there are logistical challenges.  You don't want two people playing Cloud in the same world instance.  That's solvable.  What happens when your Aeris character... gets to a certain part of the story?  We can work that out.  Another challenge is copyright issues.  That's solvable, too.  We can get past any hurdle.

    The most important question is... WHAT DO YOU GUYS THINK?

    Let's hear your creative ideas, let's hear your criticism, let's discuss it.

    And maybe, just maybe... we can create something awesome.

    Graphical Modding / Understanding model files
    « on: 2012-05-08 02:00:01 »
    Hello everyone, I am new to the forums and a little new to working with FF7 models.

    I'd like to create a new game that uses some of the FF7 models.  To get started, I'd like to create a program that can do basically what Ifalna does: load model data and render 3D models (and ultimately animations) in a window.

    I have successfully used LGPTools to extract (from char.lgp) all the model-related files: *.p, *.a, *.rsd, *.tex

    So now, my question is: Where can I find more information on the file format of these files, and/or source code that reads these files and generates 3D models and animations from them?

    Thanks in advance!

    Pages: [1]