Alright, for example in trigger "move" there's a leak, when you order a unit to move to a center of a region.
(Center of a Region) is a function which points to the location in the center of the region. It creates a variable which is not used later. The right way to do that is this: (temp_point variable is a variable of type Location/Point
-
Events
-
Conditions
-
Actions:
-

Set temp_point=(Center of Region)
-

Unit - Order Hero to go to temp_point
-

Custom script: call RemoveLocation(udg_temp_point)
You should do things on random places in the map, you need to first set that place to a variable then do anything you want with that variable, then clear that variable out. Use
call RemoveLocation(udg_HERENAMEOFAVARIABLE)
call RemoveLocation(udg_NAMEOFVAR[INDEX_OF_AN_ARRAY_VARIABLE])
to remove temporary used regions use
call RemoveRect(udg_VAR_OF_TYPE_REGION)
to remove unit groups not used anymore use
call DestroyGroup(udg_VARIABLE)
to destroy a trigger that runs only one time for the entire game use
call DestroyTrigger(GetTriggeringTrigger())
and refer to this page:
http://www.hiveworkshop.com/forums/triggers-and-scripts-269/things-that-leak-35124/ for detailed information about all kinds of leaks.