Skip to content

A few big additions : 1.4.00

July 2, 2012

Released:  TheMiner 1.4.00

I’ll skip the usual “we fixed bugs” part, and go straight to what’s new and interesting!

Here is a quick overview of the biggest additions:

UserEvents

A UserEvent is a event created by the developer in the application that will communicate with TheMiner to show up in a specific tab of TheMiner (UserEvent tab).
The event can be pushed to TheMiner in two ways:

  • TheMiner.AddBasicUserEvent(aEventName:String = null, aEventValue1:* = null): UserEventEntry
  • TheMiner.AddCustomUserEvent(aEventName:String = null, aEventInfo:String = null, aEventValue1:* = null, aEventValue2:* = null, aStatusBarLabel:String = null, aStatusBarProgress:Number = -1, aStatusBarColor:uint = 0xFF000000, aEventSortPriority:int = 0, aEventVisible:Boolean = true, aError:Boolean = false): UserEventEntry

This is  what it can look like:

static/dynamic Logging platform

Logging is pretty straight forward? wrong. This can easily become a mess.

In this new version,you can use a sub-set of FlashConsole, well integrated with TheMiner.

using simple command such as

//Simple log
TheMiner.Log("My Simple Log");

//Log to a specific channel
TheMiner.Log("Simple Channel Log","MyChannel");
But logging is not the only possibility.
This tool also let you inspect object and classes.
//Inspecting(dynamic log) a Class definition
TheMiner.Log("Inspecting a class","Inspect");
TheMiner.InspectObject(MyClassToInspect, "Inspect");

//Inspecting(dynamic log) a Object Instance
TheMiner.Log("-------------------------------------------");
TheMiner.Log("Inspecting an instance","Inspect");
mObjToInspect = new MyClassToInspect();
TheMiner.InspectObject(mObjToInspect, "Inspect");

//Class to print out
class MyClassToInspect

public var FirstVar:int = 0;
public var SecondVar:String = "foo"
}

Better Filtered content

You can now toggle a Permanent Search filters option in the configuration tab

By doing so, any text you enter in a given session inside one of the search box (MemoryProfiler, PerformanceProfiler, LoaderProfiler, UserEvents) will remain active after you close the application, and reloaded when you start a new session.

This way, when you do iterative work on optimizing your application, you don’t have to lo0se time on remembering, and re-entering the same info over and over again.

The Permanent Search Filters  are also used when using Raw Data Dumps, this way it’s a lot easier to track down precise information in those huuuge list of info.

Average per frame

Did you ever try to know precisely how much time you function are running?

The Performance profiler now offer a way to make a ratio of time taken by a function over a period, which give you a time that can be calculated in microseconds!

What do we have here….

Each frame, around 23 microseconds is spent in the b2Mat22/Solve function calls

and 0.1 Millisecond in b2Mat22/Set

Do you have a Performance budget? This is the tool you need!

Last but not least: The Resources Grabber

Do you link directly to JPG and PNGs?

Do you load SWF at runtime? encrypted?

The resource grabber feature (in the Loader profiler) can expose, and redirect you directly to file being downloaded , and SWF being loaded by the VM.

If it’s a simple media, clicking in a icon will pop-up a window and show you the file in your browser.

If it’s a SWF, it will ask you to save the SWF bytes in a file somewhere.

The file is the Unpacked, and Unencrypted version of any SWF.

This means you can pass it directly to a decompiler to check the content.

TheMiner

For those who already use TheMiner, you know that these are only little addition compare to what’s already in it.

I suggest you give it all a try to know if you like it! (you will)

Comments are closed.

%d bloggers like this: