• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

[Modset4.2] Open BrawlBox/Lib Development Thread [PW's SSS support(PAT0 editing)]

Whiselifax

Smash Rookie
Joined
Nov 14, 2010
Messages
19
I hope this is the right place.... Can someone help me figure out how to fix this error?

Code:
See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
   at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
   at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at BrawlLib.SSBB.ResourceNodes.MDL0GroupNode.OnPopulate()
   at BrawlLib.SSBB.ResourceNodes.ResourceNode.get_Children()
   at BrawlLib.SSBB.ResourceNodes.MDL0Node.OnPopulate()
   at BrawlLib.SSBB.ResourceNodes.ResourceNode.get_Children()
   at BrawlLib.SSBB.ResourceNodes.MDL0Node.GetStrings(StringTable table)
   at BrawlLib.SSBB.ResourceNodes.BRESEntryNode.Export(String outPath)
   at BrawlLib.SSBB.ResourceNodes.MDL0Node.Export(String outPath)
   at BrawlBox.GenericWrapper.OnExport(String outPath, Int32 filterIndex)
   at BrawlBox.GenericWrapper.Export()
   at BrawlBox.GenericWrapper.ExportAction(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4206 (VistaSP2GDR.050727-4200)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
BrawlBox
    Assembly Version: 0.63.3691.33774
    Win32 Version: 0.63.3.0
    CodeBase: file:///C:/Users/Justin/Desktop/Brawl/BrawlBox/BrawlBox.exe
----------------------------------------
BrawlLib
    Assembly Version: 0.10.3691.33773
    Win32 Version: 0.10.3.0
    CodeBase: file:///C:/Users/Justin/Desktop/Brawl/BrawlBox/BrawlLib.DLL
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4205 (VistaSP2GDR.050727-4200)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

I'm trying to do a model replacement and this comes up when I export the MDL0. I did it again and got the error, but it actually exported. Then after I've replaced the brawl model with mine, I get this error:
Code:
See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
   at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
   at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at BrawlLib.SSBB.ResourceNodes.MDL0GroupNode.OnPopulate()
   at BrawlLib.SSBB.ResourceNodes.ResourceNode.get_Children()
   at BrawlLib.SSBB.ResourceNodes.MDL0Node.OnPopulate()
   at BrawlLib.SSBB.ResourceNodes.ResourceNode.get_Children()
   at BrawlBox.BaseWrapper.OnExpand()
   at BrawlBox.ResourceTree.OnBeforeExpand(TreeViewCancelEventArgs e)
   at System.Windows.Forms.TreeView.TvnExpanding(NMTREEVIEW* nmtv)
   at System.Windows.Forms.TreeView.WmNotify(Message& m)
   at System.Windows.Forms.TreeView.WndProc(Message& m)
   at BrawlBox.ResourceTree.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4206 (VistaSP2GDR.050727-4200)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
BrawlBox
    Assembly Version: 0.63.3691.33774
    Win32 Version: 0.63.3.0
    CodeBase: file:///C:/Users/Justin/Desktop/Brawl/BrawlBox/BrawlBox.exe
----------------------------------------
BrawlLib
    Assembly Version: 0.10.3691.33773
    Win32 Version: 0.10.3.0
    CodeBase: file:///C:/Users/Justin/Desktop/Brawl/BrawlBox/BrawlLib.DLL
----------------------------------------
System.Windows.Forms
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4205 (VistaSP2GDR.050727-4200)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Then the drop down menu beside the new MDL0 disappears.
 

Skyground95

Smash Cadet
Joined
Jul 4, 2009
Messages
68
Location
Norway
!!!!!!!!!!
I Opened the file in an Hex Editor, and these are the bytes I got:

00 00 2B 80 00 00 00 0D 00 00 00 0C 00 2B 00 00 3C 23 D7 09

I just thought I could post It, thought It was little point in doing so.

EDIT: It seems like all the files in sc_selmap_en.pac/MiscData[80]/AnmTexPat(NW4R)
consists of 20 bytes.
 

MonkUnit

Project M Back Roomer
Joined
Nov 29, 2009
Messages
6,075
Location
Eau Claire, Wisconsin
If possible, can you make it so that there is an extra checkbox in the top bar that allows you to turn off and on the "globe rotator" when you select a bone? The globe rotator gets in my way of viewing what I need to at times.
 

Eternal Yoshi

I've covered ban wars, you know
Joined
Mar 3, 2007
Messages
5,450
Location
Playing different games
NNID
EternalYoshi
3DS FC
3394-4459-7089
I don't think that PAT0 function is 100% functional so it would be best to leave PAT0s alone.

Just Look at Dant and RTbush's posts above the page(I have 30 PPP).
 

Segtendo

Smash Hero
Joined
Dec 1, 2009
Messages
5,021
Location
Illinois
NNID
Segtend0
3DS FC
2552-4940-9357
This isn't a major bug to me, but when you rename the name of your BRSTM before export and then export it, you get an error, forcing BrawlBox to quit.
 

Eternal Yoshi

I've covered ban wars, you know
Joined
Mar 3, 2007
Messages
5,450
Location
Playing different games
NNID
EternalYoshi
3DS FC
3394-4459-7089
The Given Key was not present in the dictionary.

Even renaming a single bone WILL cause this error to show up and corrupt the file unless I hit restore, unless I collapse EVERYTHING.

Go Figure.
 

Mario Zelda Fan

Smash Apprentice
Joined
Jul 13, 2009
Messages
139
Location
South New Jersey
I don't know if it's a bug in ModSet 4.1 or what, but whenever I saved CSP text with it my game would freeze before the CSS loaded. I had a topic up for about 22 days until I finally got an answer from another person who also had the same problem; he told me to use BrawlBox v0.63d and save the CSP texts with that, and it worked. I'm thinking it's a compression issue or whatever with ModSet.
 

Beren Zaiga

Smash Ace
Joined
Feb 6, 2009
Messages
803
Location
Kansas
Just thought I would add in (if nobody has bothered to) that the Clean function doesn't work anymore. This needs fixing.
 

ForOhFor Error

Smash Cadet
Joined
Nov 24, 2010
Messages
53
Hey, could a feature be added to show all models when you're in the regular model previewer? For checking positions and such?
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
YES! :D
libraries are just what we need to make brawl editing betttur :3

please do add them :D


and I'm alone on script editing...
(still at the beginning)

mind lending a hand to any info on REL's
I hope to get into building an editor myself, but geeze it's tedious work... DX
 

MonkUnit

Project M Back Roomer
Joined
Nov 29, 2009
Messages
6,075
Location
Eau Claire, Wisconsin
You can just import a characters model, you don't need textures, then move the character model tstance so you it moves in the collision previewer.
 

fortwaffles

Smash Ace
Joined
Jan 20, 2009
Messages
514
I noticed the pate translations, and thats epic, but im wondering, if instead of paseting translations to the first (or whatever frame is highlighted) if it could do the math in all the frames of the animation. for example, if i give snake marios animations, say punching, it would fix the translations, but when he streatches his arm for the punch, it returns to marios translations. also, there are instances of the character floating, or underground when pasting translations sometimes
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
can someone please tell me the format ID's and how they work please...
I'm tired of searching...

I've asked about 5-8 times with no replys...
and I've been searching since last year...

someone just please tell me...
I'm tired of having to delay my program because of poor documentation of the formats DX

EDIT:
the above was ment for image formats (TEX0,TPL, REFT)
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
I've finished the I8 format of my viewer
here's an image:


as for the other formats...
I havn't started them yet...
but I'm working on the RGB565 format right now...

here's the list of formats: (progress shows)
0 I4 (4 bit intensity, 8x8 tiles)
1 I8 (8 bit intensity, 8x4 tiles)
2 IA4 (4 bit intensity with 4 bit alpha, 8x4 tiles)
3 IA8 (8 bit intensity with 8 bit alpha, 4x4 tiles)
4 RGB565 (4x4 tiles)
5 RGB5A3 (*) (4x4 tiles)
6 RGBA8 (4x4 tiles in two cache lines - first is AR and second is GB)
8 CI4 (4 bit color index, 8x8 tiles)
9 CI8 (8 bit color index, 8x4 tiles)
10 CI14X2 (14 bit color index, 4x4 tiles)
14 CMP (S3TC compressed, 2x2 blocks of 4x4 tiles)


note: it's a bit slow as I'm having to draw each pixel as a rectangle in the canvas...
(2 seconds to load a 128x128 image on a 2GHz processor running XP)

my prob from my post below is I didn't know about the tiles...
must I say EXTREMELY poor documentation people...

found 1 link that told me the formats... (mostly)
 

pokelover980

Smash Ace
Joined
Oct 4, 2007
Messages
905
If you really want to know the formats, look at the BrawlBox source code and look at the files for each format. It doesn't matter if you don't know C#, it should still be fairly easy to go through the file and find the info you need. There's no better documentation for most Brawl file formats than the BrawlBox source code.

Also, just a question, what language are you writing your viewer in? Depending on the language, I could help you with a way of speeding up your rendering.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
If you really want to know the formats, look at the BrawlBox source code and look at the files for each format. It doesn't matter if you don't know C#, it should still be fairly easy to go through the file and find the info you need. There's no better documentation for most Brawl file formats than the BrawlBox source code.

Also, just a question, what language are you writing your viewer in? Depending on the language, I could help you with a way of speeding up your rendering.
I can't understand the Brbx src -.-
I've tried many times, and am still trying...

also, it's in Py...
yea... that's Tk for ya on an unknown format...
if there's a faster way than just writing each pixe-

well there is drawing the images before-hand while hiding all the canvases,
and displaying only a certain one when D-clicking a tree-item

that would work...
but it'd require alot more progging and take a while before loading the tree

not to mention, this is only my first GUI

also, I've figured out the I4 format :D
the only thing that confused me, was how to use the 4bit method...
00,11,22,33,...,FF (could've been 00,10,20,30,...,F0)

I'ma have to do some extra edits for the alpha formats :/

btw thanx :)
 

Bero

Smash Journeyman
Joined
Jan 10, 2010
Messages
409
Location
Japan
Long time no see,brawlshifter (perhaps I have never talked with you directly though).
STDT means "Stage Trap Data Table".

@Tcll
Can you read C programs? File formats are very easy to read if you can read C.
 

Bero

Smash Journeyman
Joined
Jan 10, 2010
Messages
409
Location
Japan
I don't know "lava" but yes, we can edit stage traps(damage,speed,etc.)
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
@Tcll
Can you read C programs? File formats are very easy to read if you can read C.
only a little...

HexEdit's template manager kinda helped me out a little at understanding C codes...
but I'm only at the tip of understanding C codes...

just tell me like, how to "read" the formats by the pixels...

eg:
I4: (4 bit)
F = #FFFFFF
0 = #000000

I8: (8bit)
F3 = #F3F3F3

I'm looking at RGB565 (16bit) right now and that one kinda gets me...
"## ##' = ?

please help :|

EDIT:
lawl failure XD

I had to go by guesswork to get this:


format I used:
'## ##'

^ R RG GB B

there's only very poor documentation on this stuff...
nothing on how to read the pixels :/

EDIT:
also, how do you calculate alpha between color1 and color2??
 

Bero

Smash Journeyman
Joined
Jan 10, 2010
Messages
409
Location
Japan
I didn't change functions which deal with pictures, so I don't know so much about it.
But these information will be useful for you:
bint-4byte,signed integer
buint-4byte,unsigned integer
bshort-2byte,signed integer
bushort-2byte,unsigned integer
bfloat-4byte,floating point

And this is an example of file formats
public unsafe struct TEX0
{
public const int Size = 0x40;
public const uint Tag = 0x30584554;

public BRESCommonHeader _header;//defined in another cs file
public bint _headerLen;
public bint _stringOffset;
public bint _hasPalette;
public bshort _width;
public bshort _height;
public bint _pixelFormat;
public bint _levelOfDetail;
public bint _unknown;
public bfloat _lodBias;
fixed uint _padding[4];
}
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
hmm... -_-

bint-4byte,signed integer
buint-4byte,unsigned integer
bshort-2byte,signed integer
bushort-2byte,unsigned integer
bfloat-4byte,floating point
O.o how could I do that in Py??

*rethinks*
wait... I should be asking that on Daniweb

EDIT:
derp...
you said byte
not bit :p

I already got all those figured out =P

#--<<common functions>>--
import struct as S
def hex(this): return this.encode('hex') #return the hex value of a char
def bui(this): return St.unpack('<I', this)[0] #return an unsigned big endian 8bit, 16bit, or 32bit int
def ui(this): return int(this.encode('hex'),16) #return an unsigned 8bit, 16bit, or 32bit int (most common)
def si(this): return int(long(this.encode('hex'),16)-2**32) #return a signed 8bit, 16bit, or 32bit int
def bfl(this): return St.unpack("<f", this)[0] #return a big endian 32bit float
def fl(this): return S.unpack(">f", this)[0] #return a 32bit float (highly common)
#--<</common functions>>--
 

pokelover980

Smash Ace
Joined
Oct 4, 2007
Messages
905
I'll go take a look at the BrawlBox source and see what info I can give you on the formats. Any specific format you'd like me to pull up?
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
I'll go take a look at the BrawlBox source and see what info I can give you on the formats. Any specific format you'd like me to pull up?
eh... just post the pixel formats for them plz :)

EDIT:
is this right for RGB565??
RRRR RGGG GGGB BBBB

I don't think it is... -_-
 

Bero

Smash Journeyman
Joined
Jan 10, 2010
Messages
409
Location
Japan
I wanted to tell you how to read format data in BrawlBox source.
They are in BrawlLib/SSBB/Types.
 

pokelover980

Smash Ace
Joined
Oct 4, 2007
Messages
905
I wanted to tell you how to read format data in BrawlBox source.
They are in BrawlLib/SSBB/Types.
To add on to this, some of the data for texture formats is in other folders as well. BrawlLib/Wii/Texture/PixelTypes.cs and BrawlLib/Imaging/PixelTypes.cs have a bit of info.

And I was looking up the formats, but then I remembered Kryal's extreme use of C style code, which throws me off because I've never seen a need for pointers in C# and so I never really worked with them. He also used a lot of bitwise operators, which I'm actually starting to study again to improve speed of my own programs.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
yo...
just passing along a new request...

how bout an edit mode in the previewer...
basically, being able to reposition the bones to fit the mesh (after vertexing)

I approve this request and think it should be done actually :D
ShadowSnake was the thinker of it :)
 

