Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Lineage II (https://forum.zone-game.info/forumdisplay.php?f=34)
-   -   Шанс заточки после компиляции и до (https://forum.zone-game.info/showthread.php?t=6555)

GoodShadow 17.02.2010 03:07

Шанс заточки после компиляции и до
 
Это до

Код:

        /** Шанс заточки скилов 2й профы */

        private static final int[][] _chance = { {},

        //    76  77  78  79  80  81  82  83  84  85

                        { 82, 92, 97, 97, 97, 97, 97, 97, 97, 97 }, // 1

                        { 80, 90, 95, 95, 95, 95, 95, 95, 95, 95 }, // 2

                        { 78, 88, 93, 93, 93, 93, 93, 93, 93, 93 }, // 3

                        { 52, 76, 86, 91, 91, 91, 91, 91, 91, 91 }, // 4

                        { 50, 74, 84, 89, 89, 89, 89, 89, 89, 89 }, // 5

                        { 48, 72, 82, 87, 87, 87, 87, 87, 87, 87 }, // 6

                        { 01, 46, 70, 80, 85, 85, 85, 85, 85, 85 }, // 7

                        { 01, 44, 68, 78, 83, 83, 83, 83, 83, 83 }, // 8

                        { 01, 42, 66, 76, 81, 81, 81, 81, 81, 81 }, // 9

                        { 01, 01, 40, 64, 74, 79, 79, 79, 79, 79 }, // 10

                        { 01, 01, 38, 62, 72, 77, 77, 77, 77, 77 }, // 11

                        { 01, 01, 36, 60, 70, 75, 75, 75, 75, 75 }, // 12

                        { 01, 01, 01, 34, 58, 68, 73, 73, 73, 73 }, // 13

                        { 01, 01, 01, 32, 56, 66, 71, 71, 71, 71 }, // 14

                        { 01, 01, 01, 30, 54, 64, 69, 69, 69, 69 }, // 15

                        { 01, 01, 01, 01, 28, 52, 62, 67, 67, 67 }, // 16

                        { 01, 01, 01, 01, 26, 50, 60, 65, 65, 65 }, // 17

                        { 01, 01, 01, 01, 24, 48, 58, 63, 63, 63 }, // 18

                        { 01, 01, 01, 01, 01, 22, 46, 56, 61, 61 }, // 19

                        { 01, 01, 01, 01, 01, 20, 44, 54, 59, 59 }, // 20

                        { 01, 01, 01, 01, 01, 18, 42, 52, 57, 57 }, // 21

                        { 01, 01, 01, 01, 01, 01, 16, 40, 50, 55 }, // 22

                        { 01, 01, 01, 01, 01, 01, 14, 38, 48, 53 }, // 23

                        { 01, 01, 01, 01, 01, 01, 12, 36, 46, 51 }, // 24

                        { 01, 01, 01, 01, 01, 01, 01, 10, 34, 44 }, // 25

                        { 01, 01, 01, 01, 01, 01, 01, 08, 32, 42 }, // 26

                        { 01, 01, 01, 01, 01, 01, 01, 06, 30, 40 }, // 27

                        { 01, 01, 01, 01, 01, 01, 01, 01, 04, 28 }, // 28

                        { 01, 01, 01, 01, 01, 01, 01, 01, 02, 26 }, // 29

                        { 01, 01, 01, 01, 01, 01, 01, 01, 01, 24 }, // 30

        };

Это после

Код:

        new int[0], {

            82, 92, 97, 98, 99, 99, 99, 99, 99, 99

        }, {

            80, 90, 95, 97, 98, 99, 99, 99, 99, 99

        }, {

            78, 88, 93, 96, 98, 99, 99, 99, 99, 99

        }, {

            40, 82, 92, 96, 98, 99, 99, 99, 99, 99

        }, {

            30, 80, 90, 95, 97, 98, 99, 99, 99, 99

        }, {

            20, 78, 88, 93, 96, 98, 99, 99, 99, 99

        }, {

            14, 40, 82, 92, 96, 98, 99, 99, 99, 99

        }, {

            10, 30, 80, 90, 95, 97, 98, 99, 99, 99

        }, {

            6, 20, 78, 88, 93, 96, 98, 99, 99, 99

        },

        {

            6, 14, 40, 82, 92, 96, 98, 99, 99, 99

        }, {

            2, 10, 30, 80, 90, 95, 97, 98, 99, 99

        }, {

            2, 6, 20, 78, 88, 93, 96, 98, 99, 99

        }, {

            2, 2, 14, 40, 82, 92, 96, 98, 99, 99

        }, {

            1, 2, 10, 30, 80, 90, 95, 97, 98, 99

        }, {

            1, 2, 6, 20, 78, 88, 93, 96, 98, 99

        }, {

            1, 1, 2, 10, 30, 80, 90, 95, 97, 98

        }, {

            1, 1, 2, 6, 20, 78, 88, 93, 96, 98

        }, {

            1, 1, 2, 2, 14, 40, 82, 92, 96, 98

        }, {

            1, 1, 1, 2, 10, 30, 80, 90, 95, 97

        },

        {

            1, 1, 1, 2, 6, 14, 40, 82, 92, 96

        }, {

            1, 1, 1, 1, 2, 10, 30, 80, 90, 95

        }, {

            1, 1, 1, 1, 2, 6, 14, 40, 82, 92

        }, {

            1, 1, 1, 1, 2, 2, 10, 30, 80, 90

        }, {

            1, 1, 1, 1, 1, 2, 6, 14, 40, 82

        }, {

            1, 1, 1, 1, 1, 2, 2, 10, 30, 80

        }, {

            1, 1, 1, 1, 1, 1, 2, 6, 14, 40

        }, {

            1, 1, 1, 1, 1, 1, 2, 2, 10, 30

        }, {

            1, 1, 1, 1, 1, 1, 1, 2, 6, 14

        }, {

            1, 1, 1, 1, 1, 1, 1, 2, 2, 10

        },

        {

            1, 1, 1, 1, 1, 1, 1, 1, 2, 6

        }

    };

Есть у кого-то какие-то предположения?

dexi 17.02.2010 17:41

Re: Шанс заточки после компиляции и до
 
Цитата:

Сообщение от GoodShadow (Сообщение 55853)
Это до

Код:

        /** Шанс заточки скилов 2й профы */

        private static final int[][] _chance = { {},

        //    76  77  78  79  80  81  82  83  84  85

                        { 82, 92, 97, 97, 97, 97, 97, 97, 97, 97 }, // 1

                        { 80, 90, 95, 95, 95, 95, 95, 95, 95, 95 }, // 2

                        { 78, 88, 93, 93, 93, 93, 93, 93, 93, 93 }, // 3

                        { 52, 76, 86, 91, 91, 91, 91, 91, 91, 91 }, // 4

                        { 50, 74, 84, 89, 89, 89, 89, 89, 89, 89 }, // 5

                        { 48, 72, 82, 87, 87, 87, 87, 87, 87, 87 }, // 6

                        { 01, 46, 70, 80, 85, 85, 85, 85, 85, 85 }, // 7

                        { 01, 44, 68, 78, 83, 83, 83, 83, 83, 83 }, // 8

                        { 01, 42, 66, 76, 81, 81, 81, 81, 81, 81 }, // 9

                        { 01, 01, 40, 64, 74, 79, 79, 79, 79, 79 }, // 10

                        { 01, 01, 38, 62, 72, 77, 77, 77, 77, 77 }, // 11

                        { 01, 01, 36, 60, 70, 75, 75, 75, 75, 75 }, // 12

                        { 01, 01, 01, 34, 58, 68, 73, 73, 73, 73 }, // 13

                        { 01, 01, 01, 32, 56, 66, 71, 71, 71, 71 }, // 14

                        { 01, 01, 01, 30, 54, 64, 69, 69, 69, 69 }, // 15

                        { 01, 01, 01, 01, 28, 52, 62, 67, 67, 67 }, // 16

                        { 01, 01, 01, 01, 26, 50, 60, 65, 65, 65 }, // 17

                        { 01, 01, 01, 01, 24, 48, 58, 63, 63, 63 }, // 18

                        { 01, 01, 01, 01, 01, 22, 46, 56, 61, 61 }, // 19

                        { 01, 01, 01, 01, 01, 20, 44, 54, 59, 59 }, // 20

                        { 01, 01, 01, 01, 01, 18, 42, 52, 57, 57 }, // 21

                        { 01, 01, 01, 01, 01, 01, 16, 40, 50, 55 }, // 22

                        { 01, 01, 01, 01, 01, 01, 14, 38, 48, 53 }, // 23

                        { 01, 01, 01, 01, 01, 01, 12, 36, 46, 51 }, // 24

                        { 01, 01, 01, 01, 01, 01, 01, 10, 34, 44 }, // 25

                        { 01, 01, 01, 01, 01, 01, 01, 08, 32, 42 }, // 26

                        { 01, 01, 01, 01, 01, 01, 01, 06, 30, 40 }, // 27

                        { 01, 01, 01, 01, 01, 01, 01, 01, 04, 28 }, // 28

                        { 01, 01, 01, 01, 01, 01, 01, 01, 02, 26 }, // 29

                        { 01, 01, 01, 01, 01, 01, 01, 01, 01, 24 }, // 30

        };

Это после

Код:

        new int[0], {

            82, 92, 97, 98, 99, 99, 99, 99, 99, 99

        }, {

            80, 90, 95, 97, 98, 99, 99, 99, 99, 99

        }, {

            78, 88, 93, 96, 98, 99, 99, 99, 99, 99

        }, {

            40, 82, 92, 96, 98, 99, 99, 99, 99, 99

        }, {

            30, 80, 90, 95, 97, 98, 99, 99, 99, 99

        }, {

            20, 78, 88, 93, 96, 98, 99, 99, 99, 99

        }, {

            14, 40, 82, 92, 96, 98, 99, 99, 99, 99

        }, {

            10, 30, 80, 90, 95, 97, 98, 99, 99, 99

        }, {

            6, 20, 78, 88, 93, 96, 98, 99, 99, 99

        },

        {

            6, 14, 40, 82, 92, 96, 98, 99, 99, 99

        }, {

            2, 10, 30, 80, 90, 95, 97, 98, 99, 99

        }, {

            2, 6, 20, 78, 88, 93, 96, 98, 99, 99

        }, {

            2, 2, 14, 40, 82, 92, 96, 98, 99, 99

        }, {

            1, 2, 10, 30, 80, 90, 95, 97, 98, 99

        }, {

            1, 2, 6, 20, 78, 88, 93, 96, 98, 99

        }, {

            1, 1, 2, 10, 30, 80, 90, 95, 97, 98

        }, {

            1, 1, 2, 6, 20, 78, 88, 93, 96, 98

        }, {

            1, 1, 2, 2, 14, 40, 82, 92, 96, 98

        }, {

            1, 1, 1, 2, 10, 30, 80, 90, 95, 97

        },

        {

            1, 1, 1, 2, 6, 14, 40, 82, 92, 96

        }, {

            1, 1, 1, 1, 2, 10, 30, 80, 90, 95

        }, {

            1, 1, 1, 1, 2, 6, 14, 40, 82, 92

        }, {

            1, 1, 1, 1, 2, 2, 10, 30, 80, 90

        }, {

            1, 1, 1, 1, 1, 2, 6, 14, 40, 82

        }, {

            1, 1, 1, 1, 1, 2, 2, 10, 30, 80

        }, {

            1, 1, 1, 1, 1, 1, 2, 6, 14, 40

        }, {

            1, 1, 1, 1, 1, 1, 2, 2, 10, 30

        }, {

            1, 1, 1, 1, 1, 1, 1, 2, 6, 14

        }, {

            1, 1, 1, 1, 1, 1, 1, 2, 2, 10

        },

        {

            1, 1, 1, 1, 1, 1, 1, 1, 2, 6

        }

    };

