• Welcome to Valhalla Legends Archive.
 

Bots in Java - info please!

Started by After-Death, January 22, 2004, 07:34 AM

Previous topic - Next topic

iago

Quote from: K on January 22, 2004, 01:12 PM
Quote from: iago on January 22, 2004, 07:58 AM
...And when it does, it probably won't be opensource.

Just curious; how are you planning on accomplishing that? obfuscation? compiling to native code?

By not releasing it at all is the easiest way, since I'm writing it for myself :)
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Kp

Quote from: After-Death on January 22, 2004, 01:30 PM
Why use a command line when you have a GUI ? It's about programming not being old school.

It's not about being old school.  It's about efficiency.  I've found that I can update my project settings more easily, rebuild just as quickly, and generally design better overall by NOT using an IDE.  In particular, I've never seen an IDE that had a decent inline editor, and that's the only reason I'd consider an IDE over a command line environment.
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

Tuberload

Quote from: Kp on January 22, 2004, 02:31 PM
Quote from: After-Death on January 22, 2004, 01:30 PM
Why use a command line when you have a GUI ? It's about programming not being old school.

It's not about being old school.  It's about efficiency.  I've found that I can update my project settings more easily, rebuild just as quickly, and generally design better overall by NOT using an IDE.  In particular, I've never seen an IDE that had a decent inline editor, and that's the only reason I'd consider an IDE over a command line environment.

I use JCreator, which offers syntax coloring (makes it easier for me to work with because I am a visual person), compiles my project for me with the push of a button (laziness perhaps ;D), and helps keep it organized for me. I am not doubting what you are saying because I do see the benefits of not using a IDE. My question is how does it help you to design your projects better not using an IDE? I design all my projects on paper, so I don't see how it would be a burden. The main issue with IDE's to me is all the auto-complete and lookup features. I don't think people really learn when all they have to do is get part of it correct, and the IDE does the rest for them. That's why I learn a language without an IDE, and then move to one later.
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

Kp

Quote from: Tuberload on January 22, 2004, 02:38 PM
I use JCreator, which offers syntax coloring (makes it easier for me to work with because I am a visual person), compiles my project for me with the push of a button (laziness perhaps ;D), and helps keep it organized for me. I am not doubting what you are saying because I do see the benefits of not using a IDE. My question is how does it help you to design your projects better not using an IDE? I design all my projects on paper, so I don't see how it would be a burden. The main issue with IDE's to me is all the auto-complete and lookup features. I don't think people really learn when all they have to do is get part of it correct, and the IDE does the rest for them. That's why I learn a language without an IDE, and then move to one later.

Syntax highlighting could occasionally be nice, but I much prefer the raw power associated with a non-WYSIWYG editor. :)  Compliation is as simple as running make (or !! if the target shell ran make most recently).  That's also where ease of maintenance comes in -- with a well configured Makefile, adding new files to a project is as simple as dumping their unadorned names into a macro, from which target macros are derived.  Run gcc -MM on the new files to generate their dependency list, dump that into the Makefile, and you're done.  This last step could be automated with some good Makefile targets too, but I usually don't bother.

I never use paper.
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

Tuberload

#19
Quote from: Kp on January 22, 2004, 02:48 PM
Quote from: Tuberload on January 22, 2004, 02:38 PM
I use JCreator, which offers syntax coloring (makes it easier for me to work with because I am a visual person), compiles my project for me with the push of a button (laziness perhaps ;D), and helps keep it organized for me. I am not doubting what you are saying because I do see the benefits of not using a IDE. My question is how does it help you to design your projects better not using an IDE? I design all my projects on paper, so I don't see how it would be a burden. The main issue with IDE's to me is all the auto-complete and lookup features. I don't think people really learn when all they have to do is get part of it correct, and the IDE does the rest for them. That's why I learn a language without an IDE, and then move to one later.

Syntax highlighting could occasionally be nice, but I much prefer the raw power associated with a non-WYSIWYG editor. :)  Compliation is as simple as running make (or !! if the target shell ran make most recently).  That's also where ease of maintenance comes in -- with a well configured Makefile, adding new files to a project is as simple as dumping their unadorned names into a macro, from which target macros are derived.  Run gcc -MM on the new files to generate their dependency list, dump that into the Makefile, and you're done.  This last step could be automated with some good Makefile targets too, but I usually don't bother.

I never use paper.

What do you use to design your projects then? I do all of my analysis/design on paper because it is low tech, gets me away from the computer, and I can work on it anyware. Don't you ever write notes down?

Addition: I dont like WYSIWYG editors either because they use their own code, so you do not get to create it yourself.
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

Kp

#20
Quote from: Tuberload on January 22, 2004, 03:03 PMWhat do you use to design your projects then? I do all of my analysis/design on paper because it is low tech, gets me away from the computer, and I can work on it anyware. Don't you ever write notes down?

Addition: I dont like WYSIWYG editors either because they use their own code, so you do not get to create it yourself.

I never take notes on designs, because I've never needed to take notes.  I just know what I want when I sit down.  Most WYSIWYGs can be convinced to let you start from scratch, I think.  Mostly, I like the much more rapid/extensive editing facilities of an editor like vi.  [How many keystrokes does it take you to replace all instances of 'fooXXaa' with 'behXXbb' in just one subroutine out of a much larger file, with the XXs held constant between replacements? ;)  It would take me 23 plus the number of digits involved in describing the line numbers:  :<line1>,<line2>s/foo\(..\)aa/beh\1bb/g<CR>.)

[Edit: made example more elaborate.]
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

Tuberload

#21
Quote from: Kp on January 22, 2004, 03:15 PM
Quote from: Tuberload on January 22, 2004, 03:03 PMWhat do you use to design your projects then? I do all of my analysis/design on paper because it is low tech, gets me away from the computer, and I can work on it anyware. Don't you ever write notes down?

