Release EDDI - Windows app for immersion and more

Status
Thread Closed: Not open for further replies.
There are details in the help file but basically it can be either 'Scoop' (if fuel scooped) or 'Market' (if purchased).

Got it.

Is ship.fueltank as a TTS readout not added? I can not get TTS voice to read the fueltank capacity to me.. neither for my jumped nor my ship refuelled event.

Also the ship refuelled event has a really long delay from kicking in after the scooping is done.
 
Last edited:
Got it.

Is ship.fueltank as a TTS readout not added? I can not get TTS voice to read the fueltank capacity to me.. neither for my jumped nor my ship refuelled event.

There is ship.fueltankcapacity for the capacity of the main fuel tank and ship.fueltanktotalcapacity for the capacity of the main fuel tank plus any additional tanks.
 
There is ship.fueltankcapacity for the capacity of the main fuel tank and ship.fueltanktotalcapacity for the capacity of the main fuel tank plus any additional tanks.

Oh nice! Maybe put it under the variables info? There's only ship.fueltank there. Ship.fueltank is still a viable variable for calculation? or should i switch to ship.fueltankcapacity for calculation in my scripts because they still seem to work.
 
Last edited:
Oh nice! Maybe put it under the variables info? There's only ship.fueltank there. Ship.fueltank is still a viable variable for calculation? or should i switch to ship.fueltankcapacity for calculation in my scripts because they still seem to work.

ship.fueltank is a module so no it probably never worked correctly.

Documentation has been updated and will show up in the next release.
 
is there a way to reduce the decimal points that the fuel its read out from? like 14 Tonnes instead of 14.344 Tonnes ? would like to be round off to the nearest whole number. Sme goes with Jump distance too
 
is there a way to reduce the decimal points that the fuel its read out from? like 14 Tonnes instead of 14.344 Tonnes ? would like to be round off to the nearest whole number. Sme goes with Jump distance too

You can just use a function, for example floor(event.fuelremaining + 0.5)
 
ship.fueltank is a module so no it probably never worked correctly.

Documentation has been updated and will show up in the next release.

Funny :) Spat out seemingly correct numbers. Anyhow, thank you for your hard work! EDDI is awesome.

Below are my updated Fuel scripts for anyone interested:

Jumped Event
Code:
{set currentfuel to (event.fuelremaining / ship.fueltanktotalcapacity)}

{Pause(2000)}

{if icurrentfuel < 0.08:
   Warning! Ships Fueltank depleted! Running on reserves. Shutdown of non-essential Systems and sending out a Distress-call is recommended for survival, if no scoopable Star or refuelling Station in reach.
|elif currentfuel < 0.16:
  Warning: Ships Fueltank almost depleted. Immediate course correction to a System with scoopable Stars or Refueling Stations is required. {Humanise(event.fuelremaining)} Tons of Fuel remaining.
|elif currentfuel <= 0.25:
  Attention, Ships Fueltank more than 75% depleted. Fuelscooping the next viable Star is Advised. {Humanise(event.fuelremaining)} Tons of Fuel remaining.
|elif currentfuel <= 0.5:
  Attention, Ships Fueltank more than 50% depleted. {Humanise(event.fuelremaining)} Tons of Fuel remaining.
|elif currentfuel > 0.5:
  Postjump Fuel reserves within specified safety parameters.}

Ship refuelled event
Code:
{set currentfuel to (event.total / ship.fueltanktotalcapacity)}

{if event.source = "Scoop":
   {ShipName()} refueled with {event.amount} Tons,
|else
   {set currentfuel to ship.fueltanktotalcapacity}
        {ShipName()} refuelled with {event.amount} Tons for {event.price} Credits.}

