My partner for this project was Sam Payson, and the final results can be seen at his MP151 page, here.
The ultimate goal of Arcadia was to create a program that would create the geography of an entire world (at least, an extremely large area) using fractal algorithms. After Sam and I finished the basic algorithm, we set to work optimizing the program and trying to make it produce more realistic worlds. The first new feature was the ability to add water to the map, essentially flattening out terrain under a certain elevation. We then attempted to implement a feature allowing the user to specify a number of continents.
Placement of continents turned out to be non-trivial. Eventually, we developed several different methods by which we could place continents randomly by encouraging elevation to be greater in certain regions. This also caused the code to run incredibly slowly, and the continents always turned out round. The semester nearing its end, we made the decision to scale back the goals of the project for now, and instead focus on producing a demo of the stable aspects of the project.
Currently we are working to create a demo that will run the new, optimized and rewritten code (some of which now uses assembly) in realtime, flying endlessly over an almost infinite, fractal world. It's not done yet, but we hope it will be soon.
The primary focus of the MP*51 program is to learn about open source software development. Though our plans changed over the semester, and we failed to achieve some of our initial goals, I feel that it is because of these pitfalls that this project has been such a great experience. I learned about scheduling, and some of the common issues that can befall group projects - especially during the busy spring semester, just getting the group together can be a challenge. Also, the unreliability of certain server hosting services played a role in our inability to show off our awesome pictures of the first iteration of the code. Next time, everything will be backed up more securely.
I also have had the opportunity to think about different sofware development styles. When entering the project, I at first tried to plan everything out, from top to bottom, in the classic "Waterfall" style. It quickly became apparent that this project was far better suited for a more iterative approach, and the decision to start small and build the program from the bottom up made a significant difference when it was necessary to change gears.