Author Topic: Brutal-OXCE 9.1.4  (Read 58115 times)

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 642
    • View Profile
Re: Brutal-OXCE 8.6.0
« Reply #300 on: June 10, 2024, 05:43:14 pm »
Maybe try to talk Meridian into implementing your fix… but it’s most probably OXC related, and getting pull request approved there… it’s kinda impossible
My fix is actually more of a workaround and can't really be ported back as I'm using one of my AI's routines to do that. An AI-routine that I've written because the engine seemed to lack a function that had the required functionality anywhere else and it was the AI where I first felt the need for such function. It is based on the logic from int Projectile::calculateThrow(double accuracy).

Technically SupSuper should fix it as you probably could recreate in in base OXC :)
I maybe should do that. And if it's just to hear why he doesn't bother doing it. :o

Offline Yankes

  • Global Moderator
  • Commander
  • *****
  • Posts: 3350
    • View Profile
Re: Brutal-OXCE 8.6.0
« Reply #301 on: June 10, 2024, 06:28:45 pm »
I maybe should do that. And if it's just to hear why he doesn't bother doing it. :o
As long it do not catastrophically problem (like recent server move) he do not have time to fix bugs.
Its hard to have same amount of free time and motivation to maintain project for over 10 years.

Usually in cases like this, I first fix it on OXC side (if code is not too far to OXCE) and then merge it to OXCE.
But if is too much then I skip OXC and fix OXCE directly.

Online Akamashi

  • Colonel
  • ****
  • Posts: 160
    • View Profile
Re: Brutal-OXCE 8.6.3
« Reply #302 on: June 21, 2024, 09:13:24 am »
I am outraged that the enemy comes out of a knockout and immediately rushes into battle. I have been knocked out several times and I declare that this is complete nonsense. Once, after a knockout, I didn't understand at all for 5 minutes why I was in the ring, and what they wanted from me. If we equalize the odds, then it would be more correct for everyone to reset tu at the moment of getting out of the knockout.

Offline Juku121

  • Commander
  • *****
  • Posts: 1799
  • We're all mad here.
    • View Profile
Re: Brutal-OXCE 8.6.3
« Reply #303 on: June 21, 2024, 09:40:56 am »
But are you a genetically engineered alien war-creature? :P

Online Akamashi

  • Colonel
  • ****
  • Posts: 160
    • View Profile
Re: Brutal-OXCE 8.6.3
« Reply #304 on: June 21, 2024, 10:55:30 am »
But are you a genetically engineered alien war-creature? :P
Including all earthlings from all mods on xcom. When all units immediately engage after a knockout, this raises many more questions than if they had recovered from 0 tu.

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 642
    • View Profile
Re: Brutal-OXCE 8.6.3
« Reply #305 on: June 21, 2024, 04:28:47 pm »

Yeah, probably should have naded him after he fell unconcious.

But do we really miss out on hilarious situations like that?

Offline mutantlord

  • Colonel
  • ****
  • Posts: 136
    • View Profile
Re: Brutal-OXCE 8.6.3
« Reply #306 on: June 21, 2024, 06:42:43 pm »
Again, no tank support. These guys play like rookies.

Offline Abyss

  • Colonel
  • ****
  • Posts: 355
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #307 on: July 02, 2024, 12:09:08 am »
Hey, Xilmi!

The latest release seems quite promising, but what do you think, is it still a viable idea to make BAI understand non-whole numbers to switch between two types of aggressiveness models? I mean, sometimes it is not just "camper" and "ambusher" roles that make pain-in-the ass. It's more about what you cannot expect from this particular unit. If "zealot" goes suddenly goes into "ambusher" state, it can make ppl thrill. As in the vanilla UFO game. Mysterious and new back in 1994-1997's.

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 642
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #308 on: July 02, 2024, 11:31:51 am »
Hey, Xilmi!

The latest release seems quite promising, but what do you think, is it still a viable idea to make BAI understand non-whole numbers to switch between two types of aggressiveness models? I mean, sometimes it is not just "camper" and "ambusher" roles that make pain-in-the ass. It's more about what you cannot expect from this particular unit. If "zealot" goes suddenly goes into "ambusher" state, it can make ppl thrill. As in the vanilla UFO game. Mysterious and new back in 1994-1997's.
In 9.1.0 there's a way for the AI to bump up it's current aggressiveness-level.
However, that's only done when player-units start panicking and is meant as a counter-measure to player just ending turns until morale has recovered.

That will, however, not happen when the mission is going well.

The idea of starting at a high level but lowering it, is something I hadn't thought about before. My main-assumption for using a high one is for players to first and foremost want the mission to end quickly and not caring that it weakens the play of the AI.

But from an immersion-PoV it would make sense to allow it to scale downwards if things are not going well.

Possibilities for changing the value are pure randomization (just roll every turn), weighted randomization (using the default value more often than other values) and based on the game-state. Morale seems like the most logical value to use.

Offline Abyss

  • Colonel
  • ****
  • Posts: 355
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #309 on: July 02, 2024, 10:12:31 pm »
Weighted randomization (using the default value more often than other values) and based on the game-state. Morale seems like the most logical value to use.
Weighted randomization surplus which depends on morale is good, but also reverse scenarios are acceptable: when units that are supposed to be zealots, start to hide for a random amount of turns and then became zealots once again, coming out of shitholes and dark places of any kind.
Well, based on my perception of BAI's previous versions, it usually makes it hard to proceed without casualities within player's troops, setting up ambushes quite good, but rarely relying on reserved TU's for reaction shots. From player's perspective, this lowers the most consistent part of the joy (a gambling within a game), making it rather a straight-forward chess game, than a a sort of rogue-like role playing game. 
I can't comment current BAI, as still want the thing to happen: be it possible to rewrite all RUL aggro settings manually. Now it comes much closer to that.

