Author Topic: [SOURCEMOD] Brutal-OXCE 7.12.1  (Read 74898 times)

Offline Juku121

  • Commander
  • *****
  • Posts: 1639
  • We're all mad here.
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 6.6.4
« Reply #210 on: July 05, 2023, 05:33:35 pm »
Indeed. But Windows has always been kinda messy when it comes to letting it run for a long time at once.

Offline Abyss

  • Colonel
  • ****
  • Posts: 327
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 6.6.5
« Reply #211 on: July 07, 2023, 08:06:46 pm »
Cheers. You may have wanted a review from someone who understands the mechanics of XCF well. Well, i tested it.
Now Tier 1 enemies done, difficulty 4/5, no ironman (test purposes), a couple of cults are terminated, stuck with cyberweb)
20 hrs total. I've got much to say.

BAI with aggression level 2 and fair conditions (can fire into fog of war, but doesn't cheat to see my units in dark)   
It really looks nice, except that level design has been done for dumb AI.
1) Enemy uses grenades alot. I would suggest make one more option that regulates that.
Explanation: due to some circumstances, grenade-toss mechanics in OXCE are very different from shooting.
The probability of getting it under the foot doesn't rely on range, but only on some basic chance.
E.g. you can shoot 10 times and all miss, but you toss the grenade and it gets to the target's foot.
That works both ways, ofc.
2) Enemy uses arc weapons very nice, making it from-the-cover support. Just fantastic, I liked that.
The trouble here is that enemy are spread through the map and thus see you from turn 1, while you have to locate the distant archer.
3) Overall, enemies, when you are in fog of war, tend to rush you with all they've got. But, they prefer to use the ant patterns, running turn after turn from the same way. Some randomization of waypoints may be useful.
4) Melee enemies, all like one, just rush on you no matter what. Short range enemies, too. That's sometimes fun, sometimes boring.
I would suggest setting sort of rush aura when certain amount of units rushes with initiator, while others do other stuff.
Battles are now 5-10 turns max.
5) Overall, straight-forward approach for most cases BAI uses is a good alternative for Dumb-AI, but it's too punishing, if enemies are too large in quantities
6) Same time, straight-forward approach for other cases is just easy victory.

I have no idea what aggression 3 will be like, and don't want to check. In counter to that, I will switch to aggression level 1.
And then, I will take some of your time to specify the option "inherit aggression levels from modder", I have a little idea of how to make same mod work slightly better with BAI, while stay compatible to OXCE.

Resume It was almost ok to fight on diff4 with BAI, and no signs of loss are up to date (scores are high and soldier population is growing).. Yet with savescumming.

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 605
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #212 on: July 09, 2023, 09:40:09 pm »
7.0.0:

Amidst the chaos of war, an advanced artificial intelligence (AI) confronts a critical decision: to strike or seek refuge? In "Battlefield Dilemma: Shadows of Defense," the AI's quest for dominance clashes with the imperative of self-preservation. As the AI recalibrates its strategies, a captivating struggle unfolds between calculated aggression and tactical retreat. Witness the relentless calculations as the AI weighs the merits of launching relentless attacks or strategically seeking cover to ensure survival. With grenades as tools of calculated destruction, the AI orchestrates a symphony of chaos, proactively creating opportunities to unleash devastation from the shadows of superior protection. Delve into the depths of warfare's moral quandaries as the AI navigates a battlefield where friends can turn foes, and every decision could alter the course of the conflict. Brace yourself for an epic journey where the fine balance between attacking and taking cover will shape the destiny of the war.

Offline Kozinsky

  • Captain
  • ***
  • Posts: 93
  • Sorry for my bEd English
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #213 on: July 10, 2023, 01:20:34 pm »
7.0.0:

Amidst the chaos of war, an advanced artificial intelligence (AI) confronts a critical decision: to strike or seek refuge? In "Battlefield Dilemma: Shadows of Defense," the AI's quest for dominance clashes with the imperative of self-preservation. As the AI recalibrates its strategies, a captivating struggle unfolds between calculated aggression and tactical retreat. Witness the relentless calculations as the AI weighs the merits of launching relentless attacks or strategically seeking cover to ensure survival. With grenades as tools of calculated destruction, the AI orchestrates a symphony of chaos, proactively creating opportunities to unleash devastation from the shadows of superior protection. Delve into the depths of warfare's moral quandaries as the AI navigates a battlefield where friends can turn foes, and every decision could alter the course of the conflict. Brace yourself for an epic journey where the fine balance between attacking and taking cover will shape the destiny of the war.

