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 - Wutai Clan

Pages: [1] 2 3 4 5
1
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-08-17 12:06:18 »
There still seems to be a misunderstanding here about what the real issue is. (Which is partially my fault, because I have lot's of issue with the situation.)

The main issue is simple:

I asked for testers to help solve an issue, specifically, those who reported the issue, needed to get their asses back here and run the test to help solve it. Point blank. (This was a project halting issue.)

Now, I'm over here expecting to put YEARS of my free time into this, make NO money, deal with hundreds of ppl, doing technical support, etc,. Just tons of work\effort on my part.

So, when I had to ask more than twice(and I did) for the ppl who reported the issue to help me out by running some simple test, there is a major issue.

Personal grievances aside, the project simply halted due to technical issues, I can't reproduce the issue, several users did, which means, if several thousand ppl use this, large quantities of them will get the issue.

(There is also the issue with Aali's driver, he needs to release his source, or expose all his methods via a plugin API.)

The rest is just annoyance with this "job" altogether, I don't know, if you don't get it, you probably haven't done it long enough yet(or at all).. It's not worth discussing any further, you either know, don't, someday will, or never will. :)

2
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-15 10:13:36 »
I think I'm done.

This lack of support, and cooperation, is annoying. :x

It's your business if you don't want to help, but honestly, if you can't spend 10 minutes scanning memory, and reporting an address or two, then you honestly don't deserve this project. (It's easy, there are thousands of tutorials, no excuse will work for me here, anyone can do this. You type a number, hit search, and wait for the results.)

It's not like you had to dedicate your life to this, you could have, every now and again, helped out. With 3,000+ views on this thread, had all of them contributed even a LITTLE, a lot more would be done, and I wouldn't be so annoyed.

Despite what you may think, this is not a one man job, don't believe me, try it yourself, the original game code was probably over 200,000+ lines of code(give or take.), and decoding, is WAY slower than coding. It took a whole team years to code the engine, so what do you expect when you leave one person to try to do a harder job by themselves, and then give them fucking attitude over stupid shit, etc,.

Plus, Aali's driver is interfering, and he still isn't answering PM's. Seriously, it's near impossible to track his changes, I've found no easy way to do it. (And I'm pretty good at this stuff now.) That leaves the hard way, which is very, very, very time consuming. (ie, at runtime, and making notes manually about what's happening, which is very hard since you lose all the context, ie, you can't see an OpenGL call, as an OpenGL call in memory with a debugger, it's just ASM like everything else. Trust me, I've got the best tools available, and it's still not easy..)

I'll still hack the game for my own purposes, and in my own time, but as for this project, well you killed it. Feel free to try yourselves, all the info is here, figure it out, and don't expect a lot of support, apparently, you're on your own.

PS: I don't want to hear any BS, ie, it's YOUR project, why should we help. No, it's a project I was doing for THIS community. But, apparently this community, consist of about two helpful people, and a bunch of lazy grubby motherfuckers who just want shit handed to them on a silver platter. (3,000+ views, and two helpful people, I think the numbers speak for themselves.)

Btw, good luck finding another hacker willing to do this.

Aali's is your best bet, and I don't see em' volunteering to help, much less do the job in it's entirety. dziugo, he's trying to decompile the game, which, honestly isn't much help, you still have to do all the decoding, it's still scrambled C++, instead of scrambled ASM, so, don't expect him to do anything soon.

Peace

3
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-11 02:52:27 »
Quote
Here, this package contains three debug versions, try them all, and let me know which if any works. (Run in windowed mode for the test.)

http://www.mediafire.com/?d3apd6xwex9yc7g

Basically, I've disabled several features in each version, to try to narrow down where it's going wrong.

Here are the test descriptions.

DLL Load Test:

This test does nothing but show a messagebox, every other feature is disabled, if this doesn't work, it's a runtime\compile issue.

Console Only Test:

This test will just load the debug console, this will tell me if that's somehow causing issues. (Though it was disabled by default.)

No Logging Test:

This test will load everything, but disables all logging features, to determine whether the logging method is an issue.

----------

Here is a partial list of items for the wiki.

Code: [Select]
Slot: 0
ItemID: Potion [0] // 0 = Potion
Count: 99

Slot: 1
ItemID: Hi-Potion [1] // 1 = Hi-Potion
Count: 63

Slot: 2
ItemID: X-Potion [2]
Count: 2

Slot: 3
ItemID: Ether [3]
Count: 20

Slot: 4
ItemID: Turbo Ether [4]
Count: 6

Slot: 5
ItemID: Elixir [5]
Count: 9

Slot: 6
ItemID: Megalixir [6]
Count: 3

Slot: 7
ItemID: Phoenix Down [7]
Count: 50

Slot: 8
ItemID: Antidote [8]
Count: 15

Slot: 9
ItemID: Soft [9]
Count: 97

Slot: 10
ItemID: Maiden's Kiss [10]
Count: 91

Slot: 11
ItemID: Cornucopia [11]
Count: 98

Slot: 12
ItemID: Echo Screen [12]
Count: 1

Slot: 13
ItemID: Hyper [13]
Count: 92

Slot: 14
ItemID: Tranquilizer [14]
Count: 92

Slot: 15
ItemID: Remedy [15]
Count: 32

Slot: 16
ItemID: Smoke Bomb [16]
Count: 1

Slot: 17
ItemID: Grenade [20]
Count: 12

Slot: 18
ItemID: Spider Web [25]
Count: 1

Slot: 19
ItemID: Fire Fang [30]
Count: 1

Slot: 20
ItemID: Deadly Waste [38]
Count: 2

Slot: 21
ItemID: M-Tentacles [39]
Count: 1

Slot: 22
ItemID: Vampire Fang [41]
Count: 6

Slot: 23
ItemID: Ghost Hand [42]
Count: 2

Slot: 24
ItemID: Vagyrisk Claw [43]
Count: 1

Slot: 25
ItemID: Eye Drops [52]
Count: 13

Slot: 26
ItemID: Molotov [53]
Count: 5

Slot: 27
ItemID: S-mine [54]
Count: 1

Slot: 28
ItemID: Graviball [56]
Count: 1

Slot: 29
ItemID: T/S Bomb [57]
Count: 1

Slot: 30
ItemID: Dragon Fang [60]
Count: 1

Slot: 31
ItemID: Mimett Greens [64]
Count: 5

Slot: 32
ItemID: Curiel Greens [65]
Count: 5

Slot: 33
ItemID: Pahsana Greens [66]
Count: 4

Slot: 34
ItemID: Tantal Greens [67]
Count: 4

Slot: 35
ItemID: Krakka Greens [68]
Count: 1

Slot: 36
ItemID: Gysahl Greens [69]
Count: 1

Slot: 37
ItemID: Tent [70]
Count: 15

Slot: 38
ItemID: Power Source [71]
Count: 4

Slot: 39
ItemID: Guard Source [72]
Count: 3

Slot: 40
ItemID: Magic Source [73]
Count: 2

Slot: 41
ItemID: Mind Source [74]
Count: 3

Slot: 42
ItemID: Speed Source [75]
Count: 2

Slot: 43
ItemID: Luck Source [76]
Count: 1

Slot: 44
ItemID: Lasan Nut [81]
Count: 4

Slot: 45
ItemID: Saraha Nut [82]
Count: 3

Slot: 46
ItemID: Luchile Nut [83]
Count: 2

Slot: 47
ItemID: Battery [85]
Count: 3

Slot: 48
ItemID: Cosmo Memory [91]
Count: 1

Slot: 49
ItemID: 1/35 Soldier [95]
Count: 2

Slot: 50
ItemID: Buster Sword [128]
Count: 1

Slot: 51
ItemID: Mythril Saber [129]
Count: 2

Slot: 52
ItemID: Hardedge [130]
Count: 2

Slot: 53
ItemID: Butterfly Edge [131]
Count: 2

Slot: 54
ItemID: Enhance Sword [132]
Count: 1

Slot: 55
ItemID: Organics [133]
Count: 1

Slot: 56
ItemID: Force Stealer [135]
Count: 1

Slot: 57
ItemID: Rune Blade [136]
Count: 1

Slot: 58
ItemID: Nail Bat [138]
Count: 1

Slot: 59
ItemID: Leather Glove [144]
Count: 1

Slot: 60
ItemID: Metal Knuckle [145]
Count: 2

Slot: 61
ItemID: Mythril Claw [146]
Count: 2

Slot: 62
ItemID: Grand Glove [147]
Count: 1

Slot: 63
ItemID: Tiger Fang [148]
Count: 1

Slot: 64
ItemID: Dragon Claw [150]
Count: 1

Slot: 65
ItemID: Motor Drive [152]
Count: 1

Slot: 66
ItemID: Kaiser Knuckle [154]
Count: 1

Slot: 67
ItemID: Work Glove [155]
Count: 1

Slot: 68
ItemID: Powersoul [156]
Count: 1

Slot: 69
ItemID: Gatling Gun [160]
Count: 1

Slot: 70
ItemID: Cannon Ball [161]
Count: 2

Slot: 71
ItemID: Atomic Scissors [162]
Count: 2

Slot: 72
ItemID: Heavy Vulcan [163]
Count: 2

Slot: 73
ItemID: Microlaser [164]
Count: 1

Slot: 74
ItemID: W Machine Gun [166]
Count: 1

Slot: 75
ItemID: Drill Arm [168]
Count: 1

Slot: 76
ItemID: Rocket Punch [169]
Count: 1

Slot: 77
ItemID: Enemy Launcher [171]
Count: 1

Slot: 78
ItemID: Mythril Clip [172]
Count: 2

Slot: 79
ItemID: Diamond Pin [176]
Count: 1

Slot: 80
ItemID: Adaman Clip [177]
Count: 1

Slot: 81
ItemID: Seraph Comb [180]
Count: 1

Slot: 82
ItemID: Guard Stick [186]
Count: 1

Slot: 83
ItemID: Mythril Rod [190]
Count: 1

Slot: 84
ItemID: Full Metal Staff [191]
Count: 3

Slot: 85
ItemID: Striking Staff [192]
Count: 2

Slot: 86
ItemID: Wizard Staff [193]
Count: 1

Slot: 87
ItemID: Wizer Staff [196]
Count: 1

Slot: 88
ItemID: Fairy Tale [197]
Count: 1

Slot: 89
ItemID: Princess Guard [198]
Count: 2

Slot: 90
ItemID: Trident [200]
Count: 1

Slot: 91
ItemID: Javelin [203]
Count: 1

Slot: 92
ItemID: 4-point Shuriken [207]
Count: 1

Slot: 93
ItemID: Boomerang [215]
Count: 1

Slot: 94
ItemID: Hawkeye [216]
Count: 2

Slot: 95
ItemID: Wind Slash [219]
Count: 1

Slot: 96
ItemID: Yellow M-phone [221]
Count: 1

Slot: 97
ItemID: White M-phone [229]
Count: 1

Slot: 98
ItemID: Black M-phone [234]
Count: 1

Slot: 99
ItemID: Trumpet Shell [235]
Count: 1

Slot: 100
ItemID: Quicksilver [237]
Count: 1

Slot: 101
ItemID: Shotgun [242]
Count: 1

Slot: 102
ItemID: Lariat [243]
Count: 2

Slot: 103
ItemID: Silver Rifle [245]
Count: 1

Slot: 104
ItemID: Sniper CR [250]
Count: 1

Slot: 105
ItemID: Bronze Bangle [251]
Count: 3

Slot: 106
ItemID: UNKNOWN:ID->256 [256]
Count: 4

Slot: 107
ItemID: UNKNOWN:ID->257 [257]
Count: 5

Slot: 108
ItemID: UNKNOWN:ID->258 [258]
Count: 3

Slot: 109
ItemID: UNKNOWN:ID->259 [259]
Count: 9

Slot: 110
ItemID: UNKNOWN:ID->260 [260]
Count: 2

Slot: 111
ItemID: UNKNOWN:ID->261 [261]
Count: 6

Slot: 112
ItemID: UNKNOWN:ID->263 [263]
Count: 1

Slot: 113
ItemID: UNKNOWN:ID->265 [265]
Count: 1

Slot: 114
ItemID: UNKNOWN:ID->266 [266]
Count: 1

Slot: 115
ItemID: UNKNOWN:ID->267 [267]
Count: 1

Slot: 116
ItemID: UNKNOWN:ID->268 [268]
Count: 1

Slot: 117
ItemID: UNKNOWN:ID->270 [270]
Count: 1

Slot: 118
ItemID: UNKNOWN:ID->277 [277]
Count: 5

Slot: 119
ItemID: UNKNOWN:ID->278 [278]
Count: 1

Slot: 120
ItemID: UNKNOWN:ID->279 [279]
Count: 1

Slot: 121
ItemID: UNKNOWN:ID->281 [281]
Count: 1

Slot: 122
ItemID: UNKNOWN:ID->288 [288]
Count: 3

Slot: 123
ItemID: UNKNOWN:ID->289 [289]
Count: 5

Slot: 124
ItemID: UNKNOWN:ID->290 [290]
Count: 1

Slot: 125
ItemID: UNKNOWN:ID->291 [291]
Count: 6

Slot: 126
ItemID: UNKNOWN:ID->295 [295]
Count: 1

Slot: 127
ItemID: UNKNOWN:ID->298 [298]
Count: 6

Slot: 128
ItemID: UNKNOWN:ID->299 [299]
Count: 1

Slot: 129
ItemID: UNKNOWN:ID->300 [300]
Count: 1

Slot: 130
ItemID: UNKNOWN:ID->301 [301]
Count: 1

Slot: 131
ItemID: UNKNOWN:ID->302 [302]
Count: 1

Slot: 132
ItemID: UNKNOWN:ID->303 [303]
Count: 1

Slot: 133
ItemID: UNKNOWN:ID->306 [306]
Count: 4

Slot: 134
ItemID: UNKNOWN:ID->307 [307]
Count: 2

Slot: 135
ItemID: UNKNOWN:ID->312 [312]
Count: 1

Slot: 136
ItemID: UNKNOWN:ID->316 [316]
Count: 1

Slot: 137
ItemID: UNKNOWN:ID->317 [317]
Count: 2

Slot: 138
ItemID: UNKNOWN:ID->319 [319]
Count: 1

Slot: 139
ItemID: Empty Slot [511]
Count: 127

---

Well, I got some text rendering set up, I ended up just using Aali's function for printing to the screen. He shared the offset for the function a few days back, but I wasn't sure what module that offset was relative to, but I finally found it. (Thanks Aali.)

So that's good, I can print text, and draw primitive shapes now. :)

Still a ways off from having an in-game console, etc,.

I've also been working on some ideas, I think I'm going to add event triggers to a number of functions, that way I can have things fire when certain things occur. (Damage taken, shop buy\sell, staying at an inn..)

You could, for example, add a random chance for gil to be stolen while staying at an inn, or, have a special item give shop discounts, etc,.

If I can add LUA scripts, I could try to expose these handlers so you can add your own functions by writing some custom scripts, etc,.

4
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-06 12:08:20 »
Well, I've decided to keep working on the project.

I can't promise it will work for everyone, and since no one would run the debug builds, I can't do much about that. I'll make a new thread when it's ready for release. (Could be days\weeks\months, hard to say.)

5
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-04 00:26:42 »
See below..

6
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-03 21:45:22 »
Agreed. :)

---

Furthermore.

Some of you, are a*sholes.

For example, I release an "Alpha" in less than a week after the project was born, which is very quick, and then, I get this ->  >:( Because, said alpha wasn't a perfect working release.

You do realize, that was extremely quick for what I did, and not many people could do the same. More importantly, software companies, have many test PC's, with different hardware, software, and operating systems installed. They have bug testers, quality assurance, etc,.

Despite all those measures, even paid software has bugs. (After months\years in development.)

Now, you, are giving me angry faces, because a one week old alpha release, which hasn't had the benefit of being tested on various machines, or going through rigorous bug testing, and quality assurance testing, isn't working properly? Does anyone see the problem here?

I try to come up with a solution, and post several debug builds, but, no, you're done, and not helping me anymore, I wasted your time apparently, because an alpha wasn't f*cking immaculate. Piss off. You couldn't do any better, and expecting it from me, for FREE no less, I should kill you.

So, that really pissed me off.

Here read this..

http://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha

Now, I got this jerkoff showing up, why did you figure that out on your own, I told you how to do it?

Because, no you didn't, isn't it clear, your information made no sense, so I figured it out myself. (I mean, why would someone figure something out themselves, if you had told them in a clear manner, it's not even possible. If you told me, and I understood it, then I couldn't possibly figure it out myself, because you already told me,. Nevermind, you're too stupid to get it.)

7
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-03 10:26:48 »
I'll be sure to double-check if the provided data is in way you'd understand.

Why not just post it in binary next time, that'll be helpful.

0001011010101000101001000010001001011001010001001010100101010010

There ya go, good luck decoding.. Don't be an ass, just post the sh*t in plain English, unless it actually requires you to use some formula, like AddItems did, etc,. That way, someone can look, and go, oh, that's what he's talking about, I see it.

(Btw, I've learned how to use the shift operator since then, these are past tense answers, as in, why I ignored the post days ago.)

And about .NET (C# in your case) not having anything to do with spoiling people (can't quote you now) - it does.

You can't learn C++ without the internet, a book, or schooling, it's such a nonsensical language, that you will be constantly referencing something.

With C#, the intellisense alone is generally enough to figure it out(if not, you can easily look at the source via reflection\metadata\etc.), I rarely need to reference anything with it. In C++, you have to use a reference just to do simple data conversions. (Do I really need to Google for three hours to figure out something C# does with ease, is that what makes a "good" language. If you say so. Without the internet, you couldn't do sh*t in C\C++, you'd get stuck with some obscure error, and struggle for months trying to figure it out. Argue if you want, but you know it's true.)

There is a reason C# is taking over as the industry standard, it's because it's better. C# rules for the same reason remote controls do, because it's easier than walking across the room, and changing channels manually. Get it?

Still not clear, here is how I see C++..

http://en.wikipedia.org/wiki/Rube_Goldberg_machine

No, Mister Ignorant :) It interprets it, at it's best, parse maybe, but sure as hell does not execute it. That would be a big security hole if it just "oh, lets run it and see what it does, yay!". Machine code is the hex codes you see next to each disassembled line ;)

Yes, in a world without virtualization, that might be true, however, that's not our world. (You can easily execute any code safely if you know what you are doing.)

No, hex isn't machine code, binary is, hex is for human benefit, like ASM, and C++, etc,.

http://en.wikipedia.org/wiki/Binary_numeral_system
http://en.wikipedia.org/wiki/Hexadecimal

In short:
The only mistake I did was assuming that you actually did understand the "thing" (no, it wasn't me who started explaning it to you) - I was giving you info in a manner I thought that you'd surely understand now. I stand corrected.

The mistake you made, was coming into my topic, and acting like an a*shole, who cares if I ignored your post, and figured it out myself? F*ck off. Seriously.

Btw, you just volunteered yourself to finish this project. Good luck. :)

@All, direct all inquiries to dziugo, he is the COMPUTER MASTER, and will have this project done in no time. I'm sure he'll have no trouble doing anything I've done, since he's so much smarter than me. (Sure, I know, he's had the last six years to do so, and hasn't, but, he was just biding his time, the sleeper has awakened, you'll see.)

8
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 22:35:13 »
Right. Sorry for that.

I highly doubt it.

And, as far as I know the CPU just executes the code, the compiler makes all the optimizations, not the CPU. So it doesn't look like that, ever, except in your little delusional mind. If it looked like that anywhere, it would show up in IDA\Debugger, it doesn't.

IDA doesn't do that elsewhere, there are plenty of places where the code uses bit shifting, but you're right, just for this one function, it decided to change the code to be easier to read.  ::)  -- (And how do you think IDA get's the code, it executes it, and reads what happened on the stack\registers, that's what it saw occur, so that's how the machine code really looks.)

I don't appreciate being confronted over bullsh*t, especially when it was your own mistake that caused the issue to begin with. Had you explained yourself clearly, in a straightforward manner, I would have used your info, you didn't, so I didn't, end of f*cking story.

---

Even if it does that at some low level, I've mentioned that bit shifting isn't something I understand well. What I asked for was accurate info, not math lessons. I'll figure that out on my own time, as it becomes necessary. So your excuse for doing so, ie, helping me out, is BS.

Regardless, everyone else managed to give me info that lined up with the debugger\disassembler, you didn't. That's why I used their info, and not yours.

9
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 22:27:33 »
You don't pay attention - I was talking about machine code - debugger is just nice and shows it as *4 (mine does too). And it's not a structure. At it's best you could call it an array.

It's a structure.

At any rate, IDA and the debugger show it as eax*4, so why change the formula?

Seriously, just write the formulas to match what I'm looking at, or, I'm going to assume you are wrong. It's pretty simple. We're not machines, we're people, use people code, alright.

10
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 22:14:46 »
That's what your debugger showed you.

It looks like this in my debugger..

Call Near DWORD PTR [EAX*4+9055A0]

Your debugger sucks, it's a structure, this is how structures are used in ASM.

--

I'm not spoiled, bit shifts are ASM math optimizations, even most C++ users never use them directly, it has nothing to do with C#.

11
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 21:31:56 »
2 pages back. You're saying that you don't want to discover things on your own if it's already decoded, and asking for people to step in and share, and then you just do it on your own anyway? Why bother asking...

When did I say that?

I asked for help in my very first post, and I accepted help, and integrated values NFITC1 told me about. But I also said I would decode what I have to.

I will discover things on my own if I have to, but I'd rather not do work, that's already been done.

As for why I would go ahead and do it on my own, that's because I'm working on a project, I want to accomplish my goals, not sit around and wait for answers that might come.

Your answer was wrong, maybe shift left 2 equals 4, but why tell me answers in a format the game doesn't use? The game explicitly says eax * 4, not << 2... That's why I didn't use your info, it didn't match up with anything I was seeing. (And since we're bringing up 2 pages ago, you KNEW I had trouble understanding bit shifts, so why intentionally change a simple multiplication formula to use a bit shift?)

So try being less fancy, and being more correct, and someone might trust\use your data.

---

How hard is this.

Formula:
OPCODEBASE + (OPCODE * 4) = OPCODE LOCATION

Example:
0x009055A0 + (0x45 * 4) = 0x009056B4

Using fancy formulas doesn't make you look smarter, and it only serves to confuse people.

I understood the bit shift with AddItems, because the game uses that formula, I could see it, and knew what you were talking about. (ie, It didn't require me to go out and learn binary to decode your answer. Decoding the game is enough work, I don't need\want to decode your answers as well, so I ignore anything you say that doesn't match up with the actual code.)

12
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 20:23:07 »
...That was the battle structure I was just telling you about. What, then, do you have as the Battle stat location?

The values you said were the active party, seems to do just that(world\field), the other characters don't seem to be calculated except for in the savemap. For battle, it passes the active party data into local variables. (Within the battle loop functions)

Though, I haven't fully decoded it, there could be more going on, or I could be misreading what's happening.

I just figured out how to find the opcodes, you basically, take an opcode.

MPu\IncreaseMP = 0x45
Opcode Structure = 0x009055A0

(0x45 x 4) + 0x009055A0 = 0x009056B4 [MPu\IncreaseMP]

That's the position in the OPCODE structure, the function is actually located here. [0x0061F801]

Btw, that function isn't directly usable, it uses local variables, and calls IncreaseMP[0x006CBBBF]..

13
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 19:12:13 »
Where's that located? I've been looking for that for a while now.

Starts here. [0x00DBA498] - (Returned by GetCharacterData[0])

That's just an index(structure), the next byte is ID, followed by Level, etc, but it doesn't follow the savemap exactly.

14
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-02 10:40:31 »
Akaris work and most (if not all) of Q-Gears is based on the PSX version.

The call table for field script opcodes is at 0x9055A0.

I found that, but honestly, don't know what to do with it?

Any tips?

(My guess, is that it's a structure, based on how it looked, but that's about all I know about it so far. Too tired to think about it, I'm going to bed, I'll mess with it some more after I get some sleep.)

15
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-01 20:47:48 »
I think Kranmer recently did something similar to the world map camera.  But if my memory serves me correctly he was only able to adjust the level of zoom.  Is that what you can do, or can you actually move yours around?

Also, this seems obvious, but check the QGears forum for information.

I can adjust it however I want, zoom\angle\etc. /snip

---

Edit: Decoding is going to be slow now that I've got most the easy stuff located. I've got a few tricks up my sleeve thanks to MHS, but, I expect the next few days to yield little in the way of results, going to be spending most of my time decoding, trying to find some of the more elusive stuff.

I've been trying to nail down a general flow for a number of systems. For example, I found\decoded part of the damage formulas.

From what I can see so far, it works something like this.. (Rough draft formula. This was a monster attacking me, btw,.)

Base Attack = 12 // Monster base damage?
Attack Multiplier(?) = 25 // Weapon? Stat? (Not sure where this value came from.)
Damage = 300

// Not sure how it calculated this part, but the value 240 is correct.
Damage / Defense Factor = 240 // Final Damage

I found the rest(or a lot of it.), but I haven't decoded it at all yet. (The above can be modified by several factors\functions, so it may be a real pain to fully decode. There were about ten functions called, and no telling how many branching functions could be called based on different factors, etc,. Special materia factors, equipment bonuses, etc,. ?)

16
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-05-01 20:24:46 »
Did any of the Q-Gears folks write their info down?

They decoded a lot of the same stuff I'm working on to figure out the opcodes for that project, which means they knew were the functions were located in the disassembled code.

I can find this stuff again, but it's going to take forever, and it's already been done, and should be well documented, so are there any post that I've overlooked, or sources of info? (I'll keep searching the forums, but the more time I waste on stuff like this, and doing work that's already been done, the less new features I can get coded. I've decoded maybe 30 functions, out of hundreds, probably close to thousands.)

Btw, did anyone see my last post, I hacked the world view camera, there is a screenshot. I thought it was pretty cool, no one else?

17
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-29 23:04:09 »
I hope I'm able to clear some of this up because I think I know what you're talking about.

There are two sets of character data.

One is part of the save map which is always kept in memory at 0xDBFD38 and is identical in form to the savemap on the wiki.

The second is what I call Active Party Data. This is what battles use to do their manipulation of and stuff. That starts at 0xDBA498 and has three entries of 1088 bytes. My notes has it following this structure:

Char ID
Level
Attack (Str + Str Bonus)
Defense (see above)
Magic (see above)
MDef (see above)
Speed (see above)
Luck (see above)
word: Temp_Attack (Attack + weapon strength; can be halved in the battle arena)
word: Temp_Def (Like above)
word: MagicAtk ( just Magic stat )
word: MagicDef (just Spirit stat without MDef fix )
word: HP
word: MHP
word: MP
word: MMP
word: Limit (looks like limitbar value)
word: Unknown
word: Counter Attack Command
word: Counter Attack Chance
...
+0x3C: OR'd with 0x418 when recalculating stats; unknown effect
...
+0x44: Statuses that can be inflicted by attacking
...
+0x4C: Battle Command Menu. Structure of six bytes and sixteen entries
..
+0x108: Enabled Magics: eight bytes * 56 magics (magic index, MP cost, ?, ?, ?, ?, ?, ?)
+0x2C8: Might be enabled Summons: eight bytes * 16 summons.
+0x348: Some other command-related thing: eight bytes * 24 entries
+0x408: I believe this is the first 11 bytes of equipped weapon data the character is using. This will prevent the necessity of continually checking the weapon part of the KERNEL for everything. Follows weapon data from wiki. Only cares about status attack (0x40D) and accuracy (0x410)
+0x418: Status Defenses?
+0x41C: byte list of four statuses to increase ( four bytes )
+0x420: amount to increase those stats by (four bytes)
+0x424 - 0x440: unused?

That's what I have. There's lots of blanks there that I don't know. Rarely does the game point at these address individually. Most of the time it gets the head of the map, increases it by formationID * 440h, then adds the amount it wants to look for. The map's offset is loaded LOTS of times and I don't have the time to look through them all.

That's probably what I'm looking at then. :)

As far as I can tell, the game has at least three different sets of values for managing the same data.

Savemap
World\Field
Battle

These values(Active Party Data) get loaded with the battle module, but, they pass their data into local variables, ie, if you change them in world mode, it works fine(changes in stats menu), but not in battle mode. (I was trying to make mp regen work in battle mode, since I finally found the main battle loop, and quickly found changing them had no effect.)

It works kinda like this.

1. Active Party: P1 Current MP -> Stored to local.
2. Local MP manipulated.
3. Local returned to Active Party Data MP
4. Loop

You can see the Active Party MP change during battle, but changing it yourself, seems to have no effect, since the locals(take control) and overwrite it anyways.

---

Edit: Okay, I got the random battle rate patch fixed up, it no longer breaks Chocobo Lure. I should be able to get the "Sense" materia fix implemented too. (I have a new method for patching data, that can target single lines of ASM.)

----

Edit: Alright, got those patches done, now I'm working on a camera patch, it basically gives you a real nice 3rd person view in world mode. :) The game looks much better from this perspective, you can see more details, the LOD doesn't look as bad, etc,.

Edit: Man, that camera patch was a pain, it took a lot of patching to make it work, but I think it's worth it. The only issue, is that it breaks the overhead view, the camera system is way too complicated to do it properly at this time. (After I decode it a bit more, I should be able to fix it.)

I couldn't get a screenshot, it just came out black, but, it's like a whole new game, driving the vehicles, like the buggy feels much better too. It will take a bit of testing to make sure it doesn't cause any issues, like not being able to see something you could with the original view, but it should be fine. (It will be optional anyways, so you can always turn it on\off as needed.)

Edit: Here, I had to take it in windowed mode.
http://i51.tinypic.com/kcl3yu.png

18
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-29 16:37:47 »
One tip - character records are 132bytes (0x84) long in the savemap - check if it's actually a savemap you're looking at (IIRC, savemap address for FF7 Save begins with 0x00DBxxxx, but don't remember the exact number). Savemap is the best place to modify data.

Thanks. :)

I'm thinking the data isn't an array, but a bunch of loose globals, and those are the starting indexes for the character records. So, I should be able to check the next byte after each one, and get the character ID. (I think that was the first byte of character record(ID), I'll have to double check the wiki, to see what order the data is in.)

I'll check it out here in a bit, I gotta get woke up.

----

Well, the data I'm getting seems to be character data, so I was right about it being loose globals, however, the wiki has it listed in a very different order. (Which doesn't mean the wiki is wrong, it just means it gets sorted different in the save.)

Here is the order I'm finding it in..

ID (Maybe, it was a 0 with Cloud, I'll have to test it out..)
Strength
Vitality
Magic
Spirit
Dexterity
Luck
Attack
Defense
Magic Attack
Magic Defense
Current HP
Max HP
Current MP
Max MP
Unknown = 0 // Don't think they are sources used..
Unknown = 0 // SAA
Etc.. (There are several unknowns, then it get's kind of weird, perhaps equipment\materia data, etc,.)

I'll have to keep checking the values, to get the rest. (I know these are correct, I've already tried modifying them, and the stats change.)

--

I know this, this game has too many representations of the same data, I think I'm going to map them all to the same globals once I decode the game enough to do so. (Relics from the PSX version no doubt.)

What I can do, is create a C++ module, that has variable representations of all the games data, then anytime the game accesses a value, point it at my new module(and the appropriate value), that way all the data get's handled uniformly, and only by one variable. (And will always stay in synch, and be easier to work with.)

19
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-28 07:53:03 »
It was the one from page 4, and i have unmodified ff7.exe

I'll try those test builds later today.

If the one on page 4 worked for you, then you don't have to worry about this, this is only for people that can't run the regular build. (On page 4.)

Thanks though. :)

-------

Finally got around to testing GetCharacterData, and trying to decode it's return value.

Slot 0 = 0x00DBA498
Slot 1 = 0x00DBA8D8
Slot 2 = 0x00DBAD18

These were already known values(to me anyways.), I need to figure out where to go next, and I should be able to start getting the stats, etc,.

---

Edit: I don't know, I've tried various things to get the data out of those, I've cast the data to arrays in every way I could think of, it never seems to be correct.

I used inline ASM, and accessed the values like that, and it does return data, but, it doesn't seem to relate to the info found on the wiki. (ie, I checked the indexes, using exact byte counts listed to store the values, and it was all wrong.)

NFITC1, can you shed some light on this, that is the stats, etc, correct? It should be the same as the character map on the wiki, right?

20
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-28 04:45:46 »
So, no one intends to try the test builds?

Then let me lay it out plainly, this only effects some users, and whether it gets fixed or not, depends on whether or not you are cooperative and help me find the cause, it's your choice, it runs great for me. I'm trying to help you out.

Here are some possible causes. (In order of highest likelihood.)

1. You are missing some required file.

This could be my fault, it could be yours, or it could be Microsofts. (Hard to tell, until we figure out what if any required DLL's are missing.)

http://www.dependencywalker.com/

To find out if you are missing something required, download that tool, and click "File", choose "Open", and select my DLL, it will tell you if you have everything required to run my DLL installed.

This link will help you use the tool. (It's really easy.)
http://www.techerator.com/2010/05/resolve-missing-dll-errors-with-dependency-walker/

If you are missing a required file, report it, so I can track down the required library, and link the installer for others to use.

2. It's possible that something about one of libs, or my code is causing the issue, I have supplied a debug package above which will tell us where the issue might be, but, that requires you to run it, and report your results. (I left instructions above, on what needs to be done, and I need the results for all three DLL files.)

3. Some stray setting in VC++, is causing it to compile in such a way, that's incompatible with certain systems for some unknown reason. (I won't know until I rule out the other possibilities, and changing settings for no good reason, is more likely to break the project for everyone, than it is to fix it for you.)

4. If you got this far, and still can't run my project. It tells me numerous things, you have all the required files, my code isn't at fault, and the VC++ IDE isn't the issue. It's voodoo magic, or God himself smiting you, because it should be working, pure witchery, no doubt about it. ;)

But seriously, it should be one of the first three options, the test I've provided, will take no more than 10 minutes to complete.

It's up to you, these are the possible causes, I've given you the tools to help solve the issue, but I can't make you do anything.

21
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-27 16:02:13 »
Works fine with me!  It seems that EXP and AP multiplier is a bit off, it sets too high values in game.

Which version did you try, the one from the last page, or the debug builds from this page, it's kind of important, I need to solve the issue of it not working for some people.

About the battle rewards, yeah, I thought they seemed kinda high, the code must loop, and apply the multiplier multiple times, or the code I used doesn't work as intended, I'll try to get some debug output on original values vs. modified values for Exp\Gil\AP, to figure out what's wrong.

22
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-27 01:50:53 »
Here, this package contains three debug versions, try them all, and let me know which if any works. (Run in windowed mode for the test.)

http://www.mediafire.com/?d3apd6xwex9yc7g

Basically, I've disabled several features in each version, to try to narrow down where it's going wrong.

Here are the test descriptions.

DLL Load Test:

This test does nothing but show a messagebox, every other feature is disabled, if this doesn't work, it's a runtime\compile issue.

Console Only Test:

This test will just load the debug console, this will tell me if that's somehow causing issues. (Though it was disabled by default.)

No Logging Test:

This test will load everything, but disables all logging features, to determine whether the logging method is an issue.

---

I forgot to include the .ini file, just put this in a .txt file, and name it GameSettings.ini, if you don't still have a copy..

Code: [Select]
[Debug Console]
Enabled = true

[Infinite Item Use]
Enabled = true

[MP Regeneration Settings]
Enabled = true
Rate = 6

[Random Battle Settings]
Enabled = true
Rate = 2

[Battle Reward Multipliers]
Enabled = true
EXP = 2
GIL = 2
AP = 2

23
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-27 01:44:23 »
Even with VC++ installed, both DLLs in both FF7 and LOADR folder, it doesn't work...

Can you describe, "doesn't work"..

Will the game launch? Or does nothing happen at all.

24
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-27 00:41:42 »
Okay, last attempt for the day.

Test Release
http://www.mediafire.com/?2mr51shembkmfbd

VC++ Runtime 2010
http://www.microsoft.com/downloads/en/details.aspx?familyid=A7B7A05E-6DE6-4D3A-A423-37BF0912DB84&displaylang=en

VC++ Runtime 2010 SP1
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c32f406a-f8fc-4164-b6eb-5328b8578f03

---

Edit: Did you guys setup the .ini file? The debug console is disabled by default, as are all the other features, so if you didn't configure it, it won't appear to do anything. (Was a .log file generated, that should occur regardless.)

I've also posed the issue on a support site, so hopefully between them, Kranmer, and your responses, I can figure WTH is going on here.  :x

25
Gameplay / Re: [WIP] Custom Game Settings (FF7)
« on: 2011-04-26 23:54:17 »
I did, and as you said, that simply won't work right.  It has to be done properly.

That is done properly, the game just doesn't support it. There are various possible causes.

1. The variable may only be able to hold 65,535.
2. The message code just doesn't support it. (Variables too small, text limitations, etc,.)
3. Some unknown issue.
4. All of the above.

I might be able to fix it, but it's going to take time, and more investigation.

--

@Kranmer, let me know if you can run this new version, that will help narrow down the issue, I compiled in release mode, and switched the project to use the /MT switch, which compiles the runtime files directly into my DLL, so it should be working..

The only thing I can think of, is I compiled the hooking lib using different settings, so it's causing issues, I'm going to try recompiling that, updating my system, and updating Visual Studio.. (Then rebuilding the project.)

It will probably be tomorrow before I get another release up, but your answer will greatly aid in troubleshooting the issue.

Pages: [1] 2 3 4 5