Jump to content

X-Division Team @XCE Solver Questions


Charon

Recommended Posts

So: maps are chosen randomly. If you have N maps, then each map has a 1/N chance of being picked. 

RandomMapsSelectCount

This can make random maps less likely to be chosen. If you set it to 1, then the chance of any of the random maps to be picked will be 1/N. In other words, if there are 20 maps and of them 15 are random: RandomMapsSelectCount = -1 means that any map can be picked with 1/20 probability. RandomMapsSelectCount = 1 means that the game groups all random maps together, so acts as if there are 6 maps: 5 non-random, 1 random. Then the chance of a random map is 1/6, and in that case the actual random map gets chosen randomly with a 1/15 chance for each.

The game will however remember which maps have been used recently, and will avoid selecting those again. The "recent" list is 3/4 the size of the map list. So if you have 20 maps, then the last 15 will count as recent and the game will prefer to choose among the other 5. If the map selection algorithm runs 4 times and fails to find a non-recent map, it will give up and make a choice out of all maps, including the recent ones.

Link to comment
Share on other sites

29 minutes ago, Solver said:

So: maps are chosen randomly. If you have N maps, then each map has a 1/N chance of being picked. 


RandomMapsSelectCount

This can make random maps less likely to be chosen. If you set it to 1, then the chance of any of the random maps to be picked will be 1/N. In other words, if there are 20 maps and of them 15 are random: RandomMapsSelectCount = -1 means that any map can be picked with 1/20 probability. RandomMapsSelectCount = 1 means that the game groups all random maps together, so acts as if there are 6 maps: 5 non-random, 1 random. Then the chance of a random map is 1/6, and in that case the actual random map gets chosen randomly with a 1/15 chance for each.

The game will however remember which maps have been used recently, and will avoid selecting those again. The "recent" list is 3/4 the size of the map list. So if you have 20 maps, then the last 15 will count as recent and the game will prefer to choose among the other 5. If the map selection algorithm runs 4 times and fails to find a non-recent map, it will give up and make a choice out of all maps, including the recent ones.

So

        <Map name="RMP_Farm_Huge_03_a_1" random="1"/>

the random part is a pure "Yes" or "No" and doesnt assign "counting" number ? As in comparision to this map counts as 3 ( makes it more likely to get picked ) if all other maps have the count of 1.

So further going into this, if you set RandomMapsSelectCount = -1 to 5 than all random maps together in your example will count as 5 giving it 50/50 of picking a random or non random map, with a single random map still having a chance of 1/15 ?

How does the refreshing rate of the "recent" list work ? Does it simply kick out the map which is in it the longest ?

 

Ive looked into the maps problem we are having and it seems like this system is the explanation for it.

TL;DR: Unique maps get drowned out by Skitsos 2000 variation maps.

So every UNIQUE map together propably makes around 50 - 100, while Skitsos variations propably are around 400 - 450. All of the maps have the same random counter which, ofcourse, makes it more possible to pick the same map with a tiny variation over and over again.

For example, unique farm maps in total amount to around 43, while Skitsos Random mix pack amounts to 318 for 4 unique maps. No wonder people feel like they are playing on the same maps over and over again. The other maps were simply getting drowned out. Not saying a detail change isnt worth it, but the map picking system doesnt really work in favour of the player.

All in all i dont think this was intended by the creators as the remedy is a simply "random" and "non random" tag behind the code, but it doesnt look like it got implemented.

 

For X-Division this is an easy fix i will come across to implement someday, but for others it might be interesting too.

Link to comment
Share on other sites

2 minutes ago, Charon said:

So


        <Map name="RMP_Farm_Huge_03_a_1" random="1"/>

the random part is a pure "Yes" or "No" and doesnt assign "counting" number ? As in comparision to this map counts as 3 ( makes it more likely to get picked ) if all other maps have the count of 1.

Yes, it's a yes/no indicator of whether the map is random.

 

3 minutes ago, Charon said:

So further going into this, if you set RandomMapsSelectCount = -1 to 5 than all random maps together in your example will count as 5 giving it 50/50 of picking a random or non random map, with a single random map still having a chance of 1/15 ?

If you set it to 5, that would be 5 non-random maps, and the random maps counted as 5, so yes. That is my understanding.

 

4 minutes ago, Charon said:

How does the refreshing rate of the "recent" list work ? Does it simply kick out the map which is in it the longest ?

Not entirely sure, but seems to be the oldest map that gets kicked out, yes.

Link to comment
Share on other sites

40 minutes ago, Solver said:

Yes, they override the script and always get aggressive. I think this is primarily because, with other scripts, it's too difficult to get the AI to engage properly and not constantly run away.

And where does the game see that alien X is a melee one ? The primary assigned weapon is a melee one ?

Link to comment
Share on other sites

5 minutes ago, Solver said:

That's what I expected at first, but no - this is why the non-Reapers broke. This rule applies to Reapers and anyone with the MeleeVehicles ability.

So what if an AI race does not have MeleeVehicles but melee? what happens then? Will it able to get other AI's without problem?

Link to comment
Share on other sites

5 minutes ago, Solver said:

