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.


Messages - mav

Pages: [1] 2 3 4 5 6 ... 10
1
Announcements and site development / Re: Forum upgrade
« on: 2020-06-19 07:00:23 »
Doesn't change the fact that installation and management of certs remains a pain in the butt.

Except it really isn't. Let's Encrypt provides a tool that lets you install the certificate in literally few minutes if you have proper access to the server. You can even add it to cron so it auto-renews itseft. And many shared hosted providers have an option to do all that for you automatically.

At this point there isn't really a reason not to have SSL on your site (unless you just don't have the access to SSH on the server or your hosting provider doesn't give you the option). If you don't care about the security of your account on Qhimm's that's fine, but other people might. Plus SSL is required if you want to switch your server to use http/2, which is a major upgrade to the protocol and makes everything load faster.

Btw the new theme looks really nice :). The only change I would make is to replace the top background image with something more FF themed, I posted a suggestion on Discord.

Edit: Now I see that we could probably also use a new emote pack because this one isn't really compatible with a dark theme, the edges of emotes show spill of the white background.

2
Troubleshooting / Re: Mega-All removing functions
« on: 2020-06-17 10:48:27 »
i know black chocobo has a hex editor tab but wasnt able to find a line starting with 0x in it.

This is not something you can alter in Black Chocobo, because it only works on save files, and what you're talking about is code that is stored in the game's executable - ff7_en.exe.

If all that you want to do is restrict yourself in a hardcore run why not just remove the Mega-All and not use it, and use Master Magic+All instead? It would mean that you have to edit field files to put the Master Magic back into the game, but that should be quite easy to do with Makou Reactor.

3
Try setting it to 302, this is the value the prison field is setting after you've done the talking.

4
I prefer a game that has quality - the original game is leaps and bounds ahead of this ... thing.  We shouldn't accept mediocrity at $60 a part.

How you can pass judgements saying that it's 'mediocre' without even playing it is still a bit beyond me.

This game has quality. Playing it was a great emotional roller-coaster for me. I laughed, I cried, I was excited, confused, sad and then happy. Easily worth $80 I spent on it. I'm almost 50 hours in and I'm still having loads of fun with it. If next parts are anywhere as close as good as this one, I will buy them without a blink in the eye.

