Skip to content

Conversation

@kielbasiago
Copy link

@kielbasiago kielbasiago commented Apr 16, 2022

-stesp <MIN> <MAX>
--starting-espers <MIN> <MAX>

This flag will gives a player between MIN-MAX espers at the start of the seed

These are marked in the spoiler log similar to how we do lores: https://pastebin.com/S40YpYZ5

*Odin       58 MP                                           Bahamut    70 MP
    Life 3  x20                                                 Merton  x6
    Bolt    x4                                                  Cure 3  x20
    Imp     x20                                                 Bolt 3  x8
    Life    x6                                              SPEED +2
STAMINA +2                                                  Equipable: All
Equipable: All

* = Starting Esper

- this will give you between the selected range of espers from the very start
@kielbasiago kielbasiago changed the title Feature: Adding flag for random starting Espers Feature: Adding flag for giving starting Espers Apr 16, 2022
data/espers.py Outdated
self.available_espers = set(range(self.ESPER_COUNT))
self.starting_espers = []

if args.starting_espers_min > 0 or args.starting_espers_max <= self.ESPER_COUNT:
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the second half of this or doesn't seem to accomplish much

@AtmaTek
Copy link
Owner

AtmaTek commented Apr 20, 2022

I believe starting with max espers can fail with character gating. Character rewards are assigned first to ensure a path and try to make the checks (somewhat) equally likely. If characters are not randomly assigned to character/esper checks (e.g. magitek factory, FC, FT, doma wor, veldt, ...) then there will not be any remaining rewards available. I have not counted what the max number of espers can be without failing but I believe it is somewhere around 20.

To increase the chances of failure, assign 4 starting characters with character gating:
python3 wc.py -i ff3.smc -cg -sc1 random -sc2 random -sc3 random -sc4 random -stesp 27 27
Those flags almost always fail. However, I ran it 1000 times with 20 starting espers and did not encounter an error. I believe subtracting the number of character/esper only rewards from the max will be safe.

@kielbasiago
Copy link
Author

Thanks Atma - This crossed my mind but never followed up on it - I'm counting 7 Char/Esper only rewards, so 20 makes sense. Will do some more testing as well

esper_start = espers.add_mutually_exclusive_group()
esper_start.add_argument("-stesp", "--starting-espers", default = [0, 0], type = int,
nargs = 2, metavar = ("MIN", "MAX"), choices = range(MAX_STARTING_ESPERS + 1),
help = "Party starts with %(metavar) random espers")
Copy link
Contributor

@asilverthorn asilverthorn May 1, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Super minor, but this shows up in -h as Party starts with ('MIN', 'MAX')andom espers.

Change %(metavar) to %(metavar)s

@asilverthorn
Copy link
Contributor

Updates merged into beta branch for &dev seeds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants