Debate or Discuss on The Economy right now - Pros, Cons and Ideas to make Calradia an better place

  • 主题发起人 Dr-Shinobi
  • 开始时间

正在查看此主题的用户

Damn, someone needs to replace him if he doesn´t come back. The forums needs this balance like ying and yang.
Seeing the forums state rn it's clear we won't get a replacement and you can see why he left because other than him there were not many people to defend and so he got enough bs.
 
Seeing the forums state rn it's clear we won't get a replacement and you can see why he left because other than him there were not many people to defend and so he got enough bs.

Looking at the state the game is there won't be much chances somone will start defending it again. I was on the defending side but now I'm neutral cause after 9 months of development there are still same problems as at the begining and no big additions. I don't think the game is bad but it totally lacks replayabilty and becomes boring and frustrating at some points. Still I'm not saying it won't change in the future but i don't think it will be near future. I'm also starting to think that one year EA planned at the beginning will extend a lot :wink:
 
I was on the defending side but now I'm neutral
3oyu8c.jpg
 

Not yet :razz:

And going back to the topic.
Randomizing workshops in cities at the game start is terrible. I tested it starting 5 games and i saw some funny things like 2 line weavery in 9 cities and none Woodcutter on the whole map. Either remove this option or make it so it at least tries to fit nearby resources.
 
Not yet :razz:

And going back to the topic.
Randomizing workshops in cities at the game start is terrible. I tested it starting 5 games and i saw some funny things like 2 line weavery in 9 cities and none Woodcutter on the whole map. Either remove this option or make it so it at least tries to fit nearby resources.

I think if the workshops doesnt meet a certain amount of profit after some days it gets replaced by another one, so eventually they (should) even out.
 
I think if the workshops doesnt meet a certain amount of profit after some days it gets replaced by another one, so eventually they (should) even out.

Didn't noticed there is something like that. Still even if they change the new one is still random and in one of my playthroughs 15 years in and still most cities workshops don't fit the resources they have around. This makes it so something about 80% of trade that gives profit is only about raw resources.
 
I think the ratio between production / consumption in cities is not real, there are not enough workshops and people in cities to consume the excess production in villages, only when there are wars does it seem that there are variations in prices, there should also be non-productive jobs , like artists, clergy, court, etc. in cities to help consume non-essential goods like jewelry and fine clothes. Look this, a party arriving to any city, the soldiers are receiving money that the nobles payed , they spend their money in anithing? Even in beer and wine? They buy any presents to their wife's and parents?
 
最后编辑:
I think the ratio between production / consumption in cities is not real, there are not enough workshops and people in cities to consume the excess production in villages, only when there are wars does it seem that there are variations in prices, there should also be non-productive jobs , like artists, clergy, court, etc. in cities to help consume non-essential goods like jewelry and fine clothes. Look this, a party arriving to any city, the soldiers are receiving money that the nobles payed , they spend their money in anithing? Even in beer and wine? They buy any presents to their wife's and parents?

There is a semi-hidden luxury modifier to consumption past a certain prosperity threshold. I forget what it is off-hand but highly prosperous cities (think like 5000+) start to eat up jewelry like crazy.
 
There is a semi-hidden luxury modifier to consumption past a certain prosperity threshold. I forget what it is off-hand but highly prosperous cities (think like 5000+) start to eat up jewelry like crazy.

Somehow it doesn't affect jewelry prices. I have Pravend, Galend and Jaculan at around 7000+ prosp and Jewelry is cheaper there than in cities producing it.

P.S. checked when they were out of stock to be sure it's not affected by recent caravan visits.
 
There is a semi-hidden luxury modifier to consumption past a certain prosperity threshold. I forget what it is off-hand but highly prosperous cities (think like 5000+) start to eat up jewelry like crazy.
Damn XD this reminds me of Anno 1602, where "Aristorcrats" always want wine and cigars. Because of the cigars they set their own house on fire...and so on.
 
Damn XD this reminds me of Anno 1602, where "Aristorcrats" always want wine and cigars. Because of the cigars they set their own house on fire...and so on.
This reminds me of **** like tropico or simcity or just city builders in general where things burn for no reason
 
