Tree [48a19e] master /
History



File Date Author Commit
Scripts 2008-09-13 moparisthebest moparisthebest [48a19e] Added ReflectionBuddy
conf 2008-09-06 moparisthebest moparisthebest [aa1d4a] Updated RSClassExtractor to handle folders in t...
src 2008-09-13 moparisthebest moparisthebest [48a19e] Added ReflectionBuddy
Compile-Cherokee.bat 2007-09-06 Yakman Yakman [98cb15] a few things. added the part to compile them to...
Compile-Scripts.bat 2007-04-12 Yakman Yakman [41306b] worked on the scripts system, fixed some bugs, ...
Javadoc-Cherokee.bat 2007-05-05 Yakman Yakman [92ffc0] wrote a GUI which changes the conf file, thus c...
bcel.jar 2007-06-09 Yakman Yakman [2b9aeb] changed the way the rs2 applet is loaded, so th...
cherokee.xml 2007-01-06 moparisthebest moparisthebest [52ae1c] First revision, also released on sf.net v0.1b
compile-scripts.sh 2008-09-13 moparisthebest moparisthebest [48a19e] Added ReflectionBuddy
gpl.txt 2007-01-06 moparisthebest moparisthebest [52ae1c] First revision, also released on sf.net v0.1b
readme.txt 2007-06-09 Yakman Yakman [2b9aeb] changed the way the rs2 applet is loaded, so th...
run-Cherokee-RS2.bat 2007-06-09 Yakman Yakman [2b9aeb] changed the way the rs2 applet is loaded, so th...
run-Cherokee-testapplet.bat 2007-05-20 Yakman Yakman [edaafe] changed the way RS2AccessorMethods works, now i...
run-Worldchange-RS2.bat 2007-05-05 Yakman Yakman [92ffc0] wrote a GUI which changes the conf file, thus c...
update.log 2007-10-01 Yakman Yakman [8d1360] changed the names and structure of some of the ...

Read Me

Cherokee is a fully extensible and scriptable automation engine for any and all java applets.
To make it work for your favorite java applet the most you have to do is write is two classes.

Copyright (C) 2007  Travis Burtrum (moparisthebest)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

The code *may* be used under a lesser license (such as the LGPL) only by 
express written permission from Travis Burtrum (moparisthebest)
---------------------------------------------------------------------------------------------

This bot's goal is to provide a scripting and input solution for any and all java applets.
It can be used on ANY program that extends java.applet.Applet. I have provided a few examples
on how to run and use the bot including one script, and 3 different applet examples each 
having a unique way of loading the classes.

The bot was written in a way as to make it very flexible, for example there is no restriction
on how the classes are loaded, or even how AccessorMethods works, you can even generate it on
the fly.  Some ideas for an AccessorMethods class include color finding/clicking routines,
heavy duty reflection and/or bcel usage, or even bytecode injected method calls, the 
possibilities are truly endless.

There are 2 important parts to using this bot:

	The Interfaces:
		You must write 2 classes, one implementing the com.cherokee.Setup interface and the 
		other implementing the com.cherokee.AccessorMethods interface, the name of your setup
		class must be included in the conf file which is sent in as the first paramater when
		running the application.

	The conf file:
		The conf file is formated like a java Properties file, and currently has 3 required 
		paramaters which are "getCodeBase", "getDocumentBase", "Setup", look at the example 
		conf files in the ./conf/ folder for more information.
		
There is also a debug mode which can be activated by sending in a second parameter, this will
simply print to the command line some extra information, like the parameters being asked for.

The current examples can be ran with the following commands(replace ; with : in *nix):

java -cp .;./bin/ com.cherokee.Cherokee ./conf/test.conf
java -cp .;./bin/ com.cherokee.Cherokee ./conf/rs2.conf
java -cp .;./bin/ com.cherokee.Cherokee ./conf/rsc.conf

the bcel library is hosted from http://jakarta.apache.org/site/downloads/downloads_bcel.cgi 
where the source can be downloaded.

todo:

-Implement an event triggered Scripting system to be ran in the same thread as the main
 application, perhaps triggered to be processed by bytecode injected method calls.
-Perhaps allow more modifiers to be sent with mouse presses, such as ctrl, alt, and shift.
-There are also few various todo:'s scattered around the source code that need attention.

Changelog:

Version 0.1b
First public release. Far from a finished product.