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

Support "Maniac Patch" v181209 by BingShan #1557

Closed
Ghabry opened this issue Dec 11, 2018 · 1 comment
Closed

Support "Maniac Patch" v181209 by BingShan #1557

Ghabry opened this issue Dec 11, 2018 · 1 comment

Comments

@Ghabry
Copy link
Member

Ghabry commented Dec 11, 2018

Before solving this #1424 should be solved first.

Creating a new issue here because this is a new version of the patch and many things were added...

Download: https://ux.getuploader.com/xingqier/download/127

If the event handler will refresh once per frame or always (normal behaviour) can be configured now in the patcher but isn't exposed to the game.

This "only" features modified commands, screenshots follow later:

@> Key Input Processing:

    Added a method of specifying by variable reference to the switch.
    Added a method of specifying the lvalue of the variable with the variable of the variable number.
    Added a method of specifying variable side variable with variable number variable.

@> Manipulate variables:
@> Control Variables:
    Added range specification with variable values ​​to the operation target.
    When a <b in a batch operation it is treated as b ~ a.
    Logical sum (or), logical product (and), exclusive OR (xor), logical left and right shift (shl, shr) are added to the operation contents.
    ID and ATB gauge items were added to the main character and enemy character of the operand respectively.
    Items of current date, time and progress frame are added to the other operands.
    A switch was added to the operand. ON is treated as 1, OFF is treated as 0.
    We added a variable designation method to each of the operand item, the main character, the event, and the enemy character.
    A party member was added to the operand. It is the same as the main character except specifying it within the party index.
    A mathematical function function was added to the operand.
        In the following explanation, argument 1 is a, argument 2 is b, and multiplier is c.
        
        Add, Sub, Mul, Div, Mod, Or, And, Xor, Shl, Shr:
                a (Operator) Perform the same operation as "Operation content" with b.
        
        Pow: Calculate the power of a to the power of b.
        Sqrt: Calculate the square root * c of a. Decimals are truncated.
        Sin: Calculate the sine * c of a degree. Decimals are truncated.
        Cos: Calculate the cosine * c of degree a. Decimals are truncated.
        Atan 2: Calculates the arc tangent * c of a (Y coordinate) and b (X coordinate). Decimals are truncated.
        Min: Returns the smaller of a and b.
        Max: Returns the larger of a and b.
        Abs: Returns the absolute value of a.
        Random: Returns a random number in the range of a to b. It is the same as the "random number" of the operand.
       
@> Call Event:
    Added method to specify to common event as variable.
    Added method to specify common event with variable number variable.
    

@> Loop:
    The condition can be specified. The switch is treated as a numerical value of 1 for ON and 0 for OFF.
    When entering the inside of the loop by label jump, the repeat count and index are not set correctly.
    
    ∞:
    Infinity:
        It is a conventional infinite loop.
        
    Number designation:
    X Times:
        Repeat as many times as specified. You can optionally output an index starting at 0 to a variable.

    Count Up:
        Repeat incrementing the index one by one in the range from a to b.
        In the case of 2 to 5 as an example, it becomes 4 loops of 2, 3, 4 and 5.
        You can optionally output the current index to a variable.
        
    Countdown:
        Repeat decrementing the index one by one in the range from a to b.
        In the case of 3 to 1 as an example, it becomes 3 times loop of 3, 2, 1.
        You can optionally output the current index to a variable.
    

    While:
        I will repeat the condition while it is true. It is judged before each loop is executed.
        The comparison can be specified in the same way as conditional branching by variable.
        You can optionally output an index starting at 0 to a variable.
        
    Do While:
        I will repeat the condition while it is true. It is judged after every loop execution.
        The comparison can be specified in the same way as conditional branching by variable.
        You can optionally output an index starting at 0 to a variable.

> Break Loop:
    The same processing was added as the "iteration processing" command was changed.
    Fixed the behavior when executed inside multiple loop.
@Ghabry
Copy link
Member Author

Ghabry commented Jun 14, 2019

Closing, as handled now as part of #1818

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

No branches or pull requests

1 participant