Result: the file_name() of the parent on success, else 0.
This functions MUST NOT be called for blueprints, from which multiple clones are to be created, inheritance parents, or clones themselves!
Objects with more lfuns than just 'create' won't get their programs replaced.
void create() {
...
replace_pgm();
}