[We the People] Bug reporting

this is a question for the quest creator.:dunno:
usually when a quest has been completed (no matter by whom), a text message will appear at the top center of the screen. the same message should be duplicated in the log.
I just tested the sheep quest in Аfrica (4.0.2) - works for me.
 
@Milamber1931 @Mr. ZorG

There is a bug report already for the quests.
This bug is the reason for several of the bug reports we got for the Trade Quest.

It just needs somebody to find the time and motivation to fix it.
(I am taking a break from modding currently and thus will not work on it.)

 
I don´t have the save, but in my last game I got the "first slave" text quote and the quest for getting five slaves or something like that in my late game, way into the 1800s, after dealing with a ton of slaves during the game :P
 
I don´t have the save, but in my last game I got the "first slave" text quote and the quest for getting five slaves or something like that in my late game, way into the 1800s, after dealing with a ton of slaves during the game :p
Trigger conditions are often more complex than that.
E.g. they might not trigger if you do not have enough Cities or not enough money or lack of a specific building or lack of another specific Unit.

So most likely it was no bug, just one of the other conditions not being fulfilled.
(Those other conditions are simply just not known to the player but implemented for better balancing and gameplay.)

The text of many Quests only tells you a tiny part of what actually triggered it.
(And that is on purpose, so players cannot exploit them as easily and so they spread out more nicely over the course of the game.)

e.g. See here:
The "Many Slaves" requires you to have at least:

1) Number of Tobacco Planters + Number of Cotton Planters + Number of Sugar Planters >= 6
+
2) Total Population > 20

Spoiler :

<EventTriggerInfo>
<Type>EVENTTRIGGER_MANY_SLAVES_QUEST</Type>
<WorldNewsTexts/>
<TriggerTexts>
<TriggerText>
<Text>TXT_KEY_EVENTTRIGGER_MANY_SLAVES_QUEST</Text>
<Era>NONE</Era>
</TriggerText>
</TriggerTexts>
<bTutorial>0</bTutorial>
<bSinglePlayer>0</bSinglePlayer>
<EventArt>,Art/EventImages/Quest_Image1.dds</EventArt>
<iPercentGamesActive>100</iPercentGamesActive>
<iWeight>-1</iWeight>
<bProbabilityUnitMultiply>0</bProbabilityUnitMultiply>
<bProbabilityBuildingMultiply>0</bProbabilityBuildingMultiply>
<eCivic>NONE</eCivic>
<iMinTreasury>0</iMinTreasury>
<iMinPopulation>20</iMinPopulation>
<iMaxPopulation>0</iMaxPopulation>
<iMinMapLandmass>0</iMinMapLandmass>
<iMinOurLandmass>0</iMinOurLandmass>
<iMaxOurLandmass>-1</iMaxOurLandmass>
<eMinDifficulty>NONE</eMinDifficulty>
<UnitsRequired>
<UnitClass>UNITCLASS_TOBACCO_PLANTER</UnitClass>
<UnitClass>UNITCLASS_COTTON_PLANTER</UnitClass>
<UnitClass>UNITCLASS_SUGAR_PLANTER</UnitClass>
</UnitsRequired>
<iNumUnits>6</iNumUnits>
<iNumUnitsGlobal>0</iNumUnitsGlobal>
<iUnitDamagedWeight>0</iUnitDamagedWeight>
<iUnitDistanceWeight>0</iUnitDistanceWeight>
<iUnitExperienceWeight>0</iUnitExperienceWeight>
<bUnitsOnPlot>0</bUnitsOnPlot>
<BuildingsRequired>
<BuildingClass>BUILDINGCLASS_BASECAMP</BuildingClass>
<BuildingClass>BUILDINGCLASS_VILLAGEHALL</BuildingClass>
<BuildingClass>BUILDINGCLASS_TOWNHALL</BuildingClass>
<BuildingClass>BUILDINGCLASS_CITYHALL</BuildingClass>
<BuildingClass>BUILDINGCLASS_PALACE</BuildingClass>
<BuildingClass>BUILDINGCLASS_COLONIAL_CONGRESS</BuildingClass>
</BuildingsRequired>
<iNumBuildings>1</iNumBuildings>
<iNumBuildingsGlobal>0</iNumBuildingsGlobal>
<iNumPlotsRequired>0</iNumPlotsRequired>
<bOwnPlot>0</bOwnPlot>
<ePlotType>NONE</ePlotType>
<FeaturesRequired/>
<TerrainsRequired/>
<ImprovementsRequired/>
<RoutesRequired/>
<Events>
<Event>EVENT_MANY_SLAVES_QUEST</Event>
</Events>
<PrereqEvents/>
<bPrereqEventPlot>0</bPrereqEventPlot>
<bRecurring>0</bRecurring>
<bTeam>0</bTeam>
<bGlobal>0</bGlobal>
<bPickPlayer>0</bPickPlayer>
<bOtherPlayerWar>0</bOtherPlayerWar>
<bOtherPlayerAI>0</bOtherPlayerAI>
<bOtherPlayerNative>0</bOtherPlayerNative>
<bOtherPlayerPlayable>0</bOtherPlayerPlayable>
<iOtherPlayerShareBorders>0</iOtherPlayerShareBorders>
<bPickCity>0</bPickCity>
<bPickOtherPlayerCity>0</bPickOtherPlayerCity>
<bShowPlot>0</bShowPlot>
<bFrontPopup>0</bFrontPopup>
<iCityFoodWeight>0</iCityFoodWeight>
<PythonCanDo>isPlayable</PythonCanDo>
<PythonCanDoCity/>
<PythonCanDoUnit/>
<PythonCallback/>
</EventTriggerInfo>


