almost 2 years
Probably easier to just put these all here instead of having them haphazardly strewn around the #ask_arthur channel (these aren't in any particular order):
Addition of dll export/.lib file update to include getHealthFaction() function (for implementing disengage behaviour on critically damaged ships)
Access to/explanation of core radius calculations (core radius is very different from what I'd expect on some ships, which is causing problems with adding certain AI behaviours)
Some kind of capability to recognize tournament arena boundaries
almost 2 years
Formally the core radius is the mean plus one standard deviation of the blocks in the ship weighted by P (min 0.25 P). You can loop over the blocks in a ship in the AI and calculate it however you want, just beware that it can get slow quickly if you aren't careful.
You can access the tournament arena boundaries with zone->getStreamer()->getBoundsRadius() which returns a float2 width/height and and zone->getStreamer()->getBoundsEdges() which returns the number of verts (e.g. 8).
These functions aren't dll exported yet but will be soon.
Note that ships/clusters also have a member called "bbox" which stores the unroted axis aligned bounding box which might be more appropriate for long skinny ships (I think +x is forwards). AABBox has .mn and .mx members which are the minimum and maximum points.
The ReassemblyRelease.lib has been updated so getHealthFaction() should be available now (need beta reassembly).
Join the discussion!