Is there a possibility to describe in more technical language all the innovations, not just poetic?

Offline Solarius Scorch

  • Global Moderator
  • Commander
  • *****
  • Posts: 11465
  • WE MUST DISSENT
    • View Profile
    • Nocturmal Productions modding studio website
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #214 on: July 10, 2023, 04:38:37 pm »
Is there a possibility to describe in more technical language all the innovations, not just poetic?

I think it's the best possible description, screw technicalities. :)

Offline panzer

  • Sergeant
  • **
  • Posts: 27
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #215 on: July 10, 2023, 06:22:39 pm »
Hi Xilmi :) The behavior of units is regulated by the parameters "aggression," "sniper/spotter," and a little bit of "intelligence." As far as I understand, in BAI, sniper/spotter and intelligence are unnecessary remnants. However, aggression, especially in the XCF paradigm, is a very important thing. The modder adjusts the behavior of AI for different missions using the "aggression" parameter. This works because in OXCE, there are a total of 4 aggressions: 0, 1, 2, and 3+.

For example, leaders and commanders have an aggression of 0, and they all sit in the cabin of their spacecraft during battles, not allowing the X-COM team to capture them immediately. Mutons (aggression: 2) have a unit called "Muton shader" with an aggression of 3, which acts as a scout. There are missions with enemies who have low aggression and it is assumed that you will storm them, and vice versa.

Currently, in BAI, there are only 2 aggressions (we do not consider aggression "3" as it is equivalent to Leeroy Jenkins), which will work for units with aggression 0 and 1 if the "Inherit unit-aggression" option is enabled.

 In short, in order for XCF scenarios with BAI to work as intended by the respected Solarius Scorch, there should also be 4 aggressions in Brutal-OXCE.
 Sentence: Modify the "Inherit unit-aggression" option so that when activated, enemies receive a full 4 aggression. When "Inherit unit-aggression" is enabled, replace the current 3 aggression with the 3 aggression from update 6.4.0.
So it would look something like this: Aggression:
OXCE-3+ ; BAI 4 (3 from 6.4.0.)
OXCE-2 ; BAI 3 (2 currently)
OXCE-1 ; BAI 2 (1  currently or  create intermediate between 1 and 2)
OXCE-0 ; BAI 1 (1 currently or create even more passive).
 
« Last Edit: July 10, 2023, 06:32:18 pm by panzer »

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 605
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #216 on: July 10, 2023, 07:05:25 pm »
Is there a possibility to describe in more technical language all the innovations, not just poetic?
Fixed an issue that made the AI fear grenades that have already exploded.

The AI now considers taking cover befor deciding to attack. It will consider whether trying to hide is worth taking fewer shots or not even attempting to attack at all to remain hidden.
The quality of the potential cover plays a role on the balanced aggressiveness setting. On the lowest aggressiveness-setting taking cover will always be the most important thing.

Being near their friends no longer prevents the AI from prepriming their grenades if the other conditions for prepriming are met.

If an AI-unit has a grenade but the situation is not looking good for prepriming it, it will pro-actively look into creating a situation where it can savely prime a grenade. This includes not peeking and looking to go to the highest quality of cover.

Fixed an issue where for breaking line of sight the AI considered their own units standing in the way as breaking line of sight. While technically it was, it's not a particularly good idea to rely on your allies as cover.

AI now takes the No-LOS-accuracy-penalty into account.

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 605
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #217 on: July 10, 2023, 07:24:10 pm »
@panzer:

The option between 2 and 3 in 6.4.0 was not really something fully functional. It was meant as an option for lower-end-spec-machines or huge maps with a lot of aliens. But it didn't really fit in there so it was moved to the performance-option since 6.6.1.

Adding in-between-aggressions that are both distinct enough and result in reasonable play isn't that easy.

What could and probably should be changed is the mapping when using the inherit-option.

Maybe 0 and 1 to 1, 2 to 7 to 2 and 8 to 3. Or somehow make it optional.

Offline panzer

  • Sergeant
  • **
  • Posts: 27
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #218 on: July 10, 2023, 09:59:59 pm »
What could and probably should be changed is the mapping when using the inherit-option.
This is a good idea. As a result, units in XCF with Aggression 0/1 will receive their first aggression from BAI, 2=2, and 3+=3, respectively. Therefore, intermediate aggressions are not necessary.

