Tool fold tự động nhỏ gọn như Overdozic

Thảo luận trong 'FAH Technical Related' bắt đầu bởi heomongto, 22/2/06.

  1. heomongto

    heomongto New Member

    Bài viết:
    219
    Giới thiệu:
    Nhận thấy Overdozic có một vài khuyết điểm nên Heo tui quyết định cải tiến, viết lại = php, có tham khảo 90% module getsola của Overdozic.
    Khuyết điểm của Overdozic
    • Không chặn được tình trạng câu đạn trùng.
    • Không sử dụng đựơc trên máy windows mà account logon của window có chứa khoảng trắng.
    • Không chặn được tình trạng fold lỗi nên có thể làm teo kho đạn :sorry:
    • ...
    Ngoài việc khắc phục những khuyết điểm trên của overdozic, FKFAH còn có những tính năng sau đây:
    • Hỗ trợ dùng winrar nên nén con socola câu được ở mức nhỏ nhất có thể, thường thì 5MB.
    • Gọn nhẹ, sử dụng script php và các lệnh MSDOS của windows
    • Dễ tùy biến bằng cách điều chỉnh các tham số trong file config.
    • Không sử dụng các shell đặc trưng của .NIX nên cũng dễ chuyển đối nếu dùng trên Linux hay windows...
    Download ở đây:

    http://www.procsvn.com/FKFAH.rar [~ 5.4 MB] kèm hướng dẫn bằng file avi

    Download riêng hướng dẫn: http://www.procsvn.com/FKFAH-Manual.rar <== 1.6 MB file avi :leuleu:


    Nếu chỉ cần update lên version mới:
    http://www.procsvn.com/FKFAH_update.rar
    Unrar chép đè, đỡ mất công chỉnh sữa hay config lại, chỉ việc chép đè....


    Cách sử dụng:
    Sau khi download về unzip ra một chỗ nào đó thay cho việc cài đặt. Nêu unzip ra một thư mục mà đường dẫn đầy đủ ko có khoảng trắng ở giữa.
    C:\WINDOWS Good :hoanho:
    C:\Program Files\ Not good :godau:


    Sau khi giải nén xong, trong thư mục giải nén sẽ có 1 file setup của PHP là
    php-4.3.10-installer.exe, hãy install nó trước và nên chọn thư mục cài đặt cũng không có khoảng trắng, ví dụ C:\WINDOWS\PHP

    Sau khi cài đặt PHP xong, cần phải add cái path của php.exe để có thể sử dụng lệnh php.exe mà ko cần đánh đầy đủ đường dẫn chứa nó, cách làm như sau: Ví dụ như vửa rồi cài PHP vào C:\WINDOWS\PHP, hãy right-click lên My Computer, chọn Property, click vào Advanced sau đó click vào Enviroment Variable, chọn Path như trong hình và thêm vào cuối cùng đoạn text tương ứng, ở trường hợp này là ;C:\WINDOWS\PHP
    [​IMG]


    Bây giờ đến phần config cho cái tool, các bước sử dụng hoàn toàn giống như Overdozic.

    file:
    @config.bat : Để tùy biến tool fold tự động cho thích hợp nhất với máy bạn
    fold.bat : Dùng để fold, click vào file này để bắt đầu folding
    getsocola.bat: Dùng để câu socola, hoạt động khá tốt, ko câu trùng do so sánh với log các socola đã câu trước đó, lưu socola vào thư mục socola.
    GetWU.log : File log trong quá trình câu socola.
    sendsocola.bat: Dùng để gửi socola đi trong trường hợp tool ko tự động gửi được, nguyên tắc giống overdozic.
    setupfold.bat : Chỉnh các thông tin team, userid để fold cho team bạn
    stopfold.bat : tắt các FAHConsole.exe đang folding.
    ztest.bat : dùng đết test chương trình, không quan trọng.

    Trước hết bạn hãy double click vào cái setupfold.bat để điều chỉnh lại UserName của team bạn. Các bước khác có thể enter để cho qua.

    Sau đó click vào file @config.bat để tuỳ biến tool FKFAH.
    Giải thích các dòng trong file config.php mà @config.bat mở lên:


    Các đường dẫn tốt nhất ko nên dùng đường dẫn có chứa khoảng trắng.
    Các dấu \ thì phải viết là \\, nên 2 dấu \\ thì thành \\\\
    Các giá trị thời gian được tính bằng giây.


    define("_DEBUG_", 0);
    Để thành 1 nếu muốn sửa đổi code và debug tools.....

    define("_ROOT_", "E:\\FKFAH");
    Dòng này bắt buộc phải chỉnh thành đường dẫn ứng với thư mục mà bạn giải nén FKFAH.rar




    define("_RAR_","\"C:\\Program Files\\WinRAR\\WinRAR.exe\"");
    Đường dẫn chương trình winrar của bạn, chỉ quan trọng khi ở dưới bạn chọn USE_RAR là 1
    Nếu vì một lý do nào đó mà nó báo lỗi ko tìm thấy link winrar.exe thì các bạn add cái path cài đặt winrar vào biến môi trường PATH giống add cái PHP ở trên.
    VÍ dụ cài winrar vào C:\Program Files\WinRAR thì add vào cuối cùng của cái biến môi trường PATH


    ;'C:\Program Files\WinRAR"

    Phải có dấu " ở hai đầu vì đường dẫn này có chứa khoảng trắng ở giữa chữ Programs và Files. Khi đó sửa cái
    define("_RAR_","\"C:\\Program Files\\WinRAR\\WinRAR.exe\"");
    thành
    define("_RAR_","Winrar.exe");


    _CLIENT_NAME_ : Tên của máy client lấy đạn từ kho, nên edit lại lúc setupfold thành tên computer hoặc ip





    define("_FLAGS_","-advmethods -local -oneunit -forceasm");
    define("_WORK_", _ROOT_."\\home\\getsocola");
    define("_FOLDDIR_", _ROOT_."\\home\\fold");
    define("_FOLDDIR2_", _ROOT_."\\home\\fold2");
    define("_SENDDIR_", _ROOT_."\\home\\sendsocola");
    5 dòng này để mặc định



    define("_SOCOLA_", _ROOT_."\\Socola");
    Nơi chứa kho đạn có thể chỉnh thành 1 chỗ đối với nhiều máy để dùng chung 1 kho đạn
    Ví dụ:
    define("_SOCOLA_", "\\\\10.0.0.1\\Upload\\Heomongto\\FAH\\Socola");

    _STOCKLOGFILE_ : File log tạo ra khi có máy client lấy đạn từ kho, mặc định là file GiveWU.log. nên để mặc định.

    define("_BIN_", _ROOT_."\\bin");
    define("_LOGFILE_", _ROOT_."\\GetWU.log");
    define("_FOLDLOGFILE_", _ROOT_."\\FoldWU.log");
    3 dòng này để mặc định


    define("_CHECK_SOCOLA_IN_STOCK", 1);
    Nếu set là 1 thì nó sẽ kiểm tra trong kho xem có con socola nào trùng với con socola đang download về ko, nếu có con socola mới sẽ không được save vào kho. Nếu set là 0 thì nó chỉ kiểm tra trong file log. Mỗi khi save socola về chương trình đều ghi lại để kiểm tra sau này.


    define("_FOLD_2_CPU_", 1);
    Nếu muốn fold 2 cpu thì bạn để là 1, ko thì đổi thành 0.


    define("_NUM_WU_A_SESSION_", 6);
    Số lượng WU mà 1 máy được cài tool này được phép fold trong 1 lần chạy file fold.bat do đó nếu có xảy ra trường hợp fold hư cùng lắm nó xóa 6 con socola Muahahaha chứ ko xóa hết.



    define("_USE_RAR_", 1);
    Nếu bạn có cài winrar thì chỉnh thành 1 và chỉnh đường dẫn ở trên cho đúng.

    define("_CHECKPOINT_", 50);
    Khoảng thời gian mà tool câu sôcola sẽ kiểm tra xem câu xong 1 WU chưa, nên để mặc định.

    define("_FOLD_CHECK_", 30);
    Khoảng thời gian mà tool fold sôcola sẽ kiểm tra xem câu fold xong 1 WU chưa, nên để mặc định.

    define("_DELAY_", 20);
    Khoảng thời gian dừng khi nén hoặc giải nén các file WU.


    define("_SHUTDOWN_", 60);
    Khoảng thời gian idle trước khi shutdown tool khi đã fold xong hoặc câu đạn xong.

    define("_WUDOWNLOAD_", 8);
    Số lượng WU sẽ download khi chạy gesocola.bat 1 lần.


    define("_MAX_TIME_FOR_1_UNIT_", 360);
    Thời lượng cho phép để câu 1 socola, nếu quá 360s thì sẽ câu lại nếu chưa câu xong hoặc câu bị lỗi...

    define("_TIME_BEFORE_SAVE_WORKUNIT_", 15);
    Khoảng thời gian chờ trước khi nén con socola vừa câu được cất vào kho, nên để mặc định.

    define("_LOG_DETAILS_", 1); // 1,2,3
    Có 3 cấp độ ghi file log, là 1 2 3 số càng cao thì log càng chi tiết. Nên để mặc định là 1.

    Bây giờ restart lại máy là có thể sử dụng, phiên bản hiện nay KHỐNG CẦN PHẢI để 1 con socola làm mồi như overdozic, sau khi fold xong con socola mồi nó sẽ tự fold con khác từ kho đạn.

    :vgt:
    • Có thể fold, câu đạn, ... bằng tay bằng cách double click vào các file bat.
    • Nếu muốn câu đạn, fold tự động thì sử dụng Sheduler task của window là hay nhất, cách sử dụng tham khảo bài của anh Overdoze, tuy nhiên cần chỉnh lại file fold.bat và file getsocola.bat, thêm vào các dòng lệnh chuyển thư mục đến thư mục cài đặt tool FKFAH sau lệnh @echo off, ví dụ:
    • Để chỉ câu đạnh theo ý muốn chặn những server ghẻ phải cài thêm ZoneAlarm cho windows và theo các bước ở đây:http://www.amtech-vn.com/showthread.php?t=12117
    • Đặc biệt nếu máy có cài sẵn IIS thì có thể tạo virtual directory để thực thi các lệnh fold, sendsocola, getsocola từ xa thông qua web.
    • Vì một lý do nào đó mà khi fold xong 1 WU nó lấy WU từ kho ra, tool sẽ tự đổi tên của WU đó thành Using-14xx_.._.._.. , sau khi giải nén thỉnh thoảng ko xóa được con này nên nếu thấy mấy WU trong kho mà có chữ Using-.... thì xóa đi :D
    :coimo:




    History
    - 21/02/2006 : fixed conflict, đã sửa machineid trong file client.cfg ở thư mục home\getsocola thành 6 thay vì 8 vì sẽ conflict với các machineid trong fold và fold2 )
    - 22/02/2006 : fix file getsocola.php bị lỗi khi ko vào được server socola.
    fix bug nhỏ khi kill process câu đạn 2 lần liên tiếp.
    - 23/02/2006 : thêm phần ghi log cho fold.php, thêm 1 key vào file config.php
    - 24/02/2006 : thêm key _DEBUG_ dùng để debug tool trong file config.php
    fix một vài trường hợp lỗi khi kiểm tra kết thúc fold.
    fix nhiều hàm bị lỗi khi kiểm tra tồn tại file......
    thêm file test.php dùng để test ( không quan trọng)
    thêm chức năng kiểm tra xem trong kho có đạn trùng chưa nếu không có mới cho save WU câu được.
    - 25/02/2006 : sữa lỗi ghi file log ko xuống hàng nên ko xem bằng notepad, bây giở có thể xem file log bằng notepad.
    - 26/02/2006 : sữa lỗi chỉ giải nén bằng winrar khi chọn _USE_RAR_ là 1 dù đạn trong kho là file .zip.
    sữa lỗi nghiêm trọng define("_CHECK_SOCOLA_IN_STOCK", 1) trong file config.php thành
    define("_CHECK_SOCOLA_IN_STOCK_", 1), lỗi này làm không save WU được, hix cái này do tui ẩu :D
    - 27/02/2006 : sữa lỗi do xóa các file fold cũ sau khi fold xong thất bạn nên ko copy WU từ kho ra fold được....
    - 01/03/2006 : fix lỗi exit luôn khi vừa fold xong 1 con WU, lỗi do lúc test tạo ra mà quên xóa :D, file updated : function/utils.php
    - 06/03/2006 : update file getsocola.php, fix lỗi ko save WU khi bật _CHECK_SOCOLA_IN_STOCK lên 1, đã hoạt động tốt.
    - 16/03/2006 : thay đổi cách kill process, không dùng pskill.exe và thay bằng pv.exe. Thêm chức năng ghi log lại trong kho đạn khi có máy lấy đạn từ kho, thêm vào 2 key :
    _CLIENT_NAME_ : Tên của máy client lấy đạn từ kho, nên edit lại lúc setupfold thành tên computer hoặc ip
    _STOCKLOGFILE_ : File log tạo ra khi có máy client lấy đạn từ kho, mặc định là file GiveWU.log. nên để mặc định.
    - 19/03/2006 : Đổi thời gian chở trước khi save Socola câu đựơc mặc định trong file config.php thành 30s define("_TIME_BEFORE_SAVE_WORKUNIT_", 30);
    Thêm lệnh kill process FahCore_78.exe khi stopfold.
    Fix 1 lỗi khi copy WU từ kho ra (trong file utils.php).
    - 02/04/2006 : Fix lỗi stop fold 1 unit cuối cùng đang được fold khi kho hết đạn.:sun:
    - 06/04/2006 : Fix lỗi save unsent WU. Khi WU được fold xong mà ko gửi kết quả đi được nó sẽ tự sẽ tự được nén lại trong thư mục fold. Ví dụ : Unsent-2094_132_22_0.rar
    - 11/04/2006 : Fix lỗi kiểm tra WU fold xong khi không sent result đi được.
    Fix lỗi trong tool sendsocola.:xicawe:
     
    :
  2. Manh Tinh Hon

    Manh Tinh Hon TỨ MÃ NAN TRUY

    Bài viết:
    626
    Nơi ở:
    Lưu Tinh Hồ Điệp Kiếm
    cám ơn mày nhiều lắm HEO ơi
    ra ngoài CHAT chỉ tao với nhé:degai:
     
  3. dragonhunter

    dragonhunter Hunting For The Cure

    Bài viết:
    2,455
    Tui move cái good thread nầy qua F@H Tech ghe cha Heo
     
  4. overdoze

    overdoze take a rest

    Bài viết:
    412
    Nơi ở:
    Sàigòn
    ở đâu lòi ra cha heo này giỏi quá ta... VGT như hổ mọc thêm cánh rùi hehehe

    Doze vẫn kô rành windows mấy nên fải port soft từ linux qua windows nên nó chạy kô được smooth. Nay có chương trình này native windows thì hay quá .... :D

    À níu heo viết được fold cho 2 client cùng lúc thì hay lắm đó ... Có thể dùng cho dualcore.
     
  5. VGT

    VGT take a rest

    Bài viết:
    1,080
    Nơi ở:
    HCMC
    Thì cái này cho fold 2 WU cùng lúc mà anh doze :gaicam:
    Một điều hay để đối phó với Stanford :D Cái tool này có 1 cái history lưu tất cả đạn đã câu, khi câu được 1 WU mới nó sẽ so sánh run-clone-gen trong cái history: nếu ko có trùng run clne gen thì để lại xài, còn có thì sẽ delete :somot:

    Một lần nữa: Good job, Heo! FK tự hào vì có Heo :D
     
  6. heomongto

    heomongto New Member

    Bài viết:
    219
    Bug là 1 điều ko thể tránh khỏi, mọi người test giùm đặc biệt khâu fold xong 1 con và lấy đạn từ kho ra fold tiếp....
     
  7. Knight M@

    Knight M@ Guest

    Heo niềm tự hào của FK ..............................Cố lên heo siu n*.c ( nạc chớ hông phải n....... nha :D )
     
  8. VGT

    VGT take a rest

    Bài viết:
    1,080
    Nơi ở:
    HCMC
    Thay vì spam mấy cha làm ơn tải về test phụ cha Heo.
     
  9. Knight M@

    Knight M@ Guest

    tải rùi ông nội :laloi::godau: :lacdau: .......................................................................
    hẹn mai thông báo kết quả ;)
     
  10. dragonhunter

    dragonhunter Hunting For The Cure

    Bài viết:
    2,455
    Thưởng sticky luôn :vgt: good job my friend!!!:votay:
     

Chia sẻ trang này