5
Team Avalanche / Re: Project Edge (Jusete's field scenes)
« on: 2020-04-16 13:46:35 »
I agree with SoulEvan, while it looks awesome the lightning seems a bit off. I imagine the player model would stand out a lot on it when running through the stairs.

6
People are pissed off at the lie, not at the new game. They asked for a remake for 18 years and it was promised as such for the last 5 years. Now we're getting a reboot instead.

Did they promise a 1:1 remake, though? I know I personally didn't expect one, from the first trailer it was pretty apparent that they will take many liberties in terms of the story and combat, so that's what I was expecting from them for last couple of years.

I'm more aligned to this. I have enjoyed the FF7:R (mostly) for its moment in time, but I still believe another 20 years from now the original will be dearest to my heart. The reason we continue loving certain things in life is from its original experience we had with it.

Agreed, that's the case for most of us who played the original when we were young, so nostalgia drives us. This is a totally new game that couldn't possibly bring us the exact same feelings like the original did. But for me personally it came really close. Especially the music got me real hard.

7
"the only thing" - retconning the entire story / making it a crazy illogical sequel is somehow a minor thing that couldn't possibly piss people off.

Being pissed at some company releasing a new game is something I just can't understand. It's a new game. If it's not right up your alley then just don't play it, but also don't piss on people who did and did enjoy the experience. They didn't destroy anything. They didn't take down the old game from the stores and remotely uninstalled it from people's computers. They've just released a new game in the FF7 universe with the same characters and mostly similar plot elements. And it's not that they've promised us they will release a remake following the original story 1:1. From the very beginning they showed that they want to reimagine the original story and that's exactly what I expected from it, and got in the end. Sure, having the original FF7 with updated graphics and sound would be nice, but in my humble opinion what we got is much better than that. If I wanted to play a game that's exactly like the original but with better sound and graphics I can still play the original with community mods :).

8
Just finished the game and figured I'll finally check this thread to see what others on these forums think about it. Honestly I'm pretty surprised at the amount of negativity and even hostility some people here have towards the remake, its creators and fans who enjoyed it, all that mostly coming from folks who didn't even try the game and base their whole opinion on watching trailers and bits of gameplay by someone else. I would expect this level of discussion in a Youtube thread, not on Qhimm's.

If anyone cares here are my 2 cents about this game, coming from someone who's beaten the original several times both back then and recently, watched dozens of hours of videos and streams about it and spent hundreds of hours translating, modding and making tools for it. I'm obviously a big fan of the original game. It's not an exaggeration to say that it shaped me as I am today, because it sparked my interest in programming, which led me to choosing programming as my future career. Also let me just preface it by saying that I believe that what you expected before you even saw it will hugely affect whether you will like the final product. For me, from the very beginning I didn't really expect much of this game, knowing the Square Enix of today. What I expected was a new game in the FF7 universe, a reboot if you will, with modern graphics and mechanics. I just wanted a fun game that would make me nostalgic a bunch of times about 1997. And with that in mind Square delivered, and exceeded my expectations.

First of all I love almost all story changes. Almost all of them fall into one of two categories - expanding on something that was only hinted in the original or totally new elements that still fit the overall narrative. The only two things that doesn't fit them are the Watchmen of Fate and what happened in the last 2-3 hours of the game. I'm still not sold of those, but I'm open on learning more about them.

From a technical point of view this game looks and sound beautifully. Seeing some places make your jaw drop (note that's coming from someone who bought a PS4 Pro just for this game, so I don't have much comparison to other games). Music is beautiful and very thematic, it changes dynamically based on situation - for example in boss fights music will change pace as the battle progresses. Voice acting is superb (reading that someone said it's "objectively" bad made me chuckle), especially Barret's voice acting. And last but not least - the menus are SUPER fluid. They are a joy to work with. Even if the UI can't keep up with you game will still register your button presses and you can fly through the menus one you learn their layout.

Overall my personal score of this game is probably around 9 out of 10. It's not perfect, it has its flaws, both story-wise and technical flaws (I did encounter one game-breaking bug plus there were some texture issues here and there, but nothing major), but for me personally, it was totally worth the money, and I'm excited to both play it more on Hard mode and to see the next parts when Square finally releases them in 5 or 10 years ;D.

9
To be honest I didn't test that third map yet, I'll have to check that out. Recompiling doesn't recreate world lgp file perfectly like how it was originally because of some weird rules Square used when they've originally created it, so the game might not like how this particular world map was recreated.

Thanks for the report!

10
I just pushed an update to the repo, which makes the error messages when a script contains an error a bit more human friendly. I also found meaning for some previously unknown opcodes so I've added support for them to the decompiler. I've also updated the wiki with some details.

There are two opcodes that puzzle me: 0x30a and 0x33a. They both seem to be used for setting entity vertical speed, I can't find any difference between them.

One interesting opcode that I documented is 0x319, it lets you toggle some map viewport options, like minimap or camera height (either high or low). One value - 3 - makes the camera appear really close to the player, but also disables directional buttons (but you still can enter Highwind).

At this point I'd like to focus on making this tool more usable by packaging it into an executable (so you don't need to install Python), that will be my next release, hopefully coming soon :).

11
It's a longshot, but maybe this opcode is for getting distance from a model to a wall (or to a triangle in the walkmesh)? Because it probably needs to know how far Emerald is from a wall so it doesn't run into walls.

12
Good analysis. As far as I can tell 01B is used only twice, in the code that determines Emerald Weapon's movement:

Code: [Select]
    WriteTo(TempByte(0), SpecialByte($Random8BitNumber) * 9 >> 8)
    WriteTo(TempByte(3), TempByte(0))
    WriteTo(TempByte(4), TempByte(3) + 1)

    ...

    WriteTo(TempWord(22), Unknown1b(TempByte(3)))
    WriteTo(TempWord(24), Unknown1b(TempByte(4)))
    If TempWord(22) - TempWord(24) >= 128 Then
      WriteTo(TempWord(22), TempWord(22) - 256)
      GoTo @LABEL_3
    EndIf
    If TempWord(24) - TempWord(22) >= 128 Then
      WriteTo(TempWord(24), TempWord(24) - 256)
    EndIf
    @LABEL_3
    WriteTo(TempWord(14), TempWord(8) - 256)
    WriteTo(TempWord(16), TempWord(14) * TempWord(22))
    WriteTo(TempWord(14), 256 - TempWord(14))
    WriteTo(TempWord(18), TempWord(24) * TempWord(14))
    WriteTo(TempWord(20), TempWord(16) + TempWord(18) >> 8)
    SetEntityDirection(TempWord(20))

That's a lot of code just to determine what his direction should be :D. TempByte(0) is a random number between 0 and 9 which determines Emerald's starting location. They are setup in 022_model_30_00 function in wm2.ev.

01A is not used anywhere as far as I can tell.

By the way, I pushed an update to the repo - the parser and decompiler now properly handle Field level ID constants, so it's easier to read code that references them, for example now we get:

