Comments (5)
..and I've realised I got some code wrong at the end. π
Update the last two code blocks to:
{if len(toCarrier) > 0:
{if len(toShip) > 0: and}
{List(toCarrier)} to {OneOf(carrier.name, "your carrier")}
{_ Can you only transfer to your carrier? Or to others? _}
}
{if len(toSRV) > 0:
{if len(toShip) > 0: and}
{List(toSRV)} to your SRV
}.
You'll only be able to transfer between your ship and carrier, OR ship and SRV, not all three at the same time!
from eddi.
There was some internal discussion about implementing this event after it was introduced. The conclusion at the time was that the CargoTransfer
event is followed by a Cargo
event which is more complete. In particular, I believe the CargoTransfer
event includes missionID information but seems to exclude information about whether the cargo was legally obtained (which is important information that the Cargo Monitor needs to be able to track).
In contrast, the Cargo
event only captures the cargo for the current vehicle (ship or SRV) and doesn't tell us where cargo - just that it is no longer attached to the current vehicle. Neither event alone gives us quite everything we would want. :-)
It would introduce some additional complexity but one potential solution would be to capture and delay the CargoTransfer
event until after we see the Cargo
event then handle both events concurrently (though you can see that this adds some complexity). π€
from eddi.
from eddi.
Hmm, I've looked at some Cargo
events this evening, but they have practically no information at all...
{ "timestamp":"2024-06-17T21:30:58Z", "event":"CargoTransfer", "Transfers":[ { "Type":"metaalloys", "Type_Localised":"Meta-Alloys", "Count":2, "Direction":"tocarrier" } ] }
{ "timestamp":"2024-06-17T21:31:01Z", "event":"Cargo", "Vessel":"Ship", "Count":0 }
{ "timestamp":"2024-06-17T21:26:23Z", "event":"CargoTransfer", "Transfers":[ { "Type":"metaalloys", "Type_Localised":"Meta-Alloys", "Count":2, "Direction":"toship" } ] }
{ "timestamp":"2024-06-17T21:26:25Z", "event":"Cargo", "Vessel":"Ship", "Count":2 }
{ "timestamp":"2024-06-16T16:33:25Z", "event":"CargoTransfer", "Transfers":[ { "Type":"ancientrelictg", "Type_Localised":"Unclassified Relic", "Count":1, "Direction":"toship" }, { "Type":"thargoidtissuesampletype5", "Type_Localised":"Thargoid Orthrus Tissue Sample", "Count":1, "Direction":"toship" }, { "Type":"thargoidtissuesampletype6", "Type_Localised":"Thargoid Glaive Tissue Sample", "Count":2, "Direction":"toship" }, { "Type":"thargoidheart", "Type_Localised":"Thargoid Heart", "Count":1, "Direction":"toship" }, { "Type":"unknownartifact", "Type_Localised":"Thargoid Sensor", "Count":1, "Direction":"toship" }, { "Type":"thargoidtissuesampletype9b", "Type_Localised":"Titan Tissue Sample", "Count":1, "Direction":"toship" } ] }
{ "timestamp":"2024-06-16T16:33:28Z", "event":"Cargo", "Vessel":"Ship", "Count":7 }
It seems that the CargoTransfer
entry has much more information. Granted, it doesn't appear to give much more than the name of the commodity, the amount, and the direction it goes to, but the Cargo
entry only gives the total amount, nothing else.
How about adding it, but have no default script, just leave it blank like several others in the default personality? That way, it won't be noticed by users who don't modify scripts, and those who know what they're doing, will understand its limitations.
from eddi.
The cargo event signals that cargo.json has been updated (written to the same location as your player journals). You need to read that file to get the full benefit from the cargo event. :-)
Doh! Of course! Sorry about that, I keep forgetting there are other files, other than the Journal.
Well, I mainly wanted it so I could use it as a trigger to run the new 'Corrosive Cargo' script that Yianniv and myself have been working on, but I thought it would be a nice addition for others too, especially when doing a 'transfer all' to get a readout of what was moved. In my case, it would seem to definitely benefit from being delayed until after the Cargo
event, otherwise the cargo readout would probably be inaccurate.
For now, I'll just leave the trigger for our script to the Liftoff and Undocked events. Thinking about it, they will be just as good there, as it will still give a player time to re-dock to fix it, or carry on regardless.
Still, if it does get added at a later date, I'll be able to look again at this. Thanks anyway! π
from eddi.
Related Issues (20)
- Mission data for hauling missions is split and duplicated between the `Mission` and `Haulage` objects HOT 2
- Cargo monitor is keeping all my purchased commodities in the list until I restart Elite. HOT 2
- Escape sequence \\ not working in v4.0.4-b1 HOT 9
- ForditΓ‘s (Translation) HOT 2
- There is a problem with the script "Body volcanism report" at line 37. expected expression, found HOT 4
- Exit Supercruise Error HOT 1
- I want to be able to refer to gravity in variables. HOT 2
- 'inventory' always blank during the 'Location' event HOT 3
- Thargoid Spire Site not reported when arriving at one. HOT 1
- Ship targeted not working when 'Drive' subsystem targeted HOT 4
- Star report star class not spoken correctly HOT 3
- The new Cargo transfer function is triggered even when a repair limpet is launched HOT 1
- VA Status fsd hyperdrive charging is 'Not set' HOT 2
- System materials report error HOT 6
- EDDI + Voice Attack crashes by incomming EDDI events HOT 4
- EDDI v4.1.0-a2 crash to desktop HOT 1
- Body Vulcanism Report HOT 3
- Duplicate Dialogue for Planet Description HOT 9
- Galnet news published event not firing HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eddi.