Hi Periculi. Sorry for such a late reply. I just restarted scripting in Void Expanse recently and thought i`d have a look at this for you. Following are the actions.bind functions that I have found in the original scripts of the game:
actions.Bind("OnCalculateInventoryCache", "CalculateInventoryCache");
actions.Bind("OnCalculateSkillsCache", "CalculateSkillsCache");
actions.Bind("OnCalculateBuffsCache", "CalculateBuffsCache");
actions.Bind("OnCalculateShipParameters", "CalculateShipParameters");
actions.Bind("OnMaximizeShipValues", "MaximizeShipValues");
actions.Bind("OnUpdateShipParameters", "UpdateShipParams");
actions.Bind("OnCalculateNpcLeveledCache", "CalculateNpcLeveledCache");
actions.Bind("OnShipWarps", "OnShipWarpsHandler");
actions.Bind("OnChatReceive", "OnChatReceive");
actions.Bind("OnChatCommand", "OnChatCommand");
actions.Bind("OnCollision", "OnCollisionHandler");
actions.Bind("OnHit", "OnHitHandler");
actions.Bind("OnRayHitProjectile", "OnRayHitProjectileHandler");
actions.Bind("OnProjectileHitShip", "OnProjectileHitShipHandler");
actions.Bind("OnShipDestroyed", "OnShipDestroyedHandler");
actions.Bind("OnShipTryToEnterJumpgate", "OnShipTryToEnterJumpgateHandler");
actions.Bind("OnShipDestroyed", "OnShipDestroyedHandler");
actions.Bind("OnShipDestroyed", "OnCWaveEmitterDestroyedHandler");
actions.Bind("OnPlayerEntersGame", "OnPlayerEntersGameHandler");
actions.Bind("OnPlayerEntersSystem", "OnPlayerEntersSystemHandler");
actions.Bind("OnStarSystemUpdate", "StarSystemUpdate");
actions.Bind("OnEnterFrame", "EveryFrame");
actions.Bind("OnBaseGenerateStock", "GenerateStockHandler");
actions.Bind("OnInstancedContainerGeneration", "ContainerGenerationFunction");
actions.Bind("OnDebrisCollided", "OnDebrisCollidedHandler");
actions.BindToTrigger("onConsumableUsed", "onBallisticAmmoConsumableUsed",
actions.BindToTrigger("onConsumableUsed", "onRocketAmmoConsumableUsed",
actions.BindToTrigger("onBulletHit", "OnEMPWpnHit", { projectile_id: "weapon_emp_s1_0" });
actions.BindToTrigger("onBulletHit", "OnAntihiveHit", {});
actions.Bind("OnPlayerEntersSystem", "OnPlayerEntersSystemHandler");
actions.Bind("OnShipAttacked", "OnShipAttackedHandler");
actions.Bind("OnThankYouMessage", "ThankYouMessageHandler");
actions.BindToTrigger("onNpcSaved", "NpcSavedHandler");
actions.BindToTrigger("onNpcKilled", "NpcKilledHandler");
actions.Bind("OnCargoSold", "CargoSoldHandler");
actions.Bind("OnHackSuccess", "OnHackSuccessHandler");
But I believe you can also code your custom actions.
I don't have an answer right away for those:
Upgrade elements- i got no idea
Unused item type codes - i think i might have info on that but i gotta search my private messages.
faction-filter- never used it yet.
item durability- i got no clue but i am interested too in that.
And for initiating dialog with Npcs you use the function implemented in patch v2.1.0 here
http://forums.atomictorch.com/index.php?topic=1012.0(player scope)
void player.StartDialogue(string player_name, string npc_tag_unique_id);
That can be initiated also from an Npc script.