-
Notifications
You must be signed in to change notification settings - Fork 11
.NET 8 Support and Dependency Fixes #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
Hi, Are you done with your changes though? |
|
Hi, aren't we all... busy ... 😉 Anyway, I found some very minor issues, would like to fix them and then be done. Hopefully this week. Btw. would you mind if I put it on Nexusmods? Ofcourse with proper credit. I think license is MIT, but still.. |
The project is already on NexusMods and Thunderstore: |
|
Ahh, right, it's actually a cheating mod! I normally filter on no cheating. 🙂 |
- Fixed POI "done" status not refreshing when auto-reload triggers - Fixed Area and Requirements filter persistence between sessions - Fixed Area filter values not updating on language change
| @@ -0,0 +1,9 @@ | |||
| { | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove this...
| /// YAML-based localization source that flattens nested YAML structures into dot-notation keys. | ||
| /// Compatible with the existing FlatExtractingJsonLocalizationSource behavior. | ||
| /// </summary> | ||
| public class FlatExtractingYamlLocalizationSource : ILocalizationSource |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because of this change, the inbuilt translation editor (which saves through TranslationViewModel.Save) will still save to JSON files.
Change it to make it compatible with the new YAML files
|
|
||
| public IEnumerable<ComboBoxItemAndValue<RequirementsFilterType>> RequirementsFilterTypeValues { get; } | ||
|
|
||
| partial void OnAreaFilterChanged(IAreaFilter value) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As soon as the user switches the application language and restarts, the stored value (e.g. “Surface only”) no longer matches the newly translated option titles (e.g. “Nur Oberfläche”), so
the filter resets back to the default and the “persist filters between sessions” fix stops working whenever the language changes.
| @@ -0,0 +1,19 @@ | |||
| { | |||
| // Use IntelliSense to learn about possible attributes. | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comments in a json file?
| <ImplicitUsings>enable</ImplicitUsings> | ||
| <Nullable>enable</Nullable> | ||
| <TargetFramework>net6.0</TargetFramework> | ||
| <TargetFramework>net8.0</TargetFramework> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indentation
| <ImplicitUsings>enable</ImplicitUsings> | ||
| <Nullable>enable</Nullable> | ||
| <TargetFramework>net6.0</TargetFramework> | ||
| <TargetFramework>net8.0</TargetFramework> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indentation
| public override object ProvideValue(IServiceProvider serviceProvider) | ||
| { | ||
| // Check if we're being used in a context that supports bindings | ||
| if (serviceProvider.GetService(typeof(IProvideValueTarget)) is IProvideValueTarget target) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At this point, I liked the simplicity of the original implementation. A simple restart is fine to me - your hot reload will keep breaking stuff because the App was not designed for that.
|
Can you split the changes into multiple MRs? It makes reviewing and bisecting easier. |
|
Hi Stefan,
I am done with the game and my motivation to continue updating the code is quite zero, sorry about that.
But first of all thanks for the great tool, I almost exklusively used it for the map feature. In my opinion it's THE feature, even more with my enhanced "Done" (And I checked other tools and websites). Depends how one plays I suppose.
To be honest, I hardly looked at the code, this was more of a getting to know how good AI programming with VSCode works. Did partly quite well, it would have needed more guidance in places. Partly it was frustrating. That was also one of the reasons I went for yaml. Having multiple changes, trying to keep the languages in synch plus a tiny error in the structure can be a real nightmare to fix with a deeply nested json like that.
Language hot swapping works quite well, made some further enhancements in the latest edits. Not sure what you mean the issue is or could be.
Sorry about the many changes, I don't normally with pull requests. It apparently kept adding commits to the request. This is probably what you would have to do, make a cherry pick on each. I tried to keep the commits meaningful, but I did not do any nice feature branching, so it's not too great. Maybe just take it all and fix what you don't like. As I used it as a permanent companion and I was fine I don't think it's too bad.
Only one thing, the last commit is a bit rough. Tried fixing the Autoload, but could not get it to work. I was tempted to take a deeper code dive, but I just finished the game (and the end game got me very annoyed), so... no. 😔
You know, if you want to completely just ignore my changes, it's fine with me. I myself got pretty much what interested me. Was a bit more effort then I expected. I asume you might also have lost interest a while ago, and the game is pretty much past it's prime? But the implementation is surely a nice reference for future tools. 🙂
Kind regards
Alexander
…On December 4, 2025 8:05:19 AM GMT+01:00, Stefan Hueg ***@***.***> wrote:
codengine left a comment (codengine/SOTFEdit#44)
Can you split the changes into multiple MRs? It makes reviewing and bisecting easier.
--
Reply to this email directly or view it on GitHub:
#44 (comment)
You are receiving this because you authored the thread.
Message ID: ***@***.***>
|
|
@Za-Pa-Al First of all, thank you for your interest and the kind words for the editor. It was a passion-driven project and it was quite fun to work on the map and figure out all the things that make it work. However, as you already mentioned, my passion has soon dropped because Endnight stopped working on the game and to be honest - the more I worked at the editor, the less I played the game because it lost its "magic". I already suspected that the changes were Ai driven, also hinted by the specific Claude settings. Which, to be honest, leads to trust issues on my end. Not specific because of your PR, but because everyone can create such PRs which look good on the surface but won't deliver thoroughly planned and executed changes. Its too tempting. But thank you for your honesty at least. I will have a look which parts can be reused. |
|
Hi,
I have been in IT and developing in many languages for many years, only
recently I have start playing around with AI driven approaches.
I must say, having AI support does significantly lower the inhibition
threshold to even attempt to jump into a foreign project and do some
changes "fast", without knowing the project at all.
I understand your trust issues, and I also don't like other people
messing up my code. ☺
In this case I am pretty sure I never even wrote a single line myself, I
find it amazing how much AI can do already, and the code pieces it shows
in diff seem quite ok.
Having experience in software engineering likely helped in supporting
it. But it can get very, very lost. I never gave into looking at the
code though, I just told Claude, it does not work, fix it. Maybe suggest
a different approach ... ☺
If you ever get around to verifying the changes, please drop me a little
feedback ... good, ok, or a total disaster.
As I said, I think it did not perform horribly, actually it even did
quite ok. Most of the changes were obviously straight forward, but maybe
it is really only on the surface.
Regards,
Alexander
*From:* Stefan Hueg ***@***.***>
*Sent:* Thursday, December 4, 2025 at 18:38 UTC+1
*To:* codengine/SOTFEdit ***@***.***>
*Cc:* Za-Pa-Al ***@***.***>, Mention
***@***.***>
*Subject:* RE: [codengine/SOTFEdit] .NET 8 Support and Dependency Fixes
(PR #44)
… *codengine* left a comment (codengine/SOTFEdit#44)
<#44 (comment)>
@Za-Pa-Al <https://github.com/Za-Pa-Al> First of all, thank you for
your interest and the kind words for the editor. It was a
passion-driven project and it was quite fun to work on the map and
figure out all the things that make it work.
However, as you already mentioned, my passion has soon dropped because
Endnight stopped working on the game and to be honest - the more I
worked at the editor, the less I played the game because it lost its
"magic".
I already suspected that the changes were Ai driven, also hinted by
the specific Claude settings. Which, to be honest, leads to trust
issues on my end. Not specific because of your PR, but because
everyone can create such PRs which look good on the surface but won't
deliver thoroughly planned and executed changes. Its too tempting. But
thank you for your honesty at least.
I will have a look which parts can be reused.
—
Reply to this email directly, view it on GitHub
<#44 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BYB5MRJCFHVLLTB6OOKPIZ34ABWRJAVCNFSM6AAAAACK3S4ZLSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMMJTGQ3TSMBXGU>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
No description provided.