Summary:
No bug, just lack of "secret" developers knowledge how the Quests actually work. ;)
 
Last edited:
Hmmm...any idea why my fully equipped "Prepared Settler" cannot found a new settlement? He's well away from all European cities, but the Build Settlement button is not present??

EDIT: Also, pressing the <B> key does nothing. Gonna try reloading from an earlier point to see when this happens...
 
Last edited:
Hmmm...any idea why my fully equipped "Prepared Settler" cannot found a new settlement? He's well away from all European cities, but the Build Settlement button is not present??

EDIT: Also, pressing the <B> key does nothing. Gonna try reloading from an earlier point to see when this happens...
A "Prepared Settler" is still named like that after founding a city. Of course I'm not sure, if you already used him, but maybe he just hasn't the resources with him for a new city (I know you said fully eqipped). If he doesn't have, his name would look like "Colonist (Prepared Settler)".


Another thing - I just noticed, that "dense forrest" with a hardwood bonus resource doesn't add the three additional hardwood. Though, since I play on Steam and didn't use the proper (less buggy) version, it might be only my problem. Might somebody please check this? Easiest would be with worldbuilder on an existing city with dense forrest.
 
you can attach the save and I'll try to see. due to personal matters, I haven't run the mod for a long time, but maybe it wasn't included in 4.0.2. I will try to compare 4.0.2 and "develop" branch.

Hmmm...any idea why my fully equipped "Prepared Settler" cannot found a new settlement? He's well away from all European cities, but the Build Settlement button is not present??

EDIT: Also, pressing the <B> key does nothing. Gonna try reloading from an earlier point to see when this happens...
if you assigned him another profession in the docks (for example, pioneer), then he will not be able to establish a settlement until his profession becomes "settler" again.
 
Good to know! However, once I exited the game, rebooted my PC and went back into the game a few turns earlier-the bug was gone!?:blush: So I'll remember that solution the next time something comes up. Still enjoying the game...
 
Hi devs, long-time fan of WTP 3.1, just noticed the 4.0.2 update last week and am loving it so far!
About the new feature where you can purchase units from other colony's kings - it's always the same unit. I've noticed this in two different savegames by now. The first time, all five rival kings offered to sell me an expert coal miner. On the next savegame, I was able to buy three carpenters in a row, and then later five line infantrymen! Very fun feature but perhaps too powerful :D
 
Thanks for reporting, Pietre!
We noticed the issue as well and it has been fixed in the development version.

