Skip to content
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

Implement a non-Core FFXIV Weather Plugin #87

Closed
MKhayle opened this issue May 20, 2022 · 9 comments · Fixed by #101
Closed

Implement a non-Core FFXIV Weather Plugin #87

MKhayle opened this issue May 20, 2022 · 9 comments · Fixed by #101
Labels
enhancement New feature or request Priority P3 ordinary flow of work

Comments

@MKhayle
Copy link

MKhayle commented May 20, 2022

Is your feature request related to a problem? Please describe.

We require a Weather plugin for potential dependencies from other plugins.

Describe the solution you would like.

We need a Weather Plugin with methods to get weather data for any given zone at any given time.
May require #74 first for zones handling and weather types first-hand. Would be required for #78.

That may potentially include a command for users : /weather Upper la Noscea now but that may be messy because of localization and/or time. Maybe we could, however, use Discord Select Menus to allow the user to choose from options we would set ourselves and avoid confusion / wrong options input but that would make the overall command use slower.

Pinging @karashiiro here as I've read somewhere that kara had a weather lib already.

Describe alternatives you've considered.

Make ingame bots in each zone in the game where it could be talking to Skywatcher NPCs every 2 hours, then proceed to screenshot the NPC's text, OCR it and send it to a core API. May cause insane devs to become even less sane.

Screenshots

No response

@karashiiro
Copy link
Contributor

I have libs for C# and Python, JS/TS is this person's.

@karashiiro
Copy link
Contributor

Though honestly, that one's a bit wack since all of the game data has been hand-translated into code. It doesn't have weather rates for any non-field zones, either (not that anyone really cares about the weather in P4). Still, for the typical zones it works.

@MKhayle
Copy link
Author

MKhayle commented May 20, 2022

I can think of Diadem's and Bozja/Zadnor's zones as important non-typical zones where it could be required for special events happening during specific weathers and it looks like those zones are covered. Is there any specific zone we could be missing out ?

@karashiiro
Copy link
Contributor

karashiiro commented May 20, 2022

No clue; like I said, it's at least fine for everything people care about. Not directly using a game data dump means the update cost is higher than it needs to be, though. Updates require manual codebase modification, instead of just running a script, which makes them take longer if nobody PRs a change before the core maintainer gets around to it. Realistically it's probably fine, it just has more friction than I think it needs to.

I've considered contributing to it before, but tbh I've been a bit unsure about it, since my "contribution" would be replacing the entire codebase.

@karashiiro
Copy link
Contributor

karashiiro commented May 20, 2022

Oh, it also only supports English and Japanese natively, somehow I never noticed that, before.

@karashiiro
Copy link
Contributor

I'll add that I am extremely biased on the design of anything that can use game data (directly or through a dump), but doesn't.

@MKhayle
Copy link
Author

MKhayle commented May 20, 2022

To be honest I'd advise against relying on external tools if we can avoid it for the reasons you mentioned earlier and because we can cover those needs by ourselves. If it also lacks DE/FR data, then I'm all in for some homebrewed solution to deal with that.

@karashiiro
Copy link
Contributor

karashiiro commented May 20, 2022

Perfect, because it'd be trivial.

@kalilistic kalilistic added the Priority P3 ordinary flow of work label May 20, 2022
@karashiiro
Copy link
Contributor

Alright, I'm taking this. I'll implement it completely within venat rather than as a library because it'll be very small. For now, it'll just use XIVAPI until we get around to setting up #74.

Repository owner moved this from Todo ✏️ to Done ✅ in MVP May 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Priority P3 ordinary flow of work
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants