Wednesday, April 18, 2012

BF Interpreter; Updates

I've been working on projects recently, so I should have some interesting things to put on here again.  This is a pretty simple thing, but I wrote a BF interpreter in ruby.  BF is a very simple language, so the interpreter is short and doesn't need any sophisticated parsing (all bf instructions are one character).

Code can be found after the break.

Wednesday, October 26, 2011

More content soon hopefully

I haven't posted anything in a while, because I haven't really got a lot of note done recently.  I should have something cool in the next week.  Also, apparently the Google AI contest for Fall 2011 is up.  I plan on doing some work on that too.  You can check it out at http://aichallenge.org/.

Monday, October 3, 2011

More Minecraft Programming

I haven't looked into reading picture data at all yet; instead I worked more on making cool structures programmatically.

First, I cleared out a large area.  This is a 256*256 area, which is equivalent to a quarter of a region, or 16*16 chunks.

Annnnnnd here's what went in there:
A giant glass hemisphere!  I also made a regular sphere:

The last thing I did was turn all of the water from one region into lava.

Here's a top view made with a mapping program called Tectonicus:

That's all for this week.  I plan to make the picture program and do more work on making cool minecraft things soon.  First though, I plan to finish a project I'm working on right now that's unrelated to minecraft.  Hopefully by next week it will be at a point where I can show it off.

Sunday, September 25, 2011

What's that off in the distance?
I finally got my program to the point where it can edit the blocks in a minecraft save!  Now I plan to work on being able to import pictures.  I might even try to import 3D models, although more likely not.  I plan to first convert pictures to colors that can be represented with minecraft wool, and then put wool in.  I don't know much about picture file formats, so this might take a bit of work.  I think python has good libraries for this, so I might not even have to deal with that type of thing.

Saturday, September 17, 2011

Introduction

Basically this will be a blog for me to show the interesting programming projects I'm working on.  Part of the purpose of this blog is to help encourage me to actually work on my ideas.  Hopefully this will also encourage me to work harder so I actually have things to post here.  Right now I'm hoping to have posts occuring about once a week.

Some of the projects I have plans for right now are:

  • A minecraft picture maker: You would input an image file, then it will place that picture in a minecraft map using colored wool.
  • A chess AI Competition at my college: AI competitions are fun and educational.  This would be modeled similarly to the Google/Waterloo AI Challenge.  Their set-up is open source so it should be easy to get something similar running.
  • Learn Haskell, possibly lisp:  I've been looking at Haskell and it's a really interesting language.  Lisp is similar and probably more useful, but I haven't looked at it as much.  Functional programming is really neat, and I like a lot of the ideas from Haskell such as "pure code" (separating the main logic from messier bits such as input and output).  I want to tell the computer what to do, not how to do it.
  • Learn openGL:  OpenGL is really cool and useful.  Unfortunately, it's horribly difficult to get started with.  I've done a few very simple things in openGL, but I really want to learn about making better things.