Here are various limits in Free Hero Mesh (many of which are much more than what they are in Hero Mesh):
  *  Levels: 65536
  *  Classes: 16383
  *  Local user variables per object: 2048
  *  Global user variables: 2048
  *  User messages: 16384
  *  Global user functions: 16384
  *  Pictures: 32768
  *  Pictures per class: 255
  *  Strings: 32768
  *  Animation steps: 255
  *  Global hash table: 8888
  *  Local hash table: 5555
  *  Picture size: 255 x 255
  *  Level grid size: 64 x 64
  *  String length: 8000
  *  Moves per level: 65535
  *  Labels per class: 32768
  *  Macros: 16320
  *  Compiled code size per class: 65519 cells
  *  Each lump name: 125
  *  Encoded level size: 950 megabytes
  *  Puzzle file size: 2 gigabytes
  *  User cache size: 1 terabyte

Note that the limits of the hash table sizes may indirectly affect the other limits. The hash table includes macros, user functions, labels, and user variables. This means that many of the limits above cannot actually be achieved using the default settings. The hash table sizes may be changed at compile time by editing the <tt>class.c</tt> source file.

One cell of class codes is a 16-bit value (2 bytes).

A puzzle set consists of four files; each is limited to 2 gigabytes.

Changing any of these limits does not change the behaviour of the game, but may change what puzzles it is capable of loading.