Hi,
Here is a basic script (AppleScript) that does this:
Open the "Script Editor" application.
Copy/paste this script in the window of the "Script Editor" application.
------- script -----
set myCalendar to "for reminder task" -- ****** change this name to the name of your calendar ******
tell application "Calendar"
-- get every event from a calendar
tell events of calendar myCalendar
set startDateList to start date-- get all start date of these events
set summaryList to summary-- get all title of these events
set theCount to count
end tell
end tell
repeat with i from 1 to theCount--from each date in startDateList
set tDate to item i of startDateList
set eventTitle to itemi of summaryList
tell application "Reminders"
tell list "some list name" --******* change this name to the name of your list in the "Reminders" application *********
-- create reminder task (if necessary) , you can run the script multiple times, it will not create duplicates.
repeat with j from 1 to 10 -- to create 10 new tasks
-- the title of the new reminder
set remTitle to eventTitle & " : " & (item j of {"this task 1", "this task 2", "this task 3", "this task 4", "this task 5", "this task 6", "this task 7", "this task 8", "this task 9", "this task 10"}) -- list of titles
if (reminders whose name is remTitle and due date is tDate) is not {} then exit repeat -- this reminder already exists, no need to create duplicates, so exit the second loop
-- the note of the new reminder
set tNote to item j of {"this note 1", "this note 2", "this note 3", "this note 4", "this note 5", "this note 6", "this note 7", "this note 8", "this note 9", "this note 10"} -- list of notes
-- the due date of the new reminder from the start date of the event + (the days before, or on the days, or the days after)
set dueDate to tDate + ((item j of {-4, -3, -2 - 1, 0, 0, 0, 1, 2, 3, 3}) * days) -- list of integers (number of days)
-- the remind me date of the new reminder : 10 days later
set remindMeDate to dueDate + (10 * days) -- the number of days after the due date
-- create new reminder, high priority
make new reminder with properties {name:remTitle, due date:dueDate, priority:1, remind me date:remindMeDate, body:tNote}
end repeat
return
end tell
end tell
end repeat
------- end script -----
You have to make changes in the script according to your needs, (the names, each title in the list, each integer (the number of days) in the list, each note in the list, and the number of days after the due date for the remind me date of the new reminder.
Depending on the number of tasks you want to create, you need to add items or remove items in each list in the script.