Register for your free account! | Forgot your password?

Go Back   elitepvpers > New Arrivals > Black Desert
You last visited: Today at 21:37

  • Please register to post and access all features, it's quick, easy and FREE!

 

[AutoIt] CrayonCode Bot Project (OpenSource & Free)

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Apr 2017
Posts: 85
Received Thanks: 133
Post [AutoIt] CrayonCode Bot Project (OpenSource & Free)

I'm looking for testers and feedback. Images with avaible GUI and settings will follow when I've reached enough posts.

All new versions will be posted here.

Current functionality:
  • Autofishes and completes fishing minigame
  • Classifies loot (Rarity and Specials) [Lootsettings]
  • Equip/discard fishingrods from Inventory (only discards unrepairable)
  • Uses bufffood
  • Keeps track of your fishing stats
  • Stops when Free and Reserved Inventory is full or no fishingrods are avaible.
  • Basic GUI [It's so shiny]
  • NEW: Auto-Restock (selling fish, repairing rods, auctioning relic, storing money/relics)
  • NEW: Feed Workers
  • NEW: Drying feature
  • Improved error feedback
  • NEW: Digging
  • NEW: Auto-Restart
  • NEW: Marketplace
  • NEW: Milking

Requires English Client and 100% UI Scale. This doesn't work in the background, since it's screen-reading.

Guide for custom Presets

Run CrayonCode.au3 to start the GUI.

Latest changes:
Quote:
v0.21

- Few more Status messages added.
- Added handling if ReelIn window is obstructed. (Moved dailyspam escape to reelin instead of riddle)
- Fixed bug in DetectFullscreenToWindowedOffset() where the global $hBDO was overwritten by local.
- Fixed Buttons for sidefunctions not working after they started (Missing GUILoopSwitch)
- Changed loot_silverkey.bmp to stop certain fish from pretending to be silverkeys.

CrayonCodeProcessing.au3 added
- SimpleProcessing will just process all selected materials until you run out.
- CustomProcessing will enable custom recipes and supports up to two ingredients.
- Scans the complete warehouse inventory
- Supported materials are limited to Lumber, Planks, Ores and Melted Shards for now.
- Use of the Alchemy Stone can be enabled.

Requirements:
Standing next to a warehouse with Transport Option.
Auto-Sort for the Warehouse must be ENABLED.
Auto-Sort for the Inventory must be DISABLED.
The first 4 Player Inventory will be used for the processing.

Since I need an image of every material that you wan't to process I will need the help of the community for this.
There is a specific way the images need to be captured, because of the strange rendering of warehouse inventories.
Details will follow soon.



Patchnote history:
Attached Files
File Type: zip CrayonCode_v0.11.zip (1.17 MB, 67 views)
File Type: zip CrayonCode_v0.12.zip (1.18 MB, 54 views)
File Type: zip CrayonCode_v0.13.zip (1.18 MB, 63 views)
File Type: zip CrayonCode_v0.14.zip (1.19 MB, 97 views)
File Type: zip CrayonCode_v0.15.zip (1.19 MB, 314 views)
File Type: zip CrayonCode_v0.16.zip (1.21 MB, 67 views)
File Type: zip CrayonCode_v0.17.zip (1.21 MB, 111 views)
File Type: zip CrayonCode_v0.18.zip (1.21 MB, 82 views)
File Type: zip CrayonCode_v0.19.zip (1.21 MB, 96 views)
File Type: zip CrayonCode_v0.20.zip (1.22 MB, 366 views)
File Type: zip CrayonCode_v0.21.zip (1.25 MB, 279 views)



CrayonCode is online now  
Thanks
43 Users
Old   #2
 
elite*gold: 0
Join Date: Jun 2008
Posts: 64
Received Thanks: 2
Thanks, gonna try this.


sunny55 is offline  
Old   #3
 
elite*gold: 0
Join Date: Mar 2017
Posts: 13
Received Thanks: 1
Error while starting script not found!Failed to load FastFind.dll.
laservic is offline  
Old   #4
 
elite*gold: 0
Join Date: Apr 2008
Posts: 5
Received Thanks: 0
I'll try it when I get home. Will post results.

Tested it out (windows 10 x64)
Worked fine for me. When I changed the fish settings to white it wouldn't pick up fish until I shut it down and reloaded. If you get it to work on 1440p that'd be awesome!

Great work though so far!


anonamus111 is offline  
Old   #5
 
elite*gold: 0
Join Date: Mar 2006
Posts: 1,379
Received Thanks: 264
Archive Error, for me when I dled.

Quote:
Originally Posted by laservic View Post
Error while starting script not found!Failed to load FastFind.dll.
FastFind.au3 (.dll)


ImageSearch.au3 (.dll)


Quote:
Originally Posted by CrayonCode View Post
Snipped.
Used 3 different browsers to check if its my end who has the issues. It appears your upload is corrupted.
killzone is offline  
Old   #6
 
elite*gold: 0
Join Date: Apr 2017
Posts: 85
Received Thanks: 133
@ @: I forgot the FastFind.dll for the x86 support. Running the script in x64 should work fine.

I updated the files, so it should work both ways now. Thanks for the notice!

If you are running a 32bit system and still have trouble try following:
Change line 12 in CrayonCode.au3 from "#AutoIt3Wrapper_UseX64=y" to "#AutoIt3Wrapper_UseX64=n"
CrayonCode is online now  
Thanks
1 User
Old   #7
 
elite*gold: 0
Join Date: Aug 2014
Posts: 34
Received Thanks: 3
Check your pm's.
Wyn10 is offline  
Old   #8
 
elite*gold: 0
Join Date: Nov 2011
Posts: 23
Received Thanks: 0
do i need to have some extra program installed for this ?

Griffit85 is offline  
Old   #9
 
elite*gold: 0
Join Date: Mar 2006
Posts: 1,379
Received Thanks: 264
Quote:
Originally Posted by Griffit85 View Post
do i need to have some extra program installed for this ?

Perhaps open your inventory so the bot sees your rods.


Edited the code, I made changes to folder structures so that future development will be easier (for me at least).
Steps:
Create a res folder.
Create a config folder.
Move all *.bmp files into the res folder.
Move data.ini into config folder.

I did it this way so that in future, when adding more images, it'll be much more organize and easier to manage.
@
Add a function that detects rods with +s

Im not sure but I think it does not detect the rods properly.
Also, might as well as add color variation to the pixel search function.

Its also a good idea to let the user specify the X/Y of your Rod in your inventory.
So the bot will look for it exactly in that coordinate.

Also, I made an Auto-turn-in macro.
Its in dotnet the idea is there.
Basically what it does is that after X minutes, it will stop fishing by switching weapons and finding the repair npc and trade npc then goes to find the horse.
Which the horse is parked near the shoreline. XD

The Process
The auto-turn in works. However, its best noted that sometimes you have to "click twice" on the NPC Icon for it to locate the npc.
This is the reason why you will see at the code above I made it "click 2x" or "right click 2x".
Specially when locating the horse.
killzone is offline  
Old   #10
 
elite*gold: 0
Join Date: Aug 2014
Posts: 34
Received Thanks: 3
Quote:
Originally Posted by killzone View Post
-snip-
I sent CrayonCode some images of rods and floats hopefully it should be enough for testing.
Wyn10 is offline  
Old   #11
 
elite*gold: 0
Join Date: Apr 2017
Posts: 1
Received Thanks: 0
Stopped. No fishing rod equipped
niexi is offline  
Old   #12
 
elite*gold: 0
Join Date: Mar 2006
Posts: 1,379
Received Thanks: 264
Quote:
Originally Posted by Wyn10 View Post
I sent CrayonCode some images of rods and floats hopefully it should be enough for testing.
Its best practice for open source that everything you do, make it public. This includes the images you have sent.

The idea is that if the OP is not available, someone with knowledge of the code can edit with the new features.
killzone is offline  
Old   #13
 
elite*gold: 0
Join Date: Apr 2017
Posts: 85
Received Thanks: 133
Quote:
Originally Posted by Griffit85 View Post
do i need to have some extra program installed for this ?
No since you already received the error message, but it seems to be unable to find the hardcoded states. (Start fishing, Currently fishing, Bite)

Since it can't find the state on the screen make sure its 1920x1080 resolution and you set the UI Scale to 100%. If you could send a complete fullscreen screenshot I could find out.
Quote:
Originally Posted by killzone View Post
Im not sure but I think it does not detect the rods properly.
Also, might as well as add color variation to the pixel search function.

Its also a good idea to let the user specify the X/Y of your Rod in your inventory.
So the bot will look for it exactly in that coordinate.
The imagesearches all have a variation. The problem with BDO is that the UI scales gradually and the size distortion will make the searches fail everytime.
The transparency of most UI elements is a big problem as well. So I had to find the few solid pixels and had to make sure the color is consistent to avoid wrong state detection.

If you turn autosort off then you can sort your rods yourself. It will pick identified rods from left to right and then go to the next line in the 8x8 inventory without scrolling. In my oppinion this was sufficient. What do you think? (Enchantable and repairable rods will be added later.)

The horse as an anchorpoint for the the pathfinding is a pretty neat idea.
Though we all know how easily the pathfinding just gets stuck on a rock or a mob. I could add it as experimental feature.

I will add a folder structure in the next version and also add tests and improved error messages so I can troubleshoot more effectively.
CrayonCode is online now  
Old   #14
 
elite*gold: 0
Join Date: Mar 2006
Posts: 1,379
Received Thanks: 264
Quote:
left to right and then go to the next line in the 8x8 inventory without scrolling
This is good enough for the user to understand that the bot will only check the first 2 lines of your inventory.
So this means, the Row1 & Row2 of your inventory is reserved ONLY for fishing rods.

Maybe also update the instructions in the first post that users must be in Full Window Mode + 100% UI Scaling.

It is worth mentioning what you want the users do before pressing the start.
Lets say, do you want the user to just open inventory then press Start so the bot will pick the Rod and start fishing?
Or you want the user to start the fishing process and then press start bot?
Things like this gets easily confused by the users.
killzone is offline  
Old   #15
 
elite*gold: 0
Join Date: Apr 2017
Posts: 85
Received Thanks: 133
Quote:
Originally Posted by killzone View Post
It is worth mentioning what you want the users do before pressing the start.
Lets say, do you want the user to just open inventory then press Start so the bot will pick the Rod and start fishing?
Or you want the user to start the fishing process and then press start bot?
Things like this gets easily confused by the users.
The bot is designed to identify the current state. So you can start it while having a fishing rod equipped, or while fishing, or while a fish is already on the line.

I will add instructions instead of the "Settings loaded" to "Please equip a fishing rod. Then start."


CrayonCode is online now  
Reply



« Previous Thread | Next Thread »

Similar Threads
[Opensource] PokeMMO Autoit bots
DON'T USE THIS UNTIL WE FIND A WAY TO WORK AROUND THE CAPTCHA!!! Gnomepy's PokeMMO bot V6.1 *31 january 2013* Functions: -Heals when hp/pp...
117 Replies - Pokemon
[OPENSOURCE PROJECT] BROWSERGAME
HEYHO Leute :D , Ich suche Leute die Lust hätten mit mir ein eigenes Browsergame zu erstellen. Also ich bräuchte ein ganzes Team so wie Sponsoren...
8 Replies - Web Development
[OpenSource Project] C++ CoCore
Alright, I think I'm done with the lurking for now.. The main reason of me starting this project is to get some people to use C++ instead of C#....
59 Replies - CO2 PServer - Discussions / Questions
Farmville Automatizer OPENSOURCE free bot [AutoIT]
Farmville Automatizer released! Open Source >>> Download <<<
2 Replies - Facebook



All times are GMT +2. The time now is 21:37.


Powered by vBulletin®
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy
Copyright ©2017 elitepvpers All Rights Reserved.