Code: [Select]
  If SavemapBit($OwnChocoboStable, 0) Then
    EnterFieldLevel($ChocoboFarm, 1)
    GoTo @LABEL_2
  EndIf

and

Code: [Select]
If SpecialByte($LastFieldID) == $IcicleVillageNorth Then
Previously we had magic numbers in place of $ChocoboFarm and $IcicleVillageNorth constants.

Thanks to codemann8 for figuring a lot of this stuff out and listing all the possible fields that worldmap can reference.

13
This is great and a LONG needed addition to the set of tools. If you want any help interpreting any undocumented script codes or improving source code readability I'd be happy to offer my services.

Thanks! I've added a link with the disassembled scripts at the end of the first post if you want to look at them without downloading the tool. I have a flag which adds the raw HEX data above each disassembled line so you can see how the opcodes are created from raw data. There are quite a few that are still unknown, so any input on what is that they do is very welcome. I already found what some of them do and updated the wiki accordingly.

14
Terraform - Worldmap script editor for Final Fantasy VII
Version: 0.9.2 / 05.04.2020
 

What it is:

This is as far as I know the first tool that can not only read and extract worldmap scripts from world_*.lgp archive into a human-readable language, but also recompile them back to the LGP after you edited the scripts. So it's basically Makou Reactor (a very early, simple version of it) but for worldmap scripts. What can you do with it? Basically you can edit most of the game behavior that happens on the worldmap, including the behavior of Weapons, interactions with vehicles, all the messages that happen on the worldmap, etc.

For example you can make Ruby not really want to fight you, you can make Diamond Weapon approach Midgar faster (part of my Definitive Edition mod), or you can change the colour of your submarine to gold, or you can even set the lightning to a different time of day. The limit is your imagination (and the FF7 engine of course).

How to get it:

This is currently an ALPHA release, which means it's pretty rough around the edges. It's geared towards more technical folk that aren't afraid of command line and have some programming knowledge.

You can currently download this tool from my GitHub repository: https://github.com/maciej-trebacz/ff7-terraform/ (direct download link)

How to use it:

Please make sure to read the README file as it contains some instructions on how to run and use it.

Also make sure to become familiar with how FF7 World scripts work at Qhimm's wiki page: http://wiki.ffrtt.ru/index.php?title=FF7/WorldMap_Module/Script . I did update it with my recent finding and I'll keep updating it when I discover what the remaining unknown opcodes do.

Change Log:
Spoiler: show

0.9.2 [2020-03-24]
- better error handling and messages
- document few unknown opcodes

0.9.1 [2020-03-24]
- add Field ID constants for opcodes that use them

0.9.0 [2020-03-23]
- initial release




Let me know what you think and have fun tinkering with the worldmap :).

PS. Please don't judge the Python code quality, the this tool was meant to be a proof of concept from the beginning ;D. Now that it actually does what it was supposed to do I'll start making the source code more readable and making the tool itself easier to use.

PS 2. If you don't want to download the tool itself and set everything up, but you just want to look at the WorldScript code for the game you can download the disassembled scripts HERE. The archive contains three directories with scripts for three world maps - overworld, underworld and snow fields in Great Glacier. The scripts are best viewed using Sublime Text editor with its syntax highlighting turned on.

15
Is this possible to add with 7th Heaven and the mod library that comes with it?

At the moment it's a standalone mod, but I look into adding it into 7th Heaven. It would probably still not be compatible with some other gameplay mods, because it modifies a lot field files in flevel.lgp.

16

Final Fantasy VII Definitive Edition
by mav & death_unites_us

What it is:

This point of this mod is to add some quality of life changes to Final Fantasy VII while keeping the game mostly vanilla.
We have fixed and altered parts of the game that were considered the most annoying by players, while keeping all core mechanics intact.

What was changed:

Spoiler: show
- New Game starts on fastest battle/field speed by default
- All movies are skippable by pressing [START] button
- Darkness status now properly applies to physical enemy attacks
- Following scenes are now skippable:
  - Jessie’s train explanation
  - Cloud & Tifa's flashback in 7th Heaven
  - Elmyra's story about Aeris
  - Nibelheim flashback in Kalm
  - Cid’s backstory in Rocket Town
  - Gold Saucer date
  - Cloud and Tifa in Lifestream
- Fixed glitch after Schizo fight where you couldn't escape
  battles afterwards
- Fixed glitch after Shinra HQ 59th floor fight where you
  couldn't escape battle afterwards
- Fixed glitch after Turks fight during Midgar Raid where you
  couldn't escape battle afterwards
- Chocobo breeding assistant - Billy will now tell you how many
  races you need to win with your chocobos before there is
  a guarantee to get higher tier (e.g. green from yellow,
  black from green & blue) chocobo
