Jump to content

R&D Dynamic Pod Placement


wghost81

Recommended Posts

I found it!!! Finally!!! :smile:

 

Who would have guessed, that Overmind is completely disabled for Council missions! That's crazy.

 

Overmind is disabled for Tutorial missions, Council missions and Final mission. To enable it for Council missions search for 2C 0B and replace it with 2C FF:

{ enable Overmind for Council missions }
UPK_FILE=XComGame.upk
OBJECT=XGOvermind.Enabled
FIND_HEX=2C 0B
MODDED_HEX=2C FF
And pods will finally go to patrol state. Edited by wghost81
Link to comment
Share on other sites

  • Replies 60
  • Created
  • Last Reply

Top Posters In This Topic

Yes, seems Kismet events for Council missions affect only random Thinmen drop-downs. Not so sure about Final mission (Temple Ship), as I've seen spawn code inside Kismet. But anyway, Overmind manages preplaced pods only, so any dynamic Kismet pods should not be affected... theoretically. :smile:

 

Edit: uploaded v.0.9 of the mod to nexus.

Edited by wghost81
Link to comment
Share on other sites

  • 2 weeks later...

johnnylump, note, there are still some issues with determining valid position. I use native function I found in the code, but it works somehow strange. I've played an entire campaign with it and it seems stable, but I've seen Cyberdiscs teleporting sometimes. They teleport in vanilla game too. In fact, it's the only unit I've seen teleporting in EW.

 

New PatchUPK functionality will allow me to test some other approaches with less pain. :smile: So I will probably be updating the mod soon (when I'll have time to work on it again). The update will affect XGDeployAI.GetPossibleSpawns function only and if you haven't changed it for LW, further updates of the mod will be LW-compatible.

Edited by wghost81
Link to comment
Share on other sites

  • 2 weeks later...
Made EU version of the mod. Turns out, relevant functions are almost identical in EU and EW. Only Wave System and Covert Operations stuff had to be removed. Everything else is pretty much the same. I think, it will also work with EU LW.
Link to comment
Share on other sites

  • 1 month later...

I noticed that with the dynamic pod placement I'm getting some pods that can spawn extremely close to the edge of usable tiles, which can result in some of the pod members getting placed in invalid tiles.

 

The function XComAlienPod.GetDistributedPointAround is used for both initial alien placement around the spawnpoint as well as generating locations for when the pod is patrolling -- it appears that patrolling pods pick a single move-to point and then the remaining aliens use GetDistributedPointAround to get their individual move-to points.

 

This function does use XComWorldData.FindClosestValidLocation and does have the 4th parameter bAvoidNoSpawnZones set to true, but I'm still seeing some pod members spawn in questionable locations, which I've seen result in the pod having to use WarpTo to teleport away from a bad location.

 

----------

 

As an aside, I think I've worked out a mod to GetDistributedPointAround that increases the distribution radius for larger pods. Instead of a radius of 96.0 (1.5 meters, 1 tile), it uses radius of 96.0 * NumAliens / 3. For a pod of size 8 this results in a distribution radius of 256.0 (4 meters, 2.67 tiles). I disabled the checks that require the pod to fit within a 3x3 grid surround the target point.

 

Also, the "leader" in slot 0 will always be at the center point, with the remaining aliens distributed around. This should affect both the initial placement of alien pods as well as how they patrol.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...