Ideology Bug in 0.80

I accidentally stumbled on a bug when selecting an Ideology Trait using a Culture Point.  the bug allows you to get all available Traits in all Ideologies even though you only have 1 culture point to spend.  In order for this to work, you must have a Culture Point to spend at the end of a turn.  If you click on the icon to go to the next turn and then IMMEDIATELY click on the Ideology icon you will be able to click on all available Traits in all Ideologies without it looking like anything is happening. Normally, during your turn, when you click on a Trait the program will immediately ask you if you want to spend a culture point on that Trait. However, when you are in the limbo-land between turns, the program keeps track of all of the Traits you click on and then, when you click on the Done button, it will display the prompt for each one of the Traits you clicked on.  When you click on the Ideology icon again, you will see that you now have all of the Traits you clicked on even though you only had 1 Culture point to spend.

I feel guilty reporting this bug since it is VERY beneficial to me, but we are here to find and report bugs, so ... SORRY!

4,914 views 3 replies
Reply #1 Top

Don't apologize! If we don't find it before the end of Beta then someone like Spiffing Brit will. :D  

Reply #2 Top

Argh, I think this is related to a known exploit from GalCiv 3. Not sure if we'll be able to fix it but I will let the team know. Thanks for outlining steps to repro.

Obviously exploits exist regarldess of efforts. Whislt this isn't technically a "bug" and might in fact be legitimte for speedrunners etc. I would say; Don't do this if you want to play the game "right" haha.

Reply #3 Top

I do not understand why this would be difficult to fix.  When the user clicks on the icon to go to the next turn you could disable the Ideology icon or the whole window containing all of the icons.  When it is the user's turn again, you could enable it again. If that is not doable for some reason and assuming the program is multi-threaded, you could use signalling objects like an EventWaitHandle in C# to cause the thread that is dealing with Ideology to wait until it is the user's turn again.  I do not pretend to understand all of the complexities of your code, but this should not fall into the category of a difficult fix.