pokelover980

Smash Ace
Joined
Oct 4, 2007
Messages
905
yo...
just passing along a new request...

how bout an edit mode in the previewer...
basically, being able to reposition the bones to fit the mesh (after vertexing)

I approve this request and think it should be done actually :D
ShadowSnake was the thinker of it :)
I'm not positive of what he's trying to request, but from what it sounds like he's trying to request, we already have such a feature.

EDIT: Wait, I think I understand now. That'd be incredibly hard to code.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
eh... just post the pixel formats for them plz :)

EDIT:
is this right for RGB565??
RRRR RGGG GGGB BBBB

I don't think it is... -_-
^I figured out that actually is right...
it's in binary represantation...

I'm having a prob converting the int to hex though...
it's too small to show up... (image is composed of DARK grays to blacks)

I did this:
R >> 3
G >> 2
B >> 3

am I supposed to *255 those??
(R>>3)*255

EDIT:
nvm... I got it right actually :/
but the brightest mess up a little...



I'm not positive of what he's trying to request, but from what it sounds like he's trying to request, we already have such a feature.

EDIT: Wait, I think I understand now. That'd be incredibly hard to code.
yea -_-
an editor, not animator...
you already have the animator...

but it'd be like editing bones in blender...

maybe for later:
I'd like to request an add-on to SS's request...
being able to add bones...



