Z2 (Alchemy) Pseudo Code

Good ole Golden Dawn to spell out everything, including how to do Alchemy properly in the Z2 formula. However it is difficult to read. So as an exercise I translated it into programming psuedo-code. Latter I regrouped the steps and paraphrased it again for more clarity. See its sister page here: Alchemy Paraphrased.

/******Golden Dawn Z2 Final Heh (Alchemy)*****/

/*A*/
Egg = Crucible OR Alembic;

/*B*/
Alch = Alchemist = Tiro;

/*C*/
Process = Spagyric  //following Calc(), Disolv(), Sep(), Conj(), Ferm(), Distil(), Cohab()

/*D*/
Matter = Herbs AND Alcohol;
GenForce = YESOD;

/*E*/
getCrapRdy();

/*F*/
invoke(HGA, Alch);
Egg.put(Matter);
invoke(BlindForce, Matter);  //awaken Matter, BlindForce == ???

/*G*/
evoke(???, ???);
distil(Egg);  //EvokeCnt==1; DistilCnt==1;  don't know what to evoke

/*H*/
DeadHead = Egg.decant();
Calc(DeadHead);
Egg.put(DeadHead);

/*I*/
Altar.set(Neophyte);
Altar.set(GenForce.tablet(), TRIANGLE);
Alch.announce("all prepared");
Alch.stand(EAST);
Alch.hold(LotusW, ARIES)

/*J*/
Alch.invoke(GenForce, Egg);
Alch.evelate(Egg);
Alch.say(GROVEL_GOD);

/*K*/
WHILE (Egg.color() <> BLACK)
     Ferm(Egg);
     IF (LongTime)
          evoke(elemental);
          IF element.color() <> BLACK
               quit_all();
     END IF
END WHILE
Alch.stand(NORTH);
Altar.set(Egg, NORTH);
invoke(SATURN, Egg);

/*L*/
define proc()
{
     Distil(Egg);
     DeadHead = Egg.decant();
     Calc(DeadHead);
     Egg.put(DeadHead);  //use gentle heat, should this count as Ferm() ?
     Disolv(Egg);
}
proc();  //call the process
//DistilCnt() == 2


/*M*/
Altar.set(Neophyte);
Altar.set(Egg, WEST);
Alch.hold(LotusW, EARTH);
invoke(LUNA_DEC AND DRAG_TAIL, Egg);
IF (NOT date.nineDaysBeforeFull())
    waitOneDay();
FOR night 1 TO 9 COUNT 1
     Egg.expose(MOON_LIGHT);

/*N*/
proc();
DistilCnt() == 3

/*M*/
Altar.set(Neophyte);
Altar.set(Egg, EAST);
Alch.hold(LotusW, SPIRIT);
invoke(MOON_INC AND DRAG_HEAD, Egg);
IF (NOT date.nineDaysBeforeFull())   //yes I'm aware its to the Full Moon again
    waitOneDay();
FOR night 1 TO 9 COUNT 1
    Egg.expose(MOON_LIGHT);
		 
/*P*/
Altar.set(Neophyte);
Altar.set(Egg, Triangle);
Alch.hold(LotusW, LEO);
invoke(SUN);
WHILE(Sun.in(SCORPIO) OR Sun.in(LIBRA) OR Sun.in(CAPRICORN) OR Sun.in(AQUARIUS))
    waitOneDay(); 
FOR hours 1 TO 12 COUNT 1
    Egg.expose(SUN_LIGHT);   //it says 12 hours each day, but not how many days ???
		
/*Q*/
Altar.set(Neophyte);
Altar.set(Egg, TRIANGLE);
Alch.hold(Lotus, SPIRIT);
Alch.say(quitNight_seekDay);
Alch.invoke(LUX, Egg); //not sure if you are supposed to say KHABS AM PEHKT etc. while doing this
Alch.check(Egg, Flashing);
evoke(elemental);
attempCnt = 0;
IF elemental.color() <> GenForce.color()  AND attemptCnt < 3)
     Altar.set(Sun.tablet(), SOUTH);
          Altar.set(Moon.tablet(), WEST); 
     FOR days 1 TO 7 COUNT 1
          Egg.expose(Altar);
     attemptCnt = attemptCnt + 1;
END IF
IF attemptCnt >= 3
    quit_all();

/*R*/
// still in the temple from Q
Alch.draw(FLAME_SWRD, Egg);
Altar.set(Egg, EAST);
Alch.stand(PILLARS);
invoke(MARS, Egg);
Altar.set(Mars.tablet(), PILLARS);
Altar.set(Egg, PILLARS);
FOR days 1 TO 7 COUNT 1
    Egg.expose(Altar);
Distil(Egg);  // in Mariae then Arenae

/*S*/
//assuming the temple is setup etc.
DeadHead = Egg.decant(); //don't throw the Dead Head away
Fluid = Egg;  //the liquid leftover
invoke(MERCURY, Fluid);
Alch.check(Fluid, Brillant);
FOR days 1 TO 7 COUNT 1
     IF Alch.check(Fluid, Flashing);
           BREAK;
     Fluid.expose(Sun_Light);
END FOR	 

/*T*/
//assuming the temple is setup etc.
Calc(DeadHead);
invoke(JUPITER, DeadHead);
set(DeadHead, Jupiter.tablet()); 
attempCnt = 0;

FOR days 1 TO 7 COUNT 1
     DeadHead.expose(Darkness);
attempCnt = 1;
IF NOT Alch.check(DeadHead, FlashLittle)
     FOR days 1 TO 7 COUNT 1
          DeadHead.expose(Darkness);
                attempCnt = attempCnt + 1;
END IF
IF attempCnt >=3
     quit_all();

/*U*/
Altar.set(NEOPHYTE);
Altar.set(4Kerub.tablet(), 4Corners);
Altar.set(Fluid, NORTH);
Altar.set(DeadHead, SOUTH);
sirp(FIRE, Egg);  //in the crucible, alembic, bottle, etc.
sirp(WATER, Fluid);  //
sirp(SPIRT, Egg AND Fluid);
sirp(AIR, air);  //the stuff that helps percholate
sirp(EARTH, DeadHead);
FOR days 1 TO 5 COUNT 1
     exposeAll.(Altar);
IF NOT Alch.check(Fluid AND DeadHead, FlashColorLight)
     quit_all();

/*V*/
Altar.remove(4Kerub.tablet());
Altar.set(Kether.tablet(EmpressScale), TRIANGLE);
Alch.say(GROVEL_GOD);
invoke(Kether, Fluid AND DeadHead);
Alch.draw(FLAM_SWRD, Fluid AND DeadHead);
IF NOT Alch.check(Fluid, DiamondSparkle) OR NOT Alch.check(DeadHead, GemGleam)
     quit_all();
		
/*W*/
Egg = Conj(Fluid, DeadHead);  //should look cloudy, not sure if Cohab instead ???
FOR days 1 TO 10 COUNT 1
     Egg.expose(SunLight);  //moving from Tiph to Ktr
Altar.set(Venus.tablet(), TRIANGLE);
Altar.set(Egg, TRIANGLE);
invoke(VENUS, Egg);
FOR days 1 TO 7 COUNT 1
     Egg.expose(Altar);
Alch.check(Egg, SoftColor);  //use elemetnal if needed
FOR days 1 TO 7 COUNT 1
     Ferm(Egg);
temperature = LOW;
WHILE NOT Egg.noExcess()
     Distil(Egg);
     temperature = temperature + 1;
END WHILE
put(Egg, Anathor)
FOR days 1 TO 7 COUNT 1
     Egg.cook();
END WHILE
suceded_op();

Alchemy Paraphrased & Comments

Home
Last updated on 08-Mar-2007 10:03 AM