View Issue Details

IDProjectCategoryLast Update
0019443AI War 2[All Projects] Bug - GameplayJul 8, 2019 10:50 am
ReporterBadgerBadgerAssigned Tox4000Bughunter 
Status assignedResolutionopen 
Product Version0.707 
Fixed in Version 
Summary0019443: Poor collision detection for Golems
DescriptionSo I have a Golem. I can fly a bunch of ships inside it, like it's not bothering to do collision detection at all. Here's a test chamber you can use to replicate it.

I had the same issue with the original Dyson Sphere, so this is not a new issue.
TagsNo tags attached.


related to 0021035 resolvedx4000Bughunter Bug: ships are sitting inside the armored golem. 
related to 0021240 resolvedx4000Bughunter Decollision planning weirdness 
related to 0021318 feedbackx4000Bughunter To Fix: AI ships (and possibly your own ships) pushing around fleet leaders. (Help wanted) 



Feb 18, 2018 12:41 pm

administrator   ~0047001

Are you referring to them flying through it, or referring to them stopping inside it? The game doesn't do any collision detection for movement; neither did the first game.


Feb 18, 2018 12:43 pm

manager   ~0047002

Things can fly through the golem like it's not there. which is okay for smaller things but looks really weird for large things. Also the Golem is large enough that you can fit a dozen squads in it, so you can look at your force and think "Oh, there's the golem but where's everything else?!"


Feb 18, 2018 12:48 pm

administrator   ~0047003

Keith, I think that we're going to have to add forcefield-style collision detection that can be turned on on a per-squad-type basis, based on what he's saying there. I suppose this would apply to king units, Golems, and spire units.

I had at one point been thinking of having these units drop a bit lower down as a way of preventing this from looking strange, but these are just too large for that to work, and it would cause other problems. Golems and spire and king units are rare enough that this shouldn't eat the CPU too much in the sim I assume, but I'm not thrilled if we have to go to starships and guardians of course. I guess it still wouldn't be the absolute worst thing in the world considering some of the past savegames I've seen with tons of forcefields on one planet working fine, but hopefully we can avoid going there.


Feb 18, 2018 1:03 pm


Example.xml (1,054 bytes)


Feb 19, 2018 10:03 am

administrator   ~0047007

Added Trello card.


Aug 29, 2018 8:05 pm

administrator   ~0048559

This is low priority compared to the AI behaviors and the performance stuff, Keith, but in general the third thing I'd like you to focus on is some manner of getting ships to spread out more. I don't know if we should maybe treat the biggest ships as if they are forcefields-to-everything in terms of blocking ships from running through them. That could get messy, expensive, and could lead to exploits like parking big ships on wormholes.

So something softer would be nice, but we don't have the CPU available for "graph untangling" types of spring logic that pushes and pulls ships away (not to mention that would look strange). I'm at a loss, presently, on good algorithms for handling this in an unorganized way. My main thought is that potentially a background thread could run through, process things that are moving in a similar direction in a similar area, and temporarily divert them to make them not stacked up so much. If things pass through each other, that's fine, but avoiding that bunching-up-while-moving thing would be the big winner here.

That's a whole complicated thing on its own, but it's at least theoretically tractable on the CPU.


Jul 8, 2019 10:50 am

administrator   ~0052075

This will at least partly help:

* Fixed a bug that was letting small ships sit inside large ones. Mainly affecting things like Golems and Arks having other ships sitting inside them.
** The current fix is untested but should probably work.

Issue History

Date Modified Username Field Change
Feb 17, 2018 11:43 pm BadgerBadger New Issue
Feb 18, 2018 12:41 pm x4000Bughunter Note Added: 0047001
Feb 18, 2018 12:43 pm BadgerBadger Note Added: 0047002
Feb 18, 2018 12:44 pm x4000Bughunter Assigned To => keith.lamothe
Feb 18, 2018 12:44 pm x4000Bughunter Status new => assigned
Feb 18, 2018 12:48 pm x4000Bughunter Note Added: 0047003
Feb 18, 2018 1:03 pm BadgerBadger File Added: Example.xml
Feb 19, 2018 10:03 am Dune Note Added: 0047007
Aug 29, 2018 8:05 pm x4000Bughunter Note Added: 0048559
Apr 18, 2019 12:58 pm BadgerBadger Relationship added related to 0021035
Jul 8, 2019 10:47 am x4000Bughunter Assigned To keith.lamothe => x4000Bughunter
Jul 8, 2019 10:47 am x4000Bughunter Relationship added related to 0021240
Jul 8, 2019 10:47 am x4000Bughunter Relationship added related to 0021318
Jul 8, 2019 10:50 am x4000Bughunter Note Added: 0052075