anchor.diff:  		animate(src, transform = matrix()*2, alpha = 0, time = 5) //fade out
   		animate(transform = oldtransform, alpha = 255, time = 0)
   
  -/obj/effect/rune/proc/fail_invoke(var/mob/living/user)
  +/obj/effect/rune/proc/fail_invoke(message=TRUE)
   	//This proc contains the effects of a rune if it is not invoked correctly, through either invalid wording or not enough cultists. By default, it's just a basic fizzle.
  -	visible_message("<span class='warning'>The markings pulse with a small flash of red light, then fall dark.</span>")
  +	if(message)
  +		visible_message("<span class='warning'>The markings pulse with a \
  +			small flash of red light, then fall dark.</span>")
   	spawn(0) //animate is a delay, we want to avoid being delayed
   		animate(src, color = rgb(255, 0, 0), time = 0)
   		animate(src, color = initial(color), time = 5)
  
positive.code: 	scribe_delay = 450 //how long the rune takes to create
  	scribe_damage = 40.1 //how much damage you take doing it
  	var/used
  
  /obj/effect/rune/narsie/talismanhide() //can't hide this, and you wouldn't want to
  	return
  
negative.code: 
  */
  
  /obj/effect/rune/proc/can_invoke(var/mob/living/user=null)
  	//This proc determines if the rune can be invoked at the time. If there are multiple required cultists, it will find all nearby cultists.
  	var/list/invokers = list() //people eligible to invoke the rune
  	var/list/chanters = list() //people who will actually chant the rune when passed to invoke()
  	if(user)
  		chanters |= user
  		invokers |= user
  	if(req_cultists > 1 || allow_excess_invokers)
  		for(var/mob/living/L in range(1, src))
  			if(iscultist(L))
  