I was frustrated to find out that in iCal, I could not attach alarms to events from other people's calendars that I had subscribed to. However, I later discovered that this is actually possible. Even though you cannot change the alarm settings on events that you have imported from other people using iCal's user interface, you can change them through AppleScript! A script such as the following should work:
tell application "iCal" to make new sound alarm at end of ¬
(sound alarms of (event event_index of calendar cal_index)) ¬
with properties {trigger interval:-30, sound name: "Hero"}
event_index and cal_index are variables. You have to set them to the index of the calendar and event that you wish to access. So, for example, if you have calendars named "Work," "Personal," and "My Imported Calendar," set cal_index to 1 to get to Work, 3 for My Imported Calendar, etc. I believe the index numbers match with the order the calendars appear in the calendar selection column in iCal.
Mac OS X Hints
http://hints.macworld.com/article.php?story=20040519175456346