That's what I expected at first, but no - this is why the non-Reapers broke. This rule applies to Reapers and anyone with the MeleeVehicles ability.

Pretty intertwined everything, hm. As i suspected its tied to the Reaper Race. Ideally it would not apply to the MeleeVehicles ability, but its ok, i guess. We can override the script it just means that we only have 1 AI for 1 unit.

Link to comment
Share on other sites

1 minute ago, Charon said:

Pretty intertwined everything, hm. As i suspected its tied to the Reaper Race. Ideally it would not apply to the MeleeVehicles ability, but its ok, i guess. We can override the script it just means that we only have 1 AI for 1 unit.

Yeah it's ugly. I expected the "melee" decision in the code to be taken based on what weapons the alien spawns with, because that would have been sensible, but I got a surprise. So to fix the Xenomorphs not attacking vehicles, I had to make that check be "Reaper, or has the MeleeVehicles ability". Which is at least a safe choice, changing to the proper solution is risky.

Link to comment
Share on other sites

8 minutes ago, Solver said:

Yeah it's ugly. I expected the "melee" decision in the code to be taken based on what weapons the alien spawns with, because that would have been sensible, but I got a surprise. So to fix the Xenomorphs not attacking vehicles, I had to make that check be "Reaper, or has the MeleeVehicles ability". Which is at least a safe choice, changing to the proper solution is risky.

It's not so big problem. I made some passive AI tests without reaper or meleevehicles ability and i think they acted a bit different but i can't say clearly. Not so big deal.

The main think i suspect is another surprise connections with other AI types like drones..

One of our big problem about big size aliens, the map connection of drones. I guess that the map spawn points for 3x3 and 2x2 uses only DRONE AI as reference. So if i want to have my own 3x3 unit and spawn at right place in the map, i need to create it under "heavydrone" race. As all the big sized units uses same AI, our only problem is sounds and visuals.. we got mechs and tanks which won't fit with the sounds of a hover drone. 

Link to comment
Share on other sites

3 minutes ago, Solver said:

It's actually hardcoded for specifically the Andron race, not the Robotic ability.

Owww.. we got another problem then.. it could be connected to passive behavior with drones nearby..

To be honest i would want to know everything specially hardcoded at AI.. i am tring to create AI types but this kind of invisible things takes my hours of time and make me mad..

Link to comment
Share on other sites

1 hour ago, drages said:

Owww.. we got another problem then.. it could be connected to passive behavior with drones nearby..

To be honest i would want to know everything specially hardcoded at AI.. i am tring to create AI types but this kind of invisible things takes my hours of time and make me mad..

What he specifically means is that Androns dont shoot, dont attack, and only stand around while bigger drones are around, and those sorts of things. They simply behave waaaaay to passive when paired with drones/big drones.

 - Drages Translator end

 

But as he said everything you could tell us about the AI would help, as walking against invisible walls really takes an incredible amount of time to figure out its not the aiprops.

 

Link to comment
Share on other sites

We are starting to implement the  sequipview.lua and may i humbly ask you to tell me again what the things were we should be aware of ?

One thing was not to changet the vanilla ballistic starting weapons but i cant remember the rules of how to give a weapon a new category ? Can you please enlighten me again ?

Link to comment
Share on other sites

You think I still remember? Seems like you need to give their category (weapons.xml) to:

WExtra1, WExtra2, WExtra3, WExtra4 for weapons and EExtra1..EExtra4 for equipment.

Do not reassign any starting weapons away from the Ballistics category. Anything that is in the Ballistics category is treated as an unlimited item.

Link to comment
Share on other sites

3 minutes ago, Solver said:

You think I still remember? Seems like you need to give their category (weapons.xml) to:

WExtra1, WExtra2, WExtra3, WExtra4 for weapons and EExtra1..EExtra4 for equipment.

Do not reassign any starting weapons away from the Ballistics category. Anything that is in the Ballistics category is treated as an unlimited item.

Thank you, the

3 minutes ago, Solver said:

Anything that is in the Ballistics category is treated as an unlimited item.

was what i forgot.

Link to comment
Share on other sites

  • 3 weeks later...

I checked the Tropical tileset and noticed this line of codes:

  <Tileset MODMERGEATTRIBUTE="name" MODMERGE="replace" name="farm">
    <MissionType name="Common" civilianCount="3" friendlyAICount="1">

As far as i know, and as far as you told us, there is nothing which changes civilian or local forces on a global scale, and i proved this code to be not working.

Is this line of code out cold 100%, or does it  affect anything ?

Link to comment
Share on other sites

It should work if the map uses the default setting for local forces/civilians (-1 I believe). Almost all maps use their own value for local forces/civilians though so that's why it seems to not be working.

I added that to the tropical/swamp tileset in case someone makes new maps for it and don't manually set the local forces/civilians count to 0, since both tilesets don't have any graphics for them.

Link to comment
Share on other sites

13 hours ago, Policenaut said:

It should work if the map uses the default setting for local forces/civilians (-1 I believe). Almost all maps use their own value for local forces/civilians though so that's why it seems to not be working.

So it should be working if set to -1 ? Can someone test that ?

Link to comment
Share on other sites

  • 2 weeks later...

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.

×
×
  • Create New...