Skip to content
This repository has been archived by the owner on Dec 2, 2022. It is now read-only.

Sejoslaw/KD.AutoBot

Repository files navigation

KD.AutoBot

KD.AutoBot is a library which give User a possibility to create a self-learning Robot for specified application / game which can simulate a User behavior. Robot can simulate everything that User can do.

Library has been written in .NET Standard (components written for specific libraries / systems may be written in .NET Core or .NET Framework).

KD.AutoBot:

  • Don't need to have a reference to a project / process it should connect to !!!
  • Should always be assemble using predefined IAutoBotBuilder
  • Can save / load data to / from specified source.
  • Can connect to running process (through platform native API).
  • Can read data from process controls (TextBoxes, Buttons, etc.) and their childs.
  • Can click buttons !!!
  • Can simulate User input (Keyboard, Mouse, new specially prepared device) using system native API.
  • Will learn which action is right. But this is something what needs to be setup programmatically (see: ILearningModule).
  • Finish porting to TicTacToe game.
  • Extend IAutoBot and IModule with events.

TODO:

  • Add predefined logging options in additional library.
  • Clean everything from TODO.txt file.

Solution overview:

Logical folder Project title .NET Platform Description
Core KD.AutoBot .NET Standard 2.0 Contains core interfaces with abstract implementation.
Core KD.AutoBot.AI .NET Standard 2.0 Contains abstract layer for Robot learning.
Core KD.AutoBot.AI.Impl .NET Standard 2.0 [W.I.P.] Contains implementations for Robot learning.
PlatformSpecific\Windows KD.AutoBot.Connection.Windows .NET Standard 2.0 Contains calls to Win32Api related to connecting to Windows processes.
PlatformSpecific\Windows KD.AutoBot.Input.Windows .NET Standard 2.0 Contains calls to Win32Api related to sending / simulating User input.
Game Contains various games and KD.AutoBot implementations for them.
Game\TicTacToe .NET Framework 4.6.1 Contains all projects for TicTacToe game and AutoBot implementation.
Tests Contains all tests - projects which starts with prefix "Test_".