NB Some of these limits may be out of date in the latest AGS versions or betas, please check the most recent help files, change logs and tech forums threads for details
The AGS engine has a number of limitations, many of which can be extended in the next release of AGS if you ask for them to be in the Technical Forum and can give an example of actually needing them extended.
Many of these limits are listed in the help file, but some are not:
- To ensure the pathfinder always works, your walkable areas should always be at least 3 pixels wide
- You can have about 150 lines of text in a listbox
- AGS only allows 50 characters and objects on the screen at the same time
- There's no hard limit, but a sprite cannot be taller than the screen resolution
- Objects are placed using low res co-ordinates (320x200, 320x240 and 400x300), so at high res modes (640x400, 640x480 and 800x600) you can only place them on even pixels
- You should be able to have up to 15 parameters to a function. 
- The "Play music on room load" textbox in the Room editor only accepts music numbers from 1-120
- You'll get an error if you define over 4 KB's worth of variables inside a function. 
- AGS currently allows the call stack to be 50 levels deep, so if you have a recursive function that calls itself more often you'll get the "call stack overflow" error. Additionally, the stack size is set at 4 KB so if the recursive function declares a lot of local variables you could reach the limit that way, too. 
- There is a total overall limit on the number of functions that can be exported by all plugins added together, which in theory it would be possible for a single plugin to exceed. It's in the region of a couple of hundred though, so it shouldn't be an issue. It wouldn't be too difficult to increase, if the need arose. 
The manual of AGS 3.1 lists these maximums. The following may invalidate some points made above, so please remember the bolded warning at the top of the page.
40 objects per room 100 local messages per room (excluding script) 299 state-saving rooms per game 300 inventory items 30000 imported sprites 30 controls on each GUI 500 dialog topics 3000 dialog-script messages 30 options per topic 20 screen overlays at a time 500 script GlobalInts (not including your own variables) 50 script GlobalStrings (not including your own variables) 5 background frames per room 20 mouse cursors unlimited characters unlimited views unlimited GUIs unlimited loops per view unlimited frames per loop