OH NO! I finally figured it out!!

Okay, remember for the past few days we've had these heated debates about whether the AI was being exploited with tribute for techs.

Then a few days later we figured out that paying the AI tribute actually counted as a negative expense (i.e. it SUBTRACTED the money from your expenses in effect giving you money).

Olaf on QT3 finally got me thinking about it and I just realized why the AI was accepting those deals. It was EXPLOITING THE HUMAN. The AI doesn't know the INTENT of the rules, it only knows the rules of the game. And from its vantage point, paying you X for Y turns was lowering its expenses for that time. So it was accepting these deals because they were good for it. The update I made earlier in the weak weakened this in other ways but it didn't get around the basic issue - the AI got money by trading you money for tech.

In short, it's not you guys who were cheesing/exploiting the AI. It was the AI cheesing/exploiting us.

Fix going in today. Sorry about that.

The cause is that the function pCivilization->CalcTributeOut() returns a NEGATIVE number (negative income). But it's treated as an expense in the income/expense calcuation.

~SDC~
1,514 views 33 replies
Reply #2 Top
BAHAHAHAHA! THE AI CHEATS! THE AI CHEATS! LOL

Rude AI, exploiting the silly humans... ;)

~SDC~
Reply #3 Top
What I've always said is that the AI plays by the same RULES as the human does. That is, as the AI developer I define a set of game rules for the AI to play by with certain desireable goals for it to get to.

So it found that by accepting those trade deals it coudl lower its expenses while gaining a tech. Gawd, this is like getting cheesed on battle.net except it's by a freakin computer player.

~SDC~
Reply #4 Top
Hahahahah...that's really funny! So I was -sustaining- empires, not bankrupting them. Damn, they must've been spending like mad. :)

~SDC~
Reply #5 Top
Can't wait to see what fixing this will do to the game. ;)

"Silly human! Yes we want free money and technology! Mwahahaha!"

I can only imagine what would have happened if you'd programmed one of the AIs to use the tech trading "strategy". ;p

~SDC~
Reply #6 Top
Its the little things that get you....... ;p

~SDC~
Reply #7 Top
Damn. He found out. Next thing you know he'll stick us back in that crystal the Arnor imprisoned us in so long ago. LOL

~SDC~
Reply #8 Top
Interesting. One question though. Given that paying you tribute was helping the AI, why wasn't it prepared to pay an infinite amount to you? In other words, why when you asked for too much, would the AI refuse the deal?
Reply #9 Top
Glad you cought it. Even gladder I have no doubt you will catch such things and fix them.

~SDC~
Reply #10 Top
You know, I know some people who think like the AI currently does....maybe its too human......... LOL

~SDC~
Reply #11 Top
Interesting. I wonder, though, why the AI on 'Painful' wasn't a lot more powerful with these subsidies coming in from me? Well, I think it was because Evil had some bad starting positions (and I was keeping strong allies with Good).

At any rate, this means the AI will not *buy* tech as easily. Is the converse true?: Will the AI still be eager to *be paid* for them?

NOTE: I can only use the stand-alone patches, so I haven't seen your latest tweakes on SDC.
Reply #12 Top
Padlock: Because I put in artificial IF THEN's in there.

~SDC~
Reply #14 Top
> Padlock: Because I put in artificial IF THEN's in
> there.

That makes sense. So the AI was happy to pay you as much tribute as possible until it hit a conditional hardcoded limit!

Now I'm really anxious to try a game with the new fix!

Reply #15 Top
Wow, that's interesting. I had noticed something in a recent game..

I was using the "sneaky" (ok, dirty) strategy of attacking, taking a few systems, offering peace for large amounts of tribute per turn, rinse, repeat.

I figured I'd be bankrupting the AI, but it turned out that they were continually able to meet my demands. Then I noticed that their treasury was continually increasing. It seemed odd that they had like 46000bc with one planet left.

But if tribute amounted to less expenses, then it might amount to them making money off of it.

Neat, I'm glad you figured that out Brad =)
Reply #16 Top
Great, this should close the biggest imbalance in the game. Can't wait to try it out after the patch. Is there a chance it will be available today?
Reply #17 Top
Have to do more QA first. I'd like to see if we can test out SDC's beta availability..

~SDC~
Reply #18 Top
Understandable but please don't leave it in Beta very long. Perhaps option for anyone that wouldlike to have the Beta could? Maybe good idea maybe not?

~SDC~
Reply #19 Top
@RustyBlade
Tools -> Settings -> General -> Applications
There is a checkbox for beta/alpha releases.

~SDC~
Reply #20 Top
This also explains why every AI was willing to pay a maximum amount for the tech. It was actually bumping against the IF-THEN.

~SDC~
Reply #21 Top
I have actually sold 10+ techs to the AI for ~100 for 10000 turns figuring that I just made some nice cash, but I guess I was just helping the AI the entire time. :)
Reply #22 Top
Once this gets fixed what will happen if the A.I. owes you tribute but runs out of money? Does the tribute still get paid no matter how in the red they are?

~SDC~
Reply #23 Top
This is just hilarious:

"AI designer beaten by own AI"

And we thought that was science fiction... ;p

~SDC~
Reply #24 Top
actually I have had that happen to me too. I wrote an AI progrom for the boardgame reversi. When I set it on expert it beat me, and beat me, and beat me. it hurt. LOL
Reply #25 Top
Kjartan Mannes,

Thank you, I have that configured. And so far am getting all updates.
But you see I believe Brad is planning a seperate issolated group of the old testing croud to try major features over the next few months. And I got the feeling that maybe fixing this would be going through those that were only in the beta, gamma, croud first. Sounds like a major fix anyhow and will probably be implemented for everyone to some extent in the following week.

~SDC~