honestly though,
I think you guys should skip the whole brawlbox thing and actually start a new project :D
what I mean is a project even bigger than brawlbox...
I've wanted to do this, but you guys are already ahead of me...

a full out brawl editor... (or more appropriatly: a full out ISO editor)
it'll be an entire game-dev station like blender (not 3DS (you can't make games for 3DS))

you know how blender loads blend files...
well the new project should load ISO files...

I know it's a stretch and all, but I think I can help in some places :)
I've been wanting to make this prog for quite a while...

anyone up for it =D
>_> <_<

EDIT:
I'd do it myself, but IDK half the stuff you guys know :/
and Python's kinda slow in the area of GUI's -_-
 

libertyernie

Smash Ace
Joined
Oct 5, 2009
Messages
929
Location
Eau Claire, WI
The problem with an ISO editor is that no matter how much you change, you still need a >4GB file. Since my Wii still reads the original disc I'd rather just put the files to be changed onto the SD/USB.
If the program used a directory structure instead of a single file, I'd be behind that. Or even better: one directory structure of the original Brawl files, and another containing only the files that you've changed.
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
The problem with an ISO editor is that no matter how much you change, you still need a >4GB file. Since my Wii still reads the original disc I'd rather just put the files to be changed onto the SD/USB.
If the program used a directory structure instead of a single file, I'd be behind that. Or even better: one directory structure of the original Brawl files, and another containing only the files that you've changed.
eh...
yea...
you have a big point there :/

thing is you'd be editing the game from it's internal files...

anyways, yes, a directory structure would be alot better...

but I'm not getting the point of your dual directory structure??
what you thinking that I'm missing?? :/

I think a single dir struct would work just fine...
all the brawl files in that directory are loaded normally... :/
 

Tcll

Smash Lord
Joined
Jul 10, 2010
Messages
1,780
Location
The Gates of Darkness
NNID
Tcll5850
here's another image I've decided to look up:


what am I doing wrong??

stupid people not posting the right documentation needed for other people to read from the format correctly :mad:
 
Top Bottom