summaryrefslogtreecommitdiff
path: root/tools/mobxp
blob: 49c74f2706ba29820fe1febe246e4e344881afd3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/bin/bash

IFS=$' \t\n,'
while read
do
    if [ -z "$REPLY" ] || [ "${REPLY:0:1}" = '#' ] || [ "${REPLY:0:2}" = '//' ]
    then
        echo "$REPLY"
        continue
    fi

    read ID Name Jname LV HP SP EXP JEXP Range1 ATK1 ATK2 DEF MDEF STR AGI VIT INT DEX LUK Range2 Range3 Scale Race Element Mode Speed Adelay Amotion Dmotion Drop1id Drop1per Drop2id Drop2per Drop3id Drop3per Drop4id Drop4per Drop5id Drop5per Drop6id Drop6per Drop7id Drop7per Drop8id Drop8per Item1 Item2 MEXP ExpPer MVP1id MVP1per MVP2id MVP2per MVP3id MVP3per mutationcount mutationstrength <<< "$REPLY"
    if [ -z "$mutationstrength" ]
    then
        echo "$REPLY"
    fi
    BOSS=$(((Mode&32)>0))
    ASSIST=$(((Mode&8)>0))
    AGGRO=$(((Mode&4)>0))

    MODE_BONUS=$((3*BOSS+1*ASSIST+1*AGGRO+2))
    NEWJEXP=$(bc <<< "
        1 + $MODE_BONUS * $HP * (100 - $DEF) * sqrt(2500 * ($ATK1 + $ATK2) / $Adelay) / sqrt(sqrt($Speed)) / 15000
    ") || {
        echo "$REPLY"
        continue
    }
    # echo $ID$'\t'$Name$'\t'Old:$'\t'$JEXP$'\t'New:$'\t'$NEWJEXP$'\t( '$BOSS $AGGRO $ASSIST')'
    echo $ID, $Name, $Jname, $LV, $HP, $SP, $EXP, $NEWJEXP, $Range1, $ATK1, $ATK2, $DEF, $MDEF, $STR, $AGI, $VIT, $INT, $DEX, $LUK, $Range2, $Range3, $Scale, $Race, $Element, $Mode, $Speed, $Adelay, $Amotion, $Dmotion, $Drop1id, $Drop1per, $Drop2id, $Drop2per, $Drop3id, $Drop3per, $Drop4id, $Drop4per, $Drop5id, $Drop5per, $Drop6id, $Drop6per, $Drop7id, $Drop7per, $Drop8id, $Drop8per, $Item1, $Item2, $MEXP, $ExpPer, $MVP1id, $MVP1per, $MVP2id, $MVP2per, $MVP3id, $MVP3per, $mutationcount, $mutationstrength
done