Есть у кого-то какие-то предположения?

а какая версия компилятора? у меня вот что получилось:
Код:

    private static final int _chance[][] = {
        new int[0], {
            82, 92, 97, 97, 97, 97, 97, 97, 97, 97
        }, {
            80, 90, 95, 95, 95, 95, 95, 95, 95, 95
        }, {
            78, 88, 93, 93, 93, 93, 93, 93, 93, 93
        }, {
            52, 76, 86, 91, 91, 91, 91, 91, 91, 91
        }, {
            50, 74, 84, 89, 89, 89, 89, 89, 89, 89
        }, {
            48, 72, 82, 87, 87, 87, 87, 87, 87, 87
        }, {
            1, 46, 70, 80, 85, 85, 85, 85, 85, 85
        }, {
            1, 44, 68, 78, 83, 83, 83, 83, 83, 83
        }, {
            1, 42, 66, 76, 81, 81, 81, 81, 81, 81
        },
        {
            1, 1, 40, 64, 74, 79, 79, 79, 79, 79
        }, {
            1, 1, 38, 62, 72, 77, 77, 77, 77, 77
        }, {
            1, 1, 36, 60, 70, 75, 75, 75, 75, 75
        }, {
            1, 1, 1, 34, 58, 68, 73, 73, 73, 73
        }, {
            1, 1, 1, 32, 56, 66, 71, 71, 71, 71
        }, {
            1, 1, 1, 30, 54, 64, 69, 69, 69, 69
        }, {
            1, 1, 1, 1, 28, 52, 62, 67, 67, 67
        }, {
            1, 1, 1, 1, 26, 50, 60, 65, 65, 65
        }, {
            1, 1, 1, 1, 24, 48, 58, 63, 63, 63
        }, {
            1, 1, 1, 1, 1, 22, 46, 56, 61, 61
        },
        {
            1, 1, 1, 1, 1, 20, 44, 54, 59, 59
        }, {
            1, 1, 1, 1, 1, 18, 42, 52, 57, 57
        }, {
            1, 1, 1, 1, 1, 1, 16, 40, 50, 55
        }, {
            1, 1, 1, 1, 1, 1, 14, 38, 48, 53
        }, {
            1, 1, 1, 1, 1, 1, 12, 36, 46, 51
        }, {
            1, 1, 1, 1, 1, 1, 1, 10, 34, 44
        }, {
            1, 1, 1, 1, 1, 1, 1, 8, 32, 42
        }, {
            1, 1, 1, 1, 1, 1, 1, 6, 30, 40
        }, {
            1, 1, 1, 1, 1, 1, 1, 1, 4, 28
        }, {
            1, 1, 1, 1, 1, 1, 1, 1, 2, 26
        },
        {
            1, 1, 1, 1, 1, 1, 1, 1, 1, 24
        }
    };

но компилятор матьюкнулся на
Код:

integer number too large: 08
                        { 01, 01, 01, 01, 01, 01, 01, 08, 32, 42 }, // 26

поставил вместо 08, 8 и все нормально :)

Goodday 17.02.2010 17:45

Re: Шанс заточки после компиляции и до
 
Ну вобще шансы вроде правильные, но если нужно сделать более чёткое падение шанса при заточки, можно написать скрипт который сам составит шансы.

(Щас сделаю для интереса.)

Добавлено через 8 минут
Хотя нет, щас присмотрелся к шансам они не верные с точки логики

{ 01, 01, 01, 01, 01, 01, 01, 10, 34, 44 }, // 25

1....1% потом апнул лвл и срау 10% потом 34% потом 44% как то не пропорционально.

Добавлено через 59 минут
PHP код:

private static final int[][] _chance = { {},
89909192939495969798 }, // 1
83848586878889909192 }, // 2
80818283848586878889 }, // 3
78798081828384858687 }, // 4
75767778798081828384 }, // 5
72737475767778798081 }, // 6
69707172737475767778 }, // 7
66676869707172737475 }, // 8
63646566676869707172 }, // 9
60616263646566676869 }, // 10
57585960616263646566 }, // 11
55565758596061626364 }, // 12
52535455565758596061 }, // 13
49505152535455565758 }, // 14
46474849505152535455 }, // 15
43444546474849505152 }, // 16
40414243444546474849 }, // 17
37383940414243444546 }, // 18
34353637383940414243 }, // 19
32333435363738394041 }, // 20
29303132333435363738 }, // 21
26272829303132333435 }, // 22
23242526272829303132 }, // 23
20212223242526272829 }, // 24
17181920212223242526 }, // 25
14151617181920212223 }, // 26
11121314151617181920 }, // 27
9101112131415161718 }, // 28
6789101112131415 }, // 29
3456789101112 // 30
}; 

