Page 1 of 1

I tried

Posted: Mon Aug 01, 2011 4:55 am
by finale00
I noticed the phrase "I am trying to ..." come up fairly often in many request threads, and was wondering just how much "trying" actually occurred before you decided to create a request.

For me, if it's a model or an archive I probably spend 5 minutes and then conclude I have no clue what I'm looking at and just upload something :D

Or if I go back and suddenly notice something I end up deleting the topic and then making a new one with a different post, saying "oh well I did notice something...but ya no idea :D"

Re: I tried

Posted: Mon Aug 01, 2011 8:17 am
by porimac
I apologizes for insufficient respect u Guys to possible archive,write code and script.
Which post gave you the unpleasantness?
However, it might be synonymous with the thing "no idea", that is, "not understood what to be try".
sorry for my impertinent comments.

Re: I tried

Posted: Mon Aug 01, 2011 10:04 am
by Mr.Mouse
@finale00: Trying does mean more than looking at an archive for 5 minutes. To really "try", you should also gain knowledge about files, file formats, and so on. I have and I still sometimes spent hours on a file, because I simply have to find out what is going on. So I hardly - if ever- request something myself. Still, it would help if you would add the information you DID learn, before posting a request.

The way not to do it is already written in the Rules. (i.e. don't barge in "i want this game supported. kthxbye. " :)

Re: I tried

Posted: Mon Aug 01, 2011 3:20 pm
by finale00
porimac wrote:I apologizes for insufficient respect u Guys to possible archive,write code and script.
Which post gave you the unpleasantness?
However, it might be synonymous with the thing "no idea", that is, "not understood what to be try".
sorry for my impertinent comments.
It is a general trend I've noticed from most threads, not specific threads from specific users.

Re: I tried

Posted: Mon Aug 01, 2011 10:41 pm
by Dinoguy1000
I don't often do any work on files/file formats (shocking, I know!), but when I do, I usually focus on save game formats. The great thing about them is that they are literally designed to be changed, and frequently so, and this makes exploring them pretty easy (well, at least relatively to some other types of formats). Nevertheless, I'll also usually request help with them, in the event anyone else owns the game in question and feels up to helping fill in the gaps, but I can often get quite a bit of the format on my own.

Re: I tried

Posted: Mon Dec 19, 2011 8:30 am
by Satoh
Well, it's somewhat pointless I think, for me to make a thread anymore... It's not so much that I don't have trouble with files, but rather, what I'm able to find in them is close to nothing, aside from the obvious, and the files I want help on most... are... simply not desired by anyone aside from me, or if they are, it is only by people less experienced than I, and thus even worse equipped to help me...

Take the .hack and Megaman Legends files for example... I've gotten some interest in them (about one other person on each) but no one with any abilities... and quite frankly no matter how much I stare at the files, I just can't make any sense of them. I've been working off and on on them both for a few years now, and even still... I have no idea where the vertex data is.

I want to say I'm trying really hard... but, how hard can I try when I don't hardly know where to even start? I open several files up in hex editors, raw image data viewers, etc., and stare at them for hours at a time, looking for patterns, any kind, and sometimes I find something, but it's usually just a piece of odd data that "probably means something"...

Of course I write it down and multiply it by four, divide it by four, look for relative and absolute offsets it might be pointing to... but usually, I end up with nothing.

I say "how hard can I try," but I suppose what I mean is, I'm trying hard, but because I have nothing but a few crappy notes that are really obvious things to show for it...It seems like I've done nothing. On a number of occasions I've considered offering payment... but I'm flat broke and couldn't afford it either way...

Unfortunately, if I knew a little more about Noesis, I could write myself a plugin to aid my traversal of data... I think anyway... I'm "trying" to right now in fact...

The biggest problem I run into is that I usually have to wait several hours for a response on how this function works or whether or not this is even possible, etc., etc...

And even then I usually have to spend an hour trying to understand the answer, simply because the Noesis programming theory is different from what I'm used to... (IE noesis handles things internally and I have no idea how to tell it what to do with what)

So what I'm saying is, does it even matter how much effort is put in if the result is the same as having put none in?

EDIT: The great irony here is that I just found the vertices I was looking for directly after posting this... Ever notice things stop happening when you tell someone about it?

Re: I tried

Posted: Mon Dec 19, 2011 11:53 am
by finale00
That's a good point.
Suppose someone actually wanted to figure it out (like yourself) and was willing to put some time into it.

It would be nice to know everything there is to know about models, images, etc, but naturally that isn't the case. Most of us probably know just enough to squeeze by.

Motivation and interest aside (there is no point if you don't have any in the first place), another issue would probably be the availability of information.

Yes, there is definitely a lot of information out there.
Yes, if we looked at them, we would probably get somewhere. Maybe (some people just don't have the aptitude for it)

But the information is usually not organized as well as we may like. Where do we start? What are the "basics"? Where do we go after that? What is the connection between item X and item Y?

A common advice that is given is to "look at other formats" to "get an idea of the things there are".
Which makes sense. You're given terms to search up on that probably will make everything clear (like images, which I still haven't did any reading on). Maybe some people don't understand the rationale behind it? Who knows.

Availability of tools is definitely important (and knowing how to use it). Popular options these days are what, 3dmax and blender? Let's add noesis to that list.

I think when I first started looking at models in some odd forums the sort of direction people were giving to newbs was "write your own renderer, write your own parser, write your own engine, then you will know what to do." Looking back, that also makes sense, but I don't know how many people that are reversing formats have done all of that.

Maybe when more tutorials are written and more functionality in noesis is touched on things would become easier in general and more people will get things on their own and continue from there. Some people are still stuck on "why is that an integer?" but I don't know if they'll ever get past that.

Re: I tried

Posted: Mon Dec 19, 2011 10:49 pm
by Satoh
finale00 wrote: Maybe when more tutorials are written and more functionality in noesis is touched on things would become easier in general and more people will get things on their own and continue from there. Some people are still stuck on "why is that an integer?" but I don't know if they'll ever get past that.
Why IS that an integer though? I've found the vertex coords, just last night as I said (after probably... uh... as long as I've been a member here) but I'm still not sure what part of the model I'm looking at really. I'm lucky in that I picked a model that was essentially a rectangular sprite, so there were few vertices and in a very orderly shape, easy to determine whether I had it right or not... but the issue is, the verts seem to be arranged in a raw triangle format that I've never even heard of before and defies all my logical understanding of how animated models work.

Rather than Verts having any sort of ID's or weights or even UVs, it seems like all they're defined as is individual triangles...

So even though I know I've found the right spot, I can't understand how it's supposed to be put together for a game to use it.

So again, "Why is this an int?" basically.

But I suppose the more important thing right now is writing a basic parser to make noesis view the data, just for that much more affirmation I've finally made progress.

Now that I finally have some progress, it might actually be worthwhile to make a thread...


The biggest problem with getting into this sort of hobby is that, while many formats mirror each other in their logical arrangement, there are likely plenty of formats that do things completely illogically, backward, or just downright BADLY... Its usually those formats that we end up starting with, in the great ironic groin-punt of the universe.

But anyway, back to misunderstanding the noesis API and being generally bad at python for me! :roll:

Re: I tried

Posted: Tue Dec 20, 2011 2:26 am
by MrAdults
On the subject of Noesis in particular, it definitely lacks good (and occasionally any) documentation. The tutorials chrrox has done have been a huge boon to it, though. It's on my todo list to start going down the API functions and making real documentation and examples for each one as well. I'm a bit more motivated to do that, now that I know people actually care and are willing to write their own Noesis scripts.

I've personally been writing games and game engines for the last 15 years, and I've done a lot of work on commercial stuff (going all the way back to the Soldier of Fortune and Jedi Knight 2 days...and even a little stint with Crytek many years before they finally managed to ship a title, haha), and I've rolled my own engines for quite a few platforms/generations now. So Noesis is definitely structured to make sense from a game developer's point of view, and to accept and understand data in a way that is flexible but lends itself to common real-world data and storage conventions typically employed in actual games.

Rendering methodology has changed a lot over the years, and there are specific ins and outs to be aware of for each system (hardware vertex flags for the PSP, VIF code for the PS2, various forms of texture twiddling/tiling that Noesis luckily takes care of on a good range of platforms now, and the list goes on and on), but Noesis tries to cover all the bases to make sure that actually feeding the data in is as painless as possible no matter what kind of data you're dealing with. Again, though, without experience working with and writing an engine for the specific system you're digging into model data for, you've got a lot of learning ahead of you, and even then, sometimes developers are just insane and do insane things. The most recent case in point is FFXIII-2 storing its mesh UV's in its texture bundles.

When it comes to compression and animation, developers often defy any sense of standards, and the only way to really figure that data out is sometimes to disassemble the original game code. Sometimes you even need to go this far to fully understand a model format, depending on how completely you need to understand it for your needs, and on the complexity/deviations-from-standards in the format itself. It's a real pain in the ass for the newer systems when you're in my boat and you can't actually use an online debugger (I've only resorted to decrypting and reading disassembly offline for a couple of games on the PS3 and 360 for this reason, and just found out the old xex decrypter I've been using is out of date again), but for systems like the PS2 where we have working emulators, if you have the patience and enough accumulated knowledge, you're pretty much guaranteed to find what you're looking for eventually. Understanding disassembled code is a skillset all its own, though, and on top of this you're dealing with a new/different set of instructions for each different CPU architecture. On the PS2, for understanding model data, you're likely to spend more time having to read through VU instructions than MIPS instructions.

I think the PSX era of games is really bad about standards in general, or really anything that came before fixed function pipelines were the norm. Understanding and recognizing VIF tags is of great assistance for PS2 games, but for PSX games, where doing your own transforms and sorting was mandated and there weren't even libraries to enforce anything resembling data standards for quite a while into the PSX's lifespan... well, there don't tend to be any real standards to follow, so you're often going to end up either disassembling code or spending a reallllllly long time staring at that binary, or both. And as mentioned, even on platforms where you're going to need your data to follow a fairly predictable pattern at some point, developers still do insane and inefficient things that just don't make sense, and end up converting their own data (usually rather pointlessly) at runtime.

But at least in the end, when you figure out those really crazy formats, you get bragging rights and you can have fun trash-talking the developer for all of their crazy and bad decisions. ;)

