"Starts Off Board" would be a great addition! It'd make something like Short Sliders a lot easier to create. It'd also be a good step toward adding a "drop" feature later.
Well, it doesn't really make a lot of difference if you know how: in the old Applet all pieces would be participating when you used it for playing in the Applet itself. And for the purpose of generating HTML for a Diagram elsewhere, or GAME code, you could drag the other participating pieces from the table to empty squares on the board after you had pressed 'Start Position', before generating the HTML or GAME code.
The problem with a drop feature is mostly in the AI, that it enormously drives up the branching ratio, and that you only start to distinguish useless drops from sensible ones after two more ply of searching. (As all drops are non-captures, and in general decrease your positional score, because pieces in hand are more mobile than on the board.) With such a large branching ratio the AI would not be able to search far enough ahead to see the advantage of any drop. What would be needed is some smart method for selectively generating drops that might be useful (e.g. those that deliver check, or where a weak piece attacks a very much stronger one). This is not easy in a context where dropped pieces can have arbitrary moves. E.g. for check drops you basically need a 'reverse' move generator, which gives you all moves to a given square, rather than from one. But some moves that can be described with XBetza are very hard to generate in reverse. E.g. for a Griffon.
Well, it doesn't really make a lot of difference if you know how: in the old Applet all pieces would be participating when you used it for playing in the Applet itself. And for the purpose of generating HTML for a Diagram elsewhere, or GAME code, you could drag the other participating pieces from the table to empty squares on the board after you had pressed 'Start Position', before generating the HTML or GAME code.
The problem with a drop feature is mostly in the AI, that it enormously drives up the branching ratio, and that you only start to distinguish useless drops from sensible ones after two more ply of searching. (As all drops are non-captures, and in general decrease your positional score, because pieces in hand are more mobile than on the board.) With such a large branching ratio the AI would not be able to search far enough ahead to see the advantage of any drop. What would be needed is some smart method for selectively generating drops that might be useful (e.g. those that deliver check, or where a weak piece attacks a very much stronger one). This is not easy in a context where dropped pieces can have arbitrary moves. E.g. for check drops you basically need a 'reverse' move generator, which gives you all moves to a given square, rather than from one. But some moves that can be described with XBetza are very hard to generate in reverse. E.g. for a Griffon.