Code Monkey home page Code Monkey logo

windbot's Introduction

WindBot Ignite

A fork of IceYGO's WindBot, ported to the Project Ignis: EDOPro network protocol.

This is a simple, deterministic artificial intelligence that connects as a virtual player to the YGOPro room system. Decks for this bot player must be specifically prepared and compiled as individual executors.

Written in C# targeting .NET Framework 4. Use Visual Studio 2015 or newer.

Available decks and executors

  • ABC
  • Altergeist
  • Blue-Eyes
  • Blue-Eyes Ritual
  • Burn
  • Chain Burn
  • Cyberse
  • Dark Magician
  • Dragma
  • Dragunity
  • Dragun of Red-Eyes
  • Frog
  • Gren Maju Stun
  • Horus
  • Kashtira
  • Lightsworn Shaddoll Dino
  • Mathmech
  • Normal Monster Mash
  • Normal Monster Mash II
  • Orcust
  • Qliphort
  • R5NK
  • Rainbow
  • Rose Scrap Synchro
  • Salamangreat
  • Sky Striker
  • Thunder Dragon
  • Tearlaments
  • Time Thief
  • Toadally Awesome
  • Trickstar
  • Windwitch Gusto
  • Witchcrafter Grass
  • Yosenju
  • ZEXAL Weapon
  • Zoodiac

Contributing

Pull requests are welcome for fixes and new additions! It might take some time for them to be evaluated since we are pretty swamped with a lot work to be done.

Please keep bug reports on Discord so we can verify them first.

For new additions, please make sure you add new code files to both the WindBot and libWindbot projects. You need only worry about testing the WindBot project.

Other architectural changes from upstream

Old README, including some command-line documentation.

The Visual Studio project has been merged with libWindbot, meant for use as an Android aar. Most of the code is shared with the main WindBot project, minus the few specific bindings to call the bot as a library instead of a separate process. The repository structure has been improved to keep the sources for YGOSharp around as a result, but sqlite3 DLLs are still sitting around.

ExecutorBase is a refactor to experiment with loading additional executors from DLLs in an executor folder. See SampleExecutor for an example project using this experimental feature.

libWindbot

To actually compile libWindbot including the post-build task that produces the Android aar artifact, you will need the following EXACT setup. You will have a bad day otherwise and this has been kept concise.

  • The postbuild event runs on Windows only.
  • You must use Visual Studio 2017 or Visual Studio 2019.
  • You need Visual Studio workloads for Android (Xamarin and native development).
  • You must install the 32-bit Mono SDK. The 64-bit version does not work.
  • In the Visual Studio 2017 Tools > Options > Xamarin > Android Settings, ensure the SDK, NDK, and JDK all point to valid paths. They should be set correctly by default. You can use Microsoft-provided installations or share these with Android Studio.
    • In addition to the default Android SDK tools, install Platform 24 (Android 7.0). No newer platform works.
    • The NDK path must point to an r15c installation. Visual Studio 2017 should already have installed it somewhere but you can download this unsupported old version from the Android developer site. No newer NDK works.

These are all quirks of the 0.4.0 NuGet version of Embeddinator-4000, used to transform the .NET DLL into a native library for Android.

License

WindBot Ignite is free/libree and open source software licensed under the GNU Affero General Public License, version 3 or later. Please see LICENSE and COPYING for more details.

windbot's People

Contributors

mercury233 avatar edo9300 avatar wind2009-louse avatar kevinlul avatar handsomekiwi avatar zh99998 avatar wobbaone avatar scienceball avatar yspplayer avatar dyxel avatar alphakretin avatar theflameflash avatar purerosefallen avatar ohnkytablabdey avatar gideon9212 avatar larry126 avatar levyaton avatar sunx2 avatar yaoyaocii avatar

Stargazers

Johndel Villanueva 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.