World of Banished

Conversations => Suggestions and Mod Ideas => Topic started by: Wood Cutter on January 01, 2015, 07:01:46 PM

Title: Immigration
Post by: Wood Cutter on January 01, 2015, 07:01:46 PM
How would a type of immigration system work to increase population when required. These immigrants could arrive on a trading ship and be allowed to stay for a trade price which would be quite high to make it quite difficult but possible if you have a fully stocked trading post. It could work in conjunction with the present Nomads.  Nomads are so unpredictable in their arrival that this could be another way to introduce new population. I have no idea whether  something like this could be implemented in Banished.......Just an idea that's all.

Edit... Well I guess silence says it all.....
Title: Re: Immigration
Post by: Bobbi on January 06, 2015, 08:38:25 AM
Sorry about the silence. I like the idea, but I am not sure if it is do-able. Not a modder.
Title: Re: Immigration
Post by: Nilla on January 07, 2015, 04:26:19 AM
Yes you might be right: My silence somehow meant that I wouldn't use a mod like that. I seldom take any nomads. In normal games, I find them more trouble than use, so I would not really like to pay to get them.

Title: Re: Immigration
Post by: irrelevant on January 07, 2015, 06:25:35 AM
I used to take nomads, until the smallpox incident  ;)

They really confer no real benefit other than a brief bump in population (along with with the significant disadvantages of uneducated workers combined with increased likelihood of disease). I can see no reason ever to take them again, except perhaps to help recover from some overwhelming disaster.
Title: Re: Immigration
Post by: rkelly17 on January 08, 2015, 01:54:34 PM
Is it possible to create educated immigrants, or is that part of the inaccessible "hard coded" part of the program?

@irrelevant, weren't you the one who took in the largest number of nomads and survived a year? Or was that @RedKetchup? I was always too chicken to try it, having had a "smallpox incident" myself once.
Title: Re: Immigration
Post by: RedKetchup on January 08, 2015, 02:58:17 PM
Quote from: rkelly17 on January 08, 2015, 01:54:34 PM
Is it possible to create educated immigrants, or is that part of the inaccessible "hard coded" part of the program?

@irrelevant, weren't you the one who took in the largest number of nomads and survived a year? Or was that @RedKetchup? I was always too chicken to try it, having had a "smallpox incident" myself once.

we both ! i think Irrelevant is ontop presently :)

and about educated immigrant.. i doubt, but need to be checked, verified i mean
Title: Re: Immigration
Post by: RedKetchup on January 08, 2015, 03:16:04 PM
there is the code for immigration from townhall.rsc:


ImmigrationDescription immigration
{
ComponentDescription _nomad = "Template/Nomad.rsc";

int _requiredPopulation = 8;
ComponentDescription _requiredStructures
[
"Template/Market.rsc"
"Template/TradingPost.rsc"
]

float _minGroupPercent = 0.05;
float _maxGroupPercent = 0.15;
float _timeDelayMonths = 24;
float _timeDelayMonthsTol = 48;
int _arriveMinMonth = 1;
int _arriveMaxMonth = 3;
int _leaveMonth = 7;
int _spawnRadius = 5;

float _sicknessAmount = 1.0;
int _sicknessTimeInMonths = 6;
}


and then the code for the nomads.rsc:


// layout of the entity
ComponentDescription resource
{
// how often to update
UpdatePriority _updatePriority = Second;

// declare types that will be used
Description _descriptions
[
"ui",
"toolbar",

"model",
"picking",
"highlight",
"character",

"statemachine",
"nomad",
]
}

NomadDescription nomad
{
ComponentDescription _citizen = "Template/Citizen.rsc";
MaterialInstance _maleMaterial = "Models/Citizen/MaterialInstance/MaleNomad.rsc";
MaterialInstance _femaleMaterial = "Models/Citizen/MaterialInstance/FemaleNomad.rsc";
}

StateMachineDescription statemachine { }

ToolbarDescription toolbar
{
StringTable _stringTable = "Dialog/StringTable.rsc:objects";
String _stringName = "Nomad";
}

CharacterDescription character
{
float _headingOffset = 0.0;
float _turnFilter = 0.96;
float _defaultAnimationBlendTime = 0.5;

float _slowSpeed = 0.75;
float _fastSpeed = 1.2;
float _fastestSpeed = 1.4;
}

