Перейти к публикации

tupitsa

Вассал
  • Публикации

    126
  • Зарегистрирован

  • Посещение

Все публикации пользователя tupitsa

  1. tupitsa

    Всем удачи.

    очередной бомж ушёл какая жалость
  2. tupitsa

    Споил офф пати

    нет это задача не модератора задача модеров выпиливать даунов, которые пишут фиолетовым шрифтов и тд
  3. может теперь работы уйдут на облегчение вставки лсов?
  4. tupitsa

    Крафт

    по-моему закисшие мозги как раз у тебя, раз не понимаешь смысл крафта
  5. я на неё не смотрю
  6. tupitsa

    Крафт

    не всё, не надо тут ля-ля
  7. tupitsa

    Крафт

    а у меня меньше процента вышло) та там и не пахнет 3,9%, как сказано это точка номер два
  8. раньше было норм, когда цены были человеческими на том же первом х50) а здесь...)
  9. мне нравится, как многие считают рулетку выводом адены дай бог, чтобы она хоть 10% этой адены вывела кто в неё играет? единицы
  10. tupitsa

    Услуги крафта!

    это единственное, чего он достиг на сервере
  11. tupitsa

    Услуги крафта!

    и что ты хочешь этим сказать? ну повезло, бывает сегодня (вернее уже вчера) крафтил 250 шмоток и только две рар такие, как ты, забирают мою удачу
  12. tupitsa

    Шанс точки Армор

    после чего на него давят RIPEMD-160. и лишь затем мы получаем рзультат вида(ура заточилось и б"ять сломалась) Возникает вопрос а откуда берётся seed? А Зернышко друзья мои берётся из Алгоритма Mersenne Twister [spoiler=сам код] package net.sf.l2j.util; import java.util.Random; public class MTRandom extends Random { private static final long serialVersionUID = -515082678588212038L; private final static int UPPER_MASK = 0x80000000; private final static int LOWER_MASK = 0x7fffffff; private final static int N = 624; private final static int M = 397; private final static int MAGIC[] = { 0x0, 0x9908b0df }; private final static int MAGIC_FACTOR1 = 1812433253; private final static int MAGIC_FACTOR2 = 1664525; private final static int MAGIC_FACTOR3 = 1566083941; private final static int MAGIC_MASK1 = 0x9d2c5680; private final static int MAGIC_MASK2 = 0xefc60000; private final static int MAGIC_SEED = 19650218; private final static long DEFAULT_SEED = 5489L; private transient int[] mt; private transient int mti; private transient boolean compat = false; // Temporary buffer used during setSeed(long) private transient int[] ibuf; public MTRandom() { } public MTRandom(boolean compatible) { super(0L); compat = compatible; setSeed(compat?DEFAULT_SEED:System.currentTimeMillis()); } public MTRandom(long seed) { super(seed); } public MTRandom(byte[] buf) { super(0L); setSeed(buf); } public MTRandom(int[] buf) { super(0L); setSeed(buf); } private final void setSeed(int seed) { if (mt == null) mt = new int[N]; // ---- Begin Mersenne Twister Algorithm ---- mt[0] = seed; for (mti = 1; mti < N; mti++) { mt[mti] = (MAGIC_FACTOR1 * (mt[mti-1] ^ (mt[mti-1] >>> 30)) + mti); } // ---- End Mersenne Twister Algorithm ---- } @Override public final synchronized void setSeed(long seed) { if (compat) { setSeed((int)seed); } else { if (ibuf == null) ibuf = new int[2]; ibuf[0] = (int)seed; ibuf[1] = (int)(seed >>> 32); setSeed(ibuf); } } public final void setSeed(byte[] buf) { setSeed(pack(buf)); } public final synchronized void setSeed(int[] buf) { int length = buf.length; if (length == 0) throw new IllegalArgumentException("Seed buffer may not be empty"); // ---- Begin Mersenne Twister Algorithm ---- int i = 1, j = 0, k = (N > length ? N : length); setSeed(MAGIC_SEED); for (; k > 0; k--) { mt = (mt ^ ((mt[i-1] ^ (mt[i-1] >>> 30)) * MAGIC_FACTOR2)) + buf[j] + j; i++; j++; if (i >= N) { mt[0] = mt[N-1]; i = 1; } if (j >= length) j = 0; } for (k = N-1; k > 0; k--) { mt = (mt ^ ((mt[i-1] ^ (mt[i-1] >>> 30)) * MAGIC_FACTOR3)) - i; i++; if (i >= N) { mt[0] = mt[N-1]; i = 1; } } mt[0] = UPPER_MASK; // MSB is 1; assuring non-zero initial array // ---- End Mersenne Twister Algorithm ---- } @Override protected final synchronized int next(int bits) { // ---- Begin Mersenne Twister Algorithm ---- int y, kk; if (mti >= N) { // generate N words at one time for (kk = 0; kk < N-M; kk++) { y = (mt[kk] & UPPER_MASK) | (mt[kk+1] & LOWER_MASK); mt[kk] = mt[kk+M] ^ (y >>> 1) ^ MAGIC[y & 0x1]; } for (;kk < N-1; kk++) { y = (mt[kk] & UPPER_MASK) | (mt[kk+1] & LOWER_MASK); mt[kk] = mt[kk+(M-N)] ^ (y >>> 1) ^ MAGIC[y & 0x1]; } y = (mt[N-1] & UPPER_MASK) | (mt[0] & LOWER_MASK); mt[N-1] = mt[M-1] ^ (y >>> 1) ^ MAGIC[y & 0x1]; mti = 0; } y = mt[mti++]; // Tempering y ^= (y >>> 11); y ^= (y << 7) & MAGIC_MASK1; y ^= (y << 15) & MAGIC_MASK2; y ^= (y >>> 18); // ---- End Mersenne Twister Algorithm ---- return (y >>> (32-bits)); } public static int[] pack(byte[] buf) { int k, blen = buf.length, ilen = ((buf.length+3) >>> 2); int[] ibuf = new int[ilen]; for (int n = 0; n < ilen; n++) { int m = (n+1) << 2; if (m > blen) m = blen; for (k = buf[--m]&0xff; (m & 0x3) != 0; k = (k << 8) | buf[--m]&0xff); ibuf[n] = k; } return ibuf; } } после чего состовляется в виртуальной памяти список + и - так сказать к которому во время заточки обращается сервер. Процент лишь влияет на количество в этом "списке" "минусов" а точнее говоря 0. Какой можно сделать из этого вывод? Просчитать "рандом" по такому алгоритму теоретичиески можно но очень трудоёмко, на практике практически невозможно да и проще узнать у администратора сервера рейты заточек. Например если шанс 75 и макс уровень 50 то заточив 100 вещей вы гарантировано заточите 2 - 3 до 50 уровня .Но это в тепличных условиях, без учёта времени и других игроков которые тоже используют данный "список". Надеюсь этой статьёй я развею легенды и мифы про просчёт последовательности фейк заточки и прочие танцы с бубном. ты хоть сам читал, что нашёл? смысла ноль а на них и нету смысла ссылаться тут свой "офф"
  13. tupitsa

    Парные кинжалы черепа +16

    хз, вечно как не приду, так ты пол обнимаешь
  14. tupitsa

    Споил х70

    лайт сэт и дагера с атт желательно эвагу разогнать по максимум
  15. всё нельзя изменить
  16. tupitsa

    Аукцион с 1 января

    любой сможет поставить 99,999,999,999 даже гришка со второго этажа в дино сэте
  17. tupitsa

    Тир - вопрос?!

    первый билд нельзя на оли юзать)
  18. tupitsa

    Тир - вопрос?!

    нельзя бегать в одном тяже так же, как и в лайте одном нужно два сэта, вот и всё а билд - лимитчик с тату - кон
  19. tupitsa

    Дайте инфу

    кэп намекает, что спрос превысил предложение и цены выросли
  20. tupitsa

    Тир - вопрос?!

    я же сказал, что против некоторых физов лучше тяж (против глада уж точно лучше тяж, а если от берса не убежать, то и в тяже не выживешь) а так лайт из-за бега и к чему эти придирки? нужно два сэта минимум (в поле и лайта хватит)
  21. tupitsa

    Тир - вопрос?!

    эллегия лучший вариант) хотя там вроде и так крита хватает если денег хватает - купи сэты, посмотри разницу тяжи в принципе бред, разве что против физов на оли некоторых
  22. tupitsa

    Тир - вопрос?!

    в пвп лайта будет достаточно если конечно это не тир идиот в хэви со скиллами
×
×
  • Создать...