Conversation
SlyryD
commented
Jan 10, 2023
- Add readable names for entrances
- Add BQ spoiler command that outputs the full entrance shuffle log
- Update existing BQ commands for consistency
- Remove outdated BQ version support
mzxrules
left a comment
There was a problem hiding this comment.
Missed this pr because I don't check up on my repos all that often
Most of the additions seem fine enough, but most of what is being deleted shouldn't be.
| Cat = SpectrumCommand.Category.Proto, | ||
| Name = "bqspoiler", | ||
| Description = "Outputs Beta Quest entrance spoiler log", | ||
| Cat = SpectrumCommand.Category.Spectrum, |
There was a problem hiding this comment.
| Cat = SpectrumCommand.Category.Spectrum, | |
| Cat = SpectrumCommand.Category.BetaQuest, |
SpectrumCommand.Category is used to group together commands on the help menu. SpectrumCommand.Category.Spectrum is reserved for commands of significant importance since they are displayed first; they're either commands that configure the program itself or are important commands that always have applicable usage.
| return VAR_Entrances; | ||
| } | ||
|
|
||
| static readonly short[] VAR_Entrances1_6 = |
There was a problem hiding this comment.
Not sure why you chose to remove this stuff. This was an updated entrance that would have fixed a couple minor "bugged" entrances
| Description = "Locates Beta Quest entrance by name", | ||
| Cat = SpectrumCommand.Category.Spectrum, | ||
| Sup = SpectrumCommand.Supported.OoT)] | ||
| private static void TestBetaQuestShuffleData(Arguments args) |
There was a problem hiding this comment.
why are you deleting this command?
| short entranceId = VAR_Entrances[i]; | ||
| string fromEntrance = Grotto_Table.ContainsKey(entranceId) ? Grotto_Table[entranceId] : Entrance_Table[entranceId]; | ||
| string toEntrance = Entrance_Table[read]; | ||
|
|
||
| Console.WriteLine($"{fromEntrance} => {toEntrance}"); |
There was a problem hiding this comment.
bqfindindex is not an adequate replacement for beta_ent.
the purpose of beta_ent is to convert a vanilla entranceId into a BetaQuest entranceId that can then be passed into the ent command for testing purposes, hence the name. the command should still have an alias to beta_ent
Second, you shouldn't assume that read will always map to Entrance_Table
| short entranceId = VAR_Entrances[i]; | |
| string fromEntrance = Grotto_Table.ContainsKey(entranceId) ? Grotto_Table[entranceId] : Entrance_Table[entranceId]; | |
| string toEntrance = Entrance_Table[read]; | |
| Console.WriteLine($"{fromEntrance} => {toEntrance}"); | |
| short entranceId = VAR_Entrances[i]; | |
| string fromEntrance = Grotto_Table.ContainsKey(entranceId) ? Grotto_Table[entranceId] : Entrance_Table[entranceId]; | |
| string toEntrance = Entrance_Table.ContainsKey(entranceId) ? Entrance_Table[read] : $"{VAR_Entrances[i]:X4}" ; | |
| Console.WriteLine($"{fromEntrance} => {toEntrance}"); |
| string fromEntrance = Grotto_Table.ContainsKey(entrance) ? Grotto_Table[entrance] : Entrance_Table[entrance]; | ||
|
|
||
| short read = shuffleTable.ReadInt16(i * 2); | ||
| string toEntrance = Entrance_Table[read]; |
There was a problem hiding this comment.
| string toEntrance = Entrance_Table[read]; | |
| string toEntrance = Grotto_Table.ContainsKey(index) ? Grotto_Table[index] : Entrance_Table[index]; |
Don't assume that read always maps to an Entrance_Table record