Skip to content

The official AI enabled bot for XREngine built on puppeteer.

License

Notifications You must be signed in to change notification settings

Oqustudy/XREngine-Bot

 
 

Repository files navigation

Bot API

import { Vector3 } from 'three'
import { XREngineBot } from 'XREngine-bot/src/bot'
import { BotHooks } from 'XREngine-bot/src/bot/enums/BotHooks'

const maxTimeout = 10 * 1000
const bot = new XREngineBot({ name: 'bot-1', headless: false, verbose: false })
const vector3 = new Vector3()

const domain = process.env.APP_HOST
const locationName = 'test'
const sqrt2 = Math.sqrt(2)

describe('My Bot Tests', () => {

  beforeAll(async () => {
    await bot.launchBrowser()
    await bot.enterLocation(`https://${domain}/location/${locationName}`)
    await bot.delay(1000)
    await bot.runHook(BotHooks.InitializeBot)
  }, maxTimeout)

  afterAll(async () => {
    await bot.delay(1000)
    await bot.quit()
  }, maxTimeout)

  test('Can spawn in the world', async () => {
    expect(
      vector3.copy(await bot.runHook(BotHooks.GetPlayerPosition)).length()
    ).toBeLessThan(sqrt2 * 2) // sqrt2 * 2 is the default size of our spawn area
  })

})

About

The official AI enabled bot for XREngine built on puppeteer.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 81.0%
  • TypeScript 19.0%