Remember, that aggressiveness level written in OXCE RUL file has nothing in common to be compared with BAI aggressiveness.
So. There is HARDLY an option to "choosing option 4 means aggressiveness is inherited from unit-aggression" at the current state of BAI-mod (XPZ/XCF) compliance, because units then will behave unnaturally, and most likely push themselves to death, even weakest ones that should otherwise passively run around in vanilla. And, btw, they run around so to make mission more mild/narrow in terms of shooting density (such balanced, that's it). So player don't have to deal with all 50-100 troops simultaneously turn 2.

And one more thing. There's invisible units on player's side too. By invisible I mean really invisible, not CAMO. Last playthrough I had one catgirl making beef out of whole BAI cruiser because they couldn't do anything regarding it. Invis = 5, range = 20.
Of course, I cancelled reaction shots my turn. But vanilla has sniper-spotter. What can BAI make in this case?
 

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 642
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #310 on: July 03, 2024, 11:08:49 am »
Weighted randomization surplus which depends on morale is good, but also reverse scenarios are acceptable: when units that are supposed to be zealots, start to hide for a random amount of turns and then became zealots once again, coming out of shitholes and dark places of any kind.
Well, based on my perception of BAI's previous versions, it usually makes it hard to proceed without casualities within player's troops, setting up ambushes quite good, but rarely relying on reserved TU's for reaction shots. From player's perspective, this lowers the most consistent part of the joy (a gambling within a game), making it rather a straight-forward chess game, than a a sort of rogue-like role playing game. 
I can't comment current BAI, as still want the thing to happen: be it possible to rewrite all RUL aggro settings manually. Now it comes much closer to that.

Remember, that aggressiveness level written in OXCE RUL file has nothing in common to be compared with BAI aggressiveness.
So. There is HARDLY an option to "choosing option 4 means aggressiveness is inherited from unit-aggression" at the current state of BAI-mod (XPZ/XCF) compliance, because units then will behave unnaturally, and most likely push themselves to death, even weakest ones that should otherwise passively run around in vanilla. And, btw, they run around so to make mission more mild/narrow in terms of shooting density (such balanced, that's it). So player don't have to deal with all 50-100 troops simultaneously turn 2.

And one more thing. There's invisible units on player's side too. By invisible I mean really invisible, not CAMO. Last playthrough I had one catgirl making beef out of whole BAI cruiser because they couldn't do anything regarding it. Invis = 5, range = 20.
Of course, I cancelled reaction shots my turn. But vanilla has sniper-spotter. What can BAI make in this case?
 
The aggressiveness-levels written in the rul-files of the base-game are all 0-2. This is kinda in line with the suitable levels for BAI. If modders, for some reason, massively exceed what was common in the base game, then this is something I can't really take into account. It is supported but might lead to undesirable results.

I said it before and I'll say it again: BAI was designed to make enemies play as well as they can. If mods are designed around fighting 50+ stupid enemies, then BAI might not be a valid option to use for these. There is now btw. also the possibility to set intelligence to 0. This might make these missons doable afterall but is not really the intended experience.

I did provide some options to nerf the AI to get some kind of in-between-state between the base-AI and the fully brutal experience. It's on the player to figure out what options they like.

Interesting story about the invisible unit. Yes, BAI can't currently deal with something like that unless you enable Targeting-mode 4. The base-AI uses it's intelligence stat to cheat and keep units "visible" in their mind for several turns after they revealed themselves. BAI would need an option that works like that too. But I'd predict that this would make it otherwise feel pretty unfair, not unlike enabling targeting-mode 4.

Offline Abyss

  • Colonel
  • ****
  • Posts: 355
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #311 on: July 03, 2024, 09:50:36 pm »
Can you please remind, what intelligence stands for, BAI-wise?

targeting mode: 4 is cheating, and probably the worst solution this case. Regarding the invis units on the player side, maybe a trigger may help: some sort of mass AoE after few turns without seeing killer, but getting casualities? Hardly believable something outside grenades and rockets can make a deal. Suicidal recon can work too, but it's unfavorable and abusable. Well, ok. Just to point out that issue is there.

Quote
I did provide some options to nerf the AI to get some kind of in-between-state between the base-AI and the fully brutal experience. It's on the player to figure out what options they like.
 
It's intelligence, right?

Offline Xilmi

  • Moderator
  • Commander
  • ***
  • Posts: 642
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #312 on: July 04, 2024, 10:53:47 am »
Intelligence takes the score that the AI calculated for each tile and replaces a certain factor of it with a random number. As long as the score wasn't 0.

At 0 intelligence all tiles that had any score will just create a random number. So it's kinda random where it goes.
Otherwise it's Intelligence * 20% of the score that comes from the original score and the rest is random.

So for example if the calculated score for a tile is 100.
0 Intelligence means the score is now RND(0-100).
1 Intelligence means the score is now 20+RND(0-80)
2 Intelligence means the score is now 40+RND(0-60)
3 Intelligence means the score is now 60+RND(0-40)
4 Intelligence means the score is now 80+RND(0-20)
5 Intelligence means the score remains 100

Offline Abyss

  • Colonel
  • ****
  • Posts: 355
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #313 on: July 04, 2024, 03:02:01 pm »
So for example if the calculated score for a tile is 100.
0 Intelligence means the score is now RND(0-100).
1 Intelligence means the score is now 20+RND(0-80)
2 Intelligence means the score is now 40+RND(0-60)
3 Intelligence means the score is now 60+RND(0-40)
4 Intelligence means the score is now 80+RND(0-20)
5 Intelligence means the score remains 100
Thanks. With this in mind, I think it will be a mess with model that switches between aggressiveness levels, too.
At least, why not take a try with something like customized RUL file + intel = 40-60.

Offline Abyss

  • Colonel
  • ****
  • Posts: 355
    • View Profile
Re: Brutal-OXCE 9.1.0
« Reply #314 on: July 08, 2024, 04:03:00 pm »
Xilmi, hi

One more thing came into the mind, regarding the aggro settings:
If not taking into consideration dynamic switching between aggressiveness parameters in one single mission,
Can it be implemented that same units can have different aggros in different missions, based on random, right?
Say, 60% of missions aggressiveness is 1, in 40% is 2.

This will diversify how same missions are being played, yet will not mess up with overall BAI strategy over one single mission

If this can happen, although I don't really the following below is needed, it seem that implementation of the feature through addition RUL file can be a good solution:
modified (renamed, like BAI_XCF_units.rul) RUL file can be downloaded into directory where original RUL file stays.
And, if user choses "inherit unit aggression", then BOXCE restarts and reads modified RUL file, instead of original one.
This will allow to write percentages in any manner you will suggest, and will not interfere with original file.
In case, if something is broken, BOXCE then can simply return to original file.
« Last Edit: July 08, 2024, 11:19:25 pm by Abyss »