Looking for MicroMacro 1.x docs? You can find them on the old Wiki

System Requirements

It's called MicroMacro for a reason. The minimum requirements are very low:

  • Windows NT (XP or newer)
  • 10MB storage space

Installing MicroMacro

First, navigate to the MicroMacro downloads page and grab the latest version. If you do not have a 64-bit OS and CPU, be sure to get the 32-bit version of MicroMacro. If you are unsure whether you have a 64-bit OS and CPU, it is probably safe to assume that you do unless your computer is very old.

Once your download finishes, you need to extract the package. The easiest way to do this is to simply right-click the downloaded file (it should be named something like "micromacro.1.97.01_x64.zip" and you can find it under your Downloads folder) then select "Extract All." If you have installed 7-zip, WinRAR, or other archival softwares, your right-click context menu may differ, but the process should be self-explanatory. Extract the files to wherever you would like.

That's it! Your copy of MicroMacro is ready to use. You may wish to do some final configurations as detailed below, or move on to creating your own scripts.


In the MicroMacro root directory, you may see a file named "config.lua". This file contains all of the basic configuration options for MicroMacro. You can change the settings as follows:

Configuration KeyDetailsDefault
logRemovalDays Automatically delete log files older than this number in days. This should be an integer. Use a value of 0 to disable automatic log removal. 7
logDirectory The directory where you want to store log files. Must be a string value. "./logs"
logLevel The default log level (used unless your script modifies this) that must be met to log a message. The value must be an integer between 0 (emergency) and 7 (debug). You probably should leave this at its default value. See log.setLevel() for more information. 6
scriptDirectory This is the location where you will store your scripts. While you may run scripts from outside this directory, it's usually a good idea to keep things contained here. "./scripts"
memoryStringBufferSize Size of the buffer (in bytes) used when handling strings in memory. If you need to handle large memory strings often, you may want to increase this, but doing so will also result in the program consuming more memory. 128
networkEnabled Whether or not network functions are enabled. If disabled, the whole Network and Socket modules will be unavailable and it will become impossible to do any TCP/IP communication. You may disable this if you do not need any networking and are paranoid about security. Must be true or false. true
networkBufferSize Size of the buffer (in bytes) used when reading socket data. That is, this is the maximum number of bytes read in a single Winsock recv() call. Leave this alone unless you know what you're doing. 10240
recvQueueSize Maximum number of packets we will hold in each socket's receive queue. Once the queue is full, older packets will begin to be removed. Leave this alone unless you know what you're doing. 100
styleErrors Whether to render errors with style or not. Essentially, this just applies hightlighting to output errors to make important pieces stand out a bit better. This option is ignored if your terminal does not support ANSI mode. true
fileStyle The ANSI escape sequence to use for styling filenames. "\x1b[38;5;35m"
lineNumberStyle The ANSI escape sequence to use for styling line numbers. "\x1b[38;5;44m"
errMessageStyle The ANSI escape sequence to use for styling the error message itself. "\x1b[38;5;228m"
yieldTimeSlice Whether or not CPU time is yielded back to the system. When this is on, MicroMacro will reduce its CPU usage (often down to <1%) and attempt to maintain a 1,000 cycles/second speed. If you turn this off, MicroMacro instead consumes any available CPU time it can and will run as many cycles/second as possible. Leave this alone unless you know what you're doing. true

Page last updated at 2024-03-27 00:21:01

Copyright 2024