@@ -0,0 +1,63 @@
2+title = "Life and Rift"
5+aliases = ["/docs/learn/azimuth"]
8+Associated to every Azimuth point are two non-negative integers known as _life_
9+and _rift_. This numbering system partition messages according to the quantity
10+of networking key changes and quantity of
11+[breaches](@/using/id/guide-to-breaches.md), respectively. This is explained in
12+more detail below. These values are utilized by [Ames](@/docs/arvo/ames/ames.md)
13+and [Jael](@/docs/arvo/jael/jael-api.md) to ensure that you are communicating
14+with a ship using its most recent set of keys.
16+Before it has been spawned, every ship begin with a `life` and `rift` of 0. For
17+galaxies, stars, and planets, these values are stored in the Azimuth PKI, while
18+for moons, these values are stored by their parent. Comets cannot change their
19+networking keys, nor can they breach, and so their `life` and `rift` are always 0.
21+You can check your current life and rift number by running the `+keys our`
22+generator in dojo. You can inspect another ship's life and rift by running
23+`+keys ~sampel-palnet`.
27+A ship's `life`, or _key revision number_, is a count of the number of times which
28+a ship's networking keys have been altered. The initial value of the keys is
29+always 0, and the initial `life` is always 0.
31+Thus, setting the keys of a ship to a nonzero value for the first time will
32+increment the `life` from 0 to 1. Rotating to a new set of keys will then
33+increment the `life` to 2. Setting the keys back to zero would increment the
34+`life` once more, to 3.
38+A ship's `rift`, or _continuity number_, is a count of the number of times which
39+a ship has breached after its networking keys have been set.
41+In other words, a ship's `rift` will remain at 0 until its the first time it is
42+breached after its `life` has been incremented for the first time. Spawning a
43+ship has no effect on `rift`, and neither does breaching it, until its
44+networking keys have been set to a non-zero value for the first time.
46+Networking breaches do not affect the `rift` of any ship. They are only used to
47+count the number of personal breaches.
51+Configuring the keys to the same value they already were (i.e. a no-op) is
52+possible, but has no effect on the `life`. Thus `life` is actually a measure of
53+networking key _alterations_, and not the number of times they've been set.
55+Thus under ordinary circumstances, a breach will increment both `life` and
56+`rift` since a breach typically also involves changing the networking keys.
57+However, it is possible to breach without changing the networking keys. As a
58+breach resets networking keys to 0 unless new keys were specified, if the
59+networking keys were already 0 then they have not changed, and so `rift` will
60+increment but `life` will not. This is just a special case of breaching while
61+maintaining the same networking keys. That is to say, if the new keys specified
62+as part of a breach as the same as the old, again `rift` will increment while