Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 01/13/15 in Posts

  1. BotKiller 6 BotKiller 6 is a powerfull antibot system based on Scripts, useful to detect Bots without modify your server executables nor install external libraries. Features BK6 support external modules, giving flexibility and security to your server. BK6 was integrated with a new multi-language system that support multiple languages at the same time, the users can change the default language whispering to npc:lang BK6 give you enough time to find a safe place before initiate the interrogatory, during that time the player will glow to visually alert to other players about this process. During the interrogatory, the player will see the remaining time to respond in real time. BK6 rewards player when their effectiveness is OK responding the antibot (AGI,DEX,Zeny,Exp) BK6 will try to bypass recently interrogated players and definitely will ignore chatting or vending players. The Administrators are allowed to send a manual interrogatory to anyone in any moment. The players are allowed to send a manual interrogatory to any other common player, excepting players chatting, vending or in locked places (whisp to npc:bkconfig to configure BK6 safe zones) BK6 now uses "real time" in prison, the countdown only works when the guy remains logged in the jail. When the countdown is over, the player have to respond a new interrogatory to be sure is a human. if failed, the countdown is restarted and the Bot player is kicked from the server. BK6 store logs that helps administrators to detect Bots Players and apply other sanctions. Installation: Download the script: bk6.rar (6.17) Additional Languages: Portuguese: BK6_PT.txt (by Pedro Brito) Modify "script_athena.conf" setting this values to the check_* parameters. check_cmdcount: 655360 check_gotocount: 655360 Create this folders in your server root: npc/custom/bk npc/custom/bk/lang npc/custom/bk/mods Copy this scripts in the following paths: npc/custom/bk/LangManagement.txt npc/custom/bk/VarSystem.txt npc/custom/bk/BotKiller6.txt npc/custom/bk/lang/BK6_EN.txt npc/custom/bk/lang/BK6_ES.txt npc/custom/bk/mods/BK6_Asc2Num.txt npc/custom/bk/mods/BK6_Asc2Word.txt npc/custom/bk/mods/BK6_Fakename.txt npc/custom/bk/mods/BK6_Img2Num.txt npc/custom/bk/mods/BK6_SMath.txt npc/custom/bk/mods/BK6_Lie2Me.txt npc/custom/bk/mods/BK6_WordNum.txt To use Img2Num Module, use this client patch: BK6_Img2Num.rar Edit npc/scripts_custom.conf adding the following lines: // Unlimited Variable System npc: npc/custom/bk/VarSystem.txt // Multi-Language System npc: npc/custom/bk/LangManagement.txt // Translations npc: npc/custom/bk/lang/BK6_EN.txt // English Dialogs npc: npc/custom/bk/lang/BK6_ES.txt // Spanish Dialogs // Remember to copy and declare here any additional language // BotKiller Main Script npc: npc/custom/bk/BotKiller6.txt // BotKiller Modules npc: npc/custom/bk/mods/BK6_Asc2Num.txt npc: npc/custom/bk/mods/BK6_Asc2Word.txt npc: npc/custom/bk/mods/BK6_Fakename.txt npc: npc/custom/bk/mods/BK6_Img2Num.txt npc: npc/custom/bk/mods/BK6_Lie2Me.txt npc: npc/custom/bk/mods/BK6_SMath.txt npc: npc/custom/bk/mods/BK6_WordNum.txt Run your server and whisp to npc:bkconfig to configure BotKiller 6. * Note: BotKiller 6 doesn't work on TXT based servers, please don't request it * Some Demos: Basic Demo: Modules: Lie2Me Module: Asc2Number Module: Img2Num Module: Simple Math Module: Asc2Word Module: Word Num Module: Testing GM Commands trying to ByPass BotKiller 6: History: 2011-05-01: 6.0 - New version, a friendly Police in Midgard! 2012-01-18: 6.1 - Using the new version of Unlimited Variable System! 2012-01-19: 6.11 - Fixed some problems in the jail! 2012-01-19: 6.12 - Fixed another wierd function in the jail! 2012-01-28: 6.13 - npc:bk don't show player selector when found only 1' 2012-01-28: 6.13 - removed some useless variables in functions
    1 point
  2. File Name: Elf's Aura File Submitter: EL Dragon File Submitted: 09 Jan 2015 File Category: Wings Content Author: Images by Gravity / Act by EL Dragon VOTE for the Sprite's or Post your comment in the Support Topic ---- File Info ---- This File Includes: Elf's Aura Spr and Act File [ is .TGA Sprite ] Open it with Actor BMP Item Icon BMP Collection Icon Inventory Spr and Act File ---- Rules ---- 1. Do not claim my work as yours. 2. Do not remove or alter my signatures/watermarks within the sprites and all associated files. 3. Credit me if you use my work as a base. 4. Do not edit or alter my sprites in any way without permission from me. 5. Do not distribute my sprites on any file hosting sites. Click here to download this file
    1 point
  3. Headgears only load the first layer of the frame (which is fairly annoying). There are no straightforward solutions for this, unless you don't mind remaking your act from scratch again with that into consideration. The following solution will increase your sprite file size by a lot depending on how complex your frames are. The advantage is that your work will be preserved almost perfectly. Make a backup first, just to be safe. Go in Script > Script Runner... copy paste the following code, then press Run. int count = act.GetAllFrames().Count + 1; int index = 0; TaskManager.DisplayTaskC("Rendering frames...", "Please wait...", () => index, count, new Action<Func<bool>>(isCancelling => { try { foreach (var action in act) { foreach (var frame in action) { if (frame.Layers.Count <= 1) { index++; continue; } if (isCancelling()) return; var image = frame.Render(act); var box = ActImaging.Imaging.GenerateFrameBoundingBox(act, frame); int relativeIndex = -1; for (int i = 0; i < act.Sprite.Images.Count; i++) { if (image.Equals(act.Sprite.Images[i])) { if (isCancelling()) return; relativeIndex = act.Sprite.AbsoluteToRelative(i, act.Sprite.Images[i].GrfImageType == GrfImageType.Indexed8 ? 0 : 1); } } if (relativeIndex < 0) { relativeIndex = act.Sprite.InsertAny(image); } int offsetX = (int) ((int) ((box.Max.X - box.Min.X + 1) / 2) + box.Min.X); int offsetY = (int) ((int) ((box.Max.Y - box.Min.Y + 1) / 2) + box.Min.Y); var layer = new Layer(relativeIndex, image); layer.OffsetX = offsetX; layer.OffsetY = offsetY; frame.Layers.Clear(); frame.Layers.Add(layer); index++; } } // Removes unused sprites - old way, older versions have a bug for (int i = act.Sprite.Images.Count - 1; i >= 0 ; i--) { if (act.FindUsageOf(i).Count == 0) { var type = act.Sprite.Images[i].GrfImageType; var relativeIndex = act.Sprite.AbsoluteToRelative(i, type == GrfImageType.Indexed8 ? 0 : 1); act.Sprite.Remove(relativeIndex, type); if (type == GrfImageType.Indexed8) { act.AllLayers(layer => { if ((layer.IsIndexed8() && type == GrfImageType.Indexed8) || (layer.IsBgra32() && type == GrfImageType.Bgra32)) { if (layer.SpriteIndex == relativeIndex) { layer.SpriteIndex = -1; } } }); } act.Sprite.ShiftIndexesAbove(act, type, -1, relativeIndex); } } } finally { index = count; } })); This script will merge all layers of your frames into one.
    1 point
  4. You forgot diff Enforce Official Login Backgroud
    1 point
×
×
  • Create New...