ROM Hack [Release] Every File Explorer

  • Thread starter Thread starter Gericom
  • Start date Start date
  • Views Views 475,688
  • Replies Replies 945
  • Likes Likes 73
What do you exactly mean?

I could try to add controls, but it is not very easy, as I read it as a stream.

Also, you can try other videos too. They should work correctly. (apart from some small glitches)
Ah, okay, I get what you mean by reading it as a stream. Other videos work correctly, it's just the increased CPU usage which concerns me, especially as Placeholder.fmv is only 6KB and a single frame.
 
Ah, okay, I get what you mean by reading it as a stream. Other videos work correctly, it's just the increased CPU usage which concerns me, especially as Placeholder.fmv is only 6KB and a single frame.

I think it is, because it uses multiple threads.
 
Does this support cgfx or bcmdl files? I tried some of the files I have and it throws an error at me and crashes. Unless this release doesn't support it yet.
 
Does this support cgfx or bcmdl files? I tried some of the files I have and it throws an error at me and crashes. Unless this release doesn't support it yet.

Yes. It should work very well with bcmdl files. What kind of error is it? (could you post it here?)
 
If you want also I can just send you the models I tried opening.

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

************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at _3DS.NintendoWare.GFX.CMDL.SeparateDataShape.VertexParamAttributeCtr.GetVertexData(Polygon Destination, PrimitiveSet PrimitiveSet, CMDL Model)
at _3DS.NintendoWare.GFX.CMDL.SeparateDataShape.GetVertexData(CMDL Model)
at _3DS.UI.CGFXViewer.RenderModel()
at _3DS.UI.CGFXViewer.Render()
at _3DS.UI.CGFXViewer.CGFX_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.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: 4.0.0.0
Win32 Version: 4.0.30319.18444 built by: FX451RTMGDR
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
EveryFileExplorer
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/EveryFileExplorer.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.34238 built by: FX452RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
LibEveryFileExplorer
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/LibEveryFileExplorer.DLL
----------------------------------------
3DS
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/3DS.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
CommonCompressors
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/CommonCompressors.dll
----------------------------------------
CommonFiles
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/CommonFiles.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
LegoPirates
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/LegoPirates.dll
----------------------------------------
MarioKart
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/MarioKart.dll
----------------------------------------
NAudio
Assembly Version: 1.5.4.0
Win32 Version: 1.5.4.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/NAudio.dll
----------------------------------------
NDS
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/NDS.dll
----------------------------------------
Tao.OpenGl
Assembly Version: 2.1.0.12
Win32 Version: 2.1.0.12
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/Tao.OpenGl.dll
----------------------------------------
Tao.Platform.Windows
Assembly Version: 1.0.0.5
Win32 Version: 1.0.0.5
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Plugins/Tao.Platform.Windows.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
Microsoft.CSharp
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18408
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll
----------------------------------------
System.Dynamic
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.18408
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Dynamic/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.dll
----------------------------------------
Anonymously Hosted DynamicMethods Assembly
Assembly Version: 0.0.0.0
Win32 Version: 4.0.30319.18444 built by: FX451RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
----------------------------------------
Tao.Platform.Windows
Assembly Version: 1.0.0.5
Win32 Version: 1.0.0.5
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Tao.Platform.Windows.DLL
----------------------------------------
Tao.OpenGl
Assembly Version: 2.1.0.12
Win32 Version: 2.1.0.12
CodeBase: file:///C:/Users/Zoney/Downloads/EFE/Tao.OpenGl.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 also getting crashing on some models.

Opening koopa.bcmdl inside koopa.szs in Super Mario 3D Land gives 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.IndexOutOfRangeException: Index was outside the bounds of the array.
  at _3DS.NintendoWare.GFX.CMDL.SeparateDataShape.InterleavedVertexStreamCtr.GetVertexData(Polygon Destination, PrimitiveSet PrimitiveSet, CMDL Model)
  at _3DS.NintendoWare.GFX.CMDL.SeparateDataShape.GetVertexData(CMDL Model)
  at _3DS.UI.CGFXViewer.RenderModel()
  at _3DS.UI.CGFXViewer.Render()
  at _3DS.UI.CGFXViewer.CGFX_Load(Object sender, EventArgs e)
  at System.Windows.Forms.Form.OnLoad(EventArgs e)
  at System.Windows.Forms.Form.OnCreateControl()
  at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
  at System.Windows.Forms.Control.CreateControl()
  at System.Windows.Forms.Control.WmShowWindow(Message& m)
  at System.Windows.Forms.Control.WndProc(Message& m)
  at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
  at System.Windows.Forms.ContainerControl.WndProc(Message& m)
  at System.Windows.Forms.Form.WmShowWindow(Message& m)
  at System.Windows.Forms.Form.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)
 
Nice work. I found the reason why some CMDL's crash. Its because you're accessing an attribute that isn't always there.
Code:
case VertexAttributeUsage.Color:
                            Destination.Colors = new Color[count];
                            for (int i = 0; i < count; i++)
                            {
                                Destination.Colors[i] = Color.FromArgb((int)(((Attributes.Length <= 3) ? 1.0 : Attributes[3]) * 255), (int)(Attributes[0] * 255), (int)(Attributes[1] * 255), (int)(Attributes[2] * 255));
                            }
                            break;
 
  • Like
Reactions: Huntereb
Also, holding shift in the model viewer doesn't speed it up. Also was looking in acnl when I found this (nsfl)
9vcLqkI.png
 
This seems pretty interesting.

How difficult would this be to expand into an application that could accept command line parameters?

My idea for this would be to build plugins for older computer disk formats and allow the disk images to be updated with make or a bat file.
 
Yeah some of the Persona Q models don't want to convert with this. And when they do the are all over the place some get placed right compared to my converter. I'm assuming its do to bone positions that it might have read? Since the weapon was usually placed at his feet compared to being at his hand. Can't wait to see what happens with this.

6b94d7f206.jpg
 
Ooh, nice work. So far rom editing is one of the only good things to come of the 3DS "scene" (together with ctrulib and region free).
 
  • Like
Reactions: Gericom
Okay. So as it turns out, vertex colors may be rgba or rgb. I will fix that.
Interesting project :)
also, +920 for using C# :D

Thanks!
Agreed. C# is a very good choice.
Thanks!
Also, holding shift in the model viewer doesn't speed it up. Also was looking in acnl when I found this (nsfl)
9vcLqkI.png

That's weird. Maybe I implemented it for nsbmd, but forgot for cgfx. Faster zooming should work though.
This seems pretty interesting.

How difficult would this be to expand into an application that could accept command line parameters?

My idea for this would be to build plugins for older computer disk formats and allow the disk images to be updated with make or a bat file.

The best thing you can do, is first start creating the plugin. I might take a look at command line later on.
Yeah some of the Persona Q models don't want to convert with this. And when they do the are all over the place some get placed right compared to my converter. I'm assuming its do to bone positions that it might have read? Since the weapon was usually placed at his feet compared to being at his hand. Can't wait to see what happens with this.

6b94d7f206.jpg

Could you send me that model?
 
  • Like
Reactions: filfat
any chance you could add an option for zooming with buttons (like - & +) tried to have a go on my laptop and the scroll thing on the trackpad is annoying to use.
also it seems to crash if you try to open .bclyt files
 
any chance you could add an option for zooming with buttons (like - & +) tried to have a go on my laptop and the scroll thing on the trackpad is annoying to use.
also it seems to crash if you try to open .bclyt files
I will implement that.
It should work. Which file is it?
 

Site & Scene News

Popular threads in this forum