Skip to content

Network

Create and manage in-game networks, machines, ports, firewalls, and domains.

Permission required: network

Methods

createSubnetNetwork(definition)

Create a full network with routers, devices, and services.

typescript
Network.createSubnetNetwork({
    ip: "10.0.0.1",
    type: "ROUTER",
    ports: [
        { external: 22, internal: 22, active: true, service: "ssh" },
        { external: 80, internal: 80, active: true, service: "http" },
    ],
    users: [Network.createUser({ username: "admin", password: "secret" })],
    children: [
        {
            ip: "10.0.0.2",
            type: "DEVICE",
            ports: [{ external: 3306, internal: 3306, active: true, service: "mysql" }],
            users: [Network.createUser({ username: "dbadmin", password: "dbpass" })],
        },
    ],
});

destroyNetwork(ip)

Remove a network and all its devices.

typescript
Network.destroyNetwork("10.0.0.1");

createUser(options)

Create a network user object.

typescript
const user = Network.createUser({
    username: "admin",
    password: "secret123",
});

randomIp()

Generate a random IP address.

typescript
const ip = Network.randomIp(); // e.g. "172.16.42.7"

addDomain(definition)

Register a domain name pointing to an IP.

typescript
Network.addDomain({
    name: "target.com",
    ip: "10.0.0.1",
});

removeDomain(name)

Remove a domain registration.

typescript
Network.removeDomain("target.com");

Network Types

TypeDescription
ROUTERNetwork router (root device)
DEVICEStandard device/server
FIREWALLFirewall device
MODEMModem device

Port Definition

PropertyTypeDescription
externalnumberExternal port number
internalnumberInternal port number
activebooleanWhether the port is open
servicestringService name (ssh, http, ftp, etc.)

HotBunny Interactive Entertainment Inc.