DHDs

From StargateMC
Revision as of 01:06, 26 July 2020 by Bysokar (talk | contribs) (Computer Interface)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

DHDs (Stargate Controllers)

About

Stargate Controllers, also known as Dial home Devices or DHDs, were invented by the Ancients to control the Stargate they also developed.

StargateMC implements these in a way that is both easy to use, but also adds some depth to them with the ability to interrogate and control them via computer.

The Basics

Players can fuel the DHD with Naquadah and use the graphical interface provided by the DHD to dial a nearby stargate.

Security

DHDs operate the correlative update program, which means they periodically dial known addresses to keep information stored inside the DHD on the destination stargate up to date.

DHDs performing a correlative update also exchange information with the destination DHD.

This has inherent security issues for players wishing for their gate to remain 'off the grid', so a DHD is only recommended for a gate in an insecure location.

Note a DHD near a gate without power will still respond to incoming correlative update requests.

Powering a gate with a DHD

A DHD, or dial home device an power a stargate through the use of naquadah, placed into the reactor below the control interface.

Computer Integration

Computer Interface

Players can connect an OpenComputers network cable to the DHD to remotely control the device.

Methods available:

Method Purpose Exceptions
getKnownGateNetwork() Requests information from the DHD about other stargates it has learned about through the correlative update program. Throws no exceptions, but will return no information if there isnt any stored, yet.
dialStargate(address) Tells the DHD to attempt to dial a specific gate address. Throws a dialling exception if the dialling fails, stating why.
getRecentlyDialledAddresses() Returns a list of the most recently dialled addresses by a DHD. Throws an exception "bufferEmpty" when there is no information available.
isLinkedToStargate() Returns true or false, depending on if a gate is connected to the DHD. Throws no exceptions.