A downloadable game

Download NowName your own price

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


- you can move the bot around with the arrow keys and , .

- q to select the block you wanna 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

- middle mouse click to color a block or attachment (hold l-control to color the glow)


- 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)

    - 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)

    - 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)

    - mouseX, mouseY, mouseZ (current target of the mouse)

- 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 functions: sin, cos, tan, abs, asin, acos, atan, atan2, sqrt, sign, floor, ceil, max, min, sinh, exp, cosh, tanh, log, log10, round, 

advanced functions:

    - scanX, scanY, scanZ (getting the coordinates of the next enemy)

       it needs one parameter, from range -1 to 1 which is the minimal dot product of the vector towards the enemy and the forward vector of the laser. this value gets greater when the enemy is more in front of the laser. 0 is the recommended value for this.

        it returns 0 if there is no enemy found

    - equals, greater, smaller

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

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)

- press n to spawn a new bot

Published 76 days ago
StatusIn development
Tags3D, Physics, Robots


Download NowName your own price

Click download now to get access to the following files:

BotEngineer_Linux.zip 34 MB
BotEngineer_Mac.zip 17 MB
BotEngineer_Windows.zip 14 MB


Support this game at or above a special price point to receive something exclusive.

Supporter role

Get supporter role on our discord community

later you will get supporter role and some advantages in the game

Development log