Important Information about the 420 Game
This page is designed to answer most of your questions regarding
the upcoming adventure, so that you may make the necessary
preparations. Please read it thoroughly.
We will be meeting with teams in the afternoon and evening of Friday,
April 20 in the city of San Francisco. It is not absolutely necessary
that the entire team be there, but it is recommended. You can sign up
for a 20 minute slot by pressing here. You will
receive more specific instructions later.
The Game itself will start in the city of San Francisco sometime
between 9 and 10am on Saturday, April 21. You will learn exact
You must use only one vehicle for your team. The route will
accommodate large vans.
You must have at least one cell phone and the apparatus to keep it
charged throughout the game. Please provide the numbers for the
phone(s) you will have in the team roster you submit by April 13.
To code your agent, you may call standard library functions, but
please do not call any functions of the classes we provided other than
the ones in the PlayerInterface. Use the ExampleActor as a guide.
One exception is the Position object, which we've provided for
you as an easy way of storing grid position, and which is the object
that gets returned from the position functions of the PlayerInterface,
such as getMyPosition().
If you want to use a random number generator, please use the
one that is a member of the PlayerActor class (rg) rather than
creating your own or calling Math.random(). If you do not adhere to
this rule, we will change the code for you.
You may write your own functions to get called from the act()
function, and you may even write your own classes as long as they are
defined within the same file as your actor. You may not, however,
subclass any of the classes we have provided, other than, of course,
the PlayerActor class.
We mentioned in previous instructions that we would add an
example actor for those less savvy at programming that read the
constants from a file, allowing you to simply create a file with
constants. However, we have decided that, because you have to be able
to download and run the code in any case to test your agent, it is
just as easy for you to create an actor (subclassed from PlayerActor)
that is identical to the example actor except with the constants
changed. You can refer to the example actor to see how the
subclassing is done.
If you have any trouble downloading and/or running the code we
have given you, or you still feel that you do not have the expertise
to create your own actor, please contact us at firstname.lastname@example.org as soon as
April 6: Team images (32x32) due. Mail to email@example.com.
April 13: Team rosters are due. Include team member names with
nicknames as on application and any cell phone numbers that will be
active during the game. This is also the deadline to sign up for your
20 minute meeting slot on 4/20 (see above)
April 20: Team meetings in the afternoon and evening. Sign up here.
April 21: Game begins between 9am and 10am.
There are a couple rookie teams playing in this game, and there are
also some very experienced teams. We highly recommend that rookie
teams use the game mailing list to contact the more experienced teams
to learn about the process of The Game, e.g. what kinds of things they
should be looking for before Game Day, and what kinds of things they
should bring. Perhaps one of the experienced players could even post
a kind of game preparation list that at least gives some examples. We
will leave it up to you the teams to make this effort.
Send any questions to firstname.lastname@example.org