Vote to end the LAG!

General out-of-character discussion among players of Cantr II.

Moderators: Players Department, Public Relations Department

Vote to end the lag!

I vote to restore the old statistical animal model from the lag-free days.
24
56%
Lag? What lag?
4
9%
I vote to retain the current individualized animal model as described by Jur below.
15
35%
 
Total votes: 43
User avatar
The Sociologist
Posts: 878
Joined: Mon Sep 06, 2004 11:54 pm

Vote to end the LAG!

Postby The Sociologist » Thu May 31, 2007 7:33 pm

Jur Schagen wrote:Your suspicions are right, this _is_ about the animals. The sheer volume takes processing them into the hours, and that four times a day. As player requests (using the game interface) come on in concurrently, there's a turnaround point where all processes jam up into eachother and all processing bogs down into snail speed, waiting for scripts to unlock tables that don't get finished, and turning to "Cantr is down" pages.

Since animals are an integral part of the game, we can't just turn them off. We have decided to reduce their cycles from four to two times per day for now though - this should result in less lag in the 21:30-23:30 CET interval, which is he most problematic, because both European and American players are online then. Some lag will probably still occur after 03:30 and 15:30 though.

This measure affects the entire animal system (reproduction, travel, attacking, etc), if you see significant problems in-game because of this (in particular, animals getting extinct unexpectedly), please report them here. We are looking to get back to normal animal processing in a few weeks.

This is a temporary measure - we intend to take the animal processing to a secondary database so the regular player processing don't get affected. This requires some substantial programming though, which Chris will take up after his holiday. In the meantime, I will look over the relevant scripts as well to see if I can find any way to optimize them (though don't get too over-excited about the latter - I'm not that good really). Thirdly, we're looking to cap the total animal count (which has risen to about 2 million, while it used to be around 1 million before the lag) in conjunction with RD.

We are very sorry for the problems, but must ask you to bear with us for just a little longer. There will still be lag moments over the coming period, but they should be reduced significantly. Please be patient, we are aware of the problems and looking fo solutions.


Now in my old day job I would at this point bring a pointed finger down on the table top, making several little thumping noises, and announce that what has been suggested is not cost effective. I would point out that huge resources have already been devoted to this system, yet it fails to meet objectives. There is no likelihood either that the suggested fixes will do anything more than incur further costs to little avail. It must therefore be backed out of. I would here make further thumping noises and proclaim it "wrong in concept". At the sound of those words the system anaylysts would slump back in their seats and senior management would perk up and start frowning at said analysts. Because those three words were my code words to senior management for "dump it".

Yes, once upon a time I was a business analyst. So all I can do is ask you to trust my gut feel. Please let's vote to request ProgD to back out of the current system of individualized animals and return to the old statistical system. It would instantly cure the lag without any risk, and the risk is very great, that trying to maintain individualized animals will continue to suck up more and more programming time and more and more money (eg backup servers and the like).
Cherize
Posts: 350
Joined: Sat Apr 17, 2004 10:09 pm
Location: SC

Postby Cherize » Fri Jun 01, 2007 3:47 am

While my initial reaction is vote to return to the old days when the game was playable, I'm willing to give The One Honest Man his shot at fixing this mess.
User avatar
Racetyme
Posts: 1151
Joined: Sun Sep 11, 2005 6:21 am
Location: The Internets

Postby Racetyme » Fri Jun 01, 2007 3:52 am

I really like the current system. I don't think we need it to go back, there are other ways to get around the lag, which I will detail later, right now I'm feeling a bit off.
RAM DISK is not an installation procedure!
User avatar
kinvoya
Posts: 1396
Joined: Sun Mar 28, 2004 9:31 pm
Location: The Wide, Wide World of Web

Postby kinvoya » Fri Jun 01, 2007 3:55 am

I've never really understood the point of the 'individualized' animals. I thought it would mean that we could target specific animals but that's not how it works (or is it? I dunno). What is so individualized about them? The new hunting screen where you hunt everything at once is great. I wouldn't want to loose that.
<a><img></a>
User avatar
N-Aldwitch
Posts: 1771
Joined: Thu Mar 16, 2006 1:48 am
Contact:

Postby N-Aldwitch » Fri Jun 01, 2007 4:32 am

Kinvoya, the individualisation of animals allows for domestication. It also is the difference between "You attack an animal for 9 damage. It has 18 health. It does not die. The next person attacks it for 17 damage. It has 18 health. It does not die." and "You attack an animal for 9 damage. It has 18 health. Now it has 9 health left. The next person kills it by damaging it for 17." That was an example of individual animals.. the former can be coded so it appears to be individual (thus avoiding the damage thing) but it is not truly individual.
Nakranoth's "evil" character says:
"Thief! That's terrible! *shakes his head* That would hurt people's feeling if I did that."


http://www.sylorn.com - Free MMORPG in development.. need help.
User avatar
Nakranoth
Posts: 1054
Joined: Sun Jul 16, 2006 4:49 am
Location: What if I were in a hypothetical situation?

