Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.5%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: severin-lemaignan
- License: mit
- Language: GDScript
- Default Branch: main
- Size: 91.6 MB
Statistics
- Stars: 6
- Watchers: 4
- Forks: 3
- Open Issues: 0
- Releases: 2
Metadata Files
README.md
OfficeBots

OfficeBots is an immersive multi-player online game, mainly designed to support research and teaching in human-robot interaction.
Players can connect to the online server and join an office-like environment where they can chat and iteract with the surrounding objects.
Simulteanously, robots can be instanciated and remotely controled with a simple Websocket-based API. Python bindings are provided.
The game is develop with the Godot 3.5 game engine. You need it to edit the game.
Getting started
- download the latest release for the Releases page. Currently, binaries are only provided for Linux 64bits. See below for other platforms/web-based game
- execute the game by simply double-clicking on the executable. The game is fully self contained: you can 'install' it by simply copying it to any location you like.
Single player mode
At launch, select Single player. Enter the name of your character and select one avatar.
You can control your character with arrow keys and the mouse. To pick up an object, click on the object. Releasing the button drops the object.
You can open doors by clicking on their handles.
The chat window can be used to talk to people or robots close to you. Other players will see a speech bubble above your head with your message.
Adding computer-controller 'NPC' characters
To experiment with human detection and interaction, you can add non-playing characters (NPCs) to the game, from the Settings page. These NPCs are currently very basic: they simply follow a predefined path in the game, and you can not interact with them.
Spawning a robot in the simulation
You need first to install the OfficeBots Python bindings with eg pip3 install
officebot. See the python-officebots
project for details.
Once installed, you can either write simple Python script using from officebots
import Robot and subclassing the Robot class. See the python-officebots
repo for examples.
Alternatively, you can use the provided ROS bridge.
When you start your script (or ROS bridge), you will be ask to connect the simulator by clicking the blue robot icon at the top of the game screen. Click it, and your robot should appear.
ROS bridge
By starting the officebots-ros script (available in your system once you have
installed the Python bindings above), you can interact with the robot in your
simulation.

Currently supported:
- control the robot's velocity via the standard
/cmd_veltopic (therefore, usual ROS teleop with keyboard/joystick is possible) - laserscan (
/scan, standard ROS mapping is possible) - ROS4HRI-compatible support for persons, faces, gaze, speech (body tracking not implemented, though)
- pusblishing images to the in-game robot's tablet (simply publish images to
/screen/raw_image) - publish a string to
/sayfor the robot to 'speak' via a speech bubble
Type rostopic list for the list of available topics.
Other platforms, Web version
Godot is a cross-platform game engine: all major operating systems, as well as
web-based HTML5, are supported. To run the game on your platform of choice, open
project.godot in Godot 3.5 (attention! The game has
not been ported to Godot 4: it will not work with Godot 4), and follow Godot
documentation to export to game to the desired platform.
Owner
- Name: Séverin Lemaignan
- Login: severin-lemaignan
- Kind: user
- Location: Barcelona, Spain
- Company: PAL Robotics
- Website: academia.skadge.org
- Twitter: skadge
- Repositories: 81
- Profile: https://github.com/severin-lemaignan
Citation (CITATION.cff)
cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Séverin
given-names: Lemaignan
orcid: https://orcid.org/0000-0002-3391-8876
title: OfficeBots
version: v0.1.0
date-released: 2023-12-03
GitHub Events
Total
- Watch event: 1
Last Year
- Watch event: 1