{if currentfuel < 0.08:
   Warning! Ship running on Fueltank-external reserves. Fuelscooping is required for further Ship operations. Shutdown of non-essential Systems is advised until Fuel is replenished.
|elif currentfuel < 0.16:
  Warning: Fuel reserves still at minimum. Leaving without Fuelscooping is not advised! Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel <= 0.25:
  Attention, Fuel reserves still below 75%. Additional Fuelscooping is Advised. Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel <= 0.5:
  Attention, Fuel reserves still below 50%. Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel < ship.fueltanktotalcapacity:
   and within specified safety parameters. Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel = ship.fueltanktotalcapacity:
   Fueltank at maximum capacity.}

If there are any errors or other improvements i couldn't think of, pm me. Albeit scripting being alot of fun it is totally new to me and most of the time i trial-and-error my way through until it works :D
 
Funny :) Spat out seemingly correct numbers. Anyhow, thank you for your hard work! EDDI is awesome.

Below are my updated Fuel scripts for anyone interested:

Jumped Event
Code:
{set currentfuel to (event.fuelremaining / ship.fueltanktotalcapacity)}

{Pause(2000)}

{if icurrentfuel < 0.08:
   Warning! Ships Fueltank depleted! Running on reserves. Shutdown of non-essential Systems and sending out a Distress-call is recommended for survival, if no scoopable Star or refuelling Station in reach.
|elif currentfuel < 0.16:
  Warning: Ships Fueltank almost depleted. Immediate course correction to a System with scoopable Stars or Refueling Stations is required. {Humanise(event.fuelremaining)} Tons of Fuel remaining.
|elif currentfuel <= 0.25:
  Attention, Ships Fueltank more than 75% depleted. Fuelscooping the next viable Star is Advised. {Humanise(event.fuelremaining)} Tons of Fuel remaining.
|elif currentfuel <= 0.5:
  Attention, Ships Fueltank more than 50% depleted. {Humanise(event.fuelremaining)} Tons of Fuel remaining.
|elif currentfuel > 0.5:
  Postjump Fuel reserves within specified safety parameters.}

Ship refuelled event
Code:
{set currentfuel to (event.total / ship.fueltanktotalcapacity)}

{if event.source = "Scoop":
   {ShipName()} refueled with {event.amount} Tons,
|else
   {set currentfuel to ship.fueltanktotalcapacity}
        {ShipName()} refuelled with {event.amount} Tons for {event.price} Credits.}

{if currentfuel < 0.08:
   Warning! Ship running on Fueltank-external reserves. Fuelscooping is required for further Ship operations. Shutdown of non-essential Systems is advised until Fuel is replenished.
|elif currentfuel < 0.16:
  Warning: Fuel reserves still at minimum. Leaving without Fuelscooping is not advised! Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel <= 0.25:
  Attention, Fuel reserves still below 75%. Additional Fuelscooping is Advised. Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel <= 0.5:
  Attention, Fuel reserves still below 50%. Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel < ship.fueltanktotalcapacity:
   and within specified safety parameters. Current amount: {Humanise(event.total)} of {ship.fueltanktotalcapacity} Tons.
|elif currentfuel = ship.fueltanktotalcapacity:
   Fueltank at maximum capacity.}

If there are any errors or other improvements i couldn't think of, pm me. Albeit scripting being alot of fun it is totally new to me and most of the time i trial-and-error my way through until it works :D

Nice I was just tinkering with this script too ö7 will report back if I find any problems not that I know what I'm doing half the time but as you have said I'm also finding scripting fun and relaxing when it works, frustrating when it doesn't :D
 
jgm, is there a time frame for getting the scooping event in? I'm just wondering whether to delay my update until you've had time to do it.
 
Populated the Ship Interdicted event in EDDI to inform me who and detail about their rank, faction, etc...

It worked; however, the dialog/response came late, when basically I was already pulled out of SC.

Is it possible to have the read occur while the interdiction is underway and I have a chance to escape? Basically, for example if a high combat ranked NPC or player was interdicting me, perhaps I would aggressively pursue escape?

~S~
wind
 
Populated the Ship Interdicted event in EDDI to inform me who and detail about their rank, faction, etc...

It worked; however, the dialog/response came late, when basically I was already pulled out of SC.

