kwsch / pkNX

Pokémon (Nintendo Switch) ROM Editor & Randomizer
https://projectpokemon.org/home/forums/topic/48647-pknx-nintendo-switch-rom-editor-randomizer/
GNU General Public License v3.0
339 stars 106 forks source link

PLA won't allow wild legendaries when randomizing wild pokemon #314

Closed RevanXVIV closed 1 year ago

RevanXVIV commented 1 year ago

Ok so I thought I was doing something dumb, but apparently no, the toggle to allow legendaries automatically sets to false every time you change tabs in PKNX's wild pokemon editor.

So can Dialga Giratina and Palkia just not be put into the randomizer?

duckdoom4 commented 1 year ago

Most randomizers for PLA are very half assed because I don't use them. What editor are you using to randomize them?

RevanXVIV commented 1 year ago

pkNX If you're asking which tab it's the field tab under "areas"

EDIT: It also won't allow legendaries for randomized starters but I think I'm ok with that, don't want the game to be too easy y'know?

duckdoom4 commented 1 year ago

https://github.com/kwsch/pkNX/blob/master/pkNX.WinForms/Subforms/AreaEditor8a.cs#L97

The comment in the code provides the answer:

settings.Legends = false; // Legendary encounter slot conditions require you to not have captured the Legendary in order to encounter them; ban altogether.

RevanXVIV commented 1 year ago

https://github.com/kwsch/pkNX/blob/master/pkNX.WinForms/Subforms/AreaEditor8a.cs#L97

The comment in the code provides the answer:

settings.Legends = false; // Legendary encounter slot conditions require you to not have captured the Legendary in order to encounter them; ban altogether.

So what does this mean legendaries can't be randomized? I'm not a coder so I don't quite understand.

duckdoom4 commented 1 year ago

As it states, the encounter conditions, require you to NOT have captured the legendary. This means it will break the encounter if you did catch one. Thus the programmer decided to force this variable to false.

RevanXVIV commented 1 year ago

And there's no way to recode this? I know Dialga and Palkia have alternate forms, so what you can't randomize even the base forms in? Well this randomizer just got a lot less interesting.

duckdoom4 commented 1 year ago

Well, the code isn't the issue here. It's the game's settings. There are conditions linked to the encounters of legendaries.

With a lot of manual work, you would be able to remove all the condition from all spawners. But the programmer decided to force it to false because he didn't add code to remove these conditions.

Tho, if you manage to get rid of these conditions in your game file on your own you can simply download the source, remove the setting.legends = false and run the program to fix it

duckdoom4 commented 1 year ago

Besides that, I wouldn't recommend using the randomizer feature for PLA until someone improved the code. It's very minimalistic right now

RevanXVIV commented 1 year ago

Ok so my next question would be can I manually add Dialga, Palkia, and Giratina to the overworld using the randomizer, BUT not battle/catch them until after the events? Like I've manually inputted them into a seed already and caught a dialga so I'm assuming that means I can't complete the story now correct? If I start a new seed and just avoid them until after the events would that work?

EDIT: Forgot to ask, is anyone even working on the PLA randomization code anymore?

duckdoom4 commented 1 year ago

I can't answer that, you would have to test that yourself and see it it works.

Currently no one is working on the PLA randomizer, but other PLA features are still being added over time

RevanXVIV commented 1 year ago

Well I guess regarding my edit, other than legendaries, what else is there to add to the randomizer? However would be nice to see if someone could actually manage to fix up some of the forced events in the randomizer, y'know like the starters, the 3 trial pokemon that you need to catch, and the legendaries. That way, maybe the randomizer could be fully functional some day.

So basically until somebody actually makes a fully functional randomizer, this is the best I'll get, well I'm gonna test that dialga theory, would you like me to tell you the results when I actually get to that point so you can inform others who ask about legends?