ADI v2.0.1
-
- Posts: 410
- Joined: Tue Feb 24, 2004 11:22 am
- Location: Cantaloupe!
lol yea i was actually doing exactly what u did and mapping out everything but when i saw all of the plugs u made i kinda wanted to give up, and wait until the next halo to start makin plugs again lol....but i really do like how its structured once i get past how different it is from all the others, although i wonder what format promethius is gonna use....Iron_Forge wrote:IFP will be the plugin structure to end all structures!.. ;oPxbox7887 wrote:very nice, i guess i gotta learn another plugin structure cuz theres like 4 different ones, i hope this is easy on the eyes
EDIT: also, what types of imputs does your plugin system support....will it do scripts, dependencies, lone ids, or any of the other junk that nobody has ever heard of....?
well it would be nice for adi to support script references cuz they do lots of stuff, and pokes program already supports script references so i dont think it would be too hard for adi to have it, and hopefully promethius will support script references also. o and did i mention that script references are called string ids...
- Iron_Forge
- Posts: 532
- Joined: Sat Sep 20, 2003 9:21 pm
For the plugin portion, IFP uses struct, script, undefined, unused, float, tag, id, byte, bitmask/bitmask16/bitmask32, enum/enum16/enum32, ushort, uint, short, int, string32/string256, unicode64/unicode256...I don't think I missed any there...
As for calling them script/strings (which is how I usually refer to them now), originally I called them scripts, because thats what I assumed they were...I may rename them before anything supports IFP's goes overly public (or add support for a second naming convention), though I see <stringid> getting messed up with strings...And, as far as XML plugins are concerned, I don't see the harm in calling them scripts...(Even if it is blantently wrong...Look how long <id>'s stuck...Guess it'll come down to how lazy I am between now and the future, sorry kornman... ;oP
As for calling them script/strings (which is how I usually refer to them now), originally I called them scripts, because thats what I assumed they were...I may rename them before anything supports IFP's goes overly public (or add support for a second naming convention), though I see <stringid> getting messed up with strings...And, as far as XML plugins are concerned, I don't see the harm in calling them scripts...(Even if it is blantently wrong...Look how long <id>'s stuck...Guess it'll come down to how lazy I am between now and the future, sorry kornman... ;oP
well what are you doing about a certain reflexive type where its chunk count actually indicates its chunk size in decimal and only points to one thing. those are quite common and they are also annoying because they have constantly changing chunk sizes so listing them in a plugin would be rather messy if you have 20 values listed when editing something with a chunk size of 20...poke has already done some stuff with it but it would be nice to also make it so that if youre editing a small chunk size then it will only show certain values. if u dont kno what im talkin about look at the [shad] or [effe] meta...they seem to mess up a standard editors injecting process so it would be something to look into
as for the other unsupported types, maybe include some of the raw data types, although i dont kno too much about them, theres raw pointers or external pointers(same thing?), and i have heard of indicies and other stuff that i cant remember...obviously i still have lots to learn
as for the other unsupported types, maybe include some of the raw data types, although i dont kno too much about them, theres raw pointers or external pointers(same thing?), and i have heard of indicies and other stuff that i cant remember...obviously i still have lots to learn
At least your considering it ;p.Iron_Forge wrote:Guess it'll come down to how lazy I am between now and the future, sorry kornman... ;oP
And there are no enum's in halo that take up 32 bits. only enums that are in a byte range (aka "char enum") and short range (aka "enum"). Bungie pads their structures in there code so it all comes out nice and even (lucky for us I guess).
Just thought I would give a heads up :X
-
- Posts: 129
- Joined: Mon Jul 26, 2004 1:58 pm
-
- Posts: 410
- Joined: Tue Feb 24, 2004 11:22 am
- Location: Cantaloupe!
When I added support for Halo, I had to recompile the functions assembly. If Iron_Forge wants to recompile those libraries so it works again, he can.
ABOUT STRING ID's:
blueGuerilla does support them, I believe the command is <value type="stringref" offset etc... />
ABOUT STRING ID's:
blueGuerilla does support them, I believe the command is <value type="stringref" offset etc... />
Everything in this signature is false.
-
- Posts: 410
- Joined: Tue Feb 24, 2004 11:22 am
- Location: Cantaloupe!
- Iron_Forge
- Posts: 532
- Joined: Sat Sep 20, 2003 9:21 pm
Yeah, this I am aware of (I think Mono yelled at me for it too, I forget now...It was someone)...But, this is just a matter of my laziness...I'd rather have a single <enum32 /> in my IFP than an <unused size="0" default="0" /><enum16 />...I think it looks nicer too...I'll be the last one to claim IFP is perfect (or even kinda not screwed up in alot of ways ;o), but I still think it's a step up from an H1 era plugin system...All of this work is really just to tide people over until Prometheus anyways, so it doesn't have to be perfect... ;o)kornman00 wrote:At least your considering it ;p.Iron_Forge wrote:Guess it'll come down to how lazy I am between now and the future, sorry kornman... ;oP
And there are no enum's in halo that take up 32 bits. only enums that are in a byte range (aka "char enum") and short range (aka "enum"). Bungie pads their structures in there code so it all comes out nice and even (lucky for us I guess).
Just thought I would give a heads up :X
As for the structs where the chunk count is given in bytes, rather than an actual chunk count, these are just being handled as byte arrays...I've considered other methods, but really they are blocks of data (alot of times these are floats)...Now, considering that plugins in general aren't targetted to the hardcore modders, this should be fine, as those needing to edit these areas could do so by hand, but your rarely going to find something like "reload rate" in them...
I would say the main goal of IFP's is to stop the "stupid plugins" from showing up...These are all those plugins that use an <id> (now called an <enum> in IFP) for something like a string id, and have it's offset tossed in so it only works on a single map or tag...No offset only works on a single tag...If yours does, you're lazy, and shouldn't make plugins...And, as kornkob pointed out, enum's are never above a short, so if your ID is 0xCC00BBAA, then it's probably not an enum...(Yes, this is a good reason not to have enum32's, but I'm not going to let their stupidity stop my laziness...Besides, they'll find a new way to be stupid... ;o)
Awesome. I've been waiting on the map rebuilder tool for about 25 mins. Is it as slow as HHT4 or should it be done already?
Also, I'm trying to rebuild with meta I had pulled months ago with the older version of ADI. Should I recursively extract with ADI 2.0 or is the older stuff compatible? Thanks again.
Also, I'm trying to rebuild with meta I had pulled months ago with the older version of ADI. Should I recursively extract with ADI 2.0 or is the older stuff compatible? Thanks again.
-
- Posts: 6
- Joined: Tue Sep 07, 2004 1:15 pm
lol but i wouldnt exactly call hexing fun to do by hand, i only wanna do it once and then i try and make a plug...but obviously there are many other things that can only be done through hexing. and i noticed that in the guerilla plugin structure it has an option to add more chunks to a reflexive?...is this implemented yet or is there a special imput to make the option become available?Iron_Forge wrote:As for the structs where the chunk count is given in bytes, rather than an actual chunk count, these are just being handled as byte arrays...I've considered other methods, but really they are blocks of data (alot of times these are floats)...Now, considering that plugins in general aren't targetted to the hardcore modders, this should be fine, as those needing to edit these areas could do so by hand, but your rarely going to find something like "reload rate" in them...
-
- Posts: 410
- Joined: Tue Feb 24, 2004 11:22 am
- Location: Cantaloupe!
well if it adds to teh index technically u could just insert the raw data by hand then inject a meta with only 1 pointer with it changed to where u added the raw data then just use this or h2x to inject the model i ddi that with the sentinel model and the socer ball model in domination minus the tag adition
Sig breaks rules, read the rules before reposting.