Jump to content

Non-random BuildingAI


Evaluating non-random building ai about 1 month into 26.6  

22 members have voted

  1. 1. Do you prefer the current community mod (26.6) building arrows to a26 building arrows?

    • yes
      5
    • no
      15
    • I could go either way
      2
  2. 2. The civic center arrows are too strong against rushes when garrisoned

    • Yes
      17
    • No
      5
  3. 3. Sentry towers are too strong against rushes

    • yes
      12
    • no
      10
  4. 4. Turtling is too strong because of non-random buildingAI

    • yes
      14
    • no
      8
  5. 5. Which of the following solutions would you support the most?

    • Don't change anything.
      2
    • Reverse the non-random arrows entirely.
      8
    • Balance the CC, Tower, and Fortress arrows.
      5
    • Make buildings shoot at random unless targeted.
      6
    • Make the civic center and fortress shoot at random unless targeted.
      1


Recommended Posts

19 minutes ago, wowgetoffyourcellphone said:

But at least with a modified BuildingAI, garrisons can still affect number of projectiles? Standard UnitAI does not allow this.

yes. The only issue is how and when to call the function that allows the targeting. In the video above, I basically just stuck the function call inside the attack order in unitAI around line 400. Since the ship unitAI is also trying to target the closest unit as other units do, it turns out that the function is called both on user input and also by the default behavior of the ship.

The desired behavior of the unfocused buildingAI is to shoot the closest unit. So if a unit is no longer the closest it won't be targeted. Meanwhile, the user-targeted unit should be attacked until dead or out of range.

Because of the aforementioned issue, the setup I used to make the demo video results in the closest unit being targeted until dead automatically even if moves to be farther than another potential target. This is too 'smart' and would be extremely annoying to play against, since when you are retreating, whatever target you are trying to save from the tower would be still targeted.

So it was pretty easy to make the modified building ai, and I think it will be much harder to call the new function to produce the correct behavior for buildings, ships, and siege towers.

Link to comment
Share on other sites

  • 3 weeks later...

How is this coming @real_tabasco_sauce?

 

I made a patch here for Ships to use Unit AI: https://code.wildfiregames.com/D5213

Description:

Quote

This brings a number of changes to ships, most consequentially it removed Building AI and gives them Unit AI. This patch can be used to test out the idea.

Changes:

A. Building AI -> Unit AI. Projectile targeting is no longer random and garrisoned units no longer add to projectile count
B. Ships can now transport Relics (aka "Catafalques"), a previous mistake (IMHO)
C. Vision ranges reduced a little. Makes line of sight slightly more interesting on the water. Maybe reduce this some more?
D. The upgrade from Light to Medium warship improves attack damage and range. Perhaps the damage improvement can be changed to repeat time improvement instead?

Areas for Discussion:

E. Since garrisoned troops can no longer add to the arrow count, perhaps they can reduce RepeatTime slightly per soldier instead.
F. Garrisoned troops can boost ships in other ways instead, similar to garrisoning Rams?
G. Perhaps ships can Promote ranks? Basically, the crew gets experience?

It doesn't have to be the "winning" patch if your AI changes can be made fruitful. 

  • Like 1
Link to comment
Share on other sites

Actually, I am all for it. My buildingAI update is made primarily with true buildings in mind. Right now its not going great. I know I need to make a new order in unit_actions.js, and commands.js, but I can't quite get it to do anything. I will next try to use the set-rally command as an example of something that works on buildings.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...
5 hours ago, real_tabasco_sauce said:

 

 Here is a little sample video from the last working version. Rally point selection and unit targeting are the same for simplicity's sake. 

Okay, how about this? Default to this behavior, with a hotkey to override and place a different rally point. Previously I think it was the opposite. 

Link to comment
Share on other sites

It wouldn't be too hard to do, but I am not sure what would be most popular/logical.

@borg- @ValihrAnt @chrstgtr any comments on what behavior is preferable?

Before, I had them fully separated, but that might be clunky. Now setting rally point and the target happen simultaneously when clicking an enemy unit, but I can imagine a couple uses for a separate rally point (ie degarrison onto rams).

