[CF List] problem with some diseases

huet.o at free.fr huet.o at free.fr
Mon Jul 8 16:32:56 CDT 2002


Hello,



En réponse à Peter Mardahl <
     
     peterm at tonks.EECS.Berkeley.EDU
     
     >:


>
     
      Are you sure the "broken" diseases aren't simply heavily damaging
     
     >
     
      the monsters but not killing them?
     
     >
     
     
     
Yes : to be sure, I take another player and put him just near a monster, and
then, I infect the monster with red death. My second player was infected too and
take about 2 damage by "itche" of red death (it's about 1 percent of its life
points). And even it's writen in the documentation that "second hand red death
infected" are less powerfull than "first hand infected", I think there's a
problem...


>
     
      Or has someone been meddling with the disease code recently and
     
     >
     
      broken the "negative" damage?
     
     >
     
     
     

I don't know anything in crossfire's code, but I've just take a look and put
some trace in a function (I'm not sure it's the right place...) :

int do_symptoms(object *disease) in disease.c
:
     
      there are stuff with dam : I add some trace code (see my printf :)
     
     ...
      /* Something special done with dam.  We want diseases to be more
	 random in what they'll kill, so we'll make the damage they
	 do random, note, this has a weird effect with progressive diseases.*/	  
      if(disease->stats.dam != 0) {
	int dam = disease->stats.dam;

	// OH : 
	printf("OHDIS dam1 : %i\n", dam);
	////////////////

	/* reduce the damage, on average, 50%, and making things random. */
	dam = random_roll(1, dam, victim, PREFER_LOW);

	// OH : 
	printf("OHDIS dam2 : %i\n", dam);
	////////////////
	
	if(disease->stats.dam < 0) dam = -dam;

		// OH : 
	printf("OHDIS dam3 : %i\n", dam);
	////////////////
	
	new_symptom->stats.dam = dam;
      }
...


-----------------------------------------------------------
then, I launch it and cause red death to a little pirate : here is the result

OHDIS dam1 : -52
Calling random_roll with min=1 max=-52
OHDIS dam2 : 1
OHDIS dam3 : -1

(repeated many times)


----------------------------------------------------
and then, I cause a leprosy
OHDIS dam1 : 50
OHDIS dam2 : 20
OHDIS dam3 : 20
Trying to insert in null-map!
arch leprous_skin
name leprous flake of skin
name_pl leprous flake of skin
face skin.111
food 5
type 72
weight 7
end




I must precise that the player (who cast these disease) is powerfull : level 49
of wisdom (because there is perhaps another bug -- it's another problem... : it
take lot of points causing cold to low level monsters, but it's perhaps a
corrected bug : it was with the 1.1.0 version)


Hope my desctiption of the problem and trace will help.
Olivier.



>
     
     
     >
     
      > Hello everybody,
     
     >
     
      > 
     
     >
     
      > I hope it's the right mailing list for my "bug" report.
     
     >
     
      > 
     
     >
     
      > 
     
     >
     
      > I make a character worshiping Devourers, and I found some "high"
     
     >
     
      disease
     
     >
     
      > ineficient to make damage : 
     
     >
     
      > 
     
     >
     
      > In fact, cold, flu and leprosy work fine, but typhoid, anthrax, red
     
     >
     
      death and
     
     >
     
      > black death don't make damage.
     
     >
     
      > 
     
     >
     
      > I tried to restrict the bug : in the archetypes file, all the "no
     
     >
     
      damaging"
     
     >
     
      > disease have a negative number for the damage (ex : for red death,
     
     >
     
      it's 
     
     >
     
      > "dam -10".
     
     >
     
      > Then, I tried to replace the -10 by 10 and red death is very deadly
     
     >
     
      (and it's
     
     >
     
      > the right comportment, I think.)
     
     >
     
      > 
     
     >
     
      > Finding this problem, I find other "dam -" begining lines that
     
     >
     
      probably have 
     
     >
     
      >the
     
     >
     
      > same effect (immolation that I didn't try have perhaps the same
     
     >
     
      bug).
     
     >
     
      > 
     
     >
     
      > Does someone have the right solution (personaly, I think it could be a
     
     >
     
      proble
     
     >
     
      >m
     
     >
     
      > in the archetypes file itself or a bug in its parsing...) ?
     
     >
     
      > 
     
     >
     
      > Olivier.
     
     >
     
      > _______________________________________________
     
     >
     
      > crossfire-list mailing list
     
     >
     
      > 
      
      crossfire-list at lists.real-time.com
      
      
     >
     
      > 
      
      https://mailman.real-time.com/mailman/listinfo/crossfire-list
      
      
     >
     
      _______________________________________________
     
     >
     
      crossfire-list mailing list
     
     >
     
     
      crossfire-list at lists.real-time.com
      
      
     >
     
     
      https://mailman.real-time.com/mailman/listinfo/crossfire-list
      
      
     >
     
     
     
    


More information about the crossfire mailing list