PenUltima Online Forum Index Official Core: 096.7
Official Core: 097 2008-02-26
Donate towards the POL web hosting bill!
 POL Home   FAQ   Search    Memberlist   Usergroups    Register    Profile   Log in to check your private messages   Log in
Strange Life value [Coregina RC3]

 
Post new topic   Reply to topic    PenUltima Online Forum Index -> Bug Reports 097
Display posts from previous:   

Author Message
Developer Silver



Joined: 05 Feb 2006
Posts: 58
Location: Italy

PostPosted: Tue Jun 05, 2007 12:41 pm    Post subject: Strange Life value [Coregina RC3] Reply with quote

A really strange bug (?) happens in our live shard with latest 097 Linux core: sometimes Life and MaxLife of NPCs gets very high without a reason... so high that on next reboot POL can't start saying Life is out of value for that NPC... Confused

Running RecalcVitals() on NPC, reset MaxLife to right value.

Here's our GetLifeMaximumValue function:
Code:
exported function GetLifeMaximumValue(who)
   var pf := GetObjProperty(who, "PF");
   if(pf)
      return pf * 100;
   else
      return 10000;         // default: 100
   endif
endfunction


In latest error happening we saw: cprop PF was 4, Life was something about 1.900.000.000 and MaxLife was 79548 Shocked

Even if we can debug our scripts to search for a point where Life could be wrongly set too high, MaxLife cannot be set by script... so I think there's a problem in core... Sad

Any idea?

P.S.: could this this the cause of our often

Author Message
OWHorus



Joined: 04 Feb 2006
Posts: 7
Location: Vienna, Austria

PostPosted: Thu Jun 07, 2007 2:59 pm    Post subject: Reply with quote

Hello,

we have a similar function for this and no problems at all.

I would recommend you change your script to:
Code:

var pf := CInt(GetObjProperty(who. "PF"));


The CInt() will ensure that you always have a valid integer, and when the CProp is missing, it will return 0, so the 'if' below will work too.

OWHorus[/code]

Author Message
Developer Silver



Joined: 05 Feb 2006
Posts: 58
Location: Italy

PostPosted: Thu Jun 07, 2007 5:19 pm    Post subject: Reply with quote

Mmmmh.. the else case should run if variable is 0 or an error... CInt() is useless... Confused

Post new topic   Reply to topic    PenUltima Online Forum Index -> Bug Reports 097 All times are GMT - 4 Hours
Page 1 of 1

 




Powered by phpBB © 2001, 2005 phpBB Group :: Theme & Graphics by GHS & Scott E. Royalty