Gate Building Tips
The Easy Way
The easy way involves simply using the in-game dApp, it requires a little bit of pre-planning but is easy, say you have two gates you want in System A and System B:
- Jump/Gate to System A and drop a gate, take a note of the location using the in-game notepad,
- Jump/Gate to System B and drop the second gate, again take a note of the location,
- Wait 4h from the first gate being anchored, fly back to the gate in System A, add Salt and Bring Online using the dApp,
- Fly to the gate in System B, add Salt and Bring Online using the dApp,
- From B, select the gate in System A and click Link
Now jump through from B to A and then back to A to test it. You can apply a contract using EVE Datacore.
The Hard Way
This is the way of doing this if for some reason the in-game dApp doesn’t work (or stops working), or if you want to understand waht the in-game dApp is doing behind the scenes.
- Install EVE Vault in Chrome/Edge/Brave (anything based on Chromium), try and avoid mixing and matching with other Wallet plugins, use a separate profile if required.
- Make sure your gates show up on chain and grab the
smartObjectIds
for them, either via the API, via the game (Big number top right) or via EVE Datacore (props to BeauKode for building a great tool). - Use the Mud Explorer to link and online them.
- Link them first with
evefrontier__linkGates
, sometimes you need to do it for both directions (flip the numbers) - Online each gate with
evefrontier__bringOnline
- Once you have everything working, you can Configure the Smart Gates to use your contract, worth getting the gates working first in case you have a bug in your code. CCPs default behavior (allow all) is known to work.
Troubleshooting
First check to make sure that the smartObjectId
appears in SmartGateConfig
by replacing the long number in the query with your smartObjectId
:
SELECT "smartObjectId", "systemId", "maxDistance" FROM "evefrontier__SmartGateConfig" WHERE "smartObjectId" = smartObjectId goes here LIMIT 10 OFFSET 0;
Initially the systemId
will be a null byte array, 0x0000000000000000000000000000000000000000000000000000000000000000
, once you apply your contract this will become your mud systemId
identifier string encoded as a byte array. The maxDistance
field is in meters, you can calculate the maximum lightyears by taking the long number i.e. 1040680351983804840
and dividing it by the number of meters in a light year (9460730472580800
), depending on the precision of your calculator you will either get 110 ly or something very close to it (i.e. 109.999999999 ly).
If something doesn’t work, you can try to unlink them with evefrontier__unlinkGates
, again flipping the numbers works sometimes too. You can toggle them offline with evefrontier__bringOffline
and online, but wait 30s between each action so that everything catches up.
If cycling the gates doesn’t work, unlinking and relinking them doesn’t work, they are probably broken at the mud level, you need to Dismantle to Cargo Container in-game and rebuild (you get all of the mats and salt back), this way you get a new clean smartObjectId
.
From my own experience, and from the experience of AWAR, DEAD and ONYX, this works most of the time, there are still the odd gates that never show up on chain.