PickingDescription picking
{
bool _useGraphicsMesh = true;
MaterialInstance _selectMaterial = "Material/SelectionMask/SelectionMaskSkin.rsc";
PickingGroup _meshes
[
{
PickingMesh _mesh
[
"Models\Citizen\CitizenPicking.rsc"
]
}
{
PickingMesh _mesh
[
"Models\Citizen\CitizenPicking.rsc"
]
}
]
}

ModelDescription model
{
MeshGroup _meshes
[
{
AnimationGroup _animations = "Models\Citizen\CitizenAnims.rsc";
GraphicsMesh _mesh
[
"Models\Citizen\CitizenMaleMesh.rsc"
]
}
{
AnimationGroup _animations = "Models\Citizen\CitizenAnims.rsc";
GraphicsMesh _mesh
[
"Models\Citizen\CitizenFemaleMesh.rsc"
]
}
]

int _displayIndex = 0;
int _subIndex = 0;
bool _randomIndex = false;
}

HighlightDescription highlight
{
EdgeGroup _meshes
[
{
EdgeMesh _mesh
[
"Models\Citizen\CitizenMaleMesh.rsc:edge"
]
}
{
EdgeMesh _mesh
[
"Models\Citizen\CitizenFemaleMesh.rsc:edge"
]
}
]
}

UIDescription ui
{
int _displayPage = 0; // set to 1 for tab layout
Dialog _dialog = "Dialog/StandardDialog.rsc:entity";

ElementController _controllers
[
{
ElementDescription _element = "pad";
String _insertAt = "userGroup0";
}
]
}

GroupDescription pad
{
int _minWidth = 250;
int _minHeight = 64;
}



so there is nothing about their education. if there would be a line that would set and indicate about education=0 (a parameter that would mean this) we would be able to change it to =1 but ... there is totally nothing.
Title: Re: Immigration
Post by: irrelevant on January 08, 2015, 04:28:49 PM
Quote from: RedKetchup on January 08, 2015, 02:58:17 PM

we both ! i think Irrelevant is ontop presently :)


Yes, presently  ;)
Title: Re: Immigration
Post by: kee on March 12, 2015, 02:58:08 AM
Tried to read that nomad code. Dif I miss something if I say that the age spread is random? If you only have 'nomad' as category some will be children and some will be adult- if you added a educated tag to nomads you could end up with educated children. That would be a bit gamechanging.
Title: Re: Immigration
Post by: Vulgarian on March 12, 2015, 10:15:15 AM
Quote from: irrelevant on January 07, 2015, 06:25:35 AM
I used to take nomads, until the smallpox incident  ;)

They really confer no real benefit other than a brief bump in population (along with with the significant disadvantages of uneducated workers combined with increased likelihood of disease). I can see no reason ever to take them again, except perhaps to help recover from some overwhelming disaster.

If you have an aging population bubble, taking in nomads might be a good way to quickly occupy the houses vacated by them dying off and avoiding the family break-ups that happen if you have excess housing.

That said, I haven't been taking in many nomads either. They seem to like appearing in large groups when I'm low on food.
Title: Re: Immigration
Post by: irrelevant on March 12, 2015, 10:47:49 AM
Yes, they can be good if you have excess housing (and food, and coats, and tools, and herbs, and....), and are trying to build pop. Just took in two batches in my current town, under these conditions.
Title: Re: Immigration
Post by: salamander on March 12, 2015, 02:43:48 PM
I agree with @irrelevant, nomads can be a good for population/extra labor, but you need to be ready for the possibility of a disease starting and spreading though the town.  At least having herbalists, and preferably a hospital staffed by a physician, is a good thing when you accept nomads.
Title: Re: Immigration
Post by: rkelly17 on March 13, 2015, 07:52:06 AM
Quote from: salamander on March 12, 2015, 02:43:48 PM
I agree with @irrelevant, nomads can be a good for population/extra labor, but you need to be ready for the possibility of a disease starting and spreading though the town.  At least having herbalists, and preferably a hospital staffed by a physician, is a good thing when you accept nomads.

If you don't have a working hospital sick people still "visit the doctor," but what they actually do is go stand on their front porch. It turns out that sick people standing on their front porches is an excellent way to spread and epidemic.   :(  >:(

Conclusion: Don't accept nomads before you have a working hospital. Lately I've been using @slink's version of the inn from the Fountain Mod, which won't produce nomads until the hospital is operational--keeps me from doing something too risky.