Postby Nakranoth » Fri Jun 01, 2007 4:58 am

Honestly... I suspect it would be easier and less server intensive to make it apparently individual... storing two numbers per animal group, per location/road... number of animals, and HP of the most injured animal... as is, injured animals don't really migrate... and animals on roads are often untouchable due to only walking around when they're healthy... I say hold onto the code for individualized animals, so it can be easily applied to domestic animals, but put the wild ones onto something that simply appears to be individualized...
When domestication begins, it's assumable that you'd train the healthiest in the youngest part of its life, so you could pretty effectively assume full health and 1/(number of animal in location) percent of it's maximum life-span of random gender (unless there's a toggle that assumes both are present), then spawn said animal while subtracting one from the location's population.
Scratch and sniff text
User avatar
Sicofonte
Posts: 1781
Joined: Fri Feb 17, 2006 5:01 pm
Location: Into your Wardrobe

Postby Sicofonte » Fri Jun 01, 2007 9:17 am

Of course!

That is what I have been trying to explain from a week ago.
Tyche es una malparida. Espero que Ramnus y Pluto intervengan... o no :P
User avatar
psymann
Posts: 270
Joined: Thu Oct 12, 2006 4:53 pm
Location: Yorkshire, UK

Postby psymann » Fri Jun 01, 2007 9:43 am

N-Aldwitch wrote:Kinvoya, the individualisation of animals allows for domestication. It also is the difference between "You attack an animal for 9 damage. It has 18 health. It does not die. The next person attacks it for 17 damage. It has 18 health. It does not die." and "You attack an animal for 9 damage. It has 18 health. Now it has 9 health left. The next person kills it by damaging it for 17." That was an example of individual animals.. the former can be coded so it appears to be individual (thus avoiding the damage thing) but it is not truly individual.


I don't see why it should prevent domestication - you have 20 horses in the location. You domesticate one, which then becomes individual from the rest and dealt with in some way. The remaining 19 wild horses don't need to be individual, they can surely continue as a pack?

And I can only see a slight difference in attacking. Say you can do 8 damage to those animals with 18 health. With individual animals, I guess you could attack three different horses in a row, causing them each 8 damage, and not killing any. With non-individualised animals, you can only attack one at a time, so you'd attack three times, causing one dead horse for 18 damage, and 6 damage to the next horse in line. I don't really see the benefit of the first option - after all, in reality you'd hunt the injured one first anyway.
This actually seems to be the reverse of what you're suggesting, so I really don't understand your point here.
Presumably you'd just store "horse" as an integer, and "number of horses" is equal to "horse"/health, rounded up. So if there are 185 points of "horse" in a location, that is displayed as 11 horses (ten with 18 health, and one with 5 health). When someone does 8 damage, the amount of "horse" is down to 177, meaning there are only ten horses left (nine with 18 health, and one with 15 health) so one of them dies.

So I'm still not understanding the point of treating each wild animal as an individual, rather than just treating each pack of animals at a location individually.

Having said that, I don't know what it used to be like as I started after the new version was implemented, I think, and I don't really know what ProgD are really trying to achieve at the end of all this, and perhaps they have a clever plan that really does rely on individualisation. From what I can see, I'd agree with the Sociologist. But since I don't feel I really know enough about the subject, I'm not placing a vote either way. Just fix the lag please! ;)

psymann
Retired from www.warofempires.com
(psymann, psydkik, psyborg, psyanide on chronicles of the ages v2-v6) and now seeking a peaceful life in Cantr.

Run out of Cantr minutes? Try www.battlemaster.org for more roleplaying fun.
tiddy ogg
Posts: 1402
Joined: Sun Oct 02, 2005 8:53 pm
Location: Southampton, England
Contact:

Postby tiddy ogg » Fri Jun 01, 2007 9:54 am

I could never see anything wrong with the old system, and I'm sure, N-outwich, the rule then was that was always the weakest amimal being hunted.
So yes, give it one last try, then give up, otherwise the game will die.
User avatar
Jur Schagen
Administrator Emeritus
Posts: 507
Joined: Wed Apr 21, 2004 11:25 pm
Location: Amsterdam, Netherlands

Postby Jur Schagen » Fri Jun 01, 2007 10:04 am

Dear Soc,

you may have noted that my staff activity has significantly lowered over the past year; it is only recently that I've been somewhat more active, out of personal irritation over the lag. It is now that I remember why I had slowed down. It is because of people like you. No, I'm not saying that right: it is because of you. You somehow manage to twist every single word that I say into exactly the opposite direction that it was intended. You obviously enjoy making me look stupid and incapable, while never hesitating to boast your own skills and Cassandrian abilities. You want to know the story? All right, here it is.

