Here's a sample mission with scripted troop pickup/dropoff. It uses coalition.addGroup() and missionCommands.addCommandForGroup() for spawning, with built-in waypoint so the dropped troops navigate to the nearest objective area.
The biggest problem I encountered while making this was understanding how missionCommands.addCommandForGroup() actually functions in multiplayer, because things that appear to work for the mission host may not be available for other players, depending on the circumstances.
Specifically, you cannot simply call addCommandForGroup for each client group at mission start. Rather, you must only call addCommandForGroup when that group is populated by a client, requiring the script to use a periodic timer to check the client slots for non-nil state.
There are still a lot of new features to add to this mission, but I thought I should post this before it gets even more complicated, in the hope that others can learn from it.
Anyway, here's a syntax highlighted copy of the Lua, and it's also attached, and embedded in the attached miz.
http://pastebin.com/6awatkUz
Here's a video showing a hot-drop of troops via the radio command: http://www.twitch.tv/dickfly/c/2281684
Followup-comment:
The infantry AI in DCS can use some improvement. They seem to path around buildings just fine, unless there are enemies nearby, in which case they will *always* assume a defensive posture, even if the enemies have no line-of-sight due to terrain or structures. The consequence is that troops dropped into a city will fail to kill their enemies, even if the enemy is vastly outnumbered. Troops that have entered "combat mode" will sit in place if their line-of-sight to the target is obstructed, and they seem unable to re-route and engage.
Update May 14:
Updated the mission to include evacuating/relocating troops. Attached as HueyDrop2.miz. HueyDrop.miz NewHuey.lua HueyDrop2.miz