Yesterday I created an abstract which has a variable number of outlets, just like the common "trigger" or "unpack" objects. I dynamically patched this by sending a [obj x y outlet( message to the pd file. This works, however I soon discovered that all connections made from those outlets on the parent patch are broken when the parent is saved and re-loaded. This makes sense because the outlets are created via loadbang, but in order for loadbang to work, all connections must be set already. In my patch, the outlets are re-created every time the parent is opened, but only after the connection commands are sent. This poses a big problem for my abstraction, since I'd like to be able to save it and depend on the connections coming back just like any other object.
I assume normal objects such as [trigger] are coded rather than patched, which would allow for outlets to be set variably. Without resorting to coding, can anyone think of any way to solve this problem of broken outlets?