Terciob wrote:Turley, here are a ready-to-use test server with minimum file requirements to startup.
Just download (1,50mb); copy 099 britannia uoconverted realm to pol/realm/ folder and run pol.exe; connect with account "admin" and password "a".
Select char "adminum"; a alot of npcs gonna attack you instantly and the pol memory usage will growing up.
http://www.4shared.com/file/_I1wV4nd/Pol099_beta.html
Hello Terciob,
I was curious and downloaded your small test....
Some comments - hopefully helpful:
I installed it, copied the realm folder from my POL 0.99 test folder, and started the server. Logged in and arrived at GA, was attacked by the NPCs. So I think it worked as you intended. (The only thing I changed were the ports - I used 5004 for the client and 5003 as debug port, i.e. I swapped these port numbers).
After login (I did not move the test character) NPCs started to 'attack'. But there were lots and lots of dead NPCs lying around - why? Memory started to increase in increments of 8-20 kBytes, slowly but steadily.
But - NPCs had a lot of event queue overflows, permanently, so the event queues could be one reason for the permanent memory allocation. Also NPCs could not decay, because there are scripts missing and the decay did not work:
"Unable to read script 'scripts/control/OnDestroyCorpse.ecl'"
When I log off, the memory growing stops immediately. I could not really see it - what causes the NPCs to die?
So memory grows only, when I am attacked, but all they do is running around and having lots of event queue overflows.
I also used my own core (Rev 320, but complied with NET 2008 Express), the behavior was the same.
The memory growing seems to be connected to the event queue overflows. When I move the character to the other end of GA, very far away from the NPCs, event queue overflow has a much lower rate, but they still happen. Accordingly memory goes up, but much slower. When I log off, the NPCs seem to stop - no event queue overflows, no memory growing.
So maybe the event queue overflows are responsible for the slow memory growing? You could try (within this test scenario) to increase the event queue size and check if memory still grows. Also - what are these NPCs doing when the character they attack is very far away, more than 40 tiles? Are they still running around and trying to attack? Event queue overflows are slower (and so is memory grow), but still happen, if the character is on the far side of GA. Overflows only stop when I log off. Then memory stops to grow too - completely.
I also tried to activate the Windows Low Fragmentation Heap - makes no difference in behavior. So I would try to look into the event queue overflows. I do not know the AI scripts (we do not use the distro), but it is clearly connected to the AI script activities. Interesting that all stops, when I log off, but not when I am far away.
This are my ideas - I hope they are useful...
OWHorus