Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 23:37:53 <Phantom_Wings>: You on?
- 23:38:01 <Phantom_Wings>: Dant?
- 23:38:22 <Dantarion>: yes
- 23:38:27 <[TSON]>: PW ;AAA;
- 23:38:44 <Dantarion>: We have been pushing forward without you :P
- 23:38:54 <Dantarion>: i can't talk now for too long
- 23:39:06 <Phantom_Wings>: 'kay
- 23:39:08 <Dantarion>: but im in here off and on almost all day
- 23:39:35 <shanus1>: hmm, off to drive home from work
- 23:39:36 <[TSON]>: yeah
- 23:39:42 <shanus1>: then time to put the final polish on HAD :D
- 23:39:47 <[TSON]>: we've accomplished a lot
- 23:39:47 <shanus1>: p.s. hi PW
- 23:39:55 <[TSON]>: and sweetsauce shanus :3
- 23:40:06 <Phantom_Wings>: You've been working on the HAD code?
- 23:40:10 <Phantom_Wings>: Cool.
- 23:40:14 <shanus1>: well, technically, its done
- 23:40:27 <shanus1>: injection straight into fighter.pac
- 23:41:00 <shanus1>: will match melee's movement distance exactly frame by frame :)
- 23:41:09 <Phantom_Wings>: IIRC, the patch code doesn't cover that yet does it?
- 23:41:18 <shanus1>: nope
- 23:41:19 <Dantarion>: Phantom_Wings: common3.pac
- 23:41:23 <Dantarion>: yes, it does shanus
- 23:41:35 <shanus1>: well, we don't have common3.pac editing yet :P
- 23:41:42 <shanus1>: in the way of line addition, etc
- 23:41:46 <Dantarion>: right
- 23:41:52 <Phantom_Wings>: Ah, speaking of which.
- 23:42:14 <Phantom_Wings>: I've been looking into removing the limits on the file sizes that are loaded.
- 23:42:19 <Dantarion>: OpenSA is almost ready to do inplace edits
- 23:42:22 <[TSON]>: o.o
- 23:42:28 <Phantom_Wings>: - not talking about the character .pacs
- 23:42:37 <[TSON]>: darn lmfao
- 23:42:44 <shanus1>: btw PW, your memory locations you sent me
- 23:42:48 <shanus1>: in the 9000's
- 23:42:51 <shanus1>: work well
- 23:43:03 <Dantarion>: they are hella empty XD
- 23:43:06 <Phantom_Wings>: Good to hear it.
- 23:43:13 <shanus1>: 13 new codes to dump in there
- 23:43:16 <shanus1>: this leaves 1 last code
- 23:43:23 <shanus1>: light trigger presses :D
- 23:43:42 <shanus1>: anyways, im off to drive home, back on in a bit
- 23:43:58 <Phantom_Wings>: Alright.
- 23:44:06 <[TSON]>: stay safe shanus :P
- 23:44:19 <Dantarion>: Phantom_Wings: So what were you saying about removing file size limits?
- 23:44:27 <Dantarion>: you mean like on texture files and such?
- 23:45:11 <Dantarion>: do you know anything about where http://pastie.org/pastes/404037 comes from?
- 23:45:22 <Phantom_Wings>: While most files are free to be any size.
- 23:45:36 <Phantom_Wings>: Certain files are limited to the size of the original file.
- 23:45:47 <Phantom_Wings>: Hello Leaf.
- 23:45:51 <Dantarion>: I know info.pac is
- 23:45:59 <leaf>: hi
- 23:46:03 <Phantom_Wings>: Same for some of the common files.
- 23:46:11 <Dantarion>: I had to null out strings in order to insert custom song titles
- 23:46:17 <Dantarion>: is it all compressed files?
- 23:46:26 <Phantom_Wings>: I'm not too sure.
- 23:46:36 <Phantom_Wings>: Textures which are compressed seem to work alright
- 23:46:36 <Dantarion>: or just certain ones that aren't loaded on demand
- 23:47:03 <Dantarion>: i.e. info.pac and the common.pacs are always loaded to the same location in memory
- 23:47:12 <Dantarion>: as far as i can tell
- 23:47:35 <Dantarion>: perhaps thats just because they are loaded in the same order at boot
- 23:48:13 <Phantom_Wings>: The men_select_char file was also one of those files.
- 23:48:26 <Phantom_Wings>: Encountered it when I tried to add a new stage icon.
- 23:48:42 <Dantarion>: hm..
- 23:48:57 <Phantom_Wings>: From what I've gathered.
- 23:49:02 <Phantom_Wings>: There's two types of loading.
- 23:49:13 <Dantarion>: ok
- 23:49:15 <Phantom_Wings>: Forward and backwards loading...
- 23:49:32 <Phantom_Wings>: I dunno' perhaps one is for the stack, while one is for hard memory.
- 23:49:46 <Phantom_Wings>: But forwards loading can hold any size.
- 23:49:52 <Phantom_Wings>: While backwards loading...
- 23:50:05 <Phantom_Wings>: It gets given a location.
- 23:50:13 <Dantarion>: oh
- 23:50:21 <Phantom_Wings>: Then it subtracts the file size from it.
- 23:50:50 <Dantarion>: thats weird
- 23:50:58 <Phantom_Wings>: And finally loads the file itself - if the file's too big, it will overflow.
- 23:51:29 <Phantom_Wings>: Ordinarily it would just be a matter of repointing the addresses.
- 23:51:34 <Dantarion>: how does it determine the location?
- 23:51:59 <Phantom_Wings>: The location is likely a space of heap allocated memory.
- 23:52:38 <Dantarion>: i mean, it has to know the size before it looks for a location to put the file though, right?
- 23:52:49 <Phantom_Wings>: Hmm. Yes.
- 23:52:53 <Dantarion>: or are these locations hardcoded per file or something
- 23:53:11 <Phantom_Wings>: 18 : Fighter1Resoruce : 5.33MB Used 4.07MB ( 76%) adr S 9151fa00 E 91a72e00 SIZE 00553400 perhaps?
- 23:54:09 <Dantarion>: hmmm
- 23:54:30 <Phantom_Wings>: But that brings us back around to the fact that character files aren't affected by this.
- 23:54:49 <Dantarion>: yeah
- 23:55:02 <Dantarion>: id have to take a look in IDA or something
- 23:55:18 <Phantom_Wings>: I've tried triggering the other loading routine - the forward routine instead.
- 23:55:27 <Dantarion>: what happens?
- 23:55:35 <Phantom_Wings>: But that didn't work out too well either - it crashed.
- 23:55:38 <Dantarion>: oh
- 23:55:53 <Dantarion>: im guessing it does something to keep track of what resources are loaded
- 23:55:58 <Dantarion>: and where they are in memory
- 23:56:11 <Phantom_Wings>: Yeah.
- 23:56:28 <Dantarion>: and probably keeps track of use count as well
- 23:56:46 <Dantarion>: i.e. two people pick marth, if one person deselects marth, it doesn't unload the marth .pac
- 23:57:18 <Phantom_Wings>: I've been looking into that actually.
- 23:57:29 <Phantom_Wings>: I'm having a hard time making heads or tales of it.
- 23:57:34 <Dantarion>: same
- 23:57:38 <Dantarion>: ive tried it too
- 23:58:34 <Dantarion>: what exactly did u find out about the modules
- 23:58:47 <Dantarion>: I looked at them in IDA and saw all the little routines
- 23:58:57 <Dantarion>: but I couldn't figure out what any of them did
- 23:59:23 <Phantom_Wings>: The modules appear to be the rawest form of the game's programming.
- 23:59:23 <Dantarion>: I know people figured out how to make modules load at different stage slots after u posted ur modified module
- 23:59:55 <Phantom_Wings>: Aside from their general structure, they are entirely handled by their own code.
- 00:00:22 <Dantarion>: hmm
- 00:00:31 <Dantarion>: oh yeah, have you tried OpenSA2?
- 00:00:42 <Dantarion>: it pulls out a lot of info that PSA doesn't now
- 00:00:47 <Phantom_Wings>: Not yet, I'm just looking into that now.
- 00:01:18 <Dantarion>: ok
- 00:01:28 <Dantarion>: no rush, i gotta get off the comp for a bit
- 00:01:47 <Dantarion>: http://svn.dantarion.com/opensa2/ - OpenSA2 source
- 00:01:56 <Dantarion>: needs to be refactored, but whatever, it works for now
- 00:03:27 <Phantom_Wings>: Yeah, I just grabbed it now from the link you sent me on SWF.
- 00:03:37 <Phantom_Wings>: So how'd you get articles working?
- 00:05:09 <Dantarion>: uh, its kinda complicated
- 00:05:21 <Phantom_Wings>: Lots of guess and check?
- 00:06:01 <Dantarion>: okay, you know the big array of offsets marked "data"?
- 00:06:12 <Phantom_Wings>: yeah?
- 00:06:29 <Dantarion>: the last few offsets in each characters file points to an array of data for each article
- 00:06:44 <Dantarion>: I haven't figured out ALL of the data
- 00:07:04 <Phantom_Wings>: From what I've seen in the modules, the offsets for the articles from Data is pretty much random.
- 00:07:11 <Dantarion>: yeah
- 00:07:20 <Phantom_Wings>: Seriously...
- 00:07:22 <Dantarion>: I can't figure out the size of the article attributes
- 00:07:28 <Dantarion>: like the floating points and stuff
- 00:07:32 <Dantarion>: I can find the OFFSET
- 00:07:38 <Dantarion>: but i can't find the end of the data yet
- 00:08:04 <Dantarion>: for right now i just read until i hit a 0 value
- 00:08:10 <Dantarion>: which gets me most of the articles data
- 00:08:28 <Phantom_Wings>: The version I've got can't access the attributes actually.
- 00:08:36 <Dantarion>: http://i46.tinypic.com/2h50kef.png
- 00:08:41 <Dantarion>: the version youve got?
- 00:09:01 <Dantarion>: oh
- 00:09:08 <Dantarion>: i haven't done character attributes yet
- 00:09:24 <Phantom_Wings>: k, I thought you were talking about that.
- 00:09:25 <Dantarion>: Im lazy and only worked on the fun stuff
- 00:09:38 <Phantom_Wings>: heh.
- 00:09:45 <Phantom_Wings>: I work that way too.
- 00:10:01 <Phantom_Wings>: Notice the long line of unfinished codes and programs that I've left in my wake?
- 00:10:07 <Dantarion>: yeah
- 00:10:18 <Dantarion>: in that screen shot i just posted, 0x1E408 is where the article data for mario's fludd starts
- 00:10:41 <Dantarion>: "Raw Article Offsets" displays the 0x38 bytes of article data
- 00:11:10 <Dantarion>: Raw Article Data attempts to find the article attributes
- 00:12:17 <Dantarion>: Also, i found the article for each characters Entry animation
- 00:12:56 <Phantom_Wings>: The Entry, Entry Left and Entry Right?
- 00:13:05 <Dantarion>: well
- 00:13:11 <Dantarion>: like Mario's pipe
- 00:13:26 <Phantom_Wings>: Yeah.
- 00:13:32 <Dantarion>: and the arwings
- 00:14:07 <Dantarion>: most of them don't have any data other than animation flags
- 00:14:24 <Phantom_Wings>: That's to be expected I guess.
- 00:14:31 <Dantarion>: You should try opening Fighter.pac
- 00:14:40 <Dantarion>: that is what we have been focusing on lately
- 00:14:53 <Phantom_Wings>: Sure, let me see if I've got it.
- 00:15:03 <Dantarion>: for ProjectM and Brawl+ making gameplay changes for all the character by injecting PSA commands
- 00:15:28 <Dantarion>: overwriting a command with a Goto to a free space of memory, writing a subroutine there and goto'ing back
- 00:15:49 <Dantarion>: lol, shanus says we should just use Subroutine command, im dumb and used Gotos
- 00:15:49 <Phantom_Wings>: Kind of like ASM injections huh?
- 00:15:53 <Dantarion>: yep
- 00:16:03 <Dantarion>: i guess thats what I was thinking
- 00:16:13 <Dantarion>: so I didn't think to use PSA Subroutine command
- 00:17:01 <Phantom_Wings>: The subroutine function should allow you to use Return instead of having to adjust the Goto to match the return address.
- 00:17:21 <Dantarion>: exactly
- 00:17:30 <Phantom_Wings>: Which should make relocating and moving things around easier
- 00:17:47 <Phantom_Wings>: - that's why it's almost impossible to move the File Patch code nowadays.
- 00:18:07 <Dantarion>: oh
- 00:18:16 <Dantarion>: did you hear about the /pfmenu2/ bug?
- 00:18:29 <Phantom_Wings>: Hmm?
- 00:18:50 <Dantarion>: FPC loads certain files from the wrong directory
- 00:18:58 <Phantom_Wings>: eh?
- 00:19:02 <Dantarion>: http://www.youtube.com/watch?v=90F6DJ1JFa8
- 00:19:19 <Dantarion>: mu_menumain.pac must be in /pfmenu2/ not /pf/menu2/ to be loaded from SD
- 00:19:45 <Dantarion>: i figured it out because i was reading the games logs with USBGecko and there were errors from trying to load it from the wrong place
- 00:19:59 <Phantom_Wings>: Weird...
- 00:20:21 <Dantarion>: i can't remember if there were any other files
- 00:20:26 <Phantom_Wings>: It basically does a string copy with the requested path onto the SD pf folder path.
- 00:20:43 <Phantom_Wings>: The '/' is usually included with the path that is copied.
- 00:20:51 <Dantarion>: maybe its an error in the game, where the slash isn't part of the requested path?
- 00:21:02 <Phantom_Wings>: That would seem to be the case.
- 00:22:03 <Dantarion>: oh, and i figured out dodge ai
- 00:22:15 <Phantom_Wings>: cpu AI?
- 00:22:18 <Dantarion>: http://www.youtube.com/watch?v=JfD12ckT1rU&feature=related
- 00:22:27 <Dantarion>: i figured out the files that the ai uses to time dodges
- 00:22:39 <Dantarion>: and how the ai decides where to move when they dodge
- 00:22:54 <Dantarion>: each attack has a bounding box that the ai tries to avoid
- 00:23:16 <Phantom_Wings>: Like how they would appear in SSBM's debug mode...
- 00:23:27 <Dantarion>: probably
- 00:23:44 <Dantarion>: also, MiscData[20] on stages in BrawlBox seems to be timers for certain events in the stage
- 00:23:45 <Dantarion>: http://www.youtube.com/watch?v=l_zjqn-LuNg&feature=related
- 00:23:54 <Phantom_Wings>: I wonder if they have opportunity boxes for attacking.
- 00:24:36 <Dantarion>: one interesting thing is that all the boxes are too damn big
- 00:24:39 <Dantarion>: by far
- 00:24:52 <Dantarion>: so the ai dodges when they are waaay out of range
- 00:25:09 <Phantom_Wings>: Yeah, I've had that happen a couple of times.
- 00:25:17 <Dantarion>: I am gonna make a asm code that divides the box sizes in half to see if it helps
- 00:25:46 <Phantom_Wings>: That should yield some interesting results.
- 00:26:02 <Dantarion>: better spacing enemies
- 00:26:43 <Phantom_Wings>: I notice that you haven't got editing up for OpenSA.
- 00:26:57 <Phantom_Wings>: Is that what you wanted to talk to me about?
- 00:27:59 <Dantarion>: uh
- 00:28:06 <Dantarion>: well, iduno
- 00:28:26 <Dantarion>: I need to get inplace editing working first
- 00:29:03 <Dantarion>: first, editing param values
- 00:29:18 <Dantarion>: then, editing events to ones with the same number of params or less
- 00:29:31 <Phantom_Wings>: Yeah, the whole thing with repointing the everything is annoying - especially when it doesn't fit
- 00:29:34 <Dantarion>: then, adding params, adding events, etc
- 00:29:53 <Dantarion>: I was hoping to be able to rebuild the file from stratch
- 00:29:56 <Dantarion>: but...
- 00:30:04 <Dantarion>: theres so much unknown data everywhere
- 00:30:25 <Phantom_Wings>: Yeah.
- 00:30:53 <Phantom_Wings>: It looks like they are devided up and then added according to when they're first referenced.
- 00:31:15 <Dantarion>: I want to write code that searches for "FADEFOOD" and tries to move things around to make things fit
- 00:31:21 <Dantarion>: but that sounds hard
- 00:32:33 <Dantarion>: i.e. if you find FADEFOOD, move the next set of data backwards, repeat until all the unused space is at the end
- 00:33:00 <Phantom_Wings>: But then you'd have to repoint everything in between...
- 00:33:09 <Dantarion>: yep
- 00:33:28 <Phantom_Wings>: So reconstruction does sound like the best option.
- 00:33:30 <Dantarion>: and Id have to check all offset variables to see if they match something being used
- 00:33:41 <Dantarion>: moved* not used'
- 00:34:23 <Phantom_Wings>: Something similar applies to the module files.
- 00:34:54 <Phantom_Wings>: Currently I can't add any lines of ASM because of the .rel script at the end.
- 00:35:21 <Dantarion>: oh
- 00:35:29 <Dantarion>: can you edit the script at the end?
- 00:36:07 <Phantom_Wings>: Yeah. But reformatting it is a pain.
- 00:36:43 <Dantarion>: lol
- 00:36:45 <Phantom_Wings>: ... On second thought, perhaps it's not so hard after all...
- 00:37:14 <Phantom_Wings>: It just hit me that it would only take a single value to be changed in order for it to be readjusted.
- 00:37:20 <Phantom_Wings>: *facepalm*
- 00:37:23 <Dantarion>: LOL
- 00:37:30 <Dantarion>: good job
- 00:38:03 <Phantom_Wings>: Of course, if it's a .rel file like the common2 .rel, then modifying it is entirely out of the question.
- 00:38:11 <`Guy>: Sup.
- 00:38:12 <Dantarion>: why?
- 00:38:20 <Dantarion>: whats the common2.rel do?
- 00:38:33 <Dantarion>: im interested in the character selection rel
- 00:38:34 <Phantom_Wings>: Almost every .rel file references the common2.rel
- 00:38:41 <Dantarion>: ohhh
- 00:39:07 <Phantom_Wings>: It holds everything from accessing the character .pacs to the pointers to which modules are loaded.
- 00:39:23 <Dantarion>: wowwww
- 00:39:32 <Dantarion>: i want your module view nowww XD
- 00:39:37 <Dantarion>: i want to poke some stuff
- 00:39:44 <Phantom_Wings>: Well, there's not much to see.
- 00:39:56 <Dantarion>: oh
- 00:40:32 <Dantarion>: looking at it combined with IDA will probably be fun though
- 00:41:01 <Phantom_Wings>: http://uploads.mibbit.com/aU2f91.exe
- 00:41:10 <Phantom_Wings>: It's barebones minimum at the moment.
- 00:41:31 <Dantarion>: exception on launch XD
- 00:42:03 <Phantom_Wings>: err...
- 00:42:41 <Phantom_Wings>: Just ignore it, it seems to work fine regardless :D
- 00:44:11 <Phantom_Wings>: Hold on a sec, I'll get you the common2 module.
- 00:44:20 <Phantom_Wings>: It's too big for here.
- 00:44:21 <Dantarion>: is it inside common2.pac?
- 00:44:33 <Phantom_Wings>: yeah... I forget which misc data it was.
- 00:45:07 <Dantarion>: Have you used BrawlLib before? i have been using it recently to open .pac's directly without exporting files
- 00:46:04 <Phantom_Wings>: It's in MiscData[11]. I've been trying to use it every now and again, but Kryal's methods are still a bit foreign to me.
- 00:48:01 <Dantarion>: every module has its own ID?
- 00:48:38 <Phantom_Wings>: Yeah, it's used for the relocations and also to identify which ones have been loaded.
- 00:49:49 <Phantom_Wings>: There's not much to see in that file itself, but if you open another character's .rel file while 1B is closed...
- 00:49:52 <Dantarion>: is there a module that doesn't depend on anything?
- 00:50:06 <Phantom_Wings>: The viewer will show you where it references another file.
- 00:50:29 <Phantom_Wings>: I'm not too sure about that. But it has to start somewhere I suppose.
- 00:51:00 <Dantarion>: Phantom_Wings: how do you change what is displayed on the right side?
- 00:51:06 <Dantarion>: i have two modules loaded
- 00:51:17 <Phantom_Wings>: XD I haven't done that yet...
- 00:51:22 <Dantarion>: lol
- 00:51:34 <Phantom_Wings>: Like I said, barebones minimum.
- 00:52:02 <Dantarion>: well, its still pretty cool
- 00:52:50 <Phantom_Wings>: The two images on SWF show what happens if you have a module that is referenced but not loaded.
- 00:53:25 <Phantom_Wings>: It's actually easier that way as you can find the offsets inside the referenced file.
- 00:54:09 <Dantarion>: cool
- 00:54:12 <Phantom_Wings>: For example, m1B[1] + 0x1257EC is the basic routine for setting up a character.
- 00:54:35 <Phantom_Wings>: m1B is module 1B while [1] is memblock 1 (the assembly)
- 00:55:11 <Dantarion>: hmmm
- 00:55:14 <Dantarion>: what is module 0?
- 00:55:17 <Phantom_Wings>: So +1257EC into module 1B's ASM is the character load function.
- 00:55:26 <Dantarion>: I get that part
- 00:55:30 <Phantom_Wings>: Good eye.
- 00:55:36 <Phantom_Wings>: Module 0 is no reference.
- 00:55:40 <Dantarion>: oh
- 00:55:44 <Dantarion>: how about module B?
- 00:56:02 <Phantom_Wings>: I don't know what module B is as there isn't really a way to search for them...
- 00:56:08 <Dantarion>: oh
- 00:56:31 <Dantarion>: gah, if I had the src I could batch generate a list of all the id's for the ones in /module/
- 00:56:35 <Dantarion>: how do you find the ID?
- 00:56:48 <Phantom_Wings>: The ID is the first word in the file.
- 00:56:53 <Dantarion>: okay XD
- 00:56:56 <Dantarion>: that makes it easy
- 00:57:11 <Phantom_Wings>: But if you change the ID, you'll also need to change the relocation for itself.
- 00:57:34 <Phantom_Wings>: It seems that files will often reference themselves during relocation, so that will need to be changed as well.
- 00:57:48 <Phantom_Wings>: - I found that out the hard way when I was trying to swap modules.
- 00:58:46 <Dantarion>: ooooo
- 00:59:00 <Dantarion>: is that the main reason why swapping modules doesn't work?
- 00:59:10 <Phantom_Wings>: That and a bunch of other things...
- 00:59:26 <Phantom_Wings>: Do you have Mario's .rel file?
- 00:59:36 <Phantom_Wings>: Actually, make that Link's.
- 01:03:20 <Dantarion>: http://mibpaste.com/Rj2WmY
- 01:03:38 <Dantarion>: http://opensa.dantarion.com/disc/module/
- 01:03:44 <Dantarion>: lemme sort that list XD
- 01:04:09 <Phantom_Wings>: Haha, alright, I was going to suggest a link to you but that should work fine.
- 01:05:06 <Dantarion>: http://mibpaste.com/hPi0Jn
- 01:05:08 <Dantarion>: there
- 01:05:11 <vampiregirl2010>: hi there
- 01:05:18 <Dantarion>: that should help somewhat
- 01:05:54 <vampiregirl2010>: any crowded channel y`ll know
- 01:05:58 <vampiregirl2010>: ???
- 01:06:04 <Phantom_Wings>: That should be helpful for searching for the Ids.
- 01:06:08 <Dantarion>: the common2 module you refer to is actually also in the module folder
- 01:06:20 <Phantom_Wings>: Oh, really?
- 01:06:30 <Phantom_Wings>: Anyways, open up the link.rel file.
- 01:06:40 <Phantom_Wings>: In the module viewer.
- 01:06:45 <vampiregirl2010>: hello:(
- 01:06:55 <Phantom_Wings>: Sorry vamp-girl, not meaning to ignore you here.
- 01:07:05 <Dantarion>: okay, got it open
- 01:07:20 <Phantom_Wings>: Alright, go into the constructors.
- 01:07:23 <vampiregirl2010>: okay thanks anyway
- 01:07:30 <Dantarion>: okay
- 01:07:42 <Phantom_Wings>: Head to the first address in the disassembler.
- 01:07:58 <vampiregirl2010>: where r u from phantom?
- 01:08:58 <vampiregirl2010>: am feeling lonely here????
- 01:09:08 <vampiregirl2010>: any one to talk to???
- 01:09:28 <Dantarion>: okay, found it
- 01:09:39 <Dantarion>: (please implement Scroll to)
- 01:09:49 <Phantom_Wings>: Heh, yeah I'll get to it.
- 01:10:02 <Phantom_Wings>: Look for the third brand link command.
- 01:10:09 <Phantom_Wings>: branch*
- 01:10:27 <Dantarion>: http://i46.tinypic.com/317bd6t.png
- 01:10:30 <Dantarion>: is this it?
- 01:10:41 <Phantom_Wings>: That's the one.
- 01:10:52 <Phantom_Wings>: Follow that to it's address.
- 01:11:23 <Dantarion>: ok
- 01:11:32 <Phantom_Wings>: See the li r4, 2?
- 01:12:07 <Dantarion>: yes
- 01:12:18 <Phantom_Wings>: That's one of nine magic numbers that I've found so far for link's .rel file that need to be changed to the id of whichever character you want to change it to.
- 01:12:55 <Phantom_Wings>: By magic numbers, I'm meaning numbers that are spontaneously taken from thin air and thrown into the code.
- 01:12:58 <Dantarion>: lol
- 01:13:05 <Phantom_Wings>: I rest my case...
- 01:13:06 <Dantarion>: hmm
- 01:13:18 <Dantarion>: are they all the same command?
- 01:13:35 <Dantarion>: i.e. li r4, 2
- 01:13:38 <Phantom_Wings>: I've found a li r30, 2 once or twice.
- 01:13:53 <Phantom_Wings>: I plan on allowing wild cards for the search engine.
- 01:14:17 <Phantom_Wings>: So if you searched for li r*, 2 you could find all of them.
- 01:14:31 <Dantarion>: that seems to be the easiest way
- 01:14:38 <Phantom_Wings>: And that's not even going into accessors.
- 01:14:41 <Dantarion>: im guessing there might be false positive?
- 01:14:43 <Dantarion>: accessors?
- 01:14:48 <Dantarion>: are those for the articles?
- 01:15:09 <Phantom_Wings>: The completely ridiculous functions used to access the character's files. -_-
- 01:15:14 <Dantarion>: oh
- 01:15:37 <Phantom_Wings>: I don't know any off the top of my head, but they are called from the common2 module (1B)
- 01:16:30 <Phantom_Wings>: Basically, they're the ones that load the addresses for the articles in the .pac file.
- 01:17:09 <Phantom_Wings>: They basically say something along the lines of "I think we should load from DATA + 0xBC" for no apparent reason.
- 01:17:50 <vampiregirl2010>: CAN I SHARE U GUYS
- 01:17:55 <vampiregirl2010>: ?????
- 01:18:27 <Phantom_Wings>: Sorry, were discussing SERIOUS BUSINESS... No malice intended.
- 01:18:39 <vampiregirl2010>: or if u`ll busy would u plz suggest any other good channel for me
- 01:18:54 <vampiregirl2010>: plzz
- 01:19:07 <Phantom_Wings>: Do you know any?
- 01:19:08 <BionicSonic>: dant, PM real quickly lol
- 01:19:25 <vampiregirl2010>: am new in mirc
- 01:19:50 <Phantom_Wings>: How about you Bionic Sonic, do you know any good channels for chating?
- 01:20:03 <BionicSonic>: dunno
- 01:20:27 <Phantom_Wings>: Well, I guess we can't help you then. I'm not all that familiar with irc myself.
- 01:21:08 <vampiregirl2010>: okay u r gentle... thanks... i will keep trying tough
- 01:21:30 <Phantom_Wings>: My batteries are dying Dant, so I guess I'll have to log off for now - send me a PM at SWF if you need to talk.
- 01:21:42 <Dantarion>: ok
- 01:21:46 <Dantarion>: i have to go anyways
- 01:21:48 <Dantarion>: wait
- 01:21:51 <Dantarion>: one last question
- 01:21:58 <Dantarion>: why do the accessors need to be modified
- 01:22:06 <Dantarion>: and how do you find them?
- 01:22:35 <Phantom_Wings>: They still try to access the file of the original - e.g. Link module over mario will try to access Link.pac instead of Mario.pac
- 01:22:54 <Phantom_Wings>: Causes a crash if Link.pac isn't loaded - which it likely isn't.
- 01:23:03 <Dantarion>: ohhh
- 01:23:12 <Dantarion>: how do they determine the DATA offset to use
- 01:23:22 <Phantom_Wings>: Magic :P
- 01:23:31 <Phantom_Wings>: Hence "Magic Numbers"
- 01:23:34 <Dantarion>: how do they know where the .pac is
- 01:23:51 <Dantarion>: I know how to find the article DATA inside the .pac
- 01:23:57 <Phantom_Wings>: There's a table inside the Common2 Module that it maintains with the current .pac files that are loaded.
- 01:24:16 <Dantarion>: how does it know which part of the table to access
- 01:24:32 <Phantom_Wings>: Magic :D
- 01:24:35 <Dantarion>: :(
- 01:24:49 <Phantom_Wings>: They didn't even use Id's so -_-
- 01:25:05 <Phantom_Wings>: that's what makes them so annoying.
- 01:25:28 <Phantom_Wings>: Alright, I'm in the red, so I gotta' go.
- 01:26:02 <Phantom_Wings>: Talk to ya' later.
- 01:29:28 <ChanServ>: This channel is now registered with ChanServ to BionicSonic. Please read over http://www.gamesurge.net/cms/Registration_Guidelines/ and http://www.gamesurge.net/aup/ for our rules. Also visit http://www.gamesurge.net/commands/ for a list of ChanServ's commands. Thank you for using GameSurge's web-based channel registration.
- 01:29:35 <[TSON]>: ...
- 01:29:47 <[TSON]>: fffFFFFFFFFFFFF
- 01:30:02 <[TSON]>: so...whos vampiregirl
- 01:30:23 <BionicSonic>: someone who rudely interrupted dant & PW's convo with "oh i'm new here wat do I do"
- 01:30:36 <[TSON]>: :(
- 02:16:14 <WindOwl>: was PW here?!
- 02:16:17 <WindOwl>: DID I MISS PW?!
- 02:25:43 <WindOwl>: for real?
- 02:25:48 <WindOwl>: do you have logs? ;_;
Add Comment
Please, Sign In to add comment