Это формула хороша для пвп серверов, но тут я добился большого снижения % при последующей заточки и малого % повышения при затоки на уровень выше, щас я вычислю оптимальное решение ;)

Добавлено через 1 час 23 минуты
PHP код:

private static final int[][] _chance = { {},
81838587899294969798 }, // 1
78808284868991939495 }, // 2
75777981838688909192 }, // 3
73757779818486888990 }, // 4
70727476788183858687 }, // 5
67697173757880828384 }, // 6
64666870727577798081 }, // 7
61636567697274767778 }, // 8
58606264666971737475 }, // 9
55575961636668707172 }, // 10
52545658606365676869 }, // 11
50525456586163656667 }, // 12
47495153555860626364 }, // 13
44464850525557596061 }, // 14
41434547495254565758 }, // 15
38404244464951535455 }, // 16
35373941434648505152 }, // 17
32343638404345474849 }, // 18
29313335374042444546 }, // 19
27293133353840424344 }, // 20
24262830323537394041 }, // 21
21232527293234363738 }, // 22
18202224262931333435 }, // 23
15171921232628303132 }, // 24
12141618202325272829 }, // 25
9111315172022242526 }, // 26
681012141719212223 }, // 27
46810121517192021 }, // 28
135791214161718 }, // 29
11246911131415 }, // 30
}; 