There is a semi-hidden luxury modifier to consumption past a certain prosperity threshold. I forget what it is off-hand but highly prosperous cities (think like 5000+) start to eat up jewelry like crazy.
It was relatively easy, and plausible, implement a mechanism, in which each time an army or a party arrived in a city, to recruit troops or to participate in a tournament , there would be a consumption boost. Nobles would buy luxury clothes and jewelry, soldiers exchanged worn weapons and armor, they will go to the tavern to eat and drink, spend their money there and consume wine, beer, meat, etc. This game is based in armies and parties, the economy should use it as a boost.
 
There is a semi-hidden luxury modifier to consumption past a certain prosperity threshold. I forget what it is off-hand but highly prosperous cities (think like 5000+) start to eat up jewelry like crazy.
Here is the semi hidden multiplier(underlined), if im correct.

public override float GetDailyDemandForCategory(Town town, ItemCategory category, int extraProsperity)
{
float num = Math.Max(0f, town.Prosperity + (float)extraProsperity);
float num2 = Math.Max(0f, town.Prosperity - 3000f);
float num3 = category.BaseDemand * num;
float num4 = category.LuxuryDemand * num2;
float result = num3 + num4;
if (category.BaseDemand < 1E-08f)
{
result = num * 0.01f;
}
return result;
}



Update:
First the explanation of an example of the list

categories.Add(this.ItemCategoryGrain.InitializeObject(true, 100, 0, ItemCategory.Property.BonusToFoodStores, null, 0f, false));

1.true = Is it a Trade Good? Yes/true false/No
2.100 = Base Demand(used in the Code spoiler)
3. 0 = Luxury Demand(used in the Code spoiler)
4. What does this item do for the town, in this case, FoodSupply
5. null = atm a bit to much, but lets say this value determines a demandshift of a Town
6. 0f = A factor for the demandshift
7. Is it an animal? Grain=false



And here the list of all trade good items and their properties.


