1 of 11

H’uru logo by NetWatcher, circa 2005

2 of 11

What is H’uru?

  • Historically, a broad group of people “hacking Uru” and writing tools since 2004 (from the COBBS forums)
  • Responsible for early Uru tools like PRPExplorer, PotS flymode, pyprp, and many many more�
  • Presently: A core group responsible for the following:
    • Korman Blender Plugin
    • libHSPlasma and PlasmaShop tools
    • Dirtsand Uru server
    • Guild of Writers Gehn shard
    • Plasma client and game engine�
  • After the MOULa client was open-sourced in 2011, we made a H’uru development copy (a “fork”)
    • Over 10 years worth of performance improvements, fixes, and new features
    • Ongoing work to support platform-specific macOS & Linux game clients (without wrappers like wine)
    • Most of this work has not yet been included in the MOULa client

3 of 11

Codebase Comparison Table

Apr. 2011 Cyan

Apr. 2012 H’uru

Aug. 2022 OpenUru

Aug. 2022 H’uru

Build System

Visual Studio 2003

CMake�Visual Studio 2010

Visual Studio 2010

CMake�Visual Studio 2019+�Xcode 13�Clang�gcc

Target OS

Windows

Windows�Linux (WIP)

Windows

Windows�Linux (WIP)�macOS (WIP)

Python

2.3

2.7

2.3

3.8+

PhysX

2.6.0

2.6.4

2.6.4

4.1.2

3DS Max Plugin

3DS Max 7

3DS Max 7 → 2012

(not built)

3DS Max 7 → 2022

Architecture

32-bit Intel (x86)

32-bit Intel (x86)

32-bit Intel (x86)

32-bit Intel (x86)�64-bit Intel (x86_64)�Apple Silicon (AArch64)

4 of 11

Codebase Comparison Table

Apr. 2011 Cyan

Apr. 2012 H’uru

Aug. 2022 OpenUru

Aug. 2022 H’uru

Build System

Visual Studio 2003

CMake�Visual Studio 2010

Visual Studio 2010

CMake�Visual Studio 2019+�Xcode 13�Clang�gcc

Target OS

Windows

Windows�Linux (WIP)

Windows

Windows�Linux (WIP)�macOS (WIP)

Python

2.3

2.7

2.3

3.8+

PhysX

2.6.0

2.6.4

2.6.4

4.1.2

3DS Max Plugin

3DS Max 7

3DS Max 7 → 2012

(not built)

3DS Max 7 → 2022

Architecture

32-bit Intel (x86)

32-bit Intel (x86)

32-bit Intel (x86)

32-bit Intel (x86)�64-bit Intel (x86_64)�Apple Silicon (AArch64)

5 of 11

Timeline of H’uru Commits

11 years, spanning 4813 commits, made by 35 contributors

Link to: H’uru Development Changelog

6 of 11

H’uru Focus Areas

  • Cross-platform support to bring Uru to macOS and Linux
    • OpenGL and Metal rendering pipelines
  • Performance improvements and quality-of-life gameplay bug fixes
    • Better Unicode support
    • Updated physics
    • Better voice chat quality
  • Modernized development processes, C++ & Python language features, and 3rd party dependencies
    • Using vcpkg to automatically download and build 3rd party dependencies
  • Improved developer experience for new (and existing) contributors
    • Visual Studio: Just open the Plasma folder and CMake will build everything automatically
  • Automated build system on every code change, with downloadable build artifacts
    • Currently building for Windows (32-bit & 64-bit), Linux (64-bit), and macOS (Intel 64-bit)
    • Includes tools and the 3DS Max plugin (for Max 7/8, 2008, 2012, 2013, 2017, 2019, 2020, & 2022)
    • Clickable links in KI chat
    • Faster launching & loading performance
    • Better fullscreen support for Windows

7 of 11

Mac Client

  • Native version of Uru for both Apple Silicon and Intel Macs
    • First build of Plasma targeting the ARM architecture
  • Compatible with the same servers and content as the Windows version
  • Full end to end port built directly on top of Metal accelerated graphics
    • No translation layers or emulators
  • The Mac client is the result of a lot of investments H’uru made in cross platform support
    • Uses the initial OpenGL & Linux work as a starting point
    • Requires the H’uru 64-bit compatible codebase
  • Work started with Metal in November 2021 after tooling improvements by Apple

8 of 11

9 of 11

10 of 11

11 of 11

Mac Client

  • It’s been almost 20 years since Uru’s original DirectX 9 release - and Metal adds some modern features to Uru
    • 10 bit color support improves fog rendering, lighting, and blending
    • Variable refresh rate and high frame rate support: 120 fps Apple displays are supported
    • Support for 4k/5k/6k displays and cursor scaling
    • And more to come…
  • Improvements and bug fixes made for Metal may also appear on other platforms�
  • There is still some work to do:
    • Further optimization and age testing
    • Testing on Intel Integrated Graphics and Nvidia Macs - tentative requirement is any 2012 or newer Mac/macOS 10.14 or later
    • Multiplayer and network testing
    • Improved resolution management and support for moving between displays
    • Installer, code signing, and server support for updating the Mac client