Open CptMoore opened 6 years ago
AC20 workaround implemented by introducing arm actuators, see #33
Didnt work well, while dynamic slots are now named, and crit chance adjustments are easy to add, mech designer cant determin where and how many slots are to be put. Better to actally split the big items with some lore (e.g. magazine as its own 1-3 slot item). Create additional item on drop and track association through simgameuid parameters. Requires crit hit collection of engine to be generalized (linkedcomponents)
crit is generialized, but crit splitting is still an issue due to missing option to link items in the mechbay. dynamic slot idea is still the best, and that is not good enough.
combat vs mechlab
TODO
Variant A) (max compatibilty with existing mods)
// CriticalEffectsFeature
public static void CreateCriticallyLinked(MechComponent linkedTo, int inventorySize, ChassisLocations location)
{
// introduce multiple links per component
// make those links all in statcollection, avoid having to do the "HasLinked" checks later
}
//MechDefBuilder
public static int GetDynamicLocationalSlotsForComponent(MechComponent component, ChassisLocations location)
{
// best use a precomputed cache that is also used in mechlab
}
// Mech.init postfix, add fakes to get crits, inherit linked damage level
// Mech.ToMechDef prefix, remove fakes again
// MechComponent.inventorySize -> mechComponent.GetCriticals() -> use link + fake component logic
also maybe hide those somehow from the overviews? or better.. allow to overwrite descriptions and colors
Developer-Level Errata
crit splitting will be implemented using dynamic slots