What does this do? It returns passed time in seconds but with microsecond precision. The number param passed to micro_time.dll is treated as offset from which to start the count:

On the video I have compared result to diag_tickTime command, by passing diag_tickTime as param so it would start counting from the same point in time. As you can see diag_tickTime doesn’t have enough precision and only gets worse with time. I needed to log different processes which could start very close to each other, so this is why I made this extension. It is a debug tool just like delay_ms.dll. If you find other uses for it, be my guest.

This is the code from the video:

t = diag_tickTime; onEachFrame {hintSilent str ["micro_time" callExtension str t, diag_tickTime]};

Example params:

"micro_time" callExtension "ABOUT"; //about info "micro_time" callExtension "0"; //start counting from 0 "micro_time" callExtension "0"; //continue counting from 0 "micro_time" callExtension "12345"; //reset and start counting from 12345

Download it from here.


EDIT: micro_time2.dll v1.0 is now available! The difference between micro_time2 and micro_time is that micro_time2 will return number of seconds since Epoch. If you pass a number to the extension it will treat it as offset starting from the Epoch time. It also returns milliseconds rather than microseconds.