Is it possible to have the read occur while the interdiction is underway and I have a chance to escape? Basically, for example if a high combat ranked NPC or player was interdicting me, perhaps I would aggressively pursue escape?

~S~
wind

unfortunately the interdicted event doesn't actually get reported in the journal until you are pulled into normal space :(
 
also one more QQ: for boolean events such as event.iscommander, is the value required, or within an IF condition, can it simply be listed?

For example will this work:
Code:
{if event.iscommander:
   commander 
|else:
  npc
}

Or does it need to be coded like this:
Code:
{if event.iscommander = true:
   commander 
|else:
  npc
}

Also, there appears to be a collection of testable variable values built into EDDI. Is it possible to edit those for debugging/control of the Speech Responder?
 
Last edited:
Still trying to do something with Volcanism.
Tried this last night, it reported no volcanism detected fine, but not when a body actually had volcanism.
-

{if event.Volcanism "*":
Volcanic activity detected
|else:
No Volcanism detected
}

---
Its in the middle of the body scanned script.
any feed back welcome ! o7
 
Last edited:
also one more QQ: for boolean events such as event.iscommander, is the value required, or within an IF condition, can it simply be listed?

For example will this work:
Code:
{if event.iscommander:
   commander 
|else:
  npc
}

Or does it need to be coded like this:
Code:
{if event.iscommander = true:
   commander 
|else:
  npc
}

Also, there appears to be a collection of testable variable values built into EDDI. Is it possible to edit those for debugging/control of the Speech Responder?


I think the first one is correct.

I've just hashed this quickly in the last 30 mins or so so I have no idea at all if it works or not, maybe help others or help me to get this script written even though it appears the journal reports the interdiction after the event has happened.

Code:
{if event.iscommander :
  We are being interdicted by a human commander {event.interdictor}.
      {if event.succeeded :
      {event.interdictor} Successfull interdicted us.
     |else 
We have submitted to {event.interdictor}
     }

|else
         We are being interdicted by a npc {event.interdictor}.
  {if event.succeeded :
      {event.interdictor} Successfuly interdicted us.
     |else 
We have submitted to {event.interdictor}
     
 }
}
.
 
here is the complete version I built for being Interdicted. Goal is to identify who interdicted and their detail.


Code:
Interdicted by 
{if event.iscommander:
   commander
|else:
   npc
}

   {P(event.interdictor)} whos combat rank is {P(event.rating.name)}.

{P(event.interdictor)} is aligned to Faction {P(event.faction)} within the {P(event.power)}

Though would love to have this read while I still have a chance to escape, just in case....
 
Last edited:
here is the complete version I built for being Interdicted. Goal is to identify who interdicted and their detail.


Code:
Interdicted by 
{if event.iscommander:
   commander
|else:
   npc
}

   {P(event.interdictor)} whos combat rank is {P(event.rating.name)}.

{P(event.interdictor)} is aligned to Faction {P(event.faction)} within the {P(event.power)}

Though would love to have this read while I still have a chance to escape, just in case....

Yup me too, I just love all this information floating about while playing
 
jgm, is there a time frame for getting the scooping event in? I'm just wondering whether to delay my update until you've had time to do it.

It's in as part of the Ship Refuelled event. There's now a 'source', which can be 'Market' (for purchased fuel) or 'Scoop' (for scooped fuel).

Be aware that for some reason this event takes a while to show up in the journal, usually 5-10 seconds after scooping has completed.
 
Are there any changes to the scripts in the speech responder in 2.0.10 version?

Want to use my altered EDDI personality.
 
Last edited:
also one more QQ: for boolean events such as event.iscommander, is the value required, or within an IF condition, can it simply be listed?

Yes you need to use "{if event.iscommander" rather than "{if event.iscommander = true}

Also, there appears to be a collection of testable variable values built into EDDI. Is it possible to edit those for debugging/control of the Speech Responder?

It would take a fair bit of time for me to build out a full event input, I'm afraid. I'll have a think if there is a simple way of doing this.
 
Status
Thread Closed: Not open for further replies.
Back
Top Bottom