Giter Site home page Giter Site logo

openbot's Introduction

MetinPythonBot

THIS PROJECT WAS BUILT FOR EDUCATIONAL AND LEARNING PURPOSES ONLY!
This is a long term project built with C++/Python in order to explore my skills as a programmer and reverse engineer.
A Bot/Mod that adds complex functionality to the metin2 client. It needs be used with my c++ python library (eXLib.dll), it will not work without it.

Functions

  • PathFinding (Even across maps)
  • WaitDmg (Including bow)
  • Pickup (with range)
  • SearchBot
  • LevelBot (with change location)
  • FishBot
  • Farmbot
  • Skillbot
  • Radar
  • Mining bot
  • Channel Switcher
  • Cloud Exploit Damage
  • Auto-pot and auto-restart
  • Shop-creator
  • Inventory Manager
  • Teleport
  • Auto buy/sell
  • SpeedBoost
  • AntiExp

Preview

image info

Usefull documented helper modules

This are modules built to be integrated with scripts, they provide an interface to complex functionality like walking with pathfinding or creating UI ingame. All this modules are documented.

  • BotBase: Allows to create diferent bot modes while maintaining special features (For now it's only available auto shop).
  • FileManager: Allows to store/retrive information from files.
  • Movement: Provide movement and teleport functions.
  • OpenLib: Main lib containing a lot of helper functions.
  • OpenLog: Very simple module for loging informations.
  • NPCInteraction: Allows for interaction with NPC's.
  • UIComponents: Contains high level functions to draw on UI components.

Try to avoid usage of other modules not referenced here for creating aditional functionality, as other modules are more complex and more prone to error.

Aditional Remarks

In order to create a new BotMode, you shall extend the BotBase class (see example of LevelBot). FishingBot do not expand this class because it was made before the creation of BotMode class. Every module that needs to keep an Object running in the background like Movement or LevelBot is stored and executed at the end of the file, this allows to easily reload the module at runtime. The hackbar.py is responsible for importing every Module and showing the initial UI bar.

FileSystem

Main configurations files, if the files are not mentioned here, it either means they are strictly used by the core bot or they are editable from the UI.

  • Resources/Maps:: Contains the maps to be used in pathfinding. If the current map is not available in this directory it will be automatically created. You can edit the map (I recommend using Notepad++, as you can zoom out) the file contains only 0's and 1's, where the 0 represents a blocked location and the 1 represents a walkable position.

  • Saves: Unlike the Maps files, the next specific files are not automatically created and need to be updated, in case a map is not set currently.

    • map_linker.txt: Contains the links between maps, only yhe links contained in this file will be used too look for path across maps.
    • NpcMaps/map_name.npcs: Contains all npc's in that map with the following identation("race x y")

How to load it

Load eXLib.dll into process while in character select mode or while choosing the channel.

Notes

  • init.py needs to be changed in case the server changes critical modules or functions

Updates

v1.1:

  • Updated to use the latest version of eXLib
  • Added SpeedBoost (can be found under settings, general tab)
  • Changed installation method (now you are not required to add files to the game folder)
  • Now teleports reloads the environment after each teleport
  • Minor bug fixes

v2.0:

  • Add farmbot (Use this to farm metins or to mine ore)
  • Add Skillbot (Using active skills like aura or enchanted blade, is mounting and dismounting horse if needed)
  • Add Radar (List of interesting instances around with posibility to warp to them)
  • Add AntiExp (Automaticly donate exp do guild)
  • Add ChannelSwitcher (Instantly connecting to chosen channel)
  • Fix a lot of bugs, crashes are very rare now

openbot's People

Contributors

sheidaas avatar bloodiko avatar exploit-metin avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.