• Welcome to Valhalla Legends Archive.
 

My Bot's Latest Release

Started by MyndFyre, June 25, 2004, 08:28 PM

Previous topic - Next topic

Blaze

Holy crap. That is the best I have ever seen or will ever see...
Quote
Mitosis: Haha, Im great arent I!
hismajesty[yL]: No

MyndFyre

Quote from: Hitmen on June 26, 2004, 11:01 AM
Quote from: warz on June 26, 2004, 10:50 AM
Not simple enough. I like bots that are bare, and straight forward.
And don't eat up twice as much RAM as the starcraft game client :P

Like I said, I believe that's due to the Just-in-Time compiler eating it all up at the first run.  The bot's been running for about 30 hours and at the moment is only consuming 13mb of RAM (which is a lot less than the 50mb it was using yesterday when I first launched it on this computer).

Thanks for the support.  Here's some more info on the plugins, since Tuber mentioned that he wanted to play with my system....

I'm very displeased with what is included in the PluginBase class.  Since ArmaBot plugins should (theoretically) be only used in ArmaBot, it isn't a problem if I allow the user to add references to the configuration options, right?  So, that's what I'm going to do.  I'm going to document the other assemblies and also add references to the current profile's configuration profile for each assembly, in a similar manner to the way that your ASP.NET pages work.

When you create an ASP.NET page, you're also creating a class that derives from System.Web.UI.Page.  Page defines certain members such as Server (an HttpServerUtility object), Session (HttpSessionState object), Application (HttpApplicationState object), and so on.  Those of use who have used traditional ASP regard them as simply script objects that are provided by the runtime; however, they aren't, and it will work similarly in the Beta 1 plugin.

Expect the PluginBase class to have the same methods that it has now, but add a whole lot.  Code developed for Alpha 4 should work with beta 1 provided that it is recompiled.  Hopefully.  ;-)
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.

Arta

You should support BCP. Other bots stupport BCP already. Let's try and have a common plugin format? It'd be so cool.

Zorm

Keep in mind that the way he does things are vastly different from a BCP Plugin and so supporting those will be sort of hard I think.  Your bot looks nice Myndfyre, if I wasn't avoiding C# id try it out :p
"Now, gentlemen, let us do something today which the world make talk of hereafter."
- Admiral Lord Collingwood

Tuberload

Quote from: Myndfyre on June 27, 2004, 03:07 AM
Quote from: Hitmen on June 26, 2004, 11:01 AM
Quote from: warz on June 26, 2004, 10:50 AM
Not simple enough. I like bots that are bare, and straight forward.
And don't eat up twice as much RAM as the starcraft game client :P

Like I said, I believe that's due to the Just-in-Time compiler eating it all up at the first run.  The bot's been running for about 30 hours and at the moment is only consuming 13mb of RAM (which is a lot less than the 50mb it was using yesterday when I first launched it on this computer).

Looks to me like C# isn't much better as far as speed and memory consumption compared to Java. I am not blown away by C# yet, but you have definitely put a lot of quality work into your bot.
Quote"Pray not for lighter burdens, but for stronger backs." -- Teddy Roosevelt
"Your forefathers have given you freedom, so good luck, see you around, hope you make it" -- Unknown

MyndFyre

#20
Quote from: Arta[vL] on June 27, 2004, 10:18 AM
You should support BCP. Other bots stupport BCP already. Let's try and have a common plugin format? It'd be so cool.

I'm working on that, but it's a way off.  Part of the trick is knowing what functions to call; the standard method of calling P/Invoke on a BCP would be to put the DLL file in at compile-time:


[DllImport("EmptyPlugin.bcp")]
public static extern void DoSomething(/*...*/);


In this case, it will work only for EmptyPlugin.  I posted the first BCP callback functions in another post, and it's a planned feature, but I'm not sure if it will make it into version 1.  Definitely in by version 2.  :)

I'm going to keep my current plugin system, though.  .NET will work fastest with .NET; I'd have unnecessary transfer in between .NET and unmanaged code eating clock cycles if I did only BCP.
QuoteEvery generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?

After 3 years, it's on the horizon.  The new JinxBot, and BN#, the managed Battle.net Client library.

Quote from: chyea on January 16, 2009, 05:05 PM
You've just located global warming.