[PROG] Meta fixer 1.0(sorta like a meta checkpoint)

Utilities designed primarily for the xbox version of Halo 2.
Shalted




Eureka Translator

Posts: 565
Joined: Wed Nov 17, 2004 8:41 am
Location: Vancouver, BC This is where people put their modding team because they feel important.
Contact:

Post by Shalted »

xbox7887 wrote:I hope you realize that not all metas are the same. Interflexes are one thing that would throw it off since I believe the mp sword meta is smaller than the sp sword meta. Another huge problem would be if you extracted meta from an original map to be put in the database, and decided to add that meta to a built map...I believe the reflexives would be off since I don't see any type of data file extracted with it to indicate the reflexive info. It would be much easier to just extract and inject using one of the current map editors...
Not only reflexives, Tag Refrences will also throw you off, assuming this doesnt fix them.

Any way fixing reflexives is insanely easy. The format for an interaflexive is as follows.

struct iReflexive{
unsigned int ChunkCount;
unsigned int Offset;
}

So you read that in, Calculate is offset(Offset - Secondary Magic), and it will point either to its own meta, or another tags meta.

Meta Data is also simple, depending on how you want to do it. In Incompetence, Meta data is in this format.

struct MDHead{
uint32 magic;
uint32 DependencyCount;
uint32 LoneIDCount;
uint32 StringIDcount;
uint32 ReflexiveCount;
}
followed by (Dependency Count of)

struct Depend{
char Tag[256];
char Class[256];
}

etc... the rest is pretty strait forward.
Awaiting connection...
high6




Snitch!

Posts: 451
Joined: Sun Feb 13, 2005 6:09 am

Post by high6 »

shalted i said in my post that this is more like a meta checkpoint and u should extract before working on the tag not from the original map because it doesnt fix reflexives and such yet.
User avatar
TheTyckoMan




Artisan Socialist Decryptor Droplet

Posts: 854
Joined: Fri Apr 02, 2004 11:22 am
Location: Tea co not Tie co...

Post by TheTyckoMan »

high6 wrote:shalted i said in my post that this is more like a meta checkpoint and u should extract before working on the tag not from the original map because it doesnt fix reflexives and such yet.
and he was only giving code to use for it, WHICH you said you were gonna add that stuff to it.........
Sweetness.......Visual Security: 9-block IP Identification
"Teenagers, plus anonymity, plus microphone = idiot."-Bungie
high6




Snitch!

Posts: 451
Joined: Sun Feb 13, 2005 6:09 am

Post by high6 »

well i really havent looked into how to get how many reflexives are in a meta
User avatar
TheTyckoMan




Artisan Socialist Decryptor Droplet

Posts: 854
Joined: Fri Apr 02, 2004 11:22 am
Location: Tea co not Tie co...

Post by TheTyckoMan »

high6 wrote:well i really havent looked into how to get how many reflexives are in a meta
there are at least 2 ways, one you could make a scanner to scan the meta for things that look like reflexives (short, 0000, then something ending in 80) but this way you can get false reflexives (ones that just so happen to look like reflexives), the other way is to map out all the reflexives of the given tag type, check to see if they are nulled, if they are there it's really easy to move them around that way (but it all has to be mapped out) look at ifp's for almost all the tags format :wink:
Sweetness.......Visual Security: 9-block IP Identification
"Teenagers, plus anonymity, plus microphone = idiot."-Bungie
User avatar
TunesRus90




Commentator Articulatist 250

Posts: 335
Joined: Tue Aug 23, 2005 1:27 pm

Post by TunesRus90 »

ok i know this would probably be really hard, but could you make a recursive extract option where it backs up all tags in a map? Then someone could do that before every mod and change whatever they want and if they mess something up they could easily fix it.
Image
aaa




Coagulator

Posts: 234
Joined: Mon Oct 25, 2004 4:51 pm
Contact:

Post by aaa »

very nice

but....

well my mod chip has broken and im now leaving the halo modding Community

i will probley not be modding halo 3 for i have chosen to be on xbl

My xbl360 tag is aaa92

and i will no longer mod for i have broken my modchip + i love xbl

i know some of you wont care but it really doesnt matter

if anyone would want to talk to me just send me a friends request for i will also leave this website

GOOD BYE MODDING COMMUNITY

