Showing posts with label Java. Show all posts
Showing posts with label Java. Show all posts

Sunday, November 13, 2011

Minecraft Review

There’s a certain, magical sense of childlike wonder permeating throughout every moment of Minecraft that few of us have experienced since the cessation of our childhoods. It is a memory marked by the wondrous sense of innocence that we took for granted before our lives became inundated with the harried strife of reality, a memory of a time when every day brought with it a joyful new experience, a time when every nook and cranny of the enchanted world could have been a cave filled with forgotten treasure, a world where monsters lurked under the bed every night and we cried to our parents to protect us. For all of us, it has been decades since we last experienced that euphoric sense of novelty accompanying every moment of our existence, the very next morning becoming something we perpetually dread. Childhood has been lost forever to the insatiable maws of tomorrow, innocence is shattered forever while we desperately try to put together the shards, be it through our first breakup, our first job, or even the rite of passage of entering Elementary School.


mc181

And thus is the beauty of Minecraft. It is through the simple joy of exploration through which a long-forgotten facet of our each of our individual histories is recalled to life. This is an incredible game recalling a time when everything was new and hope bled through our fantasies into reality. It thus goes without saying that this is not a game for the decade, but one for eternity.

Gameplay
In simplest terms, Minecraft is a sandbox/RPG in which every component of the gameworld can be modified by the player and used as a tool. The goal of the game’s RPG component is to collect resources and build structures during the day to survive the night, during which the monsters roam. This is an extremely open-ended style of play and the game’s infinite range of possibilities becomes immediately perceptible. There is a goal to Minecraft and there is a final boss and end sequence, but the game’s already open-ended main quest is easily eschewed when one realizes the creative potential the game’s construction system offers. In short, the player must collect arcane materials buried deep in the earth to create a portal to another dimension to slay the “Ender Dragon”. It’s a childlike set-up that could have been conceived in any number of Kindergarten recesses and perfectly appropriate for the imaginative nature of the game.
Beta
What happens between the player’s initial spawn and the defeat of the Ender Dragon is totally up to the player. This freedom, shockingly enough, does not feel overwhelming, but liberating. Within moments, a single thought implants itself in the player’s mind: “I can do anything in this game!” Roaming the procedurally generated gameworld guided only by the built-in achievements guide is an exercise in glee. That cave over there? Grab a torch, let’s go spelunking in it! The grassy meadow over there? Go ahead, pick some flowers. The islands in the distance? Not a hard swim, I even see smoke rising from an NPC village there. All the resources you discover from deconstructing the gameworld can be used in the single most robust crafting system seen in gaming. Within minutes, the gameworld becomes a playset for your imagination, a kind of modern-day LEGO set. The trees, rocks and caves become the components for your tools, weapons, armor and houses, you begin to see the world around you differently.

That is until nightfall. Despite the joyously hyperactive imagination of the daytime, night in Minecraft is greatly reminiscent of a child’s dread of bedtime. The monsters of Minecraft are brutally persistent in their tenacity to chew on your brains, zombies will moan from unseen dark corners and skeletons will fire arrows at you from a distance. None of these enemies compare to the terrifying onslaught of the Creeper. A quadrupedal mass of wrinkled green skin, the Creeper is perpetually haunted by a sad, mournful frown. The most advisable thing to do when encountering one is to run the hell away. The Creeper can explode for an instant kill, causing the player to lose all progress, resources and equipment, respawning him at the game’s start. Watch out for these enemies, as they are terrifying to encounter. Night in Minecraft effectively becomes as horrific as enduring nights as a young child, the perpetual threat of monsters lurking inches below your mattress. Its a brutally haunting game to play and beautiful in the memories it evokes.

18upd2
A memory that will always stay with me originates from a few hours ago as I emerged from my safehouse prior to the break of dawn. Armed with a newly crafted stone sword, I beat down the zombies that were knocking at my door throughout the night and saw some cows and sheep across the strait on an island. I swam across the strait and slayed the animals for meat, wool and leather, the intent of weaving a warm jacket lurking in my mind. I heard an unfamiliar moan and raised my head to see, staring from about twenty feet away, a Creeper. I backed away, turned around, and made a break for it, sprinting as fast as I could go. I jumped into the strait and splashed my way across, thinking that the water would separate us because it could not swim. I emerged on the opposite bank and turned around, wading, already halfway across the river, was the Creeper. Terrified, I dashed away, fumbling over a hill, turning my head periodically to observe its progress as it quickly gained on me.

Not looking where I was going, I fell into a crevasse and injured myself. Looking up into the hole through which I fell, I saw that I rolled down about a hundred feet… losing the Creeper in the process… Wonderful… Getting back to the surface and back to the safehouse is going to be so much more of a bother. I lowered my head and saw, jutting out from the cobblestone of the mouth of an extensive system of interweaving caves and catacombs, a cache of glittering diamonds. Like in life, one downfall opens up a host of new opportunities. I picked up my pickaxe and set to work. When the diamonds were gone, I ventured deep into the cave system, eagerly seeking out an adventure.
Minecraft’s second game mode is called “Creative Mode”, and removes the constraints of hunger, experience, health, resources and gravity to allow the player to construct anything he can imagine freely. With the available mods and texture packs, incredible stuff can be done. Just look at some of the things the community has conceived.
Further proving the LEGO comparison: Minecraft has already been popping up in art and computer science classes all around the country. Its an exciting proposition with the potential to do a lot of good for society

Graphics and Audio
Minecraft, running on the same Lightweight Java Game Engine, of whose components I am using to power Dark Deception, suffers from scattershot performance. Despite the minimalistic and attractive 8-bit aesthetic the game adheres to, only on minimal settings is the game playable at an acceptable frame rate, at least on a common laptop. To run the game at its best, you’re going to have to turn off fancy graphical features such as ambient lighting and high-render distances. Its a shame, since Minecraft isn’t supposed to be visually awe-inspiring to begin with. It nonetheless channels the first moments of any Bethesda game at all times. A strong incentive to keep exploring is to see what incredible natural structure the procedurally generated world will come up with next, the vastness of valleys and mountains constantly pushing the player to go further.

From an audiovisual standpoint, it would appear that Minecraft is still under construction even this late in its release cycle. C418’s piano orchestrations sound great in the game, and the simple piano and synth soundtrack frames the game's theme well, adding great emotional ambiance. Sound effects have been vastly improved since the game's beta and now apply to all the game's objects. The high dynamic range of the audio gives night time a palpable sense of creepiness as zombies and creepers moan right outside the door.

Impact and Community
Minecraft’s creator, Markus “Notch” Perrson, expressed interest from an early point in making Minecraft open-source after sales died down. Already a vast amount of the game’s codebase is open and modifiable, giving the game an unforeseen educational and creative value. More importantly, the game’s openness has spawned a mammoth mod community unseen since the hacker culture of the early 90s. If playing the core game gives the illusion that anything can be done in Minecraft, editing the game’s source and installing modifications proves that anything can be really done in the game.
Minecraft_Portal
The game’s empowering truly comes to life in the various community mods for the game. Portalcraft, for one, turns the entire game into a reimagining of Valve’s subversive puzzler. An upcoming Zelda mod promises to build another entry in the venerable series, complete with functional items, environmental puzzles, dungeons and bosses. Pokemob, nearing a state of completion, recreates the entire Kanto region with complete character models for the original 151, and, oh yes, all the gameplay functionality of the original game, such as inventory, battles and Gym Leaders, will be implemented in the mod. Sadly, no word on Missingno.
minecraftzel
Minecraft’s openness has had a social impact on my community. I witnessed several people from my school who had no interest whatsoever in video games become enthralled by the idea of learning how to program in Java and build character models. Despite a lockdown on modifying school computers, Minecraft executables began to pop up on desktops like weeds. School bandwidth plummeted as multiplayer servers were clandestinely run on the community network. Its an easy game to become instantly obsessed with, and the extent of community mod support extends the value of an already infinitely replayable game to Olympian heights. A new generation of independent game developers is being incubated right now, and they are supported by the freedom that Minecraft’s code base affords them.

