Maniac
Apolyton Sage
I've got a couple debug DLL related questions.
1)
I added this new AI type for sea colonies which uses the CvUnitAI::AI_seaColonyMove() function. Unfortunately Sea Colony Pods just stay put in the base they're built instead of moving out and do some useful stuff. I'd like to find out why that is, where the CvUnitAI::AI_seaColonyMove() function returns. Unfortunately I can't figure out how to find this out using a debug DLL. I can of course set a breakpoint at CvUnitAI::AI_seaColonyMove(), but that just tells me that the function is being accessed. It doesn't tell me where it returns. Does anyone know how to do this?
2)
Before trying out Microsoft Visual C++ 2008 Express Edition for debugging purposes, I have always used (and am still mainly using) Codeblocks. With that program, as long as you don't change header files, if you only change cpp files and then compile the DLL, it will only spend time recompiling the changed cpp files. If you change a header file, it will recompile all files. To find out if files are changed, it looks at the date stamp.
I can't figure out how it works in Microsoft Visual C++ 2008 Express Edition. Today I tried out the same as I usually do with Codeblocks - simply drop the changed cpp and header files in the project folder - but then Microsoft Visual C++ 2008 Express Edition gives an error whe trying to compile. So this program seems to use another method than Codeblocks to figure out what files are changed and which it needs to recompile. Does anyone know what this method is? Am I forced to always 'Rebuild Solution' (which recompiles all files) instead of merely 'Build Solution'?
3)
I end the turn using the debug DLL. At the start of my next turn... all citizens of of all cities of all players (both me and AIs) have been turned into Citizen specialists instead of working the fields.
When playing with an assert (not debug) DLL, I have also noticed that the AI city governor simply does not place its free specialists - you can still place them manually though. When you then click on the city tile within the city screen (which lets the AI decide plot worker placement) the free specialists disappear again.
It appears that using these assert and debug DLLs causes some parts of the AI to malfunction/not function.
Has anyone else experience this before, or does anyone know what's causing this?
Thanks!
Edit: Attached vanilla BtS debug DLL
1)
I added this new AI type for sea colonies which uses the CvUnitAI::AI_seaColonyMove() function. Unfortunately Sea Colony Pods just stay put in the base they're built instead of moving out and do some useful stuff. I'd like to find out why that is, where the CvUnitAI::AI_seaColonyMove() function returns. Unfortunately I can't figure out how to find this out using a debug DLL. I can of course set a breakpoint at CvUnitAI::AI_seaColonyMove(), but that just tells me that the function is being accessed. It doesn't tell me where it returns. Does anyone know how to do this?
2)
Before trying out Microsoft Visual C++ 2008 Express Edition for debugging purposes, I have always used (and am still mainly using) Codeblocks. With that program, as long as you don't change header files, if you only change cpp files and then compile the DLL, it will only spend time recompiling the changed cpp files. If you change a header file, it will recompile all files. To find out if files are changed, it looks at the date stamp.
I can't figure out how it works in Microsoft Visual C++ 2008 Express Edition. Today I tried out the same as I usually do with Codeblocks - simply drop the changed cpp and header files in the project folder - but then Microsoft Visual C++ 2008 Express Edition gives an error whe trying to compile. So this program seems to use another method than Codeblocks to figure out what files are changed and which it needs to recompile. Does anyone know what this method is? Am I forced to always 'Rebuild Solution' (which recompiles all files) instead of merely 'Build Solution'?
3)
I end the turn using the debug DLL. At the start of my next turn... all citizens of of all cities of all players (both me and AIs) have been turned into Citizen specialists instead of working the fields.
When playing with an assert (not debug) DLL, I have also noticed that the AI city governor simply does not place its free specialists - you can still place them manually though. When you then click on the city tile within the city screen (which lets the AI decide plot worker placement) the free specialists disappear again.
It appears that using these assert and debug DLLs causes some parts of the AI to malfunction/not function.
Has anyone else experience this before, or does anyone know what's causing this?
Thanks!
Edit: Attached vanilla BtS debug DLL