Diễn Đàn Game - Forum Game Private | GamePrivate.Biz

Xin Chào

Diễn Đàn Game - Forum Game Private | GamePrivate.Biz

Xin Chào

    Hướng Dẫn Cường hóa 1 lần lên +16

      Official Member
      phongbang2

      Tổng số bài gửi : 93

      Giới tính : Male

      Gold : 218

      Cảm Ơn : 51

      Ngày Tham Gia : 2013-11-08

      Post by phongbang2 16/11/13, 01:28 pm

      * Các bạn mở file: gameserver\script\item\function\enhance.lua


      tìm đoạn:

      Code:
      local nRet = pEquip.Regenerate(
            pEquip.nGenre,
            pEquip.nDetail,
            pEquip.nParticular,
            pEquip.nLevel,
            pEquip.nSeries,
            pEquip.nEnhTimes + 1,
            pEquip.nLucky,
            pEquip.GetGenInfo(),
            0,
            pEquip.dwRandSeed,
            0
         );
      sửa lại thành:

      Code:
      local nRet = pEquip.Regenerate(
            pEquip.nGenre,
            pEquip.nDetail,
            pEquip.nParticular,
            pEquip.nLevel,
            pEquip.nSeries,
            16,
            pEquip.nLucky,
            pEquip.GetGenInfo(),
            0,
            pEquip.dwRandSeed,
            0
         );
      RELOAD SCRIPT là xong
      -> Chỉ cần 1 viên HT bất kỳ, ép thành công sẽ lên +16, xịt không tính


      * Ưu điểm:
      lên thẳng +16, tiện cho việc test đồ


      * Nhược điểm:
      mọi trang bị có thể cường hóa đều lên +16
      ví dụ: trang bị cấp 1 chỉ có max CH = 4 cũng lên 16  (đã test)


      * Khắc phục nhược điểm này, ta sẽ cho cường hóa 1 lần lên luôn max cấp CH có thể có của trang bị, cách làm như sau:
      Thêm vào hàm sau:

      Code:
      local nEnhanceMax = Item:CalcMaxEnhanceTimes(pEquip);
      nằm trong hàm:

      Code:
      function Item:Enhance(pEquip, tbEnhItem, nMoneyType, nParam)
      sau đó sửa lại code đã chỉnh ở trên thành:

      local nRet = pEquip.Regenerate(
      pEquip.nGenre,
      pEquip.nDetail,
      pEquip.nParticular,
      pEquip.nLevel,
      pEquip.nSeries,
      nEnhanceMax,
      pEquip.nLucky,
      pEquip.GetGenInfo(),
      0,
      pEquip.dwRandSeed,
      0
      );

      * Dựa vào cách chỉnh sửa này ta có thể cho cường hóa 1 lần lên 2, 4 ... cấp bằng cách sửa pEquip.nEnhTimes + 1 thành pEquip.nEnhTimes + 2, pEquip.nEnhTimes + 4 ... miễn là các số này là ước của 16 (16 chia hết cho nó). Giả sử là 3 thì sẽ CH theo thứ tự này: 0 - 3 - ... - 15 - 18