<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
If you'd like a head start, here's the code we'll be looking at:
<a class="moz-txt-link-freetext" href="https://bitbucket.org/jdlee/minecraftmods">https://bitbucket.org/jdlee/minecraftmods</a><br>
<br>
<div class="moz-cite-prefix">On 7/13/15 8:49 AM, Brent W. Wilkins
wrote:<br>
</div>
<blockquote
cite="mid:BN1PR07MB4370B3C0960DF5FF7F04143CB9C0@BN1PR07MB437.namprd07.prod.outlook.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";
color:black;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p
{mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:12.0pt;
font-family:"Times New Roman","serif";
color:black;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri","sans-serif";}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:588151997;
mso-list-template-ids:-2122573840;}
@list l0:level1
{mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level2
{mso-level-tab-stop:1.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level3
{mso-level-tab-stop:1.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level4
{mso-level-tab-stop:2.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level5
{mso-level-tab-stop:2.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level6
{mso-level-tab-stop:3.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level7
{mso-level-tab-stop:3.5in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level8
{mso-level-tab-stop:4.0in;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level9
{mso-level-tab-stop:4.5in;
mso-level-number-position:left;
text-indent:-.25in;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">Greetings, Oklahoma City tech community! Do
you have a son or daughter (or niece, nephew, grandchild,
super-friendly neighborhood child) who loves Minecraft? Does
said Minecraftian have an interest in learning how to program?
If so, this is your lucky day. The Oklahoma City Java User
Group would like to invite you and 0 or more or pint-sized
precocious progeny to our July session where we'll be offering
an introduction to programming using Minecraft modding as the
goal.
<br>
<br>
<b>What will we be doing?</b> We're going to be getting an
introduction to various programming concepts (types,
variables, loops, conditionals, classes, etc) using the Java
programming language. Having a concrete, usable goal is always
more interesting, so we'll learn these concepts as we develop
(and RUN!) simple Minecraft mods.<br>
<br>
<b>Will my <i>CHILD<Relationship></i> be an expert
programmer or modder when we're done?</b> Probably not, but
the hope is that this session will be enough to flatten the
learning curve a bit, leaving each child well-equipped for
further study, either self-directed or with you, as well as
with a taste for how fun programming can be.<br>
<br>
<b>How old does you mini-me need to be?</b> That's entirely up
you. If you have, say, a 6 year-old who's comfortable with
compilers and API docs, then that's old enough for us.
<br>
<br>
<b>Is there anything we need to install before we come?</b>
There certainly is. Our time will be limited, so it would be
extremely helpful to have a basic, working environment already
set up. While you are free to use any IDE you want, I will be
using NetBeans, the Free (and TOTALLY AWESOME) IDE from
Oracle, which can be downloaded from <a
moz-do-not-send="true" href="http://netbeans.org"
target="_blank">
http://netbeans.org</a>. You will also need a working Java
environment, as well as a relatively current copy of the
Minecraft Forge plugin development kit. I'll have detailed
instructions at the end of this email to help you set up your
environment.<br>
<br>
<b>This sounds great? When and where is it?!</b> In a
departure from our normal schedule (which will be significant
only for normal JUG attendees), we will be meeting on Monday,
July 13 at 11:30AM at Prototek, which is located at 10th and
Hudson in Oklahoma City (<a moz-do-not-send="true"
href="https://goo.gl/maps/tD26c" target="_blank">https://goo.gl/maps/tD26c</a>).
You can park in the dirt lot Hudson, just north of Park Place.
Do not park ON Park Place, as I own both that and Boardwalk,
and my improvements there are guaranteed to ruin you.<br>
<br>
<b>What should we bring to the session?</b> To participate,
you will obviously need a laptop to work, with one per laptop
per child being ideal. If you are bringing multiple wee ones
and need to share, that would be fine. If you don't have a
laptop and just want to come listen, that will work as well.
:)<br>
<br>
<b>That's right during lunch. What's wrong with you people?</b>
Nothing that some free pizza can't solve, so bring your
appetites!<br>
<br>
<b>Is there anything else we need to know?</b> That's about
it. Come prepared to have fun and learn. And don't forget your
questions!<br>
<br>
We're pretty excited about this session and hope to see LOTS
of kids come out for a fun time.<br>
<br>
<b><span style="font-size:36.0pt;color:red">Detailed
Pre-Meeting Instructions</span></b><br>
<br>
<br>
I made that really large for two reason: I really wanted to
use that formatting bar in Thunderbird that I've ignored for
so long, and I wanted to make sure you don't miss this part.
:) You *can* come and set up your laptop at the meeting, but
we won't have time to do that as a group, so we'll have to
keep moving while you're setting up. If you have to do that,
that's fine. I hope to conscript a few of the JUG leaders to
act as workshop assistants in case anyone needs help
installing the various pieces. Another issue is bandwidth:
Prototek will let us use their wifi, but regardless of their
bandwidth, when two dozen people start downloading all of the
dependencies, it probably won't be fast. :)<br>
<br>
What do you need to download then? These three things:<o:p></o:p></p>
<ol start="1" type="1">
<li class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0
level1 lfo1">
Java - <a moz-do-not-send="true"
href="http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html"
target="_blank">
http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html</a>.
You will need the Java SDK, and I would suggest the latest
version, which is currently Java SE 8u45. Download the
installer appropriate for your platform and install it.
<o:p></o:p></li>
<li class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0
level1 lfo1">
NetBeans - <a moz-do-not-send="true"
href="https://netbeans.org/downloads/" target="_blank">https://netbeans.org/downloads/</a>
- You will need the Java SE version. Again, get the
installer appropriate for your platform and install it.
<o:p></o:p></li>
<li class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0
level1 lfo1">
Minecraft Forge - <a moz-do-not-send="true"
href="http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.8-11.14.1.1341/forge-1.8-11.14.1.1341-src.zip"
target="_blank">
http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.8-11.14.1.1341/forge-1.8-11.14.1.1341-src.zip</a>
- There are platform-specific installers, but I'd just get
this zip
<o:p></o:p></li>
</ol>
<p>With those downloaded and installed, extract the zip file
(using the tool of your choice) in a directory. Mac and Linux
users can do this:<o:p></o:p></p>
<p>$ cd ~<br>
$ mkdir MinecraftMods<br>
$ cd MinecraftMods<br>
$ unzip $PATH_TO_ZIP/forge-1.8-11.14.1.1341-src.zip<o:p></o:p></p>
<p>Wherever you've extracted, you will need to open a shell (or
command prompt) and run this command in that directory:<o:p></o:p></p>
<p>$ ./gradlew setupDecompWorkspace --refresh-dependencies<o:p></o:p></p>
<p>(Windows users can leave off the leading ./)<o:p></o:p></p>
<p>Once that is done, open up NetBeans, then click File | Open
Project and navigate to this directory. Hopefully, this
directory will show up as a Gradle project. If it does not,
you will need to install the Gradle plugin ( Go to Tools |
Plugins and install "Gradle Support".) After a few seconds,
you should see the project open in the Project view, with
several nodes beneath in the tree. To test things, click on
the project node (it should be called MinecraftMods), click
Tasks, Run, and runClient. After a few seconds, you should see
Minecraft start up. Congratulations, you should be ready to
go.<o:p></o:p></p>
<p><b>Whew! That's kind of hard to follow!</b> If you're like me
and like to see pictures, you can see these same instructions
on the NetBeans blog at
<a moz-do-not-send="true"
href="https://blogs.oracle.com/geertjan/entry/seamless_minecraft_forge_in_netbeans"
target="_blank">
https://blogs.oracle.com/geertjan/entry/seamless_minecraft_forge_in_netbeans</a>.<o:p></o:p></p>
<p><b>But I don't like NetBeans. I like pain!</b> There may be
some Eclipse fans out there. If just
<i>have</i> to use Eclipse, you can generate the Eclipse
project files by running "gradlew eclipse".<o:p></o:p></p>
<p><b>NetBeans is nice and all, but I prefer to buy things. Can
I use IDEA?</b> Sure! Just run "gradlew idea" to generate
the project files.
<o:p></o:p></p>
<p><b>Is that "all"?</b> Should be. Pretty simple, huh? :P If
you run into problems, try to do as much as you can before you
come, and you can either ask for help on the JUG mailing list
(<a moz-do-not-send="true" href="http://okcjug.org/contact-us"
target="_blank">http://okcjug.org/contact-us</a>) or,
worst-case scenario, wait until the day of the JUG and get
help there (though it would help to arrive early ;).<o:p></o:p></p>
</div>
--------------- This message (including attachments) may contain
information that is privileged, confidential or protected from
disclosure. If you are not the intended recipient, you are hereby
notified that dissemination, disclosure, copying, distribution or
use of this message or any information contained in it is strictly
prohibited. If you have received this message in error, please
immediately notify the sender by reply e-mail and delete this
message from your computer. Although we have taken steps to ensure
that this e-mail and attachments are free from any virus, we
advise that in keeping with good computing practice the recipient
should ensure they are actually virus free. ---------------
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Jug mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Jug@lists.okcjug.org">Jug@lists.okcjug.org</a>
<a class="moz-txt-link-freetext" href="http://lists.okcjug.org/listinfo.cgi/jug-okcjug.org">http://lists.okcjug.org/listinfo.cgi/jug-okcjug.org</a>
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Jason Lee
<a class="moz-txt-link-freetext" href="http://cubtracker.com">http://cubtracker.com</a>
<a class="moz-txt-link-freetext" href="http://blogs.steeplesoft.com">http://blogs.steeplesoft.com</a>
<a class="moz-txt-link-freetext" href="http://twitter.com/jasondlee">http://twitter.com/jasondlee</a>
<a class="moz-txt-link-freetext" href="http://blogs.steeplesoft.com/+">http://blogs.steeplesoft.com/+</a>
<a class="moz-txt-link-freetext" href="http://blogs.steeplesoft.com/in">http://blogs.steeplesoft.com/in</a></pre>
</body>
</html>