Giter Site home page Giter Site logo

codesprut / warcraft-fishman Goto Github PK

View Code? Open in Web Editor NEW

This project forked from riketta/warcraft-fishman

0.0 0.0 0.0 175 KB

World of Warcraft fishing bot without injections and other suspicious methods

License: GNU General Public License v3.0

C# 100.00%

warcraft-fishman's Introduction

Warcraft Fishman

Description

Simple fishing bot that emulates user input via keyboard and mouse. No injection or other dangerous detectable moves.
It works well and have pretty high accuracy. Uses presets to manage different actions.

Recomendations

  • Game should be launched in windowed fullscreen mode
  • Use first person view camera
  • Also absence of other selectable objects (NPCs, for example) in background would be good, but not necessary
  • Use default GCD = 1500 for each action in your presets (except fishing action, it has 300 ms GCD)
  • Use "Oversized Bobber" if you fishing pools, but default bobber have a bit higher accuracy in water without pools
  • Bobber should stay in front of pool on its border (closer to you), because little fishes have higher priority for cursor targeting and bot can't detect bobbers positioning.
  • Water horizont (absolute, like in ocean) should be around 20-25% from top
  • Stay on water level (in ideal - stay on water)
  • Use symmetric bobber toy
  • Have SpellQueueWindow 100 or higher (check it with "/dump GetCVar("SpellQueueWindow")" and set with "/console SpellQueueWindow 200")
  • Have at least 50 FPS

Presets

Preset configuration:

  • Name: feel free to use anything, but take into account that this name used as filename when bot saves config. So don't use special characters such as: ", <, >, |, :, *, ?, , /

Action configuration:

Event types:

  • None: actions with such type will be ignored. Don't use it in real presets
  • Fish: fishing action as it is. Should be only one action of this type per preset
  • Once: called once before first fishing iteration. Usage examples: equip rod, open bag, zoom-in camera
  • PreFish: called once before each fishing iterations. Usage examples:
  • PostFish: called after each successful fishing iteration. Usage examples: throw fish with macro (/cast Oodelfjisk)
  • Interval: called once in Interval (check this field). First call works same as PreFish. Usage examples: update lures, update Oversized Bobber, etc

Fields:

  • Description: just name or description of action
  • Key: any key from https://www.pinvoke.net/default.aspx/Enums.VirtualKeys in string representation. For example: N1, N2, Q, E, F3, Numpad1
  • Trigger: one of events described earlier
  • GCD: global spell cooldown in milliseconds. Default 1500. Recommended to use default value. Default value for Fish event 300
  • CastTime: spell cast time in milliseconds. 0 means instant. Be careful: some spells have GCD after cast, so you have to add this values into CastTime (look how Oversized Bobber works in this way)
  • Interval: inverval in seconds between action calls. Used only with Interval event type.

Example (Data\Main.json)

{
  "Name": "Main",
  "Actions": [
    {
      "Description": "Fishing",
      "Key": "N1",
      "Trigger": "Fish",
      "GCD": 300,
      "CastTime": 22000,
      "Interval": 0
    },
    {
      "Description": "Oversized Bobber",
      "Key": "N2",
      "Trigger": "Interval",
      "CastTime": 3000,
      "Interval": 1800
    },
	{
      "Description": "Arcane Lure",
      "Key": "N3",
      "Trigger": "Interval",
      "Interval": 600
    },
	{
      "Description": "Ancient Vrykul Ring",
      "Key": "N4",
      "Trigger": "Interval",
      "Interval": 1800
    },
	{
      "Description": "Throw Oodelfjisk",
      "Key": "N5",
      "Trigger": "PostFish",
    }
  ]
}

TODO:

  • External config
  • Option to swap LMB and RMB

Dump mode (--dump)

Saves icons once per second.
Capture by yourself fishing icon (fishhook) and default icon (hand), and save it as fishhook.bmp and default.bmp.

Command-line interface

  • -s, --save: saves default preset into file that can be used as preset reference.
  • -p, --preset: path to selected preset. Example: --preset margoss.json
  • -d, --dump: runs in dump mode. Use it alone.
  • --help: display help screen.
  • --version: display version information.

Useful marco

Remove all gray items

/run for bag = 0, 4 do for slot = 1, GetContainerNumSlots(bag) do local name = GetContainerItemLink(bag,slot) if name and string.find(name,"ff9d9d9d") then PickupContainerItem(bag,slot) DeleteCursorItem() end end end

Throw all Legion rare fish

/use item:139661
/use item:139668
/use item:139654
/use item:139667
/use item:139663
/use item:139662
/use item:139666
/use item:139653
/use item:139669
/use item:139660
/use item:139656
/use item:139655
/use item:139659
/use item:139652
/use item:139664

Use Suramar lures

/cast item:133720
/cast item:133717

Author

Developed by Riketta ([email protected] / github.com/riketta).
Based on https://github.com/trenus/Bots.WoW.Fishing by Trenus.
The original project was rewritten from scratch and has only a few original functions.

warcraft-fishman's People

Contributors

riketta 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.