Skip to main content

ODIN Documentation

Explore our cutting-edge technologies, delivering high-quality solutions for multiplayer games and business solutions. Elevate your experience with top-tier features and services.

Sign up for Free

Trusted by the best companies and products

Fake company number 1
Fake company number 2
Fake company number 3
Fake company number 4
Fake company number 5

Try it out

Sign in to your ODIN account and try out these features. Here are some common use cases to get you started.

Update Gameserver On Commit
Add Real-Time Voice Chat to Webapp
Proximity Chat in Unity
Transcribe Audio to Text
/scripts/cicd/update-server.sh
#!/bin/bash

# Define the config ID that will be updated
# Use `odin fleet configs list` to find its id
CONFIG_ID=123456

# Create a new image and get its ID
IMAGE_ID=$(odin fleet images create \
--name="Development Server" \
--version="$CI_VERSION_TAG" \
--os="linux" \
--type="steam" \
--steam-app-id=123456 \
--branch="internal" \
--password="idontknow" \
--command="sh Server.sh -server" \
--steamcmd-username="mysteamusername" \
--steamcmd-password="mysteampw" \
--runtime="sniper" \
--unpublished \
--format="value(id)" \
--force)

echo "Created image with ID: $IMAGE_ID"

# Monitor the image status until it's ready
STATUS="processing"
while [[ "$STATUS" != "ready" ]]; do
STATUS=$(odin fleet images get --image-id=$IMAGE_ID --format="value(status)")
echo "Current status of image $IMAGE_ID: $STATUS"

# Check if the status is 'error', in which case we should exit with a failure
if [[ "$STATUS" == "error" ]]; then
echo "Error: Image creation failed. Exiting."
exit 1
fi

# Wait for a few seconds before polling again
sleep 5
done

echo "Image $IMAGE_ID is ready."

# Update the config with the new image ID
odin fleet configs update --config-id=$CONFIG_ID --binary-id=$IMAGE_ID --force

# All running servers using that config will be restarted with the new version
echo "Config $CONFIG_ID has been updated to use image $IMAGE_ID."

Update Gameserver On Commit

Automatically update your gameserver when you push a commit to your repository using ODIN Fleet with Steamworks integration.

/scripts/cicd/update-server.sh
#!/bin/bash

# Define the config ID that will be updated
# Use `odin fleet configs list` to find its id
CONFIG_ID=123456

# Create a new image and get its ID
IMAGE_ID=$(odin fleet images create \
--name="Development Server" \
--version="$CI_VERSION_TAG" \
--os="linux" \
--type="steam" \
--steam-app-id=123456 \
--branch="internal" \
--password="idontknow" \
--command="sh Server.sh -server" \
--steamcmd-username="mysteamusername" \
--steamcmd-password="mysteampw" \
--runtime="sniper" \
--unpublished \
--format="value(id)" \
--force)

echo "Created image with ID: $IMAGE_ID"

# Monitor the image status until it's ready
STATUS="processing"
while [[ "$STATUS" != "ready" ]]; do
STATUS=$(odin fleet images get --image-id=$IMAGE_ID --format="value(status)")
echo "Current status of image $IMAGE_ID: $STATUS"

# Check if the status is 'error', in which case we should exit with a failure
if [[ "$STATUS" == "error" ]]; then
echo "Error: Image creation failed. Exiting."
exit 1
fi

# Wait for a few seconds before polling again
sleep 5
done

echo "Image $IMAGE_ID is ready."

# Update the config with the new image ID
odin fleet configs update --config-id=$CONFIG_ID --binary-id=$IMAGE_ID --force

# All running servers using that config will be restarted with the new version
echo "Config $CONFIG_ID has been updated to use image $IMAGE_ID."


Testimonials

See what our customers love about our products. Discover how we excel in efficiency, durability, and satisfaction. Join us for quality, innovation, and reliable support.

Selecting ODIN as the voice chat in our upcoming title, Gray Zone Warfare, was a pivotal decision driven by both technical and business considerations. Technically, ODIN ticks a lot of our criteria with its support for spatial audio, a ready-to-deploy Unreal Engine 5 plugin and the ability to meet any player load thanks to their cloud hosting. From a business perspective, the agility and openness of partnering with a company like 4Players meant we could work hand-in-hand to tailor the solution to our specific needs. This includes a seamless integration with Wwise, allowing us to modulate voice data for a more immersive and engaging player experience. Together, these factors made ODIN the undeniable choice for Gray Zone Warfare, enabling us to make our game even more memorable.

Johanny Clerc-Renaud
Johanny Clerc-RenaudTechnical Director
Logo 1

ODIN was one of the best decisions we made regarding voice as it integrates with Unreal Engine’s built-in spatialization & occlusion systems, compared to competitors, this provided a much more immersive experience for our player-base. Their team was extremely helpful and quick in sorting out any issues we had during our setup process.

Reinaldo Vieira
Reinaldo VieiraLead Developer
Logo 2

We have been the first to go live with ODIN onboard and what can we say? It was worth the risk, the ODIN integration was smooth and the ODIN dev team always supported us in the best manner. We are happy for the mutually beneficial and friend-like partnerships we share with 4Players.

Fabian Boulegue
Fabian BoulegueHead of Producing at Aerosoft
Logo 3

Highlights

Explore why our product stands out: adaptability, durability, user-friendly design, and innovation. Enjoy reliable customer support and precision in every detail.

Adaptable performance

Our product effortlessly adjusts to your needs, boosting efficiency and simplifying your tasks.

Built to last

Experience unmatched durability that goes above and beyond with lasting investment.

Great user experience

Integrate our product into your routine with an intuitive and easy-to-use interface.

Innovative functionality

Stay ahead with features that set new standards, addressing your evolving needs better than the rest.

Reliable support

Count on our responsive customer support, offering assistance that goes beyond the purchase.

Precision in every detail

Enjoy a meticulously crafted product where small touches make a significant impact on your overall experience.


Browse by Products

Learn more about our products and services. We provide the tools you need to add social features to your games and apps.

ODIN Voice

ODIN Voice is a real-time voice chat solution that enables players to communicate with each other in games and apps. It is easy to integrate and provides high-quality audio with low latency.

Learn more
ODIN Rooms

ODIN Rooms is a secure and decentralized video conferencing solution that allows users to create and join video calls directly in the browser. It is built on WebRTC technology and provides end-to-end encryption for maximum privacy.

ODIN Fleet

ODIN Fleet is a managed server hosting solution that provides high-performance servers for games and apps. It is designed to handle large player loads and offers easy deployment and scaling options.