ProjectIgnis / CardScripts

Project Ignis card script libraries and canonical card scripts for EDOPro. Send bug reports through Discord only!
89 stars 63 forks source link

Update Guidelines and Tasks #24

Closed NaimSantos closed 4 years ago

NaimSantos commented 5 years ago

Bugs

In addition, all the issues listed here should be solved. These have puzzles available in the latest Edopro build, so you can test them.

Enhancements:

All the following issues

Before the release:

Major script differences:

  1. Counters: Any card that mentions a type of counter in the text must include the s.counter_list table. Cards that, specifically, place counters (either on themselves or others) will have the s.counter_place_list, instead. See details in this discussion

  2. Duel.SpecialSummonStep has been changed, and due to that, SpecialSummonComplete must be moved out of that loop. See how to do it here

  3. Cards that have a filter with only 2 functions, where 1 of those are IsFaceup must use aux.FilterFaceupFunction. See discussion and examples here

  4. Use "for" instead of "while" when iterating through a group

  5. Cards that had a filter with a single check + IsFaceup have been updated to use aux.FilterFaceupFunction instead, as seen in #3

  6. All Fusion Summon effects have been rewritten, due to changes in the Fusion Procedure. See #30, #26, also many changes made by Edo, but that are no longer in the commit history.

  7. Ritual Effects have been changed, due to changes in the Ritual Summon Procedure.

  8. The syntax for recipes that use FilterBoolFunction must be changed when the function passed takes more than 1 check, due to the usage of FilterBoolFunctionEx. Compare the script of Dragonmaid Husky with Percy's to see the difference.

  9. The auxiliary function SelectUnselect has been applied to cards that could use it, to make a selection for cards matching a criteria cancelable, as seen in #4.

  10. Due.ShuffleExtra has been applied to cards that reveal the Extra Deck

  11. All the Continuous Traps have been changed, removing their complex handling for when it is possible to activate them, only, and activate and use their effects. See #31

  12. Cards that have an Special Summon procedure that does some kind of selection - tributing, discarding, banishing, etc- must be changed to make such procedure cancelable. See examples in #90

  13. Cards with effects that Fusion Summon should have the 'manual' approach for that effect, where you script it from the target to the operation function replaced by the Fusion Summon procedure. See examples in #160.

14

AlphaKretin commented 5 years ago

I believe Talkback Lancer (or "Trackback Talker" 😛) to be fixed in #25.

EerieCode commented 5 years ago

Regarding the issue with Linkuriboh, the problem is definitely in the core. Looking at how Card.IsLevel is implemented, it's meant to work like Card.IsCode: it takes any amount of levels, and checks if one of them matches with the card's level. It's not meant to be used with FilterBoolFunctionEx, by doing that we're passing tp, which is likely 0, as a potential level, thus allowing it to take cards with no levels.

In order to fix the issue, there are two potential solutions, both requiring changes to the core:

Whatever the solution, once the issue is solved corewise we should also update the Xyz procedure: right now it's still using Card.IsXyzLevel, which will likely be outdated with those changes.

EerieCode commented 5 years ago

The issues with the Fusion procedures and Kaleido Chick (plus other similar) should be fixed in #26 .

NaimSantos commented 5 years ago

Around 60 cards use GetLinkedZone, that was removed. Thus, all those cards need to be fixed. Adding a check box for that. Update: only GetFreeLinkZone was removed

NaimSantos commented 5 years ago

This commit fixes the cards that should use "Due.ShuffleExtra" #https://github.com/kevinlul/edopro-script/commit/809b66673125af86cd64b1cb13e1712ac03631f6

NaimSantos commented 5 years ago

https://github.com/kevinlul/edopro-config/commit/efadf3eb013ed0ae259e6bb0e1943257024f5251 contains 3 deck files with all the TCG/OCG Continuous Trap cards that have an effect that can be used when the card is activated and might need to be changed. Requires each card to be verified individually. Example of change is the current version of Time Pendulumgraph, that was already changed

EerieCode commented 5 years ago

The update to the Fusion procedures is being handled in #30 , further details there.

NaimSantos commented 5 years ago

Catalyst Field and similar cards with continuous effects that decrease the number of tributes required to summon other monsters are bugged, as seen in this puzzle.

AndreOliveiraMendes commented 5 years ago

about linkuriboh it just someone missundertood what was changed, in fact FilterBoolFunctionEx(f, value) passes f(card, value, sumcard, sumontype, player) wich is not suitable to what islevel takes as param (it only takes the the lv as param and have no use for summon type, card and even summoning player), the only changes the function received is instead of doing c:IsLevel(1) or c:IsLevel(2) ... you can do now c:IsLevel(1, 2, ...) aka multiple levels at same time, so best one suitable there is FilterBoolFunction

kevinlul commented 5 years ago

Linkuriboh confirmed as fixed in 5f99c379c338c1c792b5a9cfb8cadccef70d093d and 6f8bf736f184899676496fc82d43b3e3db75b7f4

AlphaKretin commented 4 years ago

I forgot about this issue, but I've just ticked two more checkboxes - #7 has been closed, and I've lightly tested Speed Duels before in the course of trying out Skills

larry126 commented 4 years ago

I unticked Action Duel given all the changes that Action Duel is undergoing at the moment.