180 lines
3.1 KiB
Markdown
180 lines
3.1 KiB
Markdown
# NMSlib
|
|
|
|
**master Branch** : 
|
|
|
|
**develop Branch** : 
|
|
|
|
NMSlib is a GoLang package for dealing with converting Galactic coordinates to Portal codes and vice versa.
|
|
|
|
NMSlib also translates in game languages to english.
|
|
|
|
## Installation
|
|
|
|
To install this module use `go get`
|
|
|
|
|
|
```bash
|
|
go get -u gitlab.com/Raum0x2A/nmslib
|
|
```
|
|
|
|
## Usage
|
|
|
|
**Example:**
|
|
|
|
```golang
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"gitlab.com/Raum0x2A/nmslib"
|
|
)
|
|
|
|
func main() {
|
|
portalcode := "21F2F8EDB94D"
|
|
tstvar, err := nmslib.P2gc(portalcode)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
fmt.Printf("Input:\t%s\nExpecting:\t014C:0077:06DA:01F2\nHave:\t%s\n", portalcode, tstvar)
|
|
|
|
nmslib.CreateBanner(portalcode, "NewLennon.png", 0)
|
|
nmslib.CreateBanner(RndPortal(), "Random.png", 0)
|
|
|
|
fmt.Println(Translate{"KIHTYOMOLES"}.Kor2Eng())
|
|
korvax := Translate{"Contraband"}
|
|
fmt.Println(korvax.Eng2Kor())
|
|
}
|
|
|
|
```
|
|
|
|
### Creating a Glyph banner with CreateBanner()
|
|
|
|
This function takes 3 parameters:
|
|
|
|
* portalcode: 12 char hex string of portal location
|
|
* savename: Save location and name
|
|
* Horizontal/Vertical layout: 0 is horizontal, 1 is vertical
|
|
|
|
**Example:**
|
|
|
|
Horizontal Layout for Galactic Hub [HUB10-6A Icarus Sun](https://nomanssky.gamepedia.com/HUB10-6A_Icarus_Sun) Eniwa 68/L3
|
|
|
|
```golang
|
|
nmslib.CreateBanner("006AFA556C30", "NewLennon.png", 0)
|
|
```
|
|
|
|

|
|
|
|
### Converting Portal code to Galactic address with P2gc()
|
|
|
|
This function only takes 1 parameter and returns a string and error
|
|
|
|
* portalcode: 12 char hex string of portal glyphs
|
|
|
|
**Example:**
|
|
|
|
```golang
|
|
ga, _ := nmslib.P3gc("21F2F8EDB94D")
|
|
fmt.Println(ga)
|
|
```
|
|
|
|
Output:
|
|
|
|
``014C:0077:06DA:01F2``
|
|
|
|
### Converting Galactic coordinates to Portal codes with Gc2p()
|
|
|
|
This function only takes 1 parameter and returns a string and error
|
|
|
|
* galacticaddress: 16 char 4 block hex address
|
|
|
|
**Example:**
|
|
|
|
```golang
|
|
pc, _ := nmslib.P3gc("014C:0077:06DA:01F2")
|
|
fmt.Println(pc)
|
|
```
|
|
|
|
Output:
|
|
|
|
``21F2F8EDB94D``
|
|
|
|
## Translate Words
|
|
|
|
Supported languages
|
|
|
|
- Korvax
|
|
- Gek
|
|
- Vy'keen
|
|
- Atlas
|
|
|
|
### Translate Atlas to English with Atl2Eng()
|
|
|
|
This function takes only 1 parameter and returns a string
|
|
|
|
* Word: Any known Atlas word (ex. Paka)
|
|
|
|
**Example:**
|
|
|
|
```golang
|
|
fmt.Println(Translate{"Paka"}.Atl2Eng())
|
|
```
|
|
|
|
Output:
|
|
|
|
``Awake``
|
|
|
|
### Translate English to Korvax with Eng2Korvax()
|
|
|
|
This function takes only 1 parameter and returns a string
|
|
|
|
* engword: English word to attempt conversion
|
|
|
|
**Example:**
|
|
|
|
```golang
|
|
korvax := Translate{"Contraband"}
|
|
fmt.Println(korvax.Eng2Kor())
|
|
```
|
|
|
|
Output:
|
|
|
|
``Zelidovoso``
|
|
|
|
|
|
### Language commands
|
|
|
|
Gek:
|
|
- ``Translate{word}.Gek2Eng()``
|
|
- ``Translate{word}.Eng2Gek()``
|
|
|
|
Korvax:
|
|
- ``Translate{word}.Kor2Eng()``
|
|
- ``Translate{word}.Eng2Kor()``
|
|
|
|
Vy'keen:
|
|
- ``Translate{word}.Vyk2Eng()``
|
|
- ``Translate{word}.Eng2Vyk()``
|
|
|
|
Atlas:
|
|
- ``Translate{word}.Atl2Eng()``
|
|
- ``Translate{word}.Eng2Atl()``
|
|
|
|
|
|
## Random Portal address
|
|
### Create a random portal address
|
|
|
|
**Example:**
|
|
|
|
```golang
|
|
fmt.Println(RndPortal())
|
|
```
|
|
|
|
**Outout:**
|
|
|
|
``10EFABDEA373``
|
|
|
|
## License
|
|
[MIT](COPYING)
|