Is it possible for gameobject A to broadcast to many other gameobjects that are not its children?
SendMessageUpwards will work for ancestors, which (if shared) can broadcast the message.
You could also tag them, and do a FindGameObjectsWithTag into a GameObject array, then cycle through them in a loop using GetComponent to access the scripts directly. This may be more efficient.