Re: I tried

Posted: Tue Dec 20, 2011 5:08 am
by howfie
I usually wait a day after trying before I post a question... but I have a little training under my belt :-). Those who have no training have to ask questions faster. A guy who doesn't know how to even change the oil on his car can ask a million questions about cars while a trained guy will already know most of the answers. So it's all cool to me. I understand. Though if you want to know the fastest way to train yourself... get a CS degree :-). No wait... I don't want you in my field hogging all the jobs... get a degree in Economics instead OK :-)?

Re: I tried

Posted: Tue Dec 20, 2011 5:35 am
by MrAdults
I think it's great when people ask questions as well. No matter how much time you've invested beforehand, if you're posting and asking a question about the data or how to figure it out, it's a good thing. It's not even in the same ballpark as those people that just post to say "here, do this for me." When someone just gives up before they even start and refuses to make any attempt to learn anything, that's the only time I feel really urged to avoid helping them. (people who, for example, would rather come back and bump a thread every month than spend a few days learning enough about a given scripting language to do the job themselves)

Re: I tried

Posted: Tue Dec 20, 2011 9:31 am
by Mr.Mouse
It takes a certain kind of person to be dedicated to file / object format analysis. I support the idea that people should try figure stuff out for themselves, on the other hand, we don't expect everyone to be able to fix cars, so it would be in vain to ask everyone to figure out object formats themselves. As long as you don't bust in here and say "I WANT AN DOOM 5 EXTR4CT0R N0WZ. WHAT AR U WAITING FOR? WHY IS IT NOT DONE YET. WHAT LOUSY PLACE IS THIS. FUCK U FOR NOT DOING AS I SAY". And then when you do release a tool for them they go : "WTF? IT DOESN'T WORK! I CAN EXTRACT ONLY SOME STUFF! I WANT TO IMPORT? HOW DO I IMPORT?"

Respect those that help you out. And if they don't deliver, they either failed or didn't have the time. Deal with it.