Yeah I think it makes sense. I'll use the autorally hotkey.

Link to comment
Share on other sites

3 minutes ago, chrstgtr said:

Agree with borg—would separate. 

it would be really nice to test if this targetingAI functionality is desired through the community mod 

I could imagine it would be really nice to be able to snag weak cav units when being rushed. At least it could be something for the rushed player to do while they are made into a cupcake.

Link to comment
Share on other sites

28 minutes ago, BreakfastBurrito_007 said:

I could imagine it would be really nice to be able to snag weak cav units when being rushed. At least it could be something for the rushed player to do while they are made into a cupcake.

I think that’s a concern, though, for the targetingAI. Rushing right now is pretty balanced. Losing one out of 3 quick rushing cav hurts pretty bad (don’t care if a player targets with tower/cc—that’s skill the same as targeting one cav with your units) 

Anyways, I think all this will be hard to predict actual gameplay effects without actual tests and this could have very large meta impacts. That’s why I would really like it to be in community mod

  • Like 1
Link to comment
Share on other sites

1 hour ago, chrstgtr said:

I think that’s a concern, though, for the targetingAI. Rushing right now is pretty balanced. Losing one out of 3 quick rushing cav hurts pretty bad (don’t care if a player targets with tower/cc—that’s skill the same as targeting one cav with your units) 

Anyways, I think all this will be hard to predict actual gameplay effects without actual tests and this could have very large meta impacts. That’s why I would really like it to be in community mod

Thats a good point, I think it could get pretty annoying due to the inaccuracy of the circular building range indicator. Rushes can still be extremely powerful without diving under the cc, though so I think it wont hurt rushing too much. I suspect players will look for ways to dodge arrows by wiggling the unit that the cc has clicked. Its also worth considering how useless the cc is at killing any melee units on its own, so getting the opportunity to pick off an extra melee cav each time an enemy raids would be a welcome change. I mainly see this whole change as a new avenue for skill to influence the game, which is great.

Link to comment
Share on other sites

1 hour ago, wowgetoffyourcellphone said:

I think giving players more direct control is a good thing, but I think putting it into the Community Mod isn't a bad choice.

Yeah, I’m all for it in the community mod. To the extent my opinion matters, I think giving the player option to target enemies is good too. I don’t see too much downside to letting a player specifically target enemy units

I’m just a little concerned (about rushing and other things too) when default behavior is to attack nearest enemy. That’s why I’d really like to see this be widespread tested. 
 

25 minutes ago, BreakfastBurrito_007 said:

Rushes can still be extremely powerful without diving under the cc, though so I think it wont hurt rushing too much.

It would also be available to towers too. Anyways, any judgment is premature 

Edited by chrstgtr
Link to comment
Share on other sites

Well it is strong to get a kill out of 3 weak cav, so I agree with @chrstgtr there. But we have a bit of a concern where a number of cav can dive civic centers and remain in range for a long time. Then you also have cases where heroes can negate building arrows. 
I certainly don’t doubt that this will cause balance issues but these can always be addressed. For example in the case @chrstgtr pointed out, it might be good to bring in the CC range a little.

my point here is that we are already in uncharted waters for a27 balance. I am sure svn is already very imbalanced so we will need to do serious and organized balance testing on the RC anyway, so why not go ahead and commit once it works how we want it to?

in principle it is undoubtedly better than random arrows (more interesting, more exciting, more fun, more player controlled content, basically more STUFF to do).

If you want examples of far more imbalanced stuff: women don’t defend from capture attack when garrisoned, romans start with ff, and the cataphract mixin made cataphracts even more tanky. We will have much bigger balance problems on our hands.

