Posted: Sat Nov 17, 2012 2:23 am Post subject:
AI SW Enhancement Open Discussion Thread
Subject description: Disscuss a new tag or current SW controls for Ares SW's.
I think some minor additions could be made to better SW's combination with AI's.
I'd like a tag such as this:
SW.AIOnly
If set to yes it would hide this SW from human players but allow AI to fire them as normal.
When giving AI cheat SW's etc in any mod you would normally have to make a building which can only be used by the ai, and humans could never be allowed to have this building. Well with this tag you could put it on any standard building without it ever being able to be used by human players.
Originally I thought this would be possible, but the current 3 tags for SW control seem very stingy. Alex commented on it before which is why I decided to try for this separate feature request instead.
The current 3 Tags for SW control.
SW.ShowCameo= (boolean)
Sets whether this super weapon will appear in the side bar. This setting is ignored if SW.AutoFire=no is set. Defaults to yes.
SW.AutoFire= (boolean)
Sets whether this super weapon should be launched automatically even for human players. If this is set to yes, the AI targeting options are used to infer the best target cell. Defaults to no
SW.ManualFire= (boolean)
Sets whether this super weapon can be fired by the owning player. If set to no, the player will not be able to launch the super weapon. This setting is ignored if SW.AutoFire=no is set. Defaults to yes.
Here's my reasoning.
So if we have autofire=no then both manual fire and showcameo are forced to use Showcameo=yes and manualfire=yes
If we have autofire=yes, we can now choose to hide the cameo or not, and we can also choose to make it require manualfire or not. Of course making it allowed to be fired is redundant because it fires automatically anyways.
So in the end your left with 3 working combinations.
autofire=no,Showcameo=yes,manualfire=yes
Effect: you can see it and have to fire it manually.
autofire=yes,Showcameo=no,manualfire=yes/no"doesn't matter"
Effect: Weapon fires automatically, but you can't see icon in Tab.
autofire=yes,Showcameo=yes,manualfire=yes/no"doesn't matter"
Effect: Weapon fires automatically, but you can see icon in Tab.
Now I asked Alex before why other combinations didn't work, but he said it would be too complicated and might be too confusing to the various users, If Alex so wishes he can comment here on that as well, I'm only opening a general discussion, not criticizing or telling Alex how he choose to do things, I'm not a coder or developer so perhaps rewriting or editing the current logics is harder to do then adding new tags. I agree with him on keeping things simple for most modders.
These were the other-ways I thought the tags should have worked.
autofire=no,Showcameo=no,manualfire=yes
Effect: You can't see it, but AI can fire it anyways.
This is the equivalent of what my blueprint is currently asking for.
autofire=yes,Showcameo=yes,manualfire=yes
Current Effect: You can see it, and it autofires.
Preferred Effect:You can see it, but it does not auto fire until manual Click input is added
This one would be extremely beneficial, and has been brought up before. It would most likely use a separate tag like SW.AIOnly would. Perhaps SW.AutoFireDelayBlueprint. In the case of a money generation system were a human most lcick the icon every so often to receive funds, Spyplanes or paradrops that autotarget and fire themselves. The ability to have a Airfield which can drop supplies by clicking a charged supply drop. The ability to auto target major superweapon which may be too powerful if manfully targeted. Or to have auto-fired SW's which cost money that you wish not to use until clicked by human player.
Redundant or useless combinations:
autofire=no,Showcameo=yes,manualfire=no
Effect: You can see it but can't fire it......
autofire=no,Showcameo=no,manualfire=no
Effect: You can't see it or fire it......
autofire=yes,Showcameo=no,manualfire=yes
Current Effect: Weapon fires automatically, but you can't see it's icon in Tab.
Intended Effect: Weapon fires automatically, but you can't see it's icon in Tab, but will not fire until prompted by AI. "Of course this is just redundant so you might as well keep the current logic."
Anyways I'd like other modders thoughts or reasoning on this issue. Of course I'd like respectable honest open ended discussion. _________________ Grab my Map Logic Expansion Pack 5.2 here!
Adds random weather patterns into maps.
More disabled navalyards.
Preplaced Neutral buildings.
Additional new features.
ManualFire only applies to SWs, whose cameo you can see and which are auto-firing. Otherwise a player would have no means to launch it at all. That's why this setting is ignored.
SW.ManualFire is a little esoteric, as it only applies to SWs that fire automatically, but might be prevented from doing so at a certain point in time. Examples are the Lightning Storm and the Psychic Dominator, which cannot fire if an other SW of the same type is currently active. If the AI targeting prevents the SW from firing -- because there are no valid targets -- it would apply also. Think of a automatic sonar (stealth targeting) and the enemy doesn't have subs. Or a genetic mutator and the enemy has no infantry. ManualFire=no prevents you from getting a target selection cursor in these cases.
You can set ManualFire=yes, of course, to allow players to launch it anyhow. LS and PsyDom will abort firing, but sonar would fire.
I'm not convinced that the meaning of ManualFire should be changed to do this when x and that when y, and something else under the condition of z. Look at the excerpt from the manual above: 4 sentences; says what it does, when it doesn't apply; one default value. If you overload the meaning twice (manually launched auto targeting, AI only usage, and the current way), you would need a table just to describe it (and strong hints on the other two tags, which will complicate the issue big time). The default value would change if AutFire is on or off.
How about a new tag, maybe SW.AutoTarget, SW.UseAutoTargeting, SW.NoTargetSelection or whatever: "If set to yes, the SW will select a target automatically based on SW.AITargeting, otherwise it will let the player chose a target when the cameo is clicked. Defaults to no." It would be ignored if either SW.AutoFire=yes or the cameo isn't shown.
SW.AIOnly would be a good addition (and it would leave room for SW.HumanOnly, without sacrifying the option to have a "manually launched at an automatically selected target" type SW [what a concept!]). _________________ QUICK_EDIT
I have to say I completely agree on how you took the Idea Alex. And I never even considered the potential for Human only super weapons that could be fired based on SW.AITargeting. In that case screwing with the original logic as you said is completely ridiculous and confusing.
So as an example one could make this SW:
SW.ShowCameo=yes"so we can see it"
SW.AutoFire=no"Requires human Input."
SW.ManualFire=yes"Can still be fired if unable to fire, no valid targets etc"
SW.UseAutoTargeting=yes"Will fire automatically at SW.AITargeting when clicked."
SW.HumanOnly=yes"only humans can use"
This Super weapon would fire only after a human clicked the super weapon icon, and get its firing coordinates from SW.AITargeting. If it failed to fire, and SW.ManualFire=yes was set, the player may still fire it manually.
Just a thought How hard would it be to make a Tag instead like:
SW.Only= (enumeration – Human|AI|ALL)
If set to Human, only humans may fire this SW, if set to AI only ai may fire this SW, if set to ALL, any owner may fire this sw.
Rather then the 2 tags SW.HumanOnly and SW.AIOnly. _________________ Grab my Map Logic Expansion Pack 5.2 here!
Adds random weather patterns into maps.
More disabled navalyards.
Preplaced Neutral buildings.
Additional new features.
This is the kind of request which, in my opinion, needs some probing about its motivation.
What are you actually trying to achieve?
The Blueprint specifically mentions the use for AI cheat SWs. That is also pretty much the only use case I can come up with (what actual game-SW would you want to build that is exclusive to AIs?).
So if your motivation is changing the AI's behavior or human<>AI game balance, would it not be better to identify the issue you're having and request an actual fix to the problem, rather than requesting a feature to abuse the SW system to work around the issue?
e.g. if you're trying to use this to periodically give the AI money (autofire, no cameo, positive money.amount), because it sucks at resource management...would it not be better to request better harvesting AI, or a CashInterval/CashAmount pair for [AI]?
Don't get me wrong, I'm all for enhancements to systems...but this sounds less like an enhancement, and more like an attempt to abuse this system to achieve something else. (Which is, of course, one of the cornerstones of modding rules-based C&C, but really unnecessary if you need added hardcode anyway.) _________________ #renproj:renegadeprojects.com via Matrix - direct link QUICK_EDIT
In the case of being able to control who can use a superweapon it has quite a few uses.
One as you mentioned is to inherently giving the ai money, but that's not a good reason to use it when their are better methods already available, this is not a reason for me.
A lot of mods have been giving AI assistance or unique play styles by giving them additional superweapons, from extra force-shields to extra paradrops, auto airstrikes, or even chrono reinforcements.
To do this normally we have had to create additional buildings which can only be owned by AI's and serve to increase base sizes and give humans the feel the ai are cheating with extra buildings they cannot have. Westwood was stingy on many of the original maps and adding additional buildings can accidentally break the AI from lack of build space.
We remove that by placing the superweapons on human AI shared buildings without having to worry about humans using them or knowing about them other then the intended effects.
The human case use only came about if we use weapons with the "SW.UseAutoTargeting=" feature as it would make it possible to deny a sw to a comp, because we can not do so with SW.AITargeting. In fact if "SW.UseAutoTargeting= feature were created" then this tag would becomes necessary to create Human based weapons the ai can't use.
MLEP is not very mainstream by many mods yet, but it too would benefit from AI or human only SW's. Since all players can share up to 10 Superweapons, being able to deny them to humans or AI would be important if being used to make a specific MODE.
If one wanted to increase the normal strength of the superweapons by giving the AI additional SW's on a SW building, you could do so with this feature ai only sw feature. Say Ai's use a second stronger nuke then the human uses. OR a iron curtain which covers more tanks.
The fundamental thing I'm trying to achieve is more control over the SW's the AI uses. Allowing an AI to cheat or even use separate super weapons then what the humans use to increase difficulty. Like a large paradrop from the American para-drop etc. _________________ Grab my Map Logic Expansion Pack 5.2 here!
Adds random weather patterns into maps.
More disabled navalyards.
Preplaced Neutral buildings.
Additional new features.
I see where you're going.
Does this system have any effect on the AI's targeting and behavior? I'm specifically thinking about SW targeting and threat rating. Since Barracks with a Weather Storm clone are inherently more dangerous than standard ones...
Would AI-only upgrades be an option? As in, allow the Tech Center to receive upgrades, put the SWs on upgrades, but make them buildable only by the AI?
(And if that's not an option because of a given issue X, what is that issue? Maybe that's easier to fix than restricting super weapons...)
I'm asking because building restriction systems like this are already in place, and its uses and abuses are known and at least partially documented. So if the primary problem with using buildings to achieve this is the existence of extra buildings within the base space, maybe eliminating those will lead to a satisfying solution with much less effort.
Should an SW restriction be required, I propose a different approach for the availability selection:
SW.MinimumIQ=[int]
The game already has an existing system to decide which level of "smartness" is required to do particular things.
You would just check whether the current house's IQ is >= SW.MinimumIQ, and done you are. (That would be SW.MinimumIQ=0 -> everyone, SW.MinimumIQ=1+ -> AIs only.)
If you'd then also tie an AI's difficulty setting in the game setup screen to its IQ setting on the map, you could actually have the AI difficulty setting control which secret super weapons an AI gets. (Assuming it doesn't already do that anyway. ModEnc implies it doesn't, and it would be typical for WW to have left this out.) _________________ #renproj:renegadeprojects.com via Matrix - direct link QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Sun Nov 18, 2012 6:57 pm Post subject:
Actually the manual activation combined with AI-targeting would work wonders with some of the SW types (like Mutation, or a global Lightning Storm).
And yes, AI-only SWs would also be helpful. As a user of MLEP I am actually thinking about these as well. Tho I have an AI-only building which can't fell into human hands in case of issues.
I like where this is going. _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
@Renegade
I don't think SW targeting would be effected that badly, but I might be wrong there. I simply haven't done enough with threat rating etc to be a good judge of that, but I believe that would be up to the modder to correct, not a problem with the feature.
Upgrades pose a problem as well, AI have known issues with them, and even if the AI upgraded their war factory, barracks, etc to have extra AI superweapons, then if a human captured them. Then the whole point of them being AI only weapons becomes moot.
The AI suffer a bug with upgrades, so each time you destroy the enemy building that has those upgrades, the AI will only rebuild the structure without the upgrades. To my knowledge Ares never focused on this or fixed this bug in the inherent game. To get around this modders often use cloned building upgrades. So if we have 5 sides in a mod and have AI only SW's on each barracks and say war factories with upgrades and we want at least 4 Clone restoring back up upgrades, then we need to have 45 building upgrades to just maintain a buggy system.
Your SW.MinimumIQ= tags is sorta confusing, I do like the fact if offers AI's difficulty setting based super weapons, but that would not solve the problem with human only manual activation combined with AI-targeting super weapons should the be implemented ever.
The only way I could see SW.MinimumIQ= making sense is if it was applied like a tech slider and you could control the slider on the AI Easy, Medium, Brutal settings and 1 for humans.
But that seems more complicated then a simple tags like
SW.Only= (enumeration – Human|AI|ALL)
Here's my take.
How I think IQ based system might be implemented. This is basically a design for a separate feature.
[SW]
SW.Tech= (Int) "Maybe a -1 value for human only?"
[IQ]
SW.TechIQ= (Int) "Other values Default to this if not set. Humans use this Setting."
This seems more complicated but you probably were thinking something else. Then again this would allow human only and AI only, as well as difficulty control over SW's. Then again this would cause another problem, if it's simple like a tech slider, then wouldn't a brutal AI have access to the Easy and Medium AI SW's? I guess you would end up with stacking SW's.
@Graion
Hmmm, your right about mutation and L storm Etc, Mutation is often abused by Yuri faction to mutate mass clones for grinding purposes etc, of course that's just 1 more example. I could see a lot of potential elsewhere.
A fellow modder pointed out that manual activated auto targeting SW's would be Great for Campaign building too. I have to agree with him here, since in campaigns SW's are often considered to be broken due to their manual operation, automated SW's would allow for more SW interaction by humans in Mod Campaigns. _________________ Grab my Map Logic Expansion Pack 5.2 here!
Adds random weather patterns into maps.
More disabled navalyards.
Preplaced Neutral buildings.
Additional new features.
SW.MinimumIQ's usage would actually be identical to that of all 11 flags in [IQ].
I was not aware there was a problem with "human-only" activation? I interpreted your posts as there being an issue with getting AI-only SWs. Basing the selection on the house's IQ would provide that functionality.
As for manually activated with auto-targeting...that sounds like a generalization of a HunterSeeker to me? _________________ #renproj:renegadeprojects.com via Matrix - direct link QUICK_EDIT
I am the one who said that manual activated Super Weapons with AI targeting could benefit the single player.
Depending on the mission you are making, sometimes giving the human player a super weapon could make/break the mission, depending on what they use it on, though by adding a feature to let the AI choose a target while still allowing the human player to activate it, you can be sure that the player can not break the mission, while still giving them a super weapon. QUICK_EDIT
Quite frankly, that sounds like crappy mission design to me.
If your mission relies on a super weapon being fired on a particular spot, you might as well just map-code it to fire. The entire reasoning of "you are still giving them a super weapon" is flawed, since you're not actually giving them a weapon. You're giving them a "continue mission" trigger, and nothing more. The same thing can be coded more dynamically within the mission.
If your mission breaks because the player shot somewhere pointless, it's badly designed.
If the player can shortcut the entire mission and forego your planned progress because he shot at some particular point, your mission is badly designed.
If the player just loses because he wasted his shot, well, let him learn from his mistake.
Seriously, I'm entirely not seeing the use case/argument here. If you want a "proceed to next mission chapter" trigger button, request one. If Ares-coding is needed either way to achieve what you want, it's a waste of effort to code something else than you really want. Especially if your reason for wanting it reeks more of bad design than an actual problem.
As an example of what I mean: If your mission relies on a nuke striking the enemy ConYard, for example, the entire thing can be achieved much more dynamically by telling the player "we have a nuke ready, just find the conyard", and triggering a nuke on cell discovery; or telling the player "we can aid your attack with a nuclear missile - as soon as your troops cross the bridge, we will strike!". Or "The enemy is on the other side of the river. Repair the bridge when you're ready to strike, and we will aid your attack with a nuke!". Or putting the player on a timer. Or whatever. Giving the player the impression he has a super weapon at his disposal, but then taking it away from him and firing it elsewhere, frustrates the player and achieves nothing for your mission design, because the player might still not take the next step you're expecting. (e.g. if you're expecting nuke conyard + land rush, but he was planning for nuke power + Kirov raid, and is now confused and not ready to attack.)
Lastly, even if I were convinced by your argumentation...it still wouldn't apply.
Your argumentation relies on the concept that it is important where the SW ends up. That's not what's been discussed so far. The discussion so far was about targeting based on SW.AITargeting, which would still allow any target. The target is just chosen by the computer, rather than the human. That does not in any way guarantee that the weapon hits what you need it to hit.
What you want sounds more like a way to force a super weapon to hit a particular instance of a building, or a particular cell.
In other words, you wouldn't just need a generic flag, you'd need a map flag (since a generic "always fire this weapon on ConYards" would be of little help), and even that map flag wouldn't help you much, because SW.ForceTarget=NACNST is still ambiguous - there could be multiple Soviet factions on the map, the player could have found a Soviet MCV in a crate, the AI could have built an MCV, etc., etc.
So you would need a map flag forcing a particular super weapon to fire upon a particular building instance.
That is possible, of course.
But it's not what's been discussed so far, so you would either have to convince other proponents to change the angle of the request, or to broaden the request.
I, however, still think that this is more a symptom of bad mission design than an actual need. _________________ #renproj:renegadeprojects.com via Matrix - direct link QUICK_EDIT
This issue WAS quite simple. I like the original approach, because it solves some concrete problems that have been described already, and there are certainly more valid usage cases, like a automatic Psychic Reveal or Sonar on enemy buildings and units.
Using AI targeting for human players is bound to the same restrictions as it is for computers. They know the map, so they can fire into the shroud and they always will, no matter what you do. Disabling firing into shroud is only for human players. On the pro side, AI targeting is way more flexible than Hunter Seeker targeting, which only works for units with a Fly locomotor (and then it's not customizable).
But I like the idea to limit SW usage for certain [IQ] values (except for the part where it also controls whether human players can use it).
For mission making, one could of course set the AI Ion Cannon target values so that a certain type will be hit, but that's still ambiguous as well as bad mission design. But is this really important here? Renegade gave some good ideas how to do that in a more reliable way. There are map actions that set the preferred target location (for example used in the Seattle mission).
One could also think about an SW that just fires a map trigger. This could be used to provide a "Attack now" button in the sidebar, and the trigger would send reinforcements, do this and that, or whatever. But this is another issue. _________________ QUICK_EDIT
Now that you mention it, AI firing into shroud, etc, could cause weirdness, especially in the multiplayer.
AlexB wrote:
One could also think about an SW that just fires a map trigger. This could be used to provide a "Attack now" button in the sidebar, and the trigger would send reinforcements, do this and that, or whatever.
Would be great for campaigns, lots of uses not just for super weapon strikes, though implementing it would probably be weird. QUICK_EDIT
One could also think about an SW that just fires a map trigger. This could be used to provide a "Attack now" button in the sidebar, and the trigger would send reinforcements, do this and that, or whatever.
Would be great for campaigns, lots of uses not just for super weapon strikes, though implementing it would probably be weird.
Much wider usage: SW fired event, where you select the SW that has been fired and optionally by who (house of trigger) and a dummy SW, representing the Attack now button. _________________
Disabling firing into shroud is only for human players.
Can you make it to work on computer players too?
Its unfair that I cannot send reinforcements in his base which is under gap generator, and computer cheater always do that. He ignores that code and send superweapons in areas which he did not explore. We should have option to restrict that. If something works, then it should work for all sides, both human and computer. Thats why I never build GAP generator, its useless against him, but in turn when he builds GAP generator its useful against me. _________________
Disabling firing into shroud is only for human players.
Can you make it to work on computer players too?
Its unfair that I cannot send reinforcements in his base which is under gap generator, and computer cheater always do that. He ignores that code and send superweapons in areas which he did not explore. We should have option to restrict that. If something works, then it should work for all sides, both human and computer. Thats why I never build GAP generator, its useless against him, but in turn when he builds GAP generator its useful against me.
If its the same has TS the AI can not only fire SW's into shroud with perfect accuracy but also at cloaked units and buildings!
Edit: Firing at cloaked stuff isnt so bad as humans can memorise or use waypoints to mark structures which they know the location of
AI Firing into unexplored territory is just stupid though _________________ QUICK_EDIT
Disabling firing into shroud is only for human players.
Can you make it to work on computer players too?
Its unfair that I cannot send reinforcements in his base which is under gap generator, and computer cheater always do that. He ignores that code and send superweapons in areas which he did not explore. We should have option to restrict that. If something works, then it should work for all sides, both human and computer. Thats why I never build GAP generator, its useless against him, but in turn when he builds GAP generator its useful against me.
If its the same has TS the AI can not only fire SW's into shroud with perfect accuracy but also at cloaked units and buildings!
Edit: Firing at cloaked stuff isnt so bad as humans can memorise or use waypoints to mark structures which they know the location of
AI Firing into unexplored territory is just stupid though
I've suggested the AI being less accurate when firing supers at cloaked/shrouded objects before (user customizable of course) but it lost out in the DFD to better features. _________________ MIdAS - Turning wages into beer since 2002 QUICK_EDIT
AI does not have a concept of "shroud". It does not keep the state of how much of the map has been revealed, thus it cannot distinguish between uncovered areas and areas still under shroud. Won't happen.
Stealth units and buildings should not be targeted any more (at least not for nuke and LS). _________________ QUICK_EDIT
One could also think about an SW that just fires a map trigger. This could be used to provide a "Attack now" button in the sidebar, and the trigger would send reinforcements, do this and that, or whatever.
Anything on this, or was this meant to be a hypothetical statement? This could give lots of cool/interesting new stuff for campaign maps. QUICK_EDIT
AI does not have a concept of "shroud". It does not keep the state of how much of the map has been revealed, thus it cannot distinguish between uncovered areas and areas still under shroud. Won't happen.
Stealth units and buildings should not be targeted any more (at least not for nuke and LS).
Ok, so not shroud....
Stealthed units and buildings should not be directly targeted, but if the enemy has seen your base, it's logical they can take a "guess" and be inaccurate with that guess.
Also with the sonar pulse, it'd be good for the AI to not drop it directly on your subs every time, having it "miss" every once in a while would be good. _________________ MIdAS - Turning wages into beer since 2002 QUICK_EDIT
Also with the sonar pulse, it'd be good for the AI to not drop it directly on your subs every time, having it "miss" every once in a while would be good.
Is sonar pulse not like RA1 where it affects every unit on the map that is stealthed/submerged _________________ QUICK_EDIT
Can you make it to work on computer players too?
Its unfair that I cannot send reinforcements in his base which is under gap generator, and computer cheater always do that. He ignores that code and send superweapons in areas which he did not explore. We should have option to restrict that. If something works, then it should work for all sides, both human and computer. Thats why I never build GAP generator, its useless against him, but in turn when he builds GAP generator its useful against me.
Which I believe it wasn't fixed in TS and the whole FOW system was abit half arsed because of this (AI ignored it) which is a shame as if it was fixed it would allow the option of much more strategic games/mods _________________ QUICK_EDIT
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum