I tried (dauf)Q, thinking that would describe a queen that could pass through friendly pieces, but if it captures after unloading the captured piece ends up at the starting square of the whole move. Is that intended?
No, this was a bug. I fixed that now.
Doesn't the withdrawer in Ultima move as a queen, so wouldn't need to detect the board edge?
The problem is that when you put a plain mQ move in the Withdrawer, it can also make this move away from an enemy piece without capturing it. To make the capture mandatory you have to detour the path over the potential victim, either passing through an empty square or hopping over a friendly piece, but capturing as the only way to pass over an enemy. But if you do that (e.g. [mcK-bK-fmQ][dK-buK-fmQ]) the Withdrawer can no longer move away from a board edge. So you would need an extra [E-mQ] move (or change mc to mco for the sensing step).
The same problem exists for the 'maximum range slider': you want to sense if the next square in its path is occupied by a friend, but you should also be able to approach an edge. So [Q-fdK-buK][Q-foK-bK]cQ would do it. (The simpler [dQ-buK][oQ-bK]cQ would allow null move when standing against a friend or edge.)
No, this was a bug. I fixed that now.
The problem is that when you put a plain mQ move in the Withdrawer, it can also make this move away from an enemy piece without capturing it. To make the capture mandatory you have to detour the path over the potential victim, either passing through an empty square or hopping over a friendly piece, but capturing as the only way to pass over an enemy. But if you do that (e.g. [mcK-bK-fmQ][dK-buK-fmQ]) the Withdrawer can no longer move away from a board edge. So you would need an extra [E-mQ] move (or change mc to mco for the sensing step).
The same problem exists for the 'maximum range slider': you want to sense if the next square in its path is occupied by a friend, but you should also be able to approach an edge. So [Q-fdK-buK][Q-foK-bK]cQ would do it. (The simpler [dQ-buK][oQ-bK]cQ would allow null move when standing against a friend or edge.)