I understand that the third aggression in 6.4.0 is not something substantial. I mentioned it as an example where the AI prefers to attack but still considers cover and safety.

Currently, the third aggression is more of a test version where the AI tries to approach and attack you via the shortest path, and if it doesn't have enough time to shoot, it will get closer instead of hiding. All units that inherit this form of the third aggression will simply be punching bags.

Offline Abyss

  • Colonel
  • ****
  • Posts: 327
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #219 on: July 11, 2023, 09:57:40 am »
Xilmi, it may be worth considering:
As mechanics of BAI and dumb-AI differ, but level design of global mods are not going to change, the specific code block that checks aggression set specifically for BAI, but which (block) is code-wise ignored by OXCE, may work.
The same mod can be used both by OXCE and Brutal-OXCE fork, but works a bit different in each case.

Presumably, BAI checks the ignore-code areas, looking for specific keyword, like "FLUGGEGECHEIMEN",
under which the aggression level and tactic-specific levels of units are described.
Then OXCE-related mod will then use original strings, while Brutal-OXCE checks whether keyword is there, and then take these numbers as priority over OXCE-related numbers.

Then, modder or community can decide, which level of aggression and other specifics of units fits best lore-wise and set them once and for all.

Other question, do you think it worth to implement more tactical-level sliders for units?
Mixing level of aggression 1 with 3 may not be enough, because levels 3 will just rush, and levels 1 will just hide-and-seek.
There should be some other activity over map for saturation of experience.

Example is here:
Lore-wise, alien pilots should be forced to stay in the ship (the navigation room of big ship or in the small ship). With BAI enabled they will rush, trying to achieve victory condition.
But, it is very desireful, if they not only stay there patrolling from A to B, but open doors and shoot from the place they forced to stay.
So, it may be helpful to set the limitation of maximum tiles they can get away from the spawn-place.
 

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 605
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #220 on: July 11, 2023, 11:25:37 am »
Currently, the third aggression is more of a test version where the AI tries to approach and attack you via the shortest path, and if it doesn't have enough time to shoot, it will get closer instead of hiding. All units that inherit this form of the third aggression will simply be punching bags.
Yes, I primarily use it for benchmarking my changes. Let X-Com be controlled by this rather consistent "brute-force"-AI and see how much harm it does against an AI that acts smartly.

I think that on heavily armored units like Sectopods or units that explode on death like Cyberdisks it would be quite competitive.

It's not meant to be smart. It's meant to emulate maximum aggression. And I can't fathom any more aggressive behaviour than blindly charging towards the enemy and attack them whenever you can.

For everything else Aggressiveness 2 should be just fine. It's about a compromise between getting into position for attacking while keeping one's own safety in mind.

I don't really see an in-between-behavior that would make sense.

If this kind of behavior is never desired, then maybe it should never be mapped to.

Maybe I should just map to 0 => 1 and everything else => 2.

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 605
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #221 on: July 11, 2023, 12:15:19 pm »
Xilmi, it may be worth considering:
As mechanics of BAI and dumb-AI differ, but level design of global mods are not going to change, the specific code block that checks aggression set specifically for BAI, but which (block) is code-wise ignored by OXCE, may work.
The same mod can be used both by OXCE and Brutal-OXCE fork, but works a bit different in each case.

Presumably, BAI checks the ignore-code areas, looking for specific keyword, like "FLUGGEGECHEIMEN",
under which the aggression level and tactic-specific levels of units are described.
Then OXCE-related mod will then use original strings, while Brutal-OXCE checks whether keyword is there, and then take these numbers as priority over OXCE-related numbers.

Then, modder or community can decide, which level of aggression and other specifics of units fits best lore-wise and set them once and for all.

Other question, do you think it worth to implement more tactical-level sliders for units?
Mixing level of aggression 1 with 3 may not be enough, because levels 3 will just rush, and levels 1 will just hide-and-seek.
There should be some other activity over map for saturation of experience.

Example is here:
Lore-wise, alien pilots should be forced to stay in the ship (the navigation room of big ship or in the small ship). With BAI enabled they will rush, trying to achieve victory condition.
But, it is very desireful, if they not only stay there patrolling from A to B, but open doors and shoot from the place they forced to stay.
So, it may be helpful to set the limitation of maximum tiles they can get away from the spawn-place.
 