i will miss you :(
Signature exceeded 75KB.
User avatar
Aequitas




Socialist Artisan Miner Pi
Bloodhound Mad Hatter Enthraller Logistician
Eureka Critic Wave

Posts: 469
Joined: Thu Nov 11, 2004 10:07 pm

Post by Aequitas »

S_halted wrote:Any way fixing reflexives is insanely easy. The format for an interaflexive is as follows.

struct iReflexive{
unsigned int ChunkCount;
unsigned int Offset;
}
The chunk count should be read as a signed integer..
TF6
high6




Snitch!

Posts: 451
Joined: Sun Feb 13, 2005 6:09 am

Post by high6 »

TunesRus90 wrote:ok i know this would probably be really hard, but could you make a recursive extract option where it backs up all tags in a map? Then someone could do that before every mod and change whatever they want and if they mess something up they could easily fix it.
well if u havent read if the size changes the meta will no longer work unless u reextract it and recursively extracting would be pointless u might as well backup the map if u make that many mistakes lol
User avatar
TunesRus90




Commentator Articulatist 250

Posts: 335
Joined: Tue Aug 23, 2005 1:27 pm

Post by TunesRus90 »

well i mean when im doing effects i could edit them all i want and then if one of them turns out really screwed up i could just fix that one instead of starting all over with a fresh map. w/e its not that big of a deal, it just would be easier to rercursive extract all tags so i don't have to manually extract all effe, cont and foot tags that I'm editing.
Image
User avatar
uralllame




Wordewatician 250

Posts: 432
Joined: Tue Apr 26, 2005 8:02 am
Location: England

Post by uralllame »

Wow, I love you high6! As a friend and/or object.
Image
Those who can't play, mod.
And those who can't mod, mod PC.
high6




Snitch!

Posts: 451
Joined: Sun Feb 13, 2005 6:09 am

Post by high6 »

TunesRus90 wrote:well i mean when im doing effects i could edit them all i want and then if one of them turns out really screwed up i could just fix that one instead of starting all over with a fresh map. w/e its not that big of a deal, it just would be easier to rercursive extract all tags so i don't have to manually extract all effe, cont and foot tags that I'm editing.
if u want i can add a button to extract selected metas but i dont have because if the size changes all the metas are basicly trash... and u goto reextract
User avatar
TunesRus90




Commentator Articulatist 250

Posts: 335
Joined: Tue Aug 23, 2005 1:27 pm

Post by TunesRus90 »

yeah can u just add the option to select/extract multiple metas at a time so i could just hit shift and select all cont tags etc. That would be awesome. And i wouldn't be adding anything to the map, this would be just for doin effects
Image
high6




Snitch!

Posts: 451
Joined: Sun Feb 13, 2005 6:09 am

Post by high6 »

TunesRus90 wrote:yeah can u just add the option to select/extract multiple metas at a time so i could just hit shift and select all cont tags etc. That would be awesome. And i wouldn't be adding anything to the map, this would be just for doin effects
im sry... i dont have the source on me i can get tomorrow and change it for u
Shalted




Eureka Translator

Posts: 565
Joined: Wed Nov 17, 2004 8:41 am
Location: Vancouver, BC This is where people put their modding team because they feel important.
Contact:

Post by Shalted »

Aequitas wrote:
S_halted wrote:Any way fixing reflexives is insanely easy. The format for an interaflexive is as follows.

struct iReflexive{
unsigned int ChunkCount;
unsigned int Offset;
}
The chunk count should be read as a signed integer..
Well... Can it be negative? I've never seen a negative chunk count. I
Awaiting connection...
tjc2k4




Construct Socialist Golden Age Magic Era
Pi Coagulator Eureka Pyre
Literarian 100

Posts: 150
Joined: Wed Nov 12, 2003 3:21 am

Post by tjc2k4 »

I think he means because chunkCount can be -1? It wouldn't matter if you read it as an unsigned and compare it to uint.MaxValue which is the same as comparing a signed int to -1... the only difference I could see is that if you're using hte count in a for loop, if you read it as signed and it's -1, you could eliminate the need to check if the count is uint.MaxValue.. or (unsigned int)-1 in C++ I guess..
Blah blah blah
link_36p





Posts: 110
Joined: Wed Oct 27, 2004 6:50 pm
Contact:

Post by link_36p »

[offtopic]
hey tjc2k4 have u every looked at darkmatter source? Something really weird happens to itemc in the sbsp viewer, there ypr is off, do u now why? I wonder if halo 2 interpets the cords diferent just for them or if poke messed up on his calcualtions
P.S im copying aquatis on the offtopic tag
[/offtopic]
tjc2k4




Construct Socialist Golden Age Magic Era
Pi Coagulator Eureka Pyre
Literarian 100

Posts: 150
Joined: Wed Nov 12, 2003 3:21 am

Post by tjc2k4 »

I haven't downloaded or looked through the DarkMatter source because I really have no use for it. I've only seen snippets that people have pasted to me asking for help, but usually they're relatively bad coding, i.e. random/swearing variable names, always declaring arrays some huge constant size instead of dynamically creating them once you know the required size, etc.. I don't believe I'd have anything to learn from the source and each time someone posts me a snippet it just makes me more sure...
Usually I can't make heads or tails of pasted code because it seems rather unorganized, and it's hard to understand just some specific snippet of code with seemingly random named variables and such..

Anyway, if I had to take a guess, I'd assume it's the calculations being wrong (just a guess; unorganized codes makes it easier to make computational mistakes, and what I've seen of DarkMatter seemed rather messy), rather than halo interpreting specially, but I could be completely wrong.
Blah blah blah
Shalted




Eureka Translator

Posts: 565
Joined: Wed Nov 17, 2004 8:41 am
Location: Vancouver, BC This is where people put their modding team because they feel important.
Contact:

Post by Shalted »

I personally love pokes style of coding, I would never release the source to something if it had that many curses. It is a good read, if you dont know how some minor things work.

PS. Its not bad coding, just his style :wink:
Awaiting connection...
highoctanej




Wordewatician 50

Posts: 72
Joined: Sun Sep 18, 2005 8:59 am
Location: mimesis arena

Post by highoctanej »

Holy punch a baby in the face! I actually found use for this proggie. Nice work man, now I can reserve the weapon effects I like instead of going through the whole " what was that cool effect i had? " stuff. Ill have my girl send you some fried ckicken, church :wink: !
Post Reply