Do you use a bunch of empty objects to define the collision in your levels? Does it take up a lot of CPU? Do you want bigger levels? This script could help!
The script will take every instance of an object index and merge them together into bigger objects with bigger sprites! This can help optimize your game by trading CPU usage with GPU usage. Take note this script works best with mostly empty objects, which are commonly used to define collision in your game. If your collision objects require specific instance interaction throughout the game then it may not work very well. Please look at the script's commenting before use.
Simply run the script once when your level is done creating objects and thats it! Asset packages available for both GMS2 and GMS1.4. Works on Windows and probably everything else. You can get the script off pastebin here as well: https://pastebin.com/raw/EMB3W4RG
All my code on the marketplace is entirely free and no credit is needed, just keep makin' games!
Contact email@example.com if you have any feedback or questions.
EDIT: It appears a recent update has made some optimization changes for the better and has made this script mostly worthless on GMS2 v2.2.1+. You could still use it for GMS1.4, but in GMS2 it will just create unnecessarily large texture pages for your game when the engine has already done most of the optimization for you.