Check out Glinski's Hexagonal Chess, our featured variant for May, 2024.

Enter Your Reply

The Comment You're Replying To
H. G. Muller wrote on Tue, Oct 15, 2013 07:30 AM UTC:

Resurrection

The 'limiters' I introduced on actions like capture or hop did allow general probing for an activator in the environment, such as needed in Knight-relay Chess: just start in any direction to see if you find a friendly Knight to hop over with a 'bouncing hop' (dismounting it on the same side as you mounted it, t{N}N-bN, and then continue with a Knight move. This is something like a programmer's OR operation: the piece can do the final Knight move if in any one of the eight directions it probes for a Knight it finds one. It is in fact a multi-path move: you have to find your way over a Knight first before you can do anything, and all possible paths along which you are allowed to do that eventually merge to end on the same square.

The opposite of an activator is an inhibitor, like the Ultima Immobilizer. It would be nice if the notation could also handle such kind of pieces. But the logic is opposite: all squares in a certain neighborhood should be free of Immobilizers, not just one. For an inhibitor that would only prevent its neighbors from moving radially away from it, it would be easy. You would just write a prefix mtop{!I}K-bK- in front of the moves of pieces that could be affected by it. This would force the move to begin with a K step (in the opposite direction of where you would eventually end up) and then back (-bK), which would succeed if you (1) found an empty square there (m) (2) found a friendly piece and hopped over it (t) (3) brought you off-board to quickly retract the step (o) (4) found a piece to hop over that is not the feared immobilizer (p{!I}). But making the same probe in all directions to handle an omni-directional inhibitor, by decoupling it from the direction of the eventual move by prefixing the latter with an a does not work: It would allow the move if there is any path that avoids the immobilizer, immobilizing only pieces that would be completely surrounded by immobilizers...

It turns out that the notation as proposed can already handle this, provided we adopt a new convention. This convention is that the fragments ejected by an eruption specified by the x modifier are allowed to come together again, to resurrect the exploded piece. This resurrection would only succeed if all the fragments would coalesce. If only a single one would be missing, the resurrection fails, and the move is aborted.

This convention allows us to test for an adjacent immobilizer by a prefix xmtop{!I}K-bK-a. The logic for each individual fragment is the same as before: it can return to the initial square (where the explosion took place) in all cases except when it would have stumbled on an Immobilizer. But if one of the fragments does, because you were indeed sitting next to an Immobilizer, its path is blocked, so that it will not return to the explosion square, and resurrection there will fail. Without adjacent Immobilizer resurrection succeeds, the fragments become the real piece again, and continue the rest of the path as real move. (The a direction al modifier specifying that the move can go in any direction. Perhaps this should be implied after resurrection, as the previous step has no unique direction, fragments coming in from all directions, and is basically a null move. So what is 'forward' after this can only be defined in relation to the step before the explosion. And as the explosion was the first step here, this would mean the initial directional spec for the entire path, which by default is a.) If resurrection fails, because one of them did not make it back, the fragments evaporate as usual. They are 'rounded down' towards zero, as it were.


Edit Form

Comment on the page Betza Notation

Conduct Guidelines
This is a Chess variants website, not a general forum.
Please limit your comments to Chess variants or the operation of this site.
Keep this website a safe space for Chess variant hobbyists of all stripes.
Because we want people to feel comfortable here no matter what their political or religious beliefs might be, we ask you to avoid discussing politics, religion, or other controversial subjects here. No matter how passionately you feel about any of these subjects, just take it someplace else.
Quick Markdown Guide

By default, new comments may be entered as Markdown, simple markup syntax designed to be readable and not look like markup. Comments stored as Markdown will be converted to HTML by Parsedown before displaying them. This follows the Github Flavored Markdown Spec with support for Markdown Extra. For a good overview of Markdown in general, check out the Markdown Guide. Here is a quick comparison of some commonly used Markdown with the rendered result:

Top level header: <H1>

Block quote

Second paragraph in block quote

First Paragraph of response. Italics, bold, and bold italics.

Second Paragraph after blank line. Here is some HTML code mixed in with the Markdown, and here is the same <U>HTML code</U> enclosed by backticks.

Secondary Header: <H2>

  • Unordered list item
  • Second unordered list item
  • New unordered list
    • Nested list item

Third Level header <H3>

  1. An ordered list item.
  2. A second ordered list item with the same number.
  3. A third ordered list item.
Here is some preformatted text.
  This line begins with some indentation.
    This begins with even more indentation.
And this line has no indentation.

Alt text for a graphic image

A definition list
A list of terms, each with one or more definitions following it.
An HTML construct using the tags <DL>, <DT> and <DD>.
A term
Its definition after a colon.
A second definition.
A third definition.
Another term following a blank line
The definition of that term.