- Priscilla's CPR minigame takes only one full breath to complete
- In Junon after the parade and presenting in front of Rufus you
  get to choose which reward you want to get (from the ones that
  match your score)
- Fixed walkmesh in Nibelheim reactor so you can’t go off screen
- GP seller in Gold Saucer would appear randomly, now he always
  appears (on Disc 2 after getting Cloud back). He also can sell
  up to 300 GP at a time and doesn’t disappear after
  a transaction
- Temple of Ancients clock room mechanics were changed so you
  can adjust hour and minute clock hands independently, making
  the room easier to use
- Bone Village treasure map - lists every rare item you didn't
  dig up yet and shows you where to dig for it
- Bone Village digging is now faster when you don't hire
  staff - in this case it skips the bomb detonation animation
- Added Cut materia in Great Glacier is now darker and easier
  to spot
- In Holzhoff’s hut you can pick up a “heat pack”, which will
  make you immune to cold so you can explore the Glacier freely
  without passing out
- When guessing the passcode for the Huge Materia Cid will now
  give hints that are actually meaningful, instead of misleading
- Diamond Weapon approaching Midgar now walks 4x faster
- Fixed ladder scripts in several places which could cause
  soft locks
- In North Crater after you send Tifa off she no longer stalls for
  several seconds
- Fixed few instances of Save Points causing soft locks in
  North Crater (in Sector 8 during the raid, in Rocket Town
  and in the North Crater)
- Added a crew member at the bottom of the North Crater who can
  warp you back up to Highwind. After that you can also warp
  back down
- Fixed typos in “Received” text boxes: “Glow Lance”, “Mithril”


Installing / Uninstalling:

This mod currently only works with English version of the PC Steam release of Final Fantasy VII. Support for other versions may come in the future.

To install the mod just download and open the installer. This mod may overwrite any other mods you may have installed, so it's best to just have a fresh install of the game before installing it.

To uninstall the mod simply go to Add & Remove programs section of your Control Panel, find the Final Fantasy VII Definitive Edition item and click "Uninstall". The uninstaller will revert the game files back to their previous state.

Change Log:

version 1.0 / 13.03.2020
  initial release

Credits & Mentions:

Field scripting, engine changes:
  mav

Mod conception, ideas and planning:
  death_unites_us

Beta testing:
  Zuloph, death_unites_us

Darkness status bugfix, help with engine code:
  DLPB

FF7 Tooling, incl. Makou Reactor and Black Chocobo:
  myst6re, sithlord48

lgp/unlgp tools:
  Aali

FF7 reverse engineering and engine documentation
  Qhimm's community

Other tools used:
  Cheat Engine - for real-time data & code inspection
  IDA - assembly source code analysis
  HxD - editing binary files with hex values

Special thanks to:
  3ssjay - for the logo
  petfriendamy - cutscene skip direction

17
General Discussion / Re: Can. soemone....
« on: 2020-03-12 23:13:57 »
A tool for this (and a lot more) already exists: https://forums.qhimm.com/index.php?topic=14194.0

Be sure to read the help.rtf file before using it, it explains how to use all of its functions.

18
Oh, my bad. There does exist a similar tool for PSX, though. Here it is: https://github.com/cebix/ff7tools

19
It's in the executable, along with many other strings related to battle arena. It's an FF7 Encoded string. This specific text starts at offset 0x51D589 in the english Steam version of the executable:



There are some tools that help you edit the text in the executable, touphScript is one of them.

20
Hello,

Thanks for reminding me that. Links are now fixed :).

21
Archive / Re: auto-fill Limit Bar
« on: 2007-11-04 21:27:16 »
Quote from: Terence Fergusson Enemy Mechanics
This battle has an extra script which sets Battle Variable [2160] to
[2160] OR 0x28, and sets Battle Variable [2180] to 0xDE (222).  The effect of
this is currently unknown.

Maybe one of these variables are responsible for this? Or it also could be in las4_42 field file...

22
So, how's your Hojo program doing? :)

23
The last byte should be 0xFF, because you also count 0'th file ;). But yes, You can just leave it untouched as in my source.

24
It is written on the wiki. First 6 bytes of each file is as follows:

2 bytes: File length compressed
2 bytes: File length uncompressed
2 bytes: File ID (in kernel.bin it's an incremental number from 0 to 9), it must be untouched for the game to work.

You can check source of my FF7 SceneFix program if you want to look at my implementation.

25
FF7 Tools / Re: [Re-Release] Scene Edit v1.3.0
« on: 2007-11-01 20:43:24 »
You'd have to erase their AI script connection with Ruby's body as well I guess.

Btw. Offtopic ;)

Pages: [1] 2 3 4 5 6 ... 10