News:

Welcome to World of Banished!

Main Menu

Funny queueing behaviour

Started by A Nonny Moose, October 14, 2014, 09:23:35 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

A Nonny Moose

When someone dies in the game and there is someone available in the Labour pool, the game often gets the name wrong.  It yanks in another body and clearly reassigns the person in the labour pool to the vacated job elsewhere.

Only names in the labour pool should be used for death replacements.
Go not to the oracle, for it will say both yea and nay.

[Gone, but not forgotten. Rest easy, you are no longer banished.]
https://www.haskettfh.com/winterton-john-hensall/

slink

It probably grabs the closest idle person no matter the profession, and keeps doing that until all of the jobs are filled or there are no more laborers.

irrelevant

I don't think it grabs the nearest person, I think it grabs the next one in the available laborer queue.

The engine seems to reassign jobs based on proximity to housing only at the change from Winter/Spring, Spring/Summer, etc.

A Nonny Moose

I had a specific example today.  X was the only labourer.  Y died.  Z got the vacated post and X disappeared into the mix somewhere.  The person that should have replaced Y was X but this was not the case.
Go not to the oracle, for it will say both yea and nay.

[Gone, but not forgotten. Rest easy, you are no longer banished.]
https://www.haskettfh.com/winterton-john-hensall/

rkelly17

#4
Having looked at this a bit, here is what seems to happen: When a worker dies the program reports "[name] the [profession] has died of [cause]." Then it reports "[name of laborer] has replaced [name of dead citizen] as [profession]." But, of course, the game is busy sorting people and jobs by proximity (up to a point), so by the time you find the named laborer and click on him or her and/or click on the workplace the game has sorted and someone else who lives closer has the job. The named laborer may have held the job for a very short period, but unless they live very close to the workplace, they won't keep the job long. It is more or less the same thing that happens when people move into a new house. When they first move in the game lists their previous profession, but if you watch it doesn't take long for them to switch to the closest job.

All bets are off when one gets to @irrelevant sized towns.  ;D

Further: This may indicate a potential problem with any mod that requires a certain educational level for certain professions. What happens when all people with the required education live far away from the job site?

Quote from: irrelevant on October 14, 2014, 11:00:03 AM
The engine seems to reassign jobs based on proximity to housing only at the change from Winter/Spring, Spring/Summer, etc.

This would be quite interesting and significant. Have you confirmed?


irrelevant

Quote from: rkelly17 on October 15, 2014, 09:26:15 AM
Quote from: irrelevant on October 14, 2014, 11:00:03 AM
The engine seems to reassign jobs based on proximity to housing only at the change from Winter/Spring, Spring/Summer, etc.
This would be quite interesting and significant. Have you confirmed?
I would say my proof is not conclusive, as I have witnessed it only one time. In Late Winter was was checking some poorly-performing farms with the pathfinding tool to see where the farmers lived. I was getting very discouraged as they were living all over the map. While I was checking it turned Early Spring. Suddenly, all the farmers I was checking lived right there. I went back and checked farms that I had just checked, and now they mostly had local farmers too.

Only thing I don't understand is why they didn't get reassigned sooner?

rkelly17

Quote from: irrelevant on October 15, 2014, 09:47:54 AM
Quote from: rkelly17 on October 15, 2014, 09:26:15 AM
Quote from: irrelevant on October 14, 2014, 11:00:03 AM
The engine seems to reassign jobs based on proximity to housing only at the change from Winter/Spring, Spring/Summer, etc.
This would be quite interesting and significant. Have you confirmed?
I would say my proof is not conclusive, as I have witnessed it only one time. In Late Winter was was checking some poorly-performing farms with the pathfinding tool to see where the farmers lived. I was getting very discouraged as they were living all over the map. While I was checking it turned Early Spring. Suddenly, all the farmers I was checking lived right there. I went back and checked farms that I had just checked, and now they mostly had local farmers too.

Only thing I don't understand is why they didn't get reassigned sooner?

How big was the town at this point? That might be significant.

irrelevant

#7
It was Sink Mill, maybe 2500-3000

rkelly17


irrelevant

#9
Well, the builder assignments were also lousy, that was where I always first notice the job assignment system failing. I have to assume that all job assignments are equally bad. It's just that the builders seem never to get reassigned.

Or were you referring to lag? For me, merchant boats seem to be the real lag culprits; 5000 doesn't seem to me to be much worse than 2000.

Actually what I think is, the initial job assignments always are random. It just doesn't seem so bad until you get a big town with guys living all over the map. That's why I think new jobs are assigned to the next available laborer, and then the job reassignment routine fixes things up a few times a year as needed.

rkelly17

Quote from: irrelevant on October 15, 2014, 10:47:23 AM
Or were you referring to lag? For me, merchant boats seem to be the real lag culprits; 5000 doesn't seem to me to be much worse than 2000.

I noticed this when we were doing the trading challenge; the boats on the river started noticeably after about 10 TPs. They lagged well before anything else. I think I've read that a mod disabling smoke also helps, but my memory is not such that I remember where.

Pangaea

I've always wondered what the UpdatePriority code is about. Do any of you know? Is this actually job assignments?

For instance:
UpdatePriority _updatePriority = Fourth;

The thing is, I think all the files have this set to Fourth, or at least a whole lot of them (mainly thinking about /Template here)

A Nonny Moose

Well, that discussion gives me a whole new outlook on the programming in this game.  I suppose it might be valid to shift people around, but changing their assignment, once made, is rather repugnant.  Why not just change the domicile?  They don't seem to have any permanent cohabitants.

I don't have access to the code, and don't want it.  I only observe the effects with the jaundiced eye of a guy who did a lot of Q.A. in his career before retirement.
Go not to the oracle, for it will say both yea and nay.

[Gone, but not forgotten. Rest easy, you are no longer banished.]
https://www.haskettfh.com/winterton-john-hensall/

rkelly17

Quote from: A Nonny Moose on October 15, 2014, 03:56:25 PM
Well, that discussion gives me a whole new outlook on the programming in this game.  I suppose it might be valid to shift people around, but changing their assignment, once made, is rather repugnant.  Why not just change the domicile?  They don't seem to have any permanent cohabitants.

Yeah, in Banished people change jobs, sometimes quite often, but only seem to change houses when (a) they become adults and a partner and empty house are available, (b) a spouse dies and another single in a house is available--though there are age limits--and (c) when you build too many houses a couple might spread out to two houses.

In one game I had one couple whose house was about equal distance between the market, fishing dock and trading post. They rotated between the three constantly.

A Nonny Moose

Quote from: rkelly17 on October 16, 2014, 08:34:12 AM
<snip>
In one game I had one couple whose house was about equal distance between the market, fishing dock and trading post. They rotated between the three constantly.


You win!  Best laugh I've had today.
Go not to the oracle, for it will say both yea and nay.

[Gone, but not forgotten. Rest easy, you are no longer banished.]
https://www.haskettfh.com/winterton-john-hensall/