Process Templates
Adding Milestones from a Template
In addition to creating individual events for a project (as you might use to schedule meetings or phone calls) you can apply a whole series of events that have been created as a template. A template might represent the plan for an entire project, or just for a portion of it. You can create as many templates as you want on the "Processes & Milestone Templates" tab of the Settings layout. More here: Milestone Templates.
Note that a milestones can also be tied to a project phase: phases are complete optional but can be useful for getting a handle on very complicated projects. More here: Project Phases.
Adding Milestones by Hand
You can always apply a template to a project by hand: simply click "add milestones from template" on the Schedule tab of the Project's screen.
Applying a Template by a Script
If you want to create your own processes and add milestones to the calendar based on events and actions we haven't foreseen, you'll find a script waiting for your instructions.
The script "Apply Process Template ( TemplateID , ProjectID , ProjectName ) { Number , AvoidWeekends }" can apply a template to either a contact or a project when you pass it a TemplateID. (You may want to add the Template's ID to the "Processes & Milestone Templates" tab of the setting's screen so it is easier to know when IDs go with which templates.)
Read the comments in the header of this script carefully so you know what all the parameters do. We use this script to add items to the calendar when a project's status changes, but you can use it for all sorts of things.
Note that you'll find a companion script which can just add a single event to the calendar, linking it to a contact and/or project. Use this script when you don't need to apply a template's worth of milestones, but just need one event: "Create Edit Delete Event ( SourceNo ) { Operation , Hide, DateStart , DateEnd , TimeStart ... }"
Again, read the comments in the header of that script so you know what to send it.