Olympus Olympus
winget install --id=Olympus.Olympus -e
Olympus - Cross-platform Celeste Mod Manager
Olympus is a cross-platform mod management tool designed to streamline the process of installing, updating, and creating mods for the game Celeste. Built on the LÖVE/love2d framework, Olympus provides a user-friendly interface for managing mod dependencies, tracking updates, and organizing files across multiple platforms.
Key Features:
- Mod installation and dependency management.
- Tools for creating and sharing new mods.
- Cross-platform support for Windows, Linux, and macOS.
- Automatic updates and backup features.
- Integration with Celeste's core functionality.
Audience & Benefit: Ideal for gamers, developers, and enthusiasts looking to enhance their Celeste experience. Olympus simplifies mod management, enabling users to focus on playing or creating without technical hassle. It can be installed via winget for easy setup across supported platforms.
README
Olympus - Cross-platform Celeste Mod Manager
License: MIT
Check the website for installation / usage instructions.
Work in progress!
Dependencies
- LÖVE
- dkjson
- lua-yaml
- nativefiledialog
- luajit-request
- libcurl
- LuaCOM
- LuaSQLite3
- lua-subprocess
- profile.lua
- moonshine
- xml2lua
- patchy
- OlympUI
- Shared code between Olympus and Lönn
Local setup
- Make sure you cloned the repository with
--recurse-submodules
:src/luajit-request
,src/moonshine
andsrc/ui
should not be empty. - Create a
love
folder in the repository. (love
is gitignored, so no worries about that :sweat_smile:) - Compile the C# part in the
sharp
folder: you can do this with Visual Studio or by runningdotnet build Olympus.Sharp.sln
in thesharp
folder.- If on Windows, you may need to adjust the project settings slightly in order for it to run correctly. In Visual Studio, go to
Project > Olympus.Sharp Properties
. Open the Build tab, then in the "Debug Custom symbols" textbox, typeWIN32
, then click Add. Now rebuild the solution (Ctrl+Shift+B). - You can tell if this worked by opening
Program.cs
and seeing that the sections labelled with#if !WIN32
(note the exclamation mark) are grayed out, as if commented.
- If on Windows, you may need to adjust the project settings slightly in order for it to run correctly. In Visual Studio, go to
- Make a symbolic link in
love/sharp
that leads tosharp/bin/Debug/net8.0
(or copy-paste the folder :stuck_out_tongue: this is more tedious if you plan to make changes to the C# project, though.)- If on Windows, you can make this symbolic link in PowerShell. First, run PowerShell as an administrator. Navigate to the
love
folder usingcd
. RunNew-Item -Path sharp -ItemType SymbolicLink -Value
, replacing the brackets with the path tosharp/bin/Debug/net8.0
. You can get this path by Shift+right-clicking on that folder in File Explorer and selecting "Copy as path". - You can tell if this worked by opening the
love
folder in File Explorer, double-clicking on the newsharp
folder, and seeing that it has the contents of thenet8.0
folder (MonoMod.dll
,Olympus.Sharp.exe
, etc.).
- If on Windows, you can make this symbolic link in PowerShell. First, run PowerShell as an administrator. Navigate to the
- Download a built Olympus version (Windows, Linux) and extract everything from it, except the
sharp
folder, intolove
. - If on Windows, install LÖVE: take the zipped version and extract it in the
love
folder. Be sure to install the 32-bit version! - Run Olympus by running
debug.bat
on Windows, or by going to thesrc
folder and running../love/love --console .
on Linux.
Note: for Linux, a build-and-run.sh
script is present on this repository to set up the love
directory, build Olympus.Sharp, and run Olympus.