Last week, my personal irritation over the lag (and the fact that I think we cannot continue to run the game like this) grew to a level that I decided to use my long-forgotten rights to the database to see if I could be of any help to the programmers (You know, it says PrD in my sig, but I never really programmed very much for Cantr; I don't really like the language used, and I decided I wouldn't do any more actual programming a long time ago). So I waited for a lag moment and went to the database to see what was going on in terms of processes. I found out that the animal processing was running, and that all other processes (player queries) were getting locked because of it. I waited for a second lag, and the database status was similar. I shared this with Chris (who of course already knew most of that), and asked if I should look at the scripts to see if I could spot a bottleneck that others had missed. Chris sent me the script, we decided to reduce animal processing for now, and he said he'd be on holiday over this week, so any implementation issue should wait for that time. I looked over the script, and didn't see any obvious faults (except the "grains of sand" problem); nonetheless, I came up with a solution that I believe will dramatically increase performance. However, this will require both a judgement by Chris (who knows, he might shoot me down over something I overlooked), and then some coding (though no dramatic amount). As I said, he is on holiday this week, so I made the announcement asking you to bear with us for just a bit longer.

Apparently, you don't want to wait for this any longer. Even if we announce that we may have found a solution, you come barging in and demand restoration of previous code (which in itself would be quite an operation to execute; merging sources in various development paths is a programmer's nightmare).

What are the options for someone if they find a game (or anything else for that matter) not to their liking?
1) Leave the game, the intenet is big and there's plenty of alternatives;
2) Join staff, and see if you can contribute something so it gets better;
3) Nagging, winging, and telling everyone how bad things are, and post tenacious polls like this one.
I personally have on "order of respect" for these three options, and the third isn't very high up.

Jur.

PS - sorry everyone else about the rant.
KEEPER: What is the air-speed velocity of an unladen swallow?
ARTHUR: What do you mean? An African or European swallow?
KEEPER: What? I...I don't know that! Auuuuuuuugh!

check out: www.myspace.com/fredlesshuh
User avatar
N-Aldwitch
Posts: 1771
Joined: Thu Mar 16, 2006 1:48 am
Contact:

Postby N-Aldwitch » Fri Jun 01, 2007 10:28 am

psymann wrote:I don't see why it should prevent domestication - you have 20 horses in the location. You domesticate one, which then becomes individual from the rest and dealt with in some way.


Yeah I don't get it either. XD
Nakranoth's "evil" character says:

"Thief! That's terrible! *shakes his head* That would hurt people's feeling if I did that."





http://www.sylorn.com - Free MMORPG in development.. need help.
User avatar
Jur Schagen
Administrator Emeritus
Posts: 507
Joined: Wed Apr 21, 2004 11:25 pm
Location: Amsterdam, Netherlands

Postby Jur Schagen » Fri Jun 01, 2007 10:32 am

Oh and there's some bad news as well... there was some lag yesterday that had nothing to do with the animals.
KEEPER: What is the air-speed velocity of an unladen swallow?

ARTHUR: What do you mean? An African or European swallow?

KEEPER: What? I...I don't know that! Auuuuuuuugh!



check out: www.myspace.com/fredlesshuh
Zanthos
Posts: 1525
Joined: Tue Mar 22, 2005 3:08 am
Location: US of A

Postby Zanthos » Fri Jun 01, 2007 11:33 am

for the most part i do not experience lag, but when i do i just x out and come back an hour later.

i mean, i understand this isn't an option for those of you who have a limited time per day to access cantr, but for those of you with flexiable schedules, maybe you could refrain from logging during the busy times, reducing both your lag and the lag of the people who can only log in then.

As for Jur, the staff is not paid so any progress they make is commendable in my book.
Person: Akamada doesnt control the animals.
You see a wild boar attack Person.
Person: I still dont believe you.

<Spill> Oh, I enjoy every sperm to the fullest.
User avatar
Dee
Posts: 1985
Joined: Tue Oct 26, 2004 8:06 am

Postby Dee » Fri Jun 01, 2007 5:12 pm

I voted to restore the old animal system back, but after I read Jur's post, I changed my mind. I'm willing to wait for him to fix it with Chris.
User avatar
Racetyme
Posts: 1151
Joined: Sun Sep 11, 2005 6:21 am
Location: The Internets

Postby Racetyme » Fri Jun 01, 2007 6:09 pm

I say, give it every chance possible to be fixed, then, at the very end, revert back. There is one more option no one has considered. I assume most of the unexplored islands out there have stable animal populations, but of course I could be wrong. But assuming I am right, why don't we just put in a little tidbit of code that makes it so only islands with at least 1 person on them have the animal code go into place? The checks for people on islands would take far less processing than all the isolated, unpopulated animal movement, and it would automatically come to life as soon as there was a visitor. There are some tiny ways to exploit it, like coming in in a boat, attacking the animals, and leaving before the next tick, but that would take years, and would really not be much of a problem. Anyone see any problems?
RAM DISK is not an installation procedure!

Return to “General Discussion”

Who is online

Users browsing this forum: No registered users and 1 guest