Addition: I dont like WYSIWYG editors either because they use their own code, so you do not get to create it yourself.

I never take notes on designs, because I've never needed to take notes.  I just know what I want when I sit down.  Most WYSIWYGs can be convinced to let you start from scratch, I think.  Mostly, I like the much more rapid/extensive editing facilities of an editor like vi.  [How many keystrokes does it take you to replace all instances of 'fooXXaa' with 'behXXbb' in just one subroutine out of a much larger file, with the XXs held constant between replacements? ;)  It would take me 23 plus the number of digits involved in describing the line numbers:  :<line1>,<line2>s/foo\(..\)aa/beh\1bb/g<CR>.)

[Edit: made example more elaborate.]

Well you got me their... After seriously trying to even find a way to do this in JCreator, I failed... I could make a tool to do this an insert it into the tools of the IDE, but that is still more work.

I used to just sit down and work on projects without writing them out on paper first. I then enrolled in a Java class, and my teacher told me that was a horrible, error prone way of doing things so I have since changed my methods. I guess it is a matter of opinion.

Edit (Question): What flavor of Linux do you use? I have been interested in learning to use the operating system for some time now but am yet to attempt it.
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

Kp

Quote from: Tuberload on January 22, 2004, 04:01 PM
Well you got me their... After seriously trying to even find a way to do this in JCreator, I failed... I could make a tool to do this an insert it into the tools of the IDE, but that is still more work.

I used to just sit down and work on projects without writing them out on paper first. I then enrolled in a Java class, and my teacher told me that was a horrible, error prone way of doing things so I have since changed my methods. I guess it is a matter of opinion.

Edit (Question): What flavor of Linux do you use? I have been interested in learning to use the operating system for some time now but am yet to attempt it.

I've had an instructor or two try to tell me that years ago, but it didn't take.  I do plan first, just that I don't write any of it down. :)  I use an antiquated form of Red Hat, which I'm planning on upgrading sometime in the next year or so.  There exist vi ports for Windows if you want to start learning it before you switch, though.
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

Tuberload

Quote from: Kp on January 22, 2004, 04:15 PM
Quote from: Tuberload on January 22, 2004, 04:01 PM
Well you got me their... After seriously trying to even find a way to do this in JCreator, I failed... I could make a tool to do this an insert it into the tools of the IDE, but that is still more work.

I used to just sit down and work on projects without writing them out on paper first. I then enrolled in a Java class, and my teacher told me that was a horrible, error prone way of doing things so I have since changed my methods. I guess it is a matter of opinion.

Edit (Question): What flavor of Linux do you use? I have been interested in learning to use the operating system for some time now but am yet to attempt it.

I've had an instructor or two try to tell me that years ago, but it didn't take.  I do plan first, just that I don't write any of it down. :)  I use an antiquated form of Red Hat, which I'm planning on upgrading sometime in the next year or so.  There exist vi ports for Windows if you want to start learning it before you switch, though.

I have a copy of Red Hat 7, and Caldera OpenLinux 2.4(sp?). In your opinion what would you recommend? I have read about the differences/similarities and pros/cons of both, but it never hurts to have a professional opinion.

As soon as I finish the first issue of The Bot Creator, I think I will try and install linux.
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

Kp

I've used RedHat 5 series and 6 series, but nothing later than that.  I've not used Caldera at all.  As such, I don't think I can offer you much guidance. :P
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

iago

vim DOES have syntax highlighting, and automated indenting.

The #1 reason I use an IDE (netbeans, incidentally) is because of autocompletion.  I have a terrible memory for names (whether it's people's names, function names, etc.), and having a reminder pop up when I sit at '.' for more than a second is handy.

But as far as plain text editors go, vim is by far the best.
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Kp

Quote from: iago on January 22, 2004, 05:29 PM
vim DOES have syntax highlighting, and automated indenting.

I'm using a somewhat old vi clone (not of my own design). I should probably upgrade to a new vim. :P
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

iago

On this version of linux (Slackware 9.1), it has syntax highlighting for C/C++, Java, html, and probably some others.  I noticed, however, that vi and vim are both symbolic links to a piece of software called elvis, which has this description:

QuoteNAME
      elvis - a clone of the ex/vi text editor

SYNOPSIS
      elvis  [-V...]   [-a]  [-r] [-R] [-e] [-i] [-S] [-s|-] [-f
      session] [-o logfile] [-G gui] [-c  command|+command]  [-t
      tag] [-w scroll] [-b blksize] [file]...

DESCRIPTION
      elvis  is  a  text  editor.  It is intended to be a modern
      replacement for the classic ex/vi  editor  of  UNIX  fame.
      elvis  supports many new features, including multiple edit
      buffers,  multiple  windows,  multiple   user   interfaces
      (including  an  X11  interface),  and a variety of display
      modes.

      For a more complete description, you  should  see  elvis's
      on-line  documentation.  To view this documentation, start
      elvis and then give the command ":help".

      To exit elvis, you can give the command ":q"  in  each  of
      its  windows.   If you've modified the buffer in a window,
      and you want to abandon those changes, then give the  com-
      mand ":q!" instead.
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


After-Death

Quote from: Tuberload on January 22, 2004, 02:16 PM

I am working on a guide to creating Battle.net bots. All examples will be written in Java to start with, so when it is released it may be of some help to you.

Info would be much appreciated.

hismajesty

Quote from: iago on January 22, 2004, 10:44 AM
C# is similar to Java...

Correct, Microsoft said C# was made up of (I'm doing this from memory so the percents will be a bit off possibly) 60% Java, 15% C++, 10% Visual Basic, and 15% new.

|