FFXIV plugin framework and API
Find a file
Haselnussbomber fdbfdbb2cd
Add SeStringEvaluator service (#2188)
* Add SeStringEvaluator service

* Move DrawCopyableText into WidgetUtil

* Use Icon2RemapTable in SeStringRenderer

* Beautify some code

* Make sure to use the correct language

* Add SeString Creator widget

* Fix getting local parameters

* Update expressionNames

* misc changes

* Use InvariantCulture in TryResolveSheet

* Add SeStringEvaluatorAgingStep

* Fix item id comparisons

* Add SheetRedirectResolverAgingStep

* Add NounProcessorAgingStep

* Update SeString.CreateItemLink

This also adds the internal ItemUtil class.

* Fix name of SeStringCreator widget

* Add Global Parameters tab to SeStringCreatorWidget

* Load widgets on demand

* Update SeStringCreatorWidget

* Resizable SeStringCreatorWidget panels

* Update GamepadStateAgingStep

* Experimental status was removed in #2144

* Update SheetRedirectResolver, rewrite Noun params

* Fixes for 4 am code

* Remove incorrect column offset

I have no idea how that happened.

* Draw names of linked things

---------

Co-authored-by: Soreepeong <3614868+Soreepeong@users.noreply.github.com>
Co-authored-by: KazWolfe <KazWolfe@users.noreply.github.com>
2025-03-24 09:00:27 -07:00
.github Build adjustments for code annotation (#2155) 2025-03-13 22:42:08 +01:00
.nuke Build adjustments for code annotation (#2155) 2025-03-13 22:42:08 +01:00
build Build adjustments for code annotation (#2155) 2025-03-13 22:42:08 +01:00
Dalamud Add SeStringEvaluator service (#2188) 2025-03-24 09:00:27 -07:00
Dalamud.Boot Implement dalamud-platform launch argument (#1452) 2025-03-24 08:42:24 -07:00
Dalamud.Common Implement dalamud-platform launch argument (#1452) 2025-03-24 08:42:24 -07:00
Dalamud.CorePlugin merge from master 2025-03-08 16:10:25 +01:00
Dalamud.Injector Implement dalamud-platform launch argument (#1452) 2025-03-24 08:42:24 -07:00
Dalamud.Injector.Boot Add console argument/env var to disable legacy corrupted state exceptions policy 2025-03-09 19:34:26 +01:00
Dalamud.Test initial net9 port 2024-11-14 01:08:07 +01:00
DalamudCrashHandler Add timezone offset to system time in crash log (#2142) 2025-01-03 08:57:34 -08:00
docs docs: remove from this repo, add redirect 2024-03-22 21:35:37 +01:00
external copy cimgui DLLs in their vcxproj instead of Dalamud 2024-12-28 14:02:06 +01:00
lib Implement dalamud-platform launch argument (#1452) 2025-03-24 08:42:24 -07:00
targets Update DalamudPackager in .targets (#2076) 2024-11-13 08:15:57 -08:00
tools initial net9 port 2024-11-14 01:08:07 +01:00
.editorconfig editorconfig: trim trailing whitespace 2024-12-26 14:14:16 +01:00
.gitattributes Initial commit 2019-09-21 22:29:38 +09:00
.gitignore Initial commit 2019-09-21 22:29:38 +09:00
.gitmodules reference and add vcxproj for cimgui, cimplot, cimguizmo 2024-12-23 22:36:31 +01:00
build.cmd Magic the magic happen 2021-07-11 16:32:32 -04:00
build.ps1 Magic the magic happen 2021-07-11 16:32:32 -04:00
build.sh Remove EnableWindowsTargeting from build.sh's run step (#1633) 2024-02-07 10:37:55 -08:00
CreateHashList.ps1 Magic the magic happen 2021-07-11 16:32:32 -04:00
Dalamud.sln make it work with nuke 2024-12-24 01:52:38 +01:00
Dalamud.sln.DotSettings chore: Remove the [InterfaceVersion] attribute (#1844) 2024-06-16 13:01:17 +02:00
Directory.Build.props merge from master 2025-03-08 16:10:25 +01:00
docfx.json ignore CS for docs altogether, for now 2024-06-30 01:28:52 +02:00
filterConfig.yml docs: exclude SDL2, Dalamud.Test, Dalamud.Interface.Internal, Dalamud.Game.Internal 2021-12-02 22:36:12 +01:00
global.json initial net9 port 2024-11-14 01:08:07 +01:00
index.md docs: regenerate, include docfx config 2020-02-14 20:24:41 +09:00
LICENSE Update License to AGPL 3.0 or Later (#1373) 2023-09-19 23:11:23 +02:00
README.md some readme housekeeping 2024-12-23 21:15:03 +01:00
release.ps1 add release script 2024-12-23 16:50:06 +01:00
sign.ps1 chore: codesigning for releases 2023-06-29 13:29:35 +02:00
stylecop.json Magic the magic happen 2021-07-11 16:32:32 -04:00

Dalamud Actions Status Discord Shield

Dalamud

Dalamud is a plugin development framework for FFXIV that provides access to game data and native interoperability with the game itself to add functionality and quality-of-life.

It is meant to be used in conjunction with XIVLauncher, which manages and launches Dalamud for you. It is generally not recommended for end users to try to run Dalamud manually as XIVLauncher manages multiple required dependencies.

Hold Up!

If you are just trying to use Dalamud, you don't need to do anything on this page - please download XIVLauncher from its official page and follow the setup instructions.

Building and testing locally

Please check the docs page on building Dalamud for more information and required dependencies.

Plugin development

Dalamud features a growing API for in-game plugin development with game data and chat access and overlays. Please see our Developer FAQ and the API documentation for more details.

If you need any support regarding the API or usage of Dalamud, please join our discord server.


Thanks to Mino, whose work has made this possible!

Components & Pipeline

These components are used in order to load Dalamud into a target process. Dalamud can be loaded via DLL injection, or by rewriting a process' entrypoint.

Name Purpose
Dalamud.Injector.Boot (C++) Loads the .NET Core runtime into a process via hostfxr and kicks off Dalamud.Injector
Dalamud.Injector (C#) Performs DLL injection on the target process
Dalamud.Boot (C++) Loads the .NET Core runtime into the active process and kicks off Dalamud, or rewrites a target process' entrypoint to do so
Dalamud (C#) Core API, game bindings, plugin framework
Dalamud.CorePlugin (C#) Testbed plugin that can access Dalamud internals, to prototype new Dalamud features

Final Fantasy XIV © 2010-2021 SQUARE ENIX CO., LTD. All Rights Reserved. We are not affiliated with SQUARE ENIX CO., LTD. in any way.