The development version has to be released, but if you want you can download and install it already. This is doable: on GitHub (https://github.com/We-the-People-civ4col-mod/Mod), go to the Wiki tab => "How to play the development version" and follow the instructions. Advantages are - among others - that it has a number of great improvements, especially in bugfixing and future savegame compatibility.
 
Hi all,
I'm getting fatal crash on turn end (100% reproducible), managed to get a crash dump.

Not sure if it matters, but I'm playing on slightly modified Giant America map (changed English leader to Penn and modified some starting positions).

Previously I played another game with WTP 4.0.2 (100+ turns) without any major issues.

Code:
************* Preparing the environment for Debugger Extensions Gallery repositories **************
   ExtensionRepository : Implicit
   UseExperimentalFeatureForNugetShare : true
   AllowNugetExeUpdate : true
   AllowNugetMSCredentialProviderInstall : true
   AllowParallelInitializationOfLocalRepositories : true

   -- Configuring repositories
      ----> Repository : LocalInstalled, Enabled: true
      ----> Repository : UserExtensions, Enabled: true

>>>>>>>>>>>>> Preparing the environment for Debugger Extensions Gallery repositories completed, duration 0.000 seconds

************* Waiting for Debugger Extensions Gallery to Initialize **************

>>>>>>>>>>>>> Waiting for Debugger Extensions Gallery to Initialize completed, duration 0.297 seconds
   ----> Repository : UserExtensions, Enabled: true, Packages count: 0
   ----> Repository : LocalInstalled, Enabled: true, Packages count: 36

Microsoft (R) Windows Debugger Version 10.0.25921.1001 X86
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Users\adamk\AppData\Local\Temp\Colonization.exe.dmp]
User Mini Dump File with Full Memory: Only application data is available

Symbol search path is: srv*
Executable search path is:
Windows 8 Version 9200 MP (20 procs) Free x86 compatible
Product: WinNt, suite: SingleUserTS Personal
Debug session time: Sat Sep  2 09:07:14.000 2023 (UTC + 2:00)
System Uptime: 3 days 20:20:41.691
Process Uptime: 0 days 0:04:11.000
................................................................
................................................................
....
Loading unloaded module list
.................................................
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(33f0.afc): Access violation - code c0000005 (first/second chance not available)
For analysis of this file, run !analyze -v
eax=00000000 ebx=0331add0 ecx=00000000 edx=00000000 esi=0331ada8 edi=0331ae00
eip=77cb710c esp=0019e2f4 ebp=0019e300 iopl=0         nv up ei pl nz na po nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
ntdll!NtGetContextThread+0xc:
77cb710c c20800          ret     8
0:000> !analyze -v
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************


KEY_VALUES_STRING: 1

    Key  : AV.Dereference
    Value: NullClassPtr

    Key  : AV.Fault
    Value: Read

    Key  : Analysis.CPU.mSec
    Value: 1233

    Key  : Analysis.Elapsed.mSec
    Value: 11760

    Key  : Analysis.IO.Other.Mb
    Value: 1

    Key  : Analysis.IO.Read.Mb
    Value: 35

    Key  : Analysis.IO.Write.Mb
    Value: 69

    Key  : Analysis.Init.CPU.mSec
    Value: 312

    Key  : Analysis.Init.Elapsed.mSec
    Value: 32633

    Key  : Analysis.Memory.CommitPeak.Mb
    Value: 74

    Key  : Failure.Bucket
    Value: NULL_CLASS_PTR_READ_c0000005_CvGameCoreDLL.dll!Unknown

    Key  : Failure.Hash
    Value: {06651709-9ed0-5fcb-2f42-ce0a4a332891}

    Key  : Timeline.OS.Boot.DeltaSec
    Value: 332441

    Key  : Timeline.Process.Start.DeltaSec
    Value: 251

    Key  : WER.Process.Version
    Value: 1.0.0.1


FILE_IN_CAB:  Colonization.exe.dmp

NTGLOBALFLAG:  0

PROCESS_BAM_CURRENT_THROTTLED: 0

PROCESS_BAM_PREVIOUS_THROTTLED: 0

APPLICATION_VERIFIER_FLAGS:  0

CONTEXT:  (.ecxr)
eax=00ffffff ebx=00005676 ecx=00000000 edx=00000000 esi=1e67bd8c edi=076787b8
eip=0879455a esp=0019f440 ebp=07f955b8 iopl=0         nv up ei pl nz na po nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
CvGameCoreDLL!CvPlayer::getUnitButton+0xafa:
0879455a 334148          xor     eax,dword ptr [ecx+48h] ds:002b:00000048=????????
Resetting default scope

EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 0879455a (CvGameCoreDLL!CvPlayer::getUnitButton+0x00000afa)
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 00000000
   Parameter[1]: 00000048
Attempt to read from address 00000048

PROCESS_NAME:  Colonization.exe

READ_ADDRESS:  00000048

ERROR_CODE: (NTSTATUS) 0xc0000005 - Instrukcja w 0x%p odwo a a si  do pami ci pod adresem 0x%p. Pami   nie mo e by  %s.

EXCEPTION_CODE_STR:  c0000005

EXCEPTION_PARAMETER1:  00000000

EXCEPTION_PARAMETER2:  00000048

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
0019f458 1e02766c     07fa8258 0019f8b4 089c770b CvGameCoreDLL!CvPlayer::getUnitButton+0xafa
00000000 00000000     00000000 00000000 00000000 python24!PyEval_CallObject+0x2dc


STACK_COMMAND:  ~0s; .ecxr ; kb

SYMBOL_NAME:  CvGameCoreDLL+afa

MODULE_NAME: CvGameCoreDLL

IMAGE_NAME:  CvGameCoreDLL.dll

FAILURE_BUCKET_ID:  NULL_CLASS_PTR_READ_c0000005_CvGameCoreDLL.dll!Unknown

OSPLATFORM_TYPE:  x86

OSNAME:  Windows 8

FAILURE_ID_HASH:  {06651709-9ed0-5fcb-2f42-ce0a4a332891}

Followup:     MachineOwner
---------
 

Attachments

Thanks for the report. :thumbsup:
As a savegame is attached maybe one of the programmers can have a look at it.

Most CTDs in WTP 4.0.2 have already been fixed in the current "develop" branch though.
(But it is possible of course that this is a new one, not yet reported.)

Comment:
If something is wrong in the map it usually crashes directly at game start trying to load it.
But yes, it is very easily possible to mess up the Maps if you are not careful how you create it.

Edit:

It seems to run into a NullPointer-Exception here with a Player.
CvPlayer::getUnitButton

But it needs closer analysis with the save.

First thing to check is:
Did accidently Wild Animals and Church get added twice.
(This can be checked by WorldBuilder easily.)

--> If yes, the Map was not created following our Map Creation guide here and is broken.
--> If not, then probably everything with the Map should be fine and the issue is sth. else.
 
Last edited:
Thanks for looking into this.

I've set up the mod from `develop` branch, started new game, ran into same issue on multiple occassions. But, I noticed that if I go back a turn, it sometimes helps to avoid this issue (for example, if crash happens on end turn 15, I load turn 14 and I'm able to play through to turn 16).

And about the map -> I didn't use world builder, I've edited the .ColonizationWBSave file manually. Didn't change any syntax, just changed values from one number to another (within map boundaries).
 
Hi everybody,

Long time Civ player here, first time poster.

Let me just first express how utterly mind blown I have been by WTP mod. A month ago I was doing my biannual search in Steam for any playable strategy/building games that are not unfinished/broken/substandard and came up empty as usual. Then I saw good old Civ4 and the Colonization mod for it. Last time I checked Colonization for Civ4, some review said something wasn't exactly like in the original (don't remember what) and I decided to pass and ended up playing 1:1 browser version of the original Colonization on some website for several months. It was good but started to slow down in the end. This time I happened to see a review telling about WTP and decided to try it. Boy am I happy that I did. I haven't had this much fun in a strategy game probably since the Civilization IV! All parts of the mod are really well done.

To the bug report then. I have version 4.02 and I started Governor-Gigantic-Marathon game as Dutch and I can't get past January 1717 (I don't know which turn it is), because of a crash at the end of the turn. I still see AI move and sometimes a dialogue screen pops from the Stadtholder for a fraction of a second before the game crashes. Steam says I've played 254 h and in addition to this I've had probably ~5 CTDs so not bad. However, those have fortunately not been repeatable. This is very persistent though and if I load a save from a previous turn and just click end turn twice, the crash still happens. So in other words I can't continue my awesome game and I was wondering if anyone could help? Please find attached my savegame.

