What happens when a birth time lands in the hour a solar term changes? A 30-minute error can swap an entire pillar.
I spent the past year building a computation engine for this system and reverse-engineering its rules. I don't treat it as a mystical practice. I think of it as a modeling system written in ancient language. Once I translated the terms into engineering concepts, the underlying structures started to look familiar.
The graph under the classical terms
The implementation starts with a directed graph of five nodes: Wood, Fire, Earth, Metal, and Water. Its edges have three action types:
-
fuels: A's energy pattern nourishes B -
shapes: A's pattern constrains and molds B -
drains: A's pattern draws energy out of B
Every classical rule maps onto the graph. The traditional vitality states a node can occupy are canonical network states under an external drive signal. Once the graph is in place, the rest is graph traversal.
What the ten roles do
The system defines ten archetypal roles, ten orthogonal dimensions for observing personality. I use a role matrix: for each input, every dimension gets an activation weight. In the product, we render them as interactive archetype animals because people parse the animals faster than abstract factors.
The roles describe dynamics. One may fuel or drain you, and pressure changes which one activates.
Time has two layers
- Long phases: The lifespan is segmented into extended phases, each with a different dominant graph configuration.
- Annual drive: Each year contributes an external input that perturbs the network.
Put together, these form what I call an energy-weather layer, a rolling state simulation over time. The weather comparison only goes so far. A forecast can say rain may be coming; packing an umbrella is your decision. The system leaves that decision alone.
The day node is the reference
The baseline activation state is the day node among the four time pillars. I measure every other node relative to it using the graph's edges. That reference frame keeps the calculation from turning into interpretive mush.
The boundary cases take the work
Most of the engineering effort went into handling boundaries.
- True solar time: Clock time follows your time zone's central meridian. Solar position at the actual birthplace can differ by tens of minutes. Usually that's harmless. Near an hour when a solar term changes, a 30-minute error can swap an entire pillar.
- Daylight saving: North America changed its DST rules in 2007, and the southern hemisphere shifts in the opposite direction. I delegate conversions to the platform's IANA time-zone data rather than maintaining a table by hand.
- Half-hour offsets: Adelaide is UTC+9:30; Kolkata is UTC+5:30. Any conversion that assumes whole-hour offsets breaks.
- Year and month boundaries: Lichun in early February sets the year boundary. Lunar New Year doesn't. Month boundaries follow solar terms, not calendar days. Two schools disagree about the day boundary at 23:00, so I exposed that choice as a config flag. It's a schema decision.
The part I'm still unsure about
My working theory is that these systems began as observation-based models, recording patterns in human behavior in its time and place, using the formal language available then. I suspect the mystical framing accumulated in later centuries. I can't establish that history from the implementation, so I keep it as a theory.
We show the computed pattern from someone's birth data. It doesn't tell them who they are.
The full derivation is documented on the AcrosStar blog.
Disclaimer: this post is not medical, legal, or financial advice. The system described is a cultural and cognitive framework for self-observation; outputs vary by individual.
Top comments (0)