private void InitializeAll(List<ItemCategory> categories)
{
categories.Add(this.ItemCategoryGrain.InitializeObject(true, 100, 0, ItemCategory.Property.BonusToFoodStores, null, 0f, false));
categories.Add(this.ItemCategoryFish.InitializeObject(true, 36, 0, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryGrain, 0.1f, false));
categories.Add(this.ItemCategoryMeat.InitializeObject(true, 30, 15, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryFish, 0.1f, false));
categories.Add(this.ItemCategoryCheese.InitializeObject(true, 22, 22, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryGrain, 0.01f, false));
categories.Add(this.ItemCategoryButter.InitializeObject(true, 20, 10, ItemCategory.Property.BonusToFoodStores, null, 0f, false));
categories.Add(this.ItemCategoryGrape.InitializeObject(true, 8, 4, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryGrain, 0.1f, false));
categories.Add(this.ItemCategoryOlives.InitializeObject(true, 12, 6, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryGrain, 0.01f, false));
categories.Add(this.ItemCategoryDateFruit.InitializeObject(true, 7, 7, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryGrape, 0.01f, false));
categories.Add(this.ItemCategoryOil.InitializeObject(true, 12, 12, ItemCategory.Property.BonusToFoodStores, this.ItemCategoryButter, 0.1f, false));
categories.Add(this.ItemCategoryFlax.InitializeObject(true, 12, 0, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryLinen.InitializeObject(true, 32, 32, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryWool.InitializeObject(true, 10, 5, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryCloth.InitializeObject(false, 10, 20, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryCotton.InitializeObject(true, 8, 4, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryVelvet.InitializeObject(true, 12, 24, ItemCategory.Property.BonusToLoyalty, null, 0f, false));
categories.Add(this.ItemCategoryWood.InitializeObject(true, 12, 0, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryIron.InitializeObject(true, 7, 0, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategorySalt.InitializeObject(true, 15, 3, ItemCategory.Property.BonusToTax, null, 0f, false));
categories.Add(this.ItemCategorySilver.InitializeObject(true, 6, 8, ItemCategory.Property.BonusToTax, null, 0f, false));
categories.Add(this.ItemCategoryHides.InitializeObject(true, 20, 5, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryClay.InitializeObject(true, 20, 0, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryBeer.InitializeObject(true, 39, 13, ItemCategory.Property.BonusToFoodStores, null, 0f, false));
categories.Add(this.ItemCategoryWine.InitializeObject(true, 8, 10, ItemCategory.Property.BonusToLoyalty, null, 0f, false));
categories.Add(this.ItemCategoryTools.InitializeObject(true, 8, 4, ItemCategory.Property.BonusToProduction, null, 0f, false));
categories.Add(this.ItemCategoryPottery.InitializeObject(true, 11, 11, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryLeather.InitializeObject(true, 30, 45, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryFur.InitializeObject(true, 18, 18, ItemCategory.Property.BonusToProsperity, null, 0f, false));
categories.Add(this.ItemCategoryJewelry.InitializeObject(true, 24, 32, ItemCategory.Property.BonusToLoyalty, null, 0f, false));
categories.Add(this.ItemCategorySheep.InitializeObject(true, 11, 0, ItemCategory.Property.None, null, 0f, true));
categories.Add(this.ItemCategoryCow.InitializeObject(true, 11, 0, ItemCategory.Property.None, null, 0f, true));
categories.Add(this.ItemCategoryHog.InitializeObject(true, 6, 0, ItemCategory.Property.None, null, 0f, true));
categories.Add(this.ItemCategoryPackAnimal.InitializeObject(true, 10, 3, ItemCategory.Property.BonusToProsperity, null, 0f, true));
categories.Add(this.ItemCategoryHorse.InitializeObject(true, 60, 30, ItemCategory.Property.BonusToProsperity, null, 0f, true));
categories.Add(this.ItemCategoryWarHorse.InitializeObject(true, 60, 60, ItemCategory.Property.BonusToGarrison, null, 0f, true));
categories.Add(this.ItemCategoryArrows.InitializeObject(false, 30, 30, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryHorseEquipment.InitializeObject(false, 9, 5, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryHorseEquipment2.InitializeObject(false, 7, 6, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryHorseEquipment3.InitializeObject(false, 5, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryHorseEquipment4.InitializeObject(false, 5, 8, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryHorseEquipment5.InitializeObject(false, 5, 9, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryMeleeWeapons1.InitializeObject(false, 9, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryMeleeWeapons2.InitializeObject(false, 7, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryMeleeWeapons3.InitializeObject(false, 5, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryMeleeWeapons4.InitializeObject(false, 4, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryMeleeWeapons5.InitializeObject(false, 4, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryRangedWeapons1.InitializeObject(false, 9, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryRangedWeapons2.InitializeObject(false, 7, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryRangedWeapons3.InitializeObject(false, 5, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryRangedWeapons4.InitializeObject(false, 4, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryRangedWeapons5.InitializeObject(false, 4, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryShield.InitializeObject(false, 9, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryShield2.InitializeObject(false, 7, 7, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryShield3.InitializeObject(false, 5, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryShield4.InitializeObject(false, 4, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryShield5.InitializeObject(false, 4, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryGarment.InitializeObject(false, 9, 15, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryLightArmor.InitializeObject(false, 7, 16, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryMediumArmor.InitializeObject(false, 5, 17, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryHeavyArmor.InitializeObject(false, 4, 17, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryUltraArmor.InitializeObject(false, 3, 10, ItemCategory.Property.None, null, 0f, false));
categories.Add(this.ItemCategoryUnassigned.InitializeObject(false, 0, 0, ItemCategory.Property.None, null, 0f, false));
}
 
最后编辑:
Looking at the state the game is there won't be much chances somone will start defending it again. I was on the defending side but now I'm neutral cause after 9 months of development there are still same problems as at the begining and no big additions. I don't think the game is bad but it totally lacks replayabilty and becomes boring and frustrating at some points. Still I'm not saying it won't change in the future but i don't think it will be near future. I'm also starting to think that one year EA planned at the beginning will extend a lot :wink:
always said that, since before the launch of EA. Having an effing "almost" degree on Game Development gives me some almost divination ability over development processes, when BL got delayed the first time (2016) and the reasons came up, I was 100% the game would be released all fked up, and it did. My guess sticks to at 1 year minimum, 2 years most likely up to 5 years for the game to be complete, mind you that the "5 years" I'm also counting on speculative DLC that should include a hoard of missing mechanics from the first planned project for Bannerlord.
 
后退
顶部 底部