That being said, the patch could be made into a mod for a26. If @wraitii or @Stan` could show me how the CM GitHub works, I could make an experimental 5th release with this and the unit rebalance to address sniping and meat shield meta.

Link to comment
Share on other sites

2 hours ago, wowgetoffyourcellphone said:

I think putting it into the Community Mod isn't a bad choice.

I don't really know if I'm all clear about the community mod. It's primarily to test out ~mechanics? Has there been relevant feedback? Is it widely used by the multiplayers?

On the other hand the mod was also used for bug-fixes; ofc fixing bugs is good, but maybe we could consider distributing those separately.

[Maybe not the prime thread for a general discussion about the mod, but since you were talking about it...]

Link to comment
Share on other sites

Well at first it was to fix a couple bugs that made it into a26. Then there were some balance changes like for hyrcannian cav. Then gameplay ideas came through like the Pericles and Themistocles, also team bonuses.

the issue though is that all the changes basically made it the de facto 0ad experience for a lot of players, dividing the community.

personally I think it should be more like a community test environment. Where balance changes, new units, and even some new mechanics can be tested.

  • Like 1
Link to comment
Share on other sites

4 hours ago, real_tabasco_sauce said:

in principle it is undoubtedly better than random arrows (more interesting, more exciting, more fun, more player controlled content, basically more STUFF to do).

But this isn’t necessarily true. The change in default targetingAI can very easily eliminate any benefit to garrisoning because it fundamentally creates an “overkill” issue with all garrisoned units aiming at one unit. That might make garrisoning only “useful” where a defender is vastly outnumbered, which isn’t particularly desirable in late game and creates balance issues in early game. And, that isn’t something that can just be fixed with balance because early game and late game concerns demand opposite balancing changes (early game would need CCs/towers to be nerfed while late game would need CCs/towers/forts to be buffed). Thus the default targetingAI change could have very large meta change impacts, which may or may not be desirable. 

Even if you don’t buy any of the above, the change is fundamentally a preference issue, which may or may not be inline with the player base general preferences. It’s not like there is a chorus of people demanding this type of change. So it is far from clear that this undoubtedly an improvement like you suggest. 

Honestly, I’m happy with the way towers/forts/CCs are balanced now (and it seems like most others are too) so the change is entirely a change of behavior instead of a balance issue. The problem is it isn’t even clear that change of behavior is actually desired. 

I'm not entirely opposed to it. But I do have some big concerns. This is the type of thing that could entirely change the game meta, so I think it’s important we get it right. Testing in RCs has obviously missed some very big meta changing balance issues in the past. 

  • Like 2
Link to comment
Share on other sites

I don’t think your predictions are all that reliable. We can’t really know how balance will turn out, but I can assure you it will be less of a significant change than other changes you don’t seem worried about. My prediction is that a27 might be a clean slate balance-wise.
My point was that if you asked an RTS player unfamiliar with 0ad if they would rather control their towers or let it be random they would be much more likely to support player controlled buildings.

also, there isn’t a chorus of people demanding anything to be honest. I’m sure players would like a new civ, but you don’t see them begging for one.

letting the buildings be random just seems like we are missing out on content.

its not really preference though, the change makes building arrows interesting, fun, and even exciting.

  • Like 1
Link to comment
Share on other sites

10 minutes ago, real_tabasco_sauce said:

My point was that if you asked an RTS player unfamiliar with 0ad if they would rather control their towers or let it be random they would be much more likely to support player controlled buildings.

Again, I 100% support the ability to control. It’s a total change to default behavior that is concerning to me.  
 

You keep talking about how it isn’t a preference. But it is. You keep saying it’s more exciting but we don’t actually know that. RandomAI can lead to dramatic shifts in battles very fast. Whereas this would require a 1 by 1 change. Is that more exciting? I don’t know. It probably depends on the person too. 
 

6 minutes ago, real_tabasco_sauce said:

Yeah I can never get anyone to join RC games XD. 

Yeah, it’s a problem, which I way I think we need a useful community mod like thing 

Edited by chrstgtr
  • Like 2
Link to comment
Share on other sites

yeah I still can't seem to get badosu's maps approved in mod.io, I think trying to get mods through there would take too long. I could just post a mod here as a zip. Maybe would you and @borg- be interested in doing a couple 1v1s with the mod? that way you could pretty quickly see the effects wrt rushing and large armies. I still have one last thing to change on it first.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...