OFS script statistics extension

OFS script statistics extension

Hey guys! I’ve created a new OpenFunscripter v3 Lua extension that enables detailed script-wide statistics. It’s an (unofficial) addition to the default statistics window (View tab > Statistics).

By default, the OFS editor only shows statistics relating to the interval between two actions found at or near the timeline navigation cursor. This extension adds a whole new layer of information by analyzing the entire currently active script.

You can download the extension from the GitHub repository. Below is an extract of the GitHub README with more information about the extension. Let me know what you think and if you find any problems or have suggestions for improvements/additions!


  • View statistics about the entire script, as well as for a selected portion of the script
  • View general information, such as number of actions, runtime of the script, number of peaks and troughs (see explanation on GitHub)
  • View the average, maximum and minimum action position, speed and duration, as well as peak and trough duration
  • Convenient GUI with nested cascading headers allowing you to see only what interests you (see showcase on GitHub)
  • Automatically refreshes values when the active script changes, when the script is changed in any way and when the action selection changes
  • Developed for OFS v3


  1. Download and extract the latest version of the extension from GitHub releases
  2. Copy the Script statistics directory and add it to the OFS extensions directory (%appdata%/OFS3_data/extensions/)
  3. Start OpenFunscripter
  4. In the Extensions tab, hover over the Script statistics list item and tick Enabled and Show window
  5. Optionally, you can pin the extension window to the OFS GUI. I prefer dedicating the right side of the UI to both the default and the extended statistics

GUI showcase


I can’t say how much use I’ll personally get out of this, but fuck yeah data! The more information we have to work with, the more cool shit people can come up with. Nice work!

ALSO, that’s one hell of a way to join the community.


Hah, cheers! And yeah, this was effectively an introduction to Lua scripting for me, since I’m coming from an embedded C/C++ background plus some Python experience. Was fun, worked on it for about a week. It’s not the most efficient implementation ever, but it’s good enough for “lustful” work haha.

1 Like