P.S. I noticed another bug but perhaps it's a feature: I have a decent pirate/buccaneer fleet, which I use to capture citizens from enemies. If I go up a large river in enemy territory in a pirate cutter and disembark the buccaneer, I have found no way to load the buccaneer back into the pirate cutter before I reach ocean. If I move it to the boat, which is on the large river, it will not embark and I can't extract my buccaneer quickly from enemy territory. I ended up walking it out along the river with the pirate ship and no enemies fortunately attacked my buccaneer. Maybe because they can't enter the large river or land units can't attack the boat, which is in the same square?

P.S.2 Is there any way to load less than 300 units of cargo? Sometimes I need just something like 75 rock, 75 clay and 150 tools but the game only deals in bulk.
 

Attachments

P.S.2 Is there any way to load less than 300 units of cargo? Sometimes I need just something like 75 rock, 75 clay and 150 tools but the game only deals in bulk.
Yes, simply use Shift + Drag&Drop.
It will bring up a text box to enter the amount you want to move.
 
To the bug report then.
Thanks for the save, we will check it. :thumbsup:

Maybre it is even already fixed internally for upcoming WTP 4.1.
But you never know for sure until you checked.
 
I have defeated every land unit in the REF, and yet the game is still ongoing, despite it saying in the Colopedia that I only need to defeat the land units and hold all my settlements.
one more clarification: the list of the King's troops (REF) shows only units located in Europe (according to Ray. I have no way to verify this yet, but I trust him in this matter).
 
one more clarification: the list of the King's troops (REF) shows only units located in Europe (according to Ray. I have no way to verify this yet, but I trust him in this matter).
To be specific, the Ref Advisor shows only:

1) Units that can attack and are on the Map
+
2) Military Ships that are in Europe to pick up Troops
+
3) All REF Units that have not been spawned yet (including Generals)

The REF Advisor does not show all Land Units.
Because not all of the Land Units fall inside one of these categories.

e.g. no Units that can not attack and are already in the Clonies are not shown.
Thus e.g. something like a Brave Lieutentant (in Colonies) will not be displayed. (As it is defensive only.)
Of course something like Pioneers, Settlers, Missionaries ... also will not be displayed.

However a Great General that is still part of the REF that was not yet spawned on Map will.
Because whatever is in the REF list will be displayed. (It does not check there for "can attack".)'
--> But once it is in the Colonies you will not see that Unit anymore on the Advisor. (As it is defensive only.)

----------

In other words:
The King can still have Land Units that are simply not shown in the Ref Advisor.
So War of Independence not ending although you see no Land Units in it is not necessarily a bug.
There may e.g. still be a few colonists or generals running around somewhere or he may still have a city or ...

This is the code:
Spoiler :

Code:
            while(unit): # Checks the Military Units on the Map
                if (not unit.isNone()) and (unit.canAttack()) and (unit.getOwner() == iParent):     
                    iProfession = unit.getProfession()
                    iUnitType = unit.getUnitType()
                    UnitList = self.calculateTroops(UnitList, iUnitIndex, iUnitType, iProfession)
                 
                (unit, iter) = parent.nextUnit(iter)
                             
            for i in range(parent.getNumEuropeUnits()): # Checks the Military Units in Europe
                unit = parent.getEuropeUnit(i)
                if (not unit.isNone()) and (unit.canAttack()) and (unit.getOwner() == iParent):     
                    iProfession = unit.getProfession()
                    iUnitType = unit.getUnitType()
                    UnitList = self.calculateTroops(UnitList, iUnitIndex, iUnitType, iProfession)
         
            for iUnit in range(self.player.getNumRevolutionEuropeUnits()): # Checks the REF Units not yet spawned on Map
                iProfession = self.player.getRevolutionEuropeProfession(iUnit)
                iUnitType = self.player.getRevolutionEuropeUnit(iUnit)     
                UnitList = self.calculateTroops(UnitList, iUnitIndex, iUnitType, iProfession)


Comment:
The logic can easily be changed to show all Units the King owns.
Currently however I am not modding actively so somebody else would have to do it.
 
Last edited:
Back
Top Bottom