Вот такие получились шансы заточки, я считаю что они более корректные тех что выше, хотя смотрите сами.

PHP код:

private static final int[][] _chance = { {},<br/>
<?


 
For ($i=0$i<=30$i++)
 {
  
$skill_all 30;
  
$start_chance 99// стартовый шанс
  
$end_chance 10// минимальный шанс
  
$lvl_min 76// минимальный уровень
  
$lvl_max 85// максимальный уровень


  
IF(Empty($chance_1))
  {
  
$raznica = ($lvl_max $lvl_min) / ($lvl_max $lvl_min);
  }

       IF(!
$i$i=1;

  
$str = ($start_chance $end_chance) / ($skill_all 1);


  
$chance_10 $start_chance $raznica -  ($str $i);
  
$chance_9 $chance_10 $raznica;
  
$chance_8 $chance_9 $raznica ;
  
$chance_7 $chance_8 $raznica ;
  
$chance_6 $chance_7 $raznica ;
  
$chance_5 $chance_6 $raznica ;
  
$chance_4 $chance_5 $raznica ;
  
$chance_3 $chance_4 $raznica ;
  
$chance_2 $chance_3 $raznica ;
  
$chance_1 $chance_2 $raznica ;

     IF((
$chance_1-5) < 1$chance_1 6;
     IF((
$chance_2-5) < 1$chance_2 5;

  
PrintF("{ ".(Round($chance_1,0)-5).", ".(Round($chance_2,0)-4).", ".(Round($chance_3,0)-3).", ".(Round($chance_4,0)-2).", ".(Round($chance_5,0)-1).", ".(Round($chance_6,0)+1).", ".(Round($chance_7,0)+2).", ".(Round($chance_8,0)+3).", ".(Round($chance_9,0)+3).", ".(Round($chance_10,0)+3)." }, // $i<br/>\n");

 }

?>
};

А это сама формула которой вычислял.

GoodShadow 17.02.2010 23:22

Re: Шанс заточки после компиляции и до
 
dexi, ты хочешь сказать что из-за старой версии эклипса кривой шанс заточки скилов выходит? ( 01 - это уровень заточки которого нету)

http://spreadsheets.google.com/pub?k...Zg&output=html

Просто пустые значения не воспринимает!

Goodday, спасибо предпочитаю пользоваться стандартным =)


Текущее время: 01:43. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot