Commit graph

6085 commits

Author SHA1 Message Date
goaaats
7b723687a4 Use NuGet CPM to ensure consistent package versions
Fixes various issues with projects referencing different versions of libraries, causing deployment issues if build order differs
2025-10-15 22:58:26 +02:00
goaaats
168a334756 Injector: remove custom DllImports, replace with CsWin32 2025-10-15 22:58:26 +02:00
goaaats
5fd24f4bed Bump Reloaded.Memory.Buffers, fixes conflict with injector 2025-10-15 22:58:26 +02:00
github-actions[bot]
9fb0a79885 Update ClientStructs
Some checks are pending
Build Dalamud / Build on Windows (push) Waiting to run
Build Dalamud / Check API Compatibility (push) Blocked by required conditions
Build Dalamud / Deploy dalamud-distrib staging (push) Blocked by required conditions
2025-10-15 18:34:54 +00:00
goat
db22c5e111
Remove status badge from readme
Some checks are pending
Build Dalamud / Build on Windows (push) Waiting to run
Build Dalamud / Check API Compatibility (push) Blocked by required conditions
Build Dalamud / Deploy dalamud-distrib staging (push) Blocked by required conditions
Tag Build / Tag Build (push) Successful in 3s
2025-10-14 22:59:50 +02:00
goaaats
2207ad0886 Bump Reloaded.Memory.Buffers to simplify hook buffer acquisition 2025-10-14 22:51:17 +02:00
GrittyFrog
ae777000e2 Plugin-registerable self tests
The goal of this change is to let plugins register their own self-tests. 

We do this through the `ISelfTestRegistry` interface. For a plugin it
would look like this:

```csharp
[PluginService]
public ISelfTestRegistry SelfTestRegistry

// Somewhere that gets called by your plugin
SelfTestRegistry.RegisterTestSteps([
  new MySelfTestStep(),
  new MyOtherSelfTestStep()
])
```

Where `MySelfTest` and `MyOtherSelfTest` are instances of
the existing `ISelfTestStep` interface.

The biggest changes are to `SelfTestWindow` and the introduction of
`SelfTestWithResults`. I wanted to make sure test state wasn't lost when
changing the dropdown state and I was finding it a bit annoying to work
with the Dictionary now that we can't just rely on the index of the
item.

To fix this I moved all the "test run" state into `SelfTestWithResults`,
most of the changes to `SelfTestWindow` are derived from that, other
then the addition of the combo box.

The documentation for this service is a bit sparse, but I wanted to put
it up for review first before I invest a bunch of time making nice
documentation. 

