Limiting fatigue to overweight AI. - by New Horizon
New Horizon on 29/3/2005 at 06:52
I'm trying to limit fatigue to the overweight AI but each class appears to inherit from a parent class. So, in order to make all the other AI not have fatigue, I have to remove it from the parent class but I don't seem to be able to create my own custom overweight class as the editor will not let me move the Fat class to a new custom parent.
Any ideas on how to do this? It should be possible.
Mandrake on 29/3/2005 at 09:35
Quote Posted by New Horizon
I'm trying to limit fatigue to the overweight AI but each class appears to inherit from a parent class. So, in order to make all the other AI not have fatigue, I have to remove it from the parent class but I don't seem to be able to create my own custom overweight class as the editor will not let me move the Fat class to a new custom parent.
Any ideas on how to do this? It should be possible.
Why try to remove it from the parent class? Why not simply ADD the property that you don't want to your new class, but change the value so as to disable it ?
Inheritance should allow you to override the same property from any of the parent classes, and overriding a property with the "disabled" value is just as good as removing the property altogether..
New Horizon on 29/3/2005 at 15:30
I'm pretty sure I have tried what you have suggested. This is how the classes are setup in the editor.
AIModel
|
AIBehaviorModel
|
T3BehaviorModel
|
T3HumanBehaviorModel
|
FatBehaviorModel
|
FatCityBehaviorModel
Setting everything to 0 in the behavioral models above FatBeaviorModel doesn't seem to do the trick. Unless I'm doing something wrong. I'll keep trying though.
Gumbonium on 29/3/2005 at 17:17
Assuming the inheritance model works properly, you'll have to change the T3AIFatigue settings in T3HumanBehaviorModel and any class below T3HumanBehaviourModel that contains T3AIFatigue settings (like TiredCityBehaviourModel).
Just change FatigueChargeIncrease rate to 0, FatigueSuccessfulAttackIncrease to 0, and FatigueThreshold to 100. I'm taking those settings from the Statue/Undead classes, which I assume never get tired.
Of course I haven't tested any of this. I've just been poking around in the editor out of curiosity. Everything seems to be customizable - except crouching movement speed, which ironically is the only thing i want to modify.
Cheers
G
New Horizon on 29/3/2005 at 18:00
Quote Posted by Gumbonium
Assuming the inheritance model works properly, you'll have to change the T3AIFatigue settings in T3HumanBehaviorModel and any class below T3HumanBehaviourModel that contains T3AIFatigue settings (like TiredCityBehaviourModel).
Just change FatigueChargeIncrease rate to 0, FatigueSuccessfulAttackIncrease to 0, and FatigueThreshold to 100. I'm taking those settings from the Statue/Undead classes, which I assume never get tired.
Of course I haven't tested any of this. I've just been poking around in the editor out of curiosity. Everything seems to be customizable - except crouching movement speed, which ironically is the only thing i want to modify.
Cheers
G
Yeah, I've tried that too. Since the FatBehaviourmodel is beneath T3HumanBehaviorModel it inherits from it and Fatigue is disabled...even if I have the properties set in Fat Behavior Model. It just won't over ride it for some reason. :(
deadman on 30/3/2005 at 18:50
I don't mean to rain on your parade, but why would you be doing this in the first place? It seems to me that you should decrease the time it takes for 'overweight' AI to get fatigued, not remove it from every AI but overweight ones. Would it be realistic for almost all AI to never get fatigued? Think of it in real-world terms; at least speaking for myself, although I'm not overweight, this doesn't make me a superhuman or someone with Olympic conditioning, so I don't think it'd take much longer for me to get tired from chasing after a taffer than someone obviously overweight.
Just my 2 cents. I prefer a fatigue system to the one in place in Thief 1/2, where guards run on and on endlessly until they find you or you lose them.
deadman.
New Horizon on 30/3/2005 at 19:01
Quote Posted by deadman
I don't mean to rain on your parade, but why would you be doing this in the first place? It seems to me that you should decrease the time it takes for 'overweight' AI to get fatigued, not remove it from every AI
but overweight ones. Would it be realistic for almost all AI to
never get fatigued? Think of it in real-world terms; at least speaking for myself, although I'm not overweight, this doesn't make me a superhuman or someone with Olympic conditioning, so I don't think it'd take much longer for me to get tired from chasing after a taffer than someone obviously overweight.
Just my 2 cents. I prefer a fatigue system to the one in place in Thief 1/2, where guards run on and on endlessly until they find you or you lose them.
deadman.
I'm of the opposite size of the coin myself. I find it frustrating that the guards lose me because they are programmed to become tired, rather than my crafty skills as a player. If I make a mistake and get caught I equally want the satisfaction of getting away from the AI on my own. The only way I could justify a fatigue system is if the player also got tired but then that just gets rather monotonous because you would have to wait for your stamina to build up again before running. While it's somewhat realistic to have guards get tired, I personally don't think it aids the gameplay.
As far as only overweight guards getting tired. :) It wasn't meant to offend overweight people of course. Having been very overweight until my early teens, I can vouch for losing my breath rather quickly.
Tch on 30/3/2005 at 19:08
Quote Posted by deadman
Would it be realistic for almost all AI to
never get fatigued?
I think the main problem is that the
player never gets fatigued, so it is an unfair advantage to the player that the AI do.
Fatigue also does not seem to reset after they stop running. In the later city missions, with the grand melees, I noted several times when a standing AI would see me, and
immediately give the "Whew! Lemme *pant* catch my...*pant* breath" speech while they were just standing there looking at me, after which they would attack.
New Horizon on 30/3/2005 at 19:14
Quote Posted by Tch
I think the main problem is that the
player never gets fatigued, so it is an unfair advantage to the player that the AI do.
That's my main gripe with it. As a player, I don't feel like I've truly accomplished anything by making an escape because the AI stopped running.
deadman on 30/3/2005 at 22:10
Quote Posted by New Horizon
I'm of the opposite size of the coin myself. I find it frustrating that the guards lose me because they are programmed to become tired, rather than my crafty skills as a player. If I make a mistake and get caught I equally want the satisfaction of getting away from the AI on my own. The only way I could justify a fatigue system is if the player also got tired but then that just gets rather monotonous because you would have to wait for your stamina to build up again before running. While it's somewhat realistic to have guards get tired, I personally don't think it aids the gameplay.
As far as only overweight guards getting tired. :) It wasn't meant to offend overweight people of course. Having been very overweight until my early teens, I can vouch for losing my breath rather quickly.
I do see your point, yet I still persist in my opinion. One might say Garrett is much more used to running away, and has had much more training in speedy retreats. If it wasn't mentioned already, guards have much more bulky gear/armor to lug around, and that compounded with the likely notion that they would most-likely have less conditioning than Garrett (other than occasionally chasing after a street urchin or rogue to get off the master's premises). So at least for me, that helps me make amends with the fact that Garrett doesn't get fatigued while his enemies do. Another reason could be to give him one more small advantage over his opponents; they already far exceed him in size, number, strength, and have an advantage of being on their own 'home turf', so every little inch Garrett can get is needed.
Just my thoughts.
An interesting bug, Tch, which I've not noticed myself. If that were the case, I'd rather suggest finding out if it were possible to fix that glitch rather than, again, totally removing fatigue from AI. And maybe I should again repeat the fact that, although I'm not overweight (maybe underweight :p), I fatigue almost as quickly. Give Garrett a break! :joke:
deadman.