Enemy Resoln AI insta-razed my main city!!!!

Sorry, just rage-quitted my game. And who ever came with the brilliant idea that instantly razing the player's biggest city is good game design, should perhaps reconsider his opinion.

 

I'm going to play some others games, to get some distance with that.  

:annoyed:

14,880 views 16 replies
Reply #1 Top

It's a bug that apparently hasn't been fixed- it's not intentional design.

 

Reply #2 Top

I hope that's that, although I find dubious something as major as that is left as is.

 

I'll wait for 1.3 now, this is just too aggravating for me and is killing all my pleasure of the game.

Reply #3 Top

I must say that I am disgusted with Stardock running polls about the future of FE while heavy bugs like this one continue to be ignored and the frequency of crashes increases with each version.

Reply #4 Top


Sorry, just rage-quitted my game. And who ever came with the brilliant idea that instantly razing the player's biggest city is good game design, should perhaps reconsider his opinion.

 

I'm going to play some others games, to get some distance with that.  



End of quote

 

I've got this one too in my game..Spiderbitch insta-razes two of my cities..very annoying

Reply #5 Top

It's on my list.  They changed this behavior at some point after the AI had been coded.

Reply #6 Top

That's great Frogboy would be great to see it fixed  :thumbsup:

Reply #7 Top

Quoting Frogboy, reply 6
It's on my list.  They changed this behavior at some point after the AI had been coded.
End of Frogboy's quote

So why doesn't the engine prevent the AI from doing illegal things like instant razing or settling on resources?

Reply #8 Top

Quoting baddl, reply 8

Quoting Frogboy, reply 6It's on my list.  They changed this behavior at some point after the AI had been coded.

So why doesn't the engine prevent the AI from doing illegal things like instant razing or settling on resources?
End of baddl's quote

Because they implemented the Raze thing via the UI for the player. I don't lke it either. It adds more work for me and I don't like to work. ;)

Reply #9 Top

Quoting Frogboy, reply 9
It adds more work for me and I don't like to work.
End of Frogboy's quote
that might be the reason they did it the way they did ie less work for them.

harpo

 

Reply #10 Top

Quoting Frogboy, reply 9

Quoting baddl, reply 8
Quoting Frogboy, reply 6It's on my list.  They changed this behavior at some point after the AI had been coded.

So why doesn't the engine prevent the AI from doing illegal things like instant razing or settling on resources?

Because they implemented the Raze thing via the UI for the player. I don't lke it either. It adds more work for me and I don't like to work.
End of Frogboy's quote

Please, clarify one thing for us.

I have seen you stating in another thread that the AI uses the same API as player. If this is true, how can one function call ( something like RazeCity(x,y) ) produce different results for the AI and the player? I don't understand the meaning of "implemented via UI". Does it mean that the UI contains elements that can directly manipulate the data representation of the gameworld while circumventing the standards methods (functions)? Isn't that a bit "hackish"?

Reply #11 Top

Exactly Kamamura. They hacked it rather than coding it properly. Sounds like someone added code directly to the raze button rather than creating (or enhancing) a CanRaze function and making sure that everywhere which wants to raze a city calls it.

Presumably the same goes for CanSettle and a variety of other functions where the AI plainly doesn't play by the same rules as the player.

 

Reply #12 Top

Quoting Kamamura_CZ, reply 11

Quoting Frogboy, reply 9
Quoting baddl, reply 8
Quoting Frogboy, reply 6It's on my list.  They changed this behavior at some point after the AI had been coded.

So why doesn't the engine prevent the AI from doing illegal things like instant razing or settling on resources?

Because they implemented the Raze thing via the UI for the player. I don't lke it either. It adds more work for me and I don't like to work.

Please, clarify one thing for us.

I have seen you stating in another thread that the AI uses the same API as player. If this is true, how can one function call ( something like RazeCity(x,y) ) produce different results for the AI and the player? I don't understand the meaning of "implemented via UI". Does it mean that the UI contains elements that can directly manipulate the data representation of the gameworld while circumventing the standards methods (functions)? Isn't that a bit "hackish"?
End of Kamamura_CZ's quote

The RazeCity API raizes teh city. However, what they did for the human player is disable the button for 5 turns.  You, as the player, can't press the raze city button for X turns (as opposed to clicking on the button and it giving you an error message).

Reply #13 Top

Can there please be an option to allow players to insta-raze?  The AI is terrible at taking back cities anyway (at least within 5 turns), and it's a real headache having to fill the build que of a city you plan to raze with random stuff so the game will stop bugging you to give it orders.  It's also very annoying to play One City Challenge at present because of this.  

Reply #14 Top

Quoting Bobchillingworth, reply 14
Can there please be an option to allow players to insta-raze?
End of Bobchillingworth's quote

If you are not afraid of modding the game, you can do this yourself. Just open ElementalDefs.XML (make a copy first) and change OwnershipTurnsBeforeCanRaze from 5 to 0.

 

 

Reply #15 Top

Quoting Frogboy, reply 13

The RazeCity API raizes teh city. However, what they did for the human player is disable the button for 5 turns.  You, as the player, can't press the raze city button for X turns (as opposed to clicking on the button and it giving you an error message).
End of Frogboy's quote

Hereby the community entitles you to move this item to their list. :grin: Writing a CanXXX method for each action XXX (where XXX is RazeCity, Settle, ...) is boring to death but straightforward. (Of course, method XXX should be modified to call CanXXX before doing anything else.) The only question is this: Who is the developer you hate the most? (Those who code business logic in the GUI will eventually rot in hell anyway.)

Reply #16 Top

Quoting baddl, reply 16

Quoting Frogboy, reply 13
The RazeCity API raizes teh city. However, what they did for the human player is disable the button for 5 turns.  You, as the player, can't press the raze city button for X turns (as opposed to clicking on the button and it giving you an error message).

Hereby the community entitles you to move this item to their list. Writing a CanXXX method for each action XXX (where XXX is RazeCity, Settle, ...) is boring to death but straightforward. (Of course, method XXX should be modified to call CanXXX before doing anything else.) The only question is this: Who is the developer you hate the most? (Those who code business logic in the GUI will eventually rot in hell anyway.)
End of baddl's quote

I am more inclined to just change the XML. ;)