I'm keen to hear if we think this is useful or if any changes are
needed.
2025-10-13 19:04:08 +11:00
Haselnussbomber
4a869bad3f
Use Luminas SeStringBuilder in DalamudAtkTweaks 2025-10-08 03:41:34 +02:00
Haselnussbomber
9852feaf08
Add RentedSeStringBuilder
Co-authored-by: Soreepeong <3614868+Soreepeong@users.noreply.github.com>
2025-10-08 03:41:31 +02:00
Haselnussbomber
26d2f764c6
Add BitmapFontIcon.EventTutorial 2025-10-08 03:05:39 +02:00
goaaats
4ac4505d72 build: 13.0.0.5
Some checks failed
Tag Build / Tag Build (push) Failing after 2s
Build Dalamud / Build on Windows (push) Has been cancelled
Build Dalamud / Check API Compatibility (push) Has been cancelled
Build Dalamud / Deploy dalamud-distrib staging (push) Has been cancelled
2025-10-07 23:03:29 +02:00
Ottermandias
1ae7de26bf
Fix issue in SigScanner. (#2425)
Some checks are pending
Build Dalamud / Build on Windows (push) Waiting to run
Build Dalamud / Check API Compatibility (push) Blocked by required conditions
Build Dalamud / Deploy dalamud-distrib staging (push) Blocked by required conditions
Tag Build / Tag Build (push) Successful in 4s
2025-10-07 09:40:44 -07:00
bleatbot
1073227b83
Update ClientStructs (#2419)
Co-authored-by: github-actions[bot] <noreply@github.com>
2025-10-07 09:06:43 -07:00
bleatbot
11adffd700
Update Excel Schema (#2423)
Co-authored-by: github-actions[bot] <noreply@github.com>
2025-10-07 08:33:24 -07:00
bleatbot
7bf79bdea6
Update ClientStructs (#2417)
Some checks failed
Tag Build / Tag Build (push) Successful in 1s
Build Dalamud / Build on Windows (push) Has been cancelled
Build Dalamud / Check API Compatibility (push) Has been cancelled
Build Dalamud / Deploy dalamud-distrib staging (push) Has been cancelled
Co-authored-by: github-actions[bot] <noreply@github.com>
2025-09-29 21:13:08 +00:00
bleatbot
7813f5d201
Update ClientStructs (#2413)
Some checks are pending
Build Dalamud / Build on Windows (push) Waiting to run
Build Dalamud / Check API Compatibility (push) Blocked by required conditions
Build Dalamud / Deploy dalamud-distrib staging (push) Blocked by required conditions
Tag Build / Tag Build (push) Successful in 2s
Co-authored-by: github-actions[bot] <noreply@github.com>
2025-09-29 09:09:32 -07:00
srkizer
aa3d6c3efe
Use long running task for plugin ctor (#2406) 2025-09-29 09:09:02 -07:00
Haselnussbomber
d61a35b81f
Update Settings Window (#2400)
* Load new localization before firing change event

* Update texts in SettingsWindow when locale changes

* Localize settings search

* Update settings search input

- Disable when Credits are scrolling,
so Search Results aren't shown instead
- Select all on single click, as usual for a search bar

* Remove unused IsVisible property

* Fix General tab being unselected on language change

* Fix search results throwing, oops

* Missed using LocRef in EnumSettingsEntry

* Set CultureInfo before loading locs

* Change it to LazyLoc instead

So CheapLoc can export localizations...
2025-09-29 09:08:25 -07:00
Haselnussbomber
efaff769b5
Rename Id fields to match CS names (#2405)
* Rename DataId to BaseId

* Fix obsoletes

* Inherit documentation
2025-09-29 09:06:28 -07:00
Haselnussbomber
9091216e1c
Update ClientState (#2410)
* Add MapChanged event to ClientState

* Add PublicInstanceId with event to ClientState

* Set eventhandlers to null

* Rework events and add ZoneInit event
2025-09-29 09:02:53 -07:00
Haselnussbomber
9c5e4f5a32
Add JsonIgnore attribute on IsAvailableForTesting 2025-09-28 16:21:25 +02:00
Haselnussbomber
87adb2dfb7
More expressive code 2025-09-28 16:00:09 +02:00
Haselnussbomber
8edbc0ee78
Ignore user testing opt-in for manifest eligibility check 2025-09-28 15:59:08 +02:00
Haselnussbomber
d1fbee2829
Remove manifest API filter in installer
The API is already checked in `PluginManager.IsManifestEligible`,
so a plugin not matching it doesn't even get here.
2025-09-28 15:39:36 +02:00
Haselnussbomber
191aa8d696
Move IsAvailableForTesting to IPluginManifest 2025-09-28 15:31:46 +02:00
goat
0bc44154aa
Merge pull request #2414 from Haselnussbomber/sestring-evaluator-and-creator-fixes
Some checks failed
Tag Build / Tag Build (push) Successful in 3s
Build Dalamud / Build on Windows (push) Has been cancelled
Build Dalamud / Check API Compatibility (push) Has been cancelled
Build Dalamud / Deploy dalamud-distrib staging (push) Has been cancelled
SeString Evaluator/Creator fixes
2025-09-23 17:07:16 +02:00
Haselnussbomber
1633e68b76
Fix/simplify range handling 2025-09-23 13:16:39 +02:00
Haselnussbomber
dceeccb242
Load valid sheets for AddFromSheetPopup asynchronously 2025-09-22 23:56:28 +02:00
Haselnussbomber
2625f51021
Fix missing macro strings in AddFromSheetPopup 2025-09-22 23:55:16 +02:00
Haselnussbomber
69a8bdd638
Update GlobalParameters list 2025-09-22 23:49:57 +02:00
Haselnussbomber
9447708058
Fix Copy MacroString button 2025-09-22 23:36:39 +02:00
Haselnussbomber
e2e3a01cc3
Fix SeString Creator input length cutting off long macro strings 2025-09-22 23:33:30 +02:00
Haselnussbomber
9b0c275b8b
Fix ExpressionType.Weekday being off by 1 2025-09-22 23:29:40 +02:00
Caraxi
0b3a5a713e
enforce limits on alpha slider (#2412)
Some checks failed
Tag Build / Tag Build (push) Successful in 2s
Build Dalamud / Build on Windows (push) Has been cancelled
Build Dalamud / Check API Compatibility (push) Has been cancelled
Build Dalamud / Deploy dalamud-distrib staging (push) Has been cancelled
2025-09-21 20:24:48 -07:00
bleatbot
c38365bc99
Update ClientStructs (#2398)
Co-authored-by: github-actions[bot] <noreply@github.com>
2025-09-21 20:23:53 -07:00
bleatbot
3d0790e650
Update Excel Schema (#2408)
Co-authored-by: github-actions[bot] <noreply@github.com>
2025-09-21 20:23:03 -07:00
goat
1cc9071ce4
Update SeStringEvaluator, Payload, AutoTranslatePayload (#2411)
Some checks are pending
Build Dalamud / Build on Windows (push) Waiting to run
Build Dalamud / Check API Compatibility (push) Blocked by required conditions
Build Dalamud / Deploy dalamud-distrib staging (push) Blocked by required conditions
Tag Build / Tag Build (push) Successful in 3s
* Handle multiple col- entries in Completion.LookupTable

* Pass correct length to DecodeImpl

* Skip to payload end instead of reading remaining bytes

* Use SeStringEvaluator in AutoTranslatePayload

* Rework range check

- Loops through all entries
- Bumped amount of cols up to 8 for future proofing
- Use Ordinal search
- Actually parse ranges and check if the RowId is allowed

* Only check range if it has ranges

* Fix Group being off by 1

* Add AutoTranslatePayload re-encode test

* Remove redundant checks

* Add some AutoTranslatePayload.Text self-tests

* Remove AutoTranslatePayload text cache

- Lumina lookups aren't that taxing anymore
- Cache wasn't invalidated when the language override changes
2025-09-21 22:34:19 +02:00
Haselnussbomber
ce1faa50cf
Remove AutoTranslatePayload text cache
- Lumina lookups aren't that taxing anymore
- Cache wasn't invalidated when the language override changes
2025-09-21 14:00:23 +02:00
Haselnussbomber
374f9fcbd0
Add some AutoTranslatePayload.Text self-tests 2025-09-21 03:10:00 +02:00
Haselnussbomber
9b224857f1
Remove redundant checks 2025-09-21 03:08:28 +02:00
Haselnussbomber
0bb87d87b7
Add AutoTranslatePayload re-encode test 2025-09-21 02:18:55 +02:00
Haselnussbomber
c03e7ecfe6
Fix Group being off by 1 2025-09-21 02:16:09 +02:00
Haselnussbomber
c264fb134e
Only check range if it has ranges 2025-09-20 04:09:23 +02:00
Haselnussbomber
d8555f207e
Rework range check
- Loops through all entries
- Bumped amount of cols up to 8 for future proofing
- Use Ordinal search
- Actually parse ranges and check if the RowId is allowed
2025-09-20 03:54:41 +02:00
Haselnussbomber
3f037e5d20
Use SeStringEvaluator in AutoTranslatePayload 2025-09-20 02:51:00 +02:00
Haselnussbomber
93a44842ed
Skip to payload end instead of reading remaining bytes 2025-09-20 02:51:00 +02:00
Haselnussbomber
327ebf3bb3
Pass correct length to DecodeImpl 2025-09-20 02:50:54 +02:00
Haselnussbomber
bf4fc7864f
Handle multiple col- entries in Completion.LookupTable 2025-09-20 02:50:49 +02:00
goaaats
fa58d7b3cc build: 13.0.0.4
Some checks failed
Tag Build / Tag Build (push) Failing after 3s
Build Dalamud / Build on Windows (push) Has been cancelled
Build Dalamud / Check API Compatibility (push) Has been cancelled
Build Dalamud / Deploy dalamud-distrib staging (push) Has been cancelled
2025-09-12 01:42:45 +02:00
Asriel
a2b3fb901e
Fix Lumina.Excel branch in workflow (#2407)
Some checks are pending
Build Dalamud / Build on Windows (push) Waiting to run
Build Dalamud / Check API Compatibility (push) Blocked by required conditions
Build Dalamud / Deploy dalamud-distrib staging (push) Blocked by required conditions
Tag Build / Tag Build (push) Successful in 2s
2025-09-11 17:06:07 +00:00