I have trouble comprehending what you are talking about. The code of BAI and regular AI is very much separated except for some initial initialization.
The Aggressiveness-setting from the Brutal-AI-options is already ignored by the base-AI.
The AI-menu is structured in a way that the options that affect both of them come before the "Brutal AI"-option. That's only sneaky AI and the Use explosives from turn 1 option.

The same mods being usable both with and without Brutal-AI without the Modder having to put in any extra work, is already possible and I think most of the people who play with Brutal-AI also play mods. For example: Both 7.0.1 and 7.0.2 fixed things that are not relevant for vanilla.

You don't even need a separate client as Brutal-AI can be switched off at any time and enemy-behavior should be the same as in the regular OXCE-client. Except if a mod deliberately forces it to stay enabled.

There are BAI-specific options that modders can set and that are ignored by regular AI. The targeting-mode, the aggressiveness and whether they know enemy-unit's positions. Even whether the unit uses BAI at all is possible to set for a Mod. As far as I know nobody uses these. Implementing modding-options that no modder uses anyways, doesn't seem a good use of my time. The inherit-option exists specifically because of that so that already existing settings for base-AI can be used by BAI-too and Leeroy is also used by BAI by default. But that's really the only one. Maybe it should be tied to the inherit-option too, now that it is there.

With adding leashes to spawn-tiles we are back to what I'd label "very arbitrary things desired by only one person". I want to deliberately avoid overchoice when it comes to the options. I think that it's already too many.

As I said before: My focus is on increasing playing-strength, not on providing all sorts of optional arbitrary behaviors.

Offline Juku121

  • Commander
  • *****
  • Posts: 1639
  • We're all mad here.
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #222 on: July 11, 2023, 01:38:23 pm »
While I generally agree with Xilmi, I've got to do some nitpicking.

With adding leashes to spawn-tiles we are back to what I'd label "very arbitrary things desired by only one person".
Aliens camping in their UFOs has been a part of every 'proper' X-Com and X-Com clone since, well, forever, from the OG to the AfterX series to Xenonauts to nuCom. I wouldn't call that something that's "desired by only one person".

I mean, Xenonauts was infamous for how hard the aliens camped their UFO doors.

Offline Abyss

  • Colonel
  • ****
  • Posts: 327
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.2
« Reply #223 on: July 11, 2023, 05:07:19 pm »
Xilmi, I'm not english native speaker, I do what I can.
But the basis is set clear: more slider tools for modders to adjust -  more attention BAI will eventually get.
The overall quality of AI is nice and competitive (in terms of making mass damage), although when I played your brutal AI with XCF (14 hours total) I've seen so much things that are wrong in nature.
Like, ant behavior for groups of enemies, no long-range camping at all for guys with sniper rifles,
Enemies run from the door into night field which is lighted with flares, one after one, while other 3 doors are present, two of which aren't lighted. (Bunker from Red Dawn HQ)
I didn't even have to get down the stairs into the fortified part of the base, where second part of the battle has to be set.

And, you so much wrong when call me one person with arbitrary desires.
My intention is to befriend your BAI with XCF, at least, by pointing out possibilities.   

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 605
    • View Profile
Re: [SOURCEMOD] Brutal-OXCE 7.0.0
« Reply #224 on: July 12, 2023, 11:12:52 am »
Aliens camping in their UFOs has been a part of every 'proper' X-Com and X-Com clone since, well, forever, from the OG to the AfterX series to Xenonauts to nuCom. I wouldn't call that something that's "desired by only one person".

I mean, Xenonauts was infamous for how hard the aliens camped their UFO doors.
There's other, more generalizable ways to accomplish that way of desired camping besides having a configurable range from the spawn tile.
The primary one that comes to mind is a preference for having a roof above their head. That can also be coupled with disregarding "getting closer to the player" as a factor for looking for hiding-tiles.
This could be inserted at the lower end of the aggressiveness-scale.
I could add an aggressiveness 0 that behaves like this and then really do an inherit mapping of 0 => 0, 1 => 1, rest => 2, Only leeroy => 3
This could bring back the thrill of having to explore deep into the inside of structures. I personally think that having the AI camp even harder than it does with the current lowest aggressiveness-setting would not be fun to play against. But if several players demand it, I guess I can make it happen like that.