Hi everyone! I want to share with you a mod that I've been developing since last year.
What is Harmony?
Harmony is a mod / library which comes with some additional features for Chimera Lua scripting. It started out as an HAC2 Optic reimplementation with Chimera compatibility, but today it has some extra cool features.
Features
All the features listed below are available from Chimera Lua scripts by requiring Harmony library just like this:
local harmony = require "mods.harmony"
You can find more info about how to use Harmony in your Chimera scripts on this document.
Optic
Like in HAC2, you can create and display medals with sound, there is set of functions in the library you can use for displaying external images and playing sounds.
Here is an example script you can see working in the video below. (excuse my meme stuff)
Custom menu aspect ratio
There is no much to say about this, it just changes the aspect ratio like in this UI which has a 16:9 aspect ratio:
Events
Like Chimera Lua API callbacks, there are some events you can use in your optic / menu scripts:
Multiplayer event. This is called when a multiplayer event occurs (player kill, ctf score, killing spree, etc.).
Multiplayer sound. This is called when a multiplayer sound is played (announcer voice, ting, etc.).
Menu accept. This is called when a widget accept event occurs (when a menu accept button is pressed).
Menu back. This is called when returning to the previous menu (when a menu cancel button is pressed).
Menu list tab. This is called when navigating in a menu list using arrow keys.
Menu mouse button press. This is called when a menu button is pressed with a mouse button.
Menu sound. This is called when a menu sound is played.
These events can be useful when you want to give a custom behavior to a menu. There is another example script with some menu events.
Installation
Manual
Install Chimera
Create a folder called "mods" (e.g. "D:\Halo Custom Edition\mods")
Copy harmony.dll file to your mods folder
Mercury
A package manager for Halo Custom Edition. You can get Harmony by using the following command:
mercury install harmony
Note: Like Chimera, Harmony requires DirectX 9 to be installed in your system.
Extra
Some interesting stuff made using Harmony:
Optic (medals script, do not confuse with the name of the feature)
Insurrection UI (16:9 user interface)
You can install all of these stuff using Mercury.
Links
Github repo: https://github.com/JerryBrick/harmony
ShadowMods discord: https://discord.shadowmods.net/
Downloads: https://github.com/JerryBrick/harmony/releases
Credits
Snowy (Development of Chimera, the base of this project).
Sledmine (Help with Lua API docs; testing and feedback).
Thanks for reading!
This is my first time writing such an extensive post in a forum, any suggestions about it would be very, very appreciated.