Conclusion
If there is one game you purchase this year, let it be Minecraft. Minecraft touched my soul in a way that I never imagined possible after my tenth birthday. This is a pioneering game and the embodiment of the values of freedom upheld by computer hackers that have been drowned out since corporations began to encroach on the medium. Notch and Mojang have effectively captured lightning in a bottle: the childlike playfulness that drew us to gaming in the first place. As we became entrenched in shooter after shooter, fighting game after fighting game, we have forgotten the youthful joy we so desperately sought after. How fitting is it that the original wonder of childhood would manifest itself in a world that, much like our own, is procedurally generated, be it through science or the rule of God. Minecraft shines as a beacon of hope, not just for gaming, but for mankind. Play this game… and tremble. 5/5

2011-09-04_023552_407451

Monday, November 7, 2011

Dark Deception Developer’s Diary #3

It has been a good few months since the last Developer’s Diary for Dark Deception, and a lot, A LOT, has happened in the time since the last update.

For one, we now have a great new programmer. Bard Soedal of Mandal, Norway has been a Minecraft modder for several months now and has authored several Pokemon-themed character models such as a blocky Nidoking and an even blockier Pokemon Center. Awesome stuff. He’s now our new world-engineer and will be contributing his incredible talent to Team Corsehead until he returns to Norway next summer.

In terms of development, I have progressed to begin building the ESA Power Plant, the game’s first dungeon and the location of a critical story event driving the entire game’s action. It has been a long process of individually designing tiles pixel-by-pixel and laying them out. The content that you see below is pre-release content and will never reflect the look of the final version of the game.

balcony breakroom entrance infiltration - Copy  infiltration_destroyed tankhangar upstairsoffice

All pretty cool stuff, the boards above collectively took about two months to construct.

I’ve been taking AP Computer Science since the start of the school year and in the few months I’ve been studying Java, have learned enough to put together a pretty basic computational prototype built out of a bunch of if statements, a lot of void methods and a few arrays and classes. The battle loop is fully functional as are special move-systems and damage and spoils calculation. However, a lot of functionality has yet to be implemented, including a modularity system so that the same code for the battle loop can work with any given enemy, character, equipment set or move-“deck”. Furthermore, the game’s most unique characteristic, a set of three offensive and defensive stances that any character in the battlefield can take for damage mitigation and bonuses, remains under construction.

Programming has been quite a joy to learn and has the lovely effect of putting one in a meditative state as one contemplates a variety of creative ways to solve problems. A great deal of imagination is needed to code effectively. Computer Science is a language that all should have the chance to undertake. Really cool stuff.

developing dd

bsv1

pokemon

I tried exporting the demo from Eclipse as a .jar file, but the program crashed on launch. I’ll be working on finding a way to make the demo playable to anyone who wants to try it out in the coming weeks.

Peace
Kevin

Saturday, June 11, 2011

Mouse Program

This is a cute little mouse program that I made in Processing on the way down to San Diego from Los Angeles. Its an interactive animation and looks pretty. Feel free to mess with the source code and see what you can do.

Friday, April 15, 2011

Tactile Cave 0.95 (Finally!)

After months in limbo, the new 0.95 version of Tactile Cave is out and available under a CC-license! This new version features looping music, new art assets and improved debug. Its embedded below!


Not working for you? Check out the original applet at http://www.openprocessing.org/visuals/?visualID=26875

To progress past  the first screen, hit enter. Tap space to start the game after reading the instructions screen!
Have fun! This is Team Corsehead’s first project!

EDIT: With the current given frame size, the game will not be played properly on this site. Check out the original applet at openprocessing for the best version.