Guide:Bot Programming

From EEWiki
Revision as of 18:18, 18 September 2015 by Hummerz5 (Talk | contribs) (this is WIP, please allow an honor-system lock because I plan to continue this upon returning. thanks (saving in case computer dies or something!))

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Bot Programming has taken a unique role in Everybody Edits culture. Some despise Bots as intrusive to the game itself. Others find them quite useful. Of these supporters, divisions can still be made. Therein you find users who play Bot-Assisted Levels, users who run bot programs, and still other users who ultimately create these programs. None of these subdivisions are mutually exclusive. Therefore, you can often find players who can enjoy a fun bot and discuss how to create or practically improve the program. This guide is particularly aimed towards the Bot Programmers. This will be most beneficial to those with little to no experience.

Getting Started

You've decided to learn how to program for EE. You even had enough determination to find this guide! Much of this power of will is necessary to overcome many programming roadblocks. This will be no easy task. Before you can dive into the intricacies of writing quality programs to manipulate Everybody Edits, you first need to learn a programming language.

Finding an Environment

This "Environment" is basically a multiple-instance text editor that helps extensively with programming. Your environment is to you as a canvas is to an artist. Into the environment you can type your hopes and dreams. If you're any good, the environment will return a functional and visually appealing system. A common program in the EE Programming community is Visual Studio Desktop. Walkthrough A lesser-known, minimal program is SharpDevelop.

Learning a Language

Communication mediums such as books and the internet provide learning experiences for all ages. If you prefer learning interactively, internet is a good choice for you. Two sites include: Code.org, which tailors to children and young adults, and Codeacademy.com, which aims more towards the young-adult to adult range.

However, if you would rather learn more at your own pace, there are online resources to help facilitate learning. Upon choosing this route, a programmer must also decide on a programming language. If your ultimate goal is Bot Programming and nothing beyond, C# (see-sharp) is a solid choice. However, if bots are only a side project, you could benefit from learning another language to expand your experiences. Because C# is the prevalent language in EE programming, it is the language primarily used and discussed herein. There are many online resources for learning C#, such as TutorialsPoint on csharp.

Completing any applicable C# tutorial in full before applying the knowledge to EE Bot Programming is highly recommended.

Referencing a Language

References are useful not only while learning a language, but even after the key points have been achieved. If you are working a tutorial and have reached an irreconcilable error, or even have questions about how to use a certain tool, you have multiple choices to pull information from.

  • DotNetPerls lists multiple aspects regarding various levels of programming in C#. They also make an effort to simplify things with extensive examples, which helps with learning a new concept.
  • Microsoft C# Reference covers just about everything in the language. As C#.NET is a Microsoft creation, most all the information you will need can be found here.
  • Google is an invaluable tool often overlooked. If you're having trouble with syntax/compiler errors, red squiggly lines won't go away, or your window just looked at you funny, use a search engine! Take the error message, excluding line numbers and file locations, and throw it in the search bar!
    • Google will help you (help yourself) much faster than the forums.
    • There will be a point where your endeavors will extend beyond the ready knowledge of the community.
    • The Internet is full of programmers who have likely had the same errors and difficulties that you meet.
  • Everybody Edits Programming Forum has a small, squabbling community who can likely help alleviate some confusion. However, this should be used as a near last resort. Aside from cluttering our local forums, you quite likely will get judged for quality of code and possibly mocked.