We'll also need a way to figure out what the tie number is for the Xth tie, so we can address it using the other tie functions.
Or perhaps the entire tie system needs to be reworked? I've figured out a way to more or less make any drastic changes in how stuff works backwards compatible, so you don't have to worry about that. (we treat obsolete sysvars as macros for a new system during DNA execution.)
Maybe instead of the tie numbers we're using now (which have 32000 possible numbers) we just have 4 (1,2,3,4). If a tie attaches to you now, you can find it's number using tiepres (with a delay of 1), so in a new system with only 4 tie numbers, it'd still take a cycle for you to discover the presence of the tie unless you fired it (don't display ties with age less than two full cycles unless you're the initiator).
That would make tie commands more likely to evolve, since picking a number from 4 is much easier than picking one from 32000.
Maybe we have one memory set (tielen, tieang, etc.) for all the ties, and to switch the target of the memory set, you do "number tiefocus" as a command. Then all your memory locations are updated for the new tie mid DNA execution (would be similar to how *.thisgene works).
Then again it wouldn't work for commands unless you create some kind of command stack or add a section to the tie structure for holding commands.