Skip to main content

Tools for Unreal Engine

Project description

Current PyPi Version Supported Python Versions codecov docs tests style

uetools implements a set of tools to make it easier to work with Unreal Engine projects and automate common tasks.

Get Started

pip install uetools

# Saves common paths
uecli init --engine C:/opt/UnrealEngine/Engine --projects C:/opt/Projects
uecli engine-add --version src --engine C:/opt/UnrealEngine/Engine
uecli engine-add --version 5.1 --engine C:/EpicGames/UE_5.1/Engine
uecli engine-add --version 5.0 --engine C:/EpicGames/UE_5.0/Engine

# Install the plugin VoxelPlugin to the RTSGame project
uecli install RTSGame https://github.com/Phyronnaz/VoxelPlugin

# Rebuild the RTSGame project
uecli build RTSGame

# Open the project (located in C:/opt/Projects/RTSGame)
uecli open RTSGame
uecli --engine-version 5.1 open RTSGame
uecli --engine-version 5.0 open RTSGame

# Cook the project
uecli cook RTSGame

# Start a server
uecli server RTSGame --dedicated --port 8123

# start a client
uecli client RTSGame --address 127.0.0.1 --port  8123

# Turn a blueprint Project into a C++ project
uecli cpp RTSGame

Make your own command

You can extend uetoosl for your organization by creating plugins. A template is provided to help you get started.

Help Example

$ uecli ml --help
usage:

description:
   Launch a game setup for machine learning

positional arguments:
   str                       Name of the the project to open
   str                       Name of the map to open

optional arguments:
   -h, --help                show this help message and exit
   --dry                     Print the command it will execute without running it (default: False)

Arguments ['ml']:
   Launch a game setup for machine learning

      Attributes
      ----------
      project: str
         Name of the the target to build (UnrealPak, RTSGame, RTSGameEditor, etc...)

      Examples
      --------

      .. code-block:: console

         uecli ml RTSGame

         # Launch your agent script that will connect and make the agents play the game

   --resx int                resolution width (default: 320)
   --resy int                resolution height (default: 240)
   --fps int                 Max FPS (default: 20)
   --windowed bool           Window mode (default: True)
   --usefixedtimestep bool   Block until the ML agent replies with an action (default: True)
   --game bool               (default: True)
   --unattended bool         Close when the game finishes (default: True)
   --onethread bool          Run on a single thread (default: False)
   --reducethreadusage bool  (default: False)
   --nosound bool            Disable sound (default: False)
   --nullrhi bool            Disable rendering (default: False)
   --deterministic bool      Set seeds ? (default: False)
   --debug bool              (default: False)
   --mladapterport int       RPC server listen port (default: 8123)

Features

  • Windows & Linux

  • Open projects

  • Build

  • Run automated tests

  • Cook

  • Generate localization files for internationalization

  • Run the editor

  • multi version support

It also implements common recipes such as

  • Install project plugins from a repository

  • Disable plugins

  • Add dedicated server targets

  • Automatically configure project settings for Python

  • Works on both Linux & Windows seamlessly

  • Add Doxygen to your project

Rational

Unreal engine has 222 comandlets, 83 commands and more than 1237 command line parameters hidden inside its code, very few are documented.

uetools identifies the useful arguments and bundle them inside a command line utility, forming groups/set of arguments with a singular purpose.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uetools-0.2.1.tar.gz (104.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uetools-0.2.1-py3-none-any.whl (63.2 kB view details)

Uploaded Python 3

File details

Details for the file uetools-0.2.1.tar.gz.

File metadata

  • Download URL: uetools-0.2.1.tar.gz
  • Upload date:
  • Size: 104.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.16

File hashes

Hashes for uetools-0.2.1.tar.gz
Algorithm Hash digest
SHA256 4dc571405e30c00139b97f8599c8c38270dfd383f5f498bcbe44258981d1dc5c
MD5 27d4b1787726b7a57502e2da575841d0
BLAKE2b-256 c3db5d93db1ff1f4616bf743e12f05f6c454b8b5310a6e63cdc0a7ba4271aed8

See more details on using hashes here.

File details

Details for the file uetools-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: uetools-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 63.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.16

File hashes

Hashes for uetools-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ab23a16def31799361ca2439e547d435e624afdec7dd3dfd5da552adf7f78133
MD5 b1e55d9ac6cb0d3b8e35676ad06a4959
BLAKE2b-256 363f0a658833ee1a408d26ef45196fc8103904eb84c0c4e83b4a6c60b0f262ed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page