The Alter Action can alter the action class and action selector on any square on a map. It can also change multiple squares at once. The table below just shows the bytes of a script which just alters a single square. A script for altering multiple squares would contain multiple copies of the bytes 1-5. Bit 7 of byte 1 is responsible for marking the last alter block in the script.
By using the 0a nibble, and carefully designed maps you can effectively alter multiple maps in a fairly invisible manner.
|| **Byte** || **Description** || || 0 || The id of the string to print when player enters the square. || || 1 || Flags (see below) || || 2 || X-Coordinate of the square to change. Value is signed. So FFh means -1, FEh means -2 and so on. || || 3 || Y-Coordinate of the square to change. Value is signed. So FFh means -1, FEh means -2 and so on. || || 4 || New Action Class for the target square. || || 5 || New Action Selector for the target sqare. || || 6 || New Action Class for the current square. FFh means no change. Meaning of special value FDh is currently unknown. || || 7 || New Action Selector for the current square. Only present when byte 6 is not FFh and not FDh. ||
|| **Bit** || **Description** || || 7 || If this bit is set then this is the last alter sequence in the script. If it's clear then after byte 5 another 5-byte alter block follows. || || 6 || Unknown || || 1-5 || Unknown (Looks like these bits are not used in any map) || || 0 || If this bit is set then the X and Y coordinate is relative. If it's cleared then the coordinates are absolute. ||