very nice
only a few more suggestions: return PLUGIN_HANDLED in your grab_off() function, I don't wanna see -grab all the time when I release my mouse button. you should also use TE_BEAMENTPOINT instead of TE_BEAMPOINTS, looks smoother ^^. oh, and it'd be nice to grab entities, once it does that I'll approve it immediately and call it a perfect plugin
edit: one more thing. set the user's gravity to 0 when they're using grab+rope. should look better ^^