Advertisement
Inquisitor

Automatic SevenSigns registration for L2J

Feb 5th, 2018
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 2.29 KB | None | 0 0
  1. @Echo Off
  2. SetLocal EnableDelayedExpansion
  3.  
  4. ::===Settings=======
  5. Set $MySQL=E:\gameservers\env\mysql\bin
  6. Set $Host=localhost
  7. Set $Database=emurt_gracia_epilogue
  8. Set $Username=root
  9. Set $Pass=p455W0rd
  10.  
  11. Set $CharID_RegForDusk=268493803
  12. ::==================
  13.  
  14. :: Добавляем бинарники в path
  15. Set Path=%$MySQL%;%Path%
  16. :: и создаём команду для быстрого обращения
  17. Set MySQL=mysql -u%$Username% -p%$Pass% -h%$Host% %$Database% --skip-column-names
  18.  
  19. :: Пишем массив со всеми игроками кроме выбранного к реге за Dusk
  20. Echo Retrieving character info from DB
  21. Set Characters=0
  22. Set "$RegForDawn[]="
  23. For /F "delims= tokens=*" %%A In ('^
  24.     Echo SELECT obj_id FROM characters^|^
  25.     %MySQL%^|^
  26.     Find /V "%$CharID_RegForDusk%"^
  27. ') Do (
  28.     Set /A Characters+=1
  29.     Set "$RegForDawn[]=!$RegForDawn[]! %%A"
  30. )
  31.  
  32. :: Очищаем таблицу
  33. Echo TRUNCATE seven_signs|%MySQL%
  34.  
  35. :: Вносим данные по каждому из игроков (не донатя камни, игрок сделает это самостоятельно!)
  36. Set n=0
  37. Set i=0
  38. For %%A In (%$RegForDawn[]%) Do (
  39.     If !n!==3 Set n=0
  40.     Set /A n+=1
  41.     Echo INSERT INTO `seven_signs` ^(^
  42.         `char_obj_id`,^
  43.         `cabal`,^
  44.         `seal`,^
  45.         `dawn_red_stones`,^
  46.         `dawn_green_stones`,^
  47.         `dawn_blue_stones`,^
  48.         `dawn_ancient_adena_amount`,^
  49.         `dawn_contribution_score`,^
  50.         `dusk_red_stones`,^
  51.         `dusk_green_stones`,^
  52.         `dusk_blue_stones`,^
  53.         `dusk_ancient_adena_amount`,^
  54.         `dusk_contribution_score`^
  55.     ^)^
  56.     VALUES ^(%%A, 'dawn', !n!, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0^);|%MySQL%
  57.     Set /A i+=1
  58.     Echo Processing !i! from %Characters% records...
  59. )
  60.  
  61. :: Регистрируем игрока за Dusk с фиксированной суммой камней, которую легко перебить
  62. Echo INSERT INTO `seven_signs` ^(^
  63.     `char_obj_id`,^
  64.     `cabal`,^
  65.     `seal`,^
  66.     `dawn_red_stones`,^
  67.     `dawn_green_stones`,^
  68.     `dawn_blue_stones`,^
  69.     `dawn_ancient_adena_amount`,^
  70.     `dawn_contribution_score`,^
  71.     `dusk_red_stones`,^
  72.     `dusk_green_stones`,^
  73.     `dusk_blue_stones`,^
  74.     `dusk_ancient_adena_amount`,^
  75.     `dusk_contribution_score`^
  76. ^)^
  77. VALUES ^(%$CharID_RegForDusk%, 'dusk', 3, 0, 0, 0, 0, 0, 0, 0, 100000, 300000, 300000^);|%MySQL%
  78. Echo All done.
  79. Pause&Exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement