MIRCscriptedAstrology

From Exalted - Unofficial Wiki
Jump to: navigation, search

Example Astrology script for mIRC

/rolly {

 var %reps = $calc( $1 )
 set %sux 0
 var %dice = $null
 :rep
 var %die = $rand(1,10)
 if ( %die == 10 ) inc %sux
 if ( %die >= 7 ) inc %sux
 var %dice = %dice %die
 dec %reps
 if ( %reps > 0 ) goto rep
 ;  echo 2 %dice . %sux

}

/astrology {

 var %cha = 2
 var %wit = 5
 var %int = 2
 var %ess = 3
 var %per = 5
 var %lin = 2
 var %cal = 0
 var %fat = 0
 var %occ = 2
 var %col = 3
 var %roll1 = $calc( 0 )
 var %petdiff = 2
 var %praydiff = 4
 var %cosign = $?="How many cosignatories? 0-6"
 var %cntrsg = $?!="Do you have a countersignatory?"
 var %extn = $?="How many hours do you pray?"
 var %exty = $int( $calc( %extn / 3 ) )
 if ( %exty > 3 ) var %exty = 3
 var %petition = $calc( %wit + %lin )
 var %pray = $calc( %cha + %per )
 rolly %petition
 ;  echo 1 Petition %petition dice : %sux sux
 if ( %sux < %petdiff ) {
   ;    echo error, not enough successes
   halt
 }
 else if (%sux < 4) && (%sux >= 2) {
   var %praydiff = $calc(%praydiff - 0)
   ;    echo prayer diff 5
 }
 else if (%sux < 6) && (%sux >= 4) {
   var %praydiff = $calc(%praydiff - 1)
   ;    echo prayer diff 4
 }
 else if (%sux >= 6) {
   var %praydiff = $calc(%praydiff - 3)
   ;    echo prayer diff 2
 }
 if ( %cntrsg ) {
   var %roll1 = $calc( 3 )
   ;    echo prayer countersignatory
 }
 ;  echo 1 %cosign Cosignitories
 ;  echo prayed for %extn hours   + $+ %exty dice
 ;  echo dice %pray
 var %prayerroll = $calc( %pray + %exty + %cosign )
 rolly %prayerroll
 var %prayerextrasux = $calc( %sux - %praydiff )
 ;  echo Prayer Roll Dice: %prayerroll . Base Sux: %sux  . Extra Successes: %prayerextrasux
 var %destiny = $calc( %int + %fat )
 rolly %destiny
 if ( $?!="Do Destiny Planning and Precomputed Horoscopes?" ) {
 var %destsux = $calc( ( %sux - %ess + 1 ) )
 var %horoscope = %calc( %int + %occ )
 rolly %horoscope
 var %horosux = %sux
 if (%horosux > %destsux) var %horosux = %destsux
 var %destsux = $int( $calc( %destsux / 3 ) )
 var %horosux = $int( $calc( %horosux / 3 ) )

} else {

 var %destsux = 0
 var %horosux = 0

}

 var %expet = $int( $calc( %prayerextrasux / 3 ) )
 var %musid = $?="Total essence of assisiting Sidereals?"
 if ( $?!="Display Trappings?" ) var %ritbe = 1
 else var %ritbe = 0
 var %essroll = $calc( %ess + %col + %ritbe + %musid + %expet + %horosux + %destsux ) 
 rolly %essroll
 say Effect Roll Successes : %sux

}

Comments

Before anyone says anything... yes, I am aware that this doesn't work easily and there isn't very many easy options but it does work correctly... AFAIK. =) You can use it to make your own scripts, or just use it for yourself. Er, make sure you copy it from the edit window - the normal window has formatting problems - GoldenH

Thanks, GH! I'm going to try this out right now. Poor #WoD... - Balthasar