A downloadable game for Windows and Linux

BotEngineer is a game about building and programming bots. You can either let them battle fully automatic if you give them some more advanced programs, or just control them yourself using a few basic programs. This game was inspired by Robocraft and Gladiabots

For Updates and Support, join our Discord community

Editor

  • select bots by left clicking at their holograms on the side of the editor
  • right click on holograms to rename them
  • select an empty slot to create a new bot
  • you can move the bot around with the arrow keys and [ , ][ . ]
  • Q to select the block you want to place
  • scroll wheel to rotate the block you have selected
  • press P while aiming at an attachment to open its program
  • press T to enter the test world
  • press C to select a color (hold left control to select the glow color)
  • press left control + middle mouse to pick a color from an already colored block
  • middle mouse click to color a block or attachment

Programming

  • press alt to create a new node

  • you can enter any math expression into one node

  • available variables:

    • speed (current speed in m/s)
    • time (time since start of the game in s)
    • moveX, moveY, moveZ (current direction the bot moves)
    • currentX, currentY, currentZ (position of the current attachment relative to the bot)
    • enemyX, enemyY, enemyZ (position of the next enemy)
    • health (current health, range from 0 to 1)
    • k1, k2, ... k9 (either 0 or 1 depending on if the key is currently pressed. Including number keys and numpad)
    • mouseR, mouseL (0 or 1 representing the mouse buttons)
    • mouseX, mouseY, mouseZ (current target of the mouse)
    • controlling (1 if the bot is being controlled over third person, else 0)
    • kw, ka, ks, kd, kspace, kshift (only available if the bot is being controlled over third person)
  • there are also functions to make some things easier, including functions of the math library (full list below)

  • to allow a node to control a variable of the attachment, you need to define the output. to do that, click on the desired output on the right, then click on the desired node. it should automatically update the id on the output name.

  • to delete nodes, click on them and press delete

List of available math functions

sin         floor       round       log10
cos         ceil        atan2       tanh
tan         max         atan        cosh
abs         min         acos        exp
asin        sinh        sqrt        log
sign

advanced functions

  • equals, greater, smaller

    functions for comparing two values, they return 1 if the condition is met

  • set

    takes two numbers as parameter and creates or sets global variables. for example: set(3,10) sets the variable v3 to 10. this works with any numbers. those variables will be accessible on any other attachment of the current bot

Test World

  • press R while aiming at a bot to select it for remote control
  • press V to switch between third person control and free camera (only works if there is a bot selected for remote control)
  • Go to the central building in the test world and select the bot you want to spawn just like in the garage
  • click on the selected bot again to spawn it

Install instructions

just extract the executables for your platform anywhere and start it.

Download

Download
BotEngineer_Windows.zip
Download
BotEngineer_Linux.zip

Development log

View all posts