27 Feb 2011 @ 9:47 PM 

With Success comes emulation, and this holds true in the software industry at least as strong as in any other. Recently I plugged a relatively recent game purchase I made- Minecraft. Excellent game. It has bee nwildly successful and inspired many people to write “clone” games with a similar idea. Here is a list of a few:

Manic Digger

I won’t lie; I haven’t actually played this so I’m basing this on videos; but to be honest, this looks really quite stupid; it’s a outright attempt to “copy” Minecraft and steal away some of it’s success. What makes it interesting though is that it was mildly successful on that count for a single reason- it’s not written in java. Now, I’ll admit that java is quite far from my favourite language, but that hardly came into play when evaluating minecraft. Basically, if you base your opinion of a software product on the language it was designed in then you are a moron. It doesn’t matter. It’s fair to point out stuff that it is missing or has as a result of the language choice; for example, Minecraft is written in java and therefore there was no need to port or even compile the game for a variety of platforms. Most people think “so what, that just means it’s easier for people to use different Operating Systems”. I have two responses to that: First, don’t trivialize the difficulties of trying to write a single code-base that works on multiple platforms, and second, the advantages are hardly limited merely to operating systems; after all, Windows runs on two platforms today that are common; x86(32-bit) and x64 (64-bit). What makes java interesting is that for a 64-bit machine you install the 64-bit Virtual Machine, and the Interpreter Compiles the java bytecode to 64-bit machine code; so the game will automatically take advantage of 64-bit where it can.
The following paragraph has been revised; I originally thought that Manic Digger was written in C++ (I noted already I didn’t actually look it up- I was basing that on the frothing love the clone had by many people who it seems are entirely unaware of what it was really written in)
Now, Manic Digger is written in C#. Who the fuck cares. If you are basing your opinion of a product on the language it is written with then you are clearly not trying to provide an objective opinion. C# has very few advantages over java, and certainly none that aren’t countered by equal advantages that java holds (better Linux support being one… ever try getting a C# program working in Mono? Not happening. And If my quick 5 minute research is to be believed, Manic Digger uses XNA, which in turn uses DirectX and therefore will be entirely unavailable to other platforms, limiting it to windows. As I noted, I had to change this passage; many people are still pushing Manic Digger as superior because it is written in C++ (which it isn’t; thanks to a commenter (exe) for correcting my misinformation); so the question is why people seem to think that something being written in C++ is better then something written in java anyway; seems a tad preemptive; The only advantage C++ would have would be pure speed, and that pure speed is completely irrelevant since it makes up for it by being about 10 times a bigger pain in the ass.

Basically, what I am trying to say, is that changing the language used for something is not going to make anything faster unless you coincidentally happen to be doing a lot of something that language is really good at. C# and Java are extremely similar; Personally I prefer C# if only because it is very mature for it’s age, Also because I haven’t used java since the awt days and can’t even get the IDE to make me any sort of basic GUI. That’s more my own incompetence with it then any particular problem with the language though; truly they both use Virtual Machines (the java VM for Java and the CLR for C#) each of those VMs have more then that one language running on them The java VM has Scala, as well as several other languages that can be compiled to it. the CLR has C# as well as F#, VB.NET, and a few others. Aside from the fact that C# is a bigger pain in the ass to get working on Linux or Mac machines (having to rely on Mono, and almost requiring that you plan ahead from the beginning to make it work in Mono), and some programmatic features, there is no visible advantage that C# would have over Java; saying C# is C++ only confuses people for a while until somebody helpfully corrects their incorrect information. But what I find weird is why people would find that simply a choice of language- say C++ over Java – is in and of itself a sign of marked superiority- you can write shitty applications in any language at all, and speed is more up to the choice of algorithm then any ridiculous perceived speed improvement from having a compiled language like C++; additionally, I’m pretty sure we left the era of needing to use finely tuned machine code compiled applications in the late 90′s, when it was realized that programming using those languages was a huge pain in the ass.

Thing is, C++ doesn’t really have any marked advantages over java aside from a little bit more raw speed (at the cost of requiring native compilation, and thus requiring platform-specific distributions) and a messier syntax, more difficult to use debugger, and far less extensive class library. It’s an excellent language that should be judged on it’s own merits, but the moment you start comparing programming language you may as well start comparing fruits. Many people have their own favourite fruits, but everybody also understands innately that if somebody says “the banana is the best fruit” they truly mean “I think the banana is the best fruit”. They might list their reasons, maybe even state why Bananas are better then Oranges or easier to eat then Apples, and so forth. But everybody knows it is merely opinion on that persons part, since an equal number of people no doubt feel the same way about pomegranates or Apples or Oranges or Grapes. Grapes can be turned into better wine then Bananas, but Bananas make a far better Banana split.

In any case, judging from what I’ve seen, Manic Digger is far too similar to Minecraft to be said to have been “inspired” by it. I personally toyed with the idea of trying to make a Minecraft clone. Then I realized that I would be wasting my god damned time, unless I can think of some really good changes and additions to make to the core mechanic of the game, I wouldn’t be adding much gameplay wise. And at the time the only advantage I could see was that it would be implemented in C# which hadn’t been done before, a misconception I have recently been cleared of.

A Common thing that people bring up is that the first FPS game- Wolfenstein, spawned many clones. What is interesting about this argument is that Wolfenstein didn’t have any clones at all. Many people made modifications to the actual Wolfenstein Game, but with a few exceptions (Ken’s labyrinth) there were very few actual clones; and of those that were made, none of them went so far as to be an exact duplicate; that would defeat the purpose. Ken’s labyrinth, for example,was far less “serious” in tone, had more colourful graphics, and, even added a few game mechanics. (No “Guns” for example). It wasn’t until Doom was released that there were some true “clones” of the game made. Of particular interest is that even then most of the “clones” weren’t clones at all but rather new games using the exact same engine; that is, they didn’t rewrite all the 3-d stuff for the game, instead they licensed the Doom Engine from id Software; this was used in Heretic and Hexen, as well as a few other games. Even ID software themselves jumped on that bandwagon and released Doom II commercially. Basically, Yes, clones of games are often made, but that doesn’t make them right- and it doesn’t make them popular either. I cannot name a single Doom clone. The closest thing I can think of off-hand is the Alien Vs Predator game for the Sega Saturn (or Jaguar, I forget), and that merely used the Doom graphics engine- under license. The actual gameplay was far different from Doom. There were clones of Doom that copied a lot of the game content and idea, but nobody remembers those because they lacked originality.

Aside from Manic Digger, the only “clone” I know of is “fortresscraft”. And, while it certainly is a clone in many of the most common definitions of the word, there is something that needs to be considered- platform.

Fortresscraft

is a 3-dollar game that to my understanding is going to be released on XBox-Live. It looks pretty stellar to be honest, but reading the inevitable “debates” that spring up, I’ve noticed several things on both sides.

From the “OMG notch is fecking god” side, they don’t seem to be considering the fact that the game is not really directly competing with Minecraft at all- it’s for an entirely different market segment and if I had a Xbox 360 I would certainly try it. Of course if I had an xbox 360 or any console of that generation I’d have other problems, but I digress.

On the other hand, the people holding down the fortresscraft provide some specious defenses for the clear “clone” that fortresscraft is; first, they raise the silly argument that it’s no different from clones of wolfenstein. Well, aside from the facts I already stated that there weren’t really any clones of wolfenstein, (in the sense that they were exactly the same as the id software game in almost every way, like the SNES version of wolfenstein versus the original PC installment, and weren’t clones as much as they were licensed redistributions of the same game) it’s a false dichotomy to suggest that they are a similar happenstance; the two games have almost identical goals, almost identical items and blocks and mechanics; the sole change seems to me to be only in the fact that the XBox version has greatly enhanced graphics (and they do look awesome). Of course, Mojang (and people REALLY need to stop saying “Notch” when referring to the minecraft development, since he is now quite far from alone in creating and adding features to the game, that would be like blaming every single thing you like or dislike about Family Guy on Seth Macfarlane or everything you like/dislike about the Simpsons on Matt Groening. They are hardly making those things single-handedly)… Mojang couldn’t really sue anyway since as far as I understand it they didn’t trademark anything in the game nor do they have copyright claims on any of the content; but a safe analogy might be to flip the bit and go back to the late 80′s; and even back to ID Software.

Nintendo, Console gaming supergiant (at the time, anyway) had just released their blockbuster, Super Mario Brothers 3. With smooth, two way scrolling, colourful tile animations and great gameplay, it was raved about by millions. Look at any other game on that console.

Are there any “clones”- even remote clones- of Super Mario Brothers 3 on the console? Good luck finding any. On the PC, there could have been a clone of Super Mario Brothers 3 made- almost block for block the same; the folks that would later go on to create Id Software had put together a small sample that duplicated the very first level of Super Mario Brothers 3 in all it’s fine detail, replacing the game character (Mario) with “Dangerous Dave” a character who was prominent in some of the games created by one of the other authors. What makes this notable is that the PC was not considered a gaming machine even in the broadest sense at the time; it was considered far behind in terms of capability to systems Like the Nintendo Entertainment System and ZX Spectrum. When they sent this disk to Nintendo to inquire about wether Nintendo would like a PC version made of the game; they declined.

It’s important to note what happened here. They didn’t take their engine and create a very near but not quite the same rip-off of Super Mario Brothers 3; They didn’t even create an engine-similar verison of the game that had different level designs- they practically redesigned the game from scratch. And that is a step I think may have been forgone in many of these newer games that clone the latest trend. The result of their efforts gave us Commander Keen, which is hailed as a gaming classic by many; but nobody whose played the game would say it was a “clone” of Super Mario Brothers 3.

Fortress Craft feels like a Commander Keen that never came to fruition. Aside from bringing a already existing game to a new platform, it doesn’t do much at all. (although the graphical improvements are quite stellar). That isn’t to say I have a problem with the game; as I noted if I had a system that I could play it on I would totally buy it, because it looks great; but it doesn’t really build it’s own “identity” since it looks really quite similar to Minecraft with a texture pack. It has really quite the same goals (which is to say none at all) and so forth. Many Console gamers looking forward to it defend it by saying that “Notch should have done it himself if he didn’t like it”. But really, I don’t think that is a good way to put it. Releasing a Java game on the PC and releasing a Console game are totally different things; what blurs things quite a bit in my opinion is that for, at the very least, the very last generation, Consoles have ceased to exist. As Far as I’m concerned, Consoles have reverted to being “specialized game Computers” which was originally merely a moniker used because Personal computers were new and fresh and the Console makers wanted to identify with them.

A Game Console usually uses a hugely different set of chips then a standard PC; for example, the Super Nintendo uses a totally different set of chips, by totally different manufacturers, then any computer on the market at the time; it used Cartridges for the games as well, something that simply has no PC equivalent. Nowadays, though, many consoles use Intel compatible processors and even the same core Operating System software (in the case of the Xbox, surprisingly relevant here considering it’s the one getting fortresscraft). They have hard drives.

As far as I’m concerned, a Game console should not have a fucking hard drive. That is utterly stupid. That’s a computer thing. Not console. Although to be fair that could be extended at least in part to CD-ROM media. In either case, Game consoles are just not something that even enters the minds of game programmers; BASeBlock, for example, is not something I can just decide one day will run on a PS3 or a Wii or a XBox 360; that is something that usually needs to be planned from the get go, or a rewrite is required. Besides, there are plenty of silly little block-breaking games on the Playstation anyway. I think of BASeBlock more as “programming practice”.

The explosion in the gaming industry has caused consumers to trivialize the very methods used to create the games they play to the point where everybody is a armchair game designer, programmer, and lawyer. All with a console game controller in their hand as their qualification.

Posted By: BC_Programming
Last Edit: 28 Feb 2011 @ 01:08 PM

EmailPermalinkComments (4)
Tags
Categories: Programming
 27 Feb 2011 @ 8:52 PM 

Unless you’ve been living in a cave for the past year, or are a hermetic monk seeking spiritual enlightenment, you no doubt have had least heard about Minecraft; I’ve referred to it in a few of my previous posts. What exactly is it?

Well, It’s a game. That much should be clear. But the question should really be “what makes it worth mention”? Well, That’s a loaded question, since naturally opinions differ. Some people think it’s the best thing since sliced bread; others think it’s nothing more then a child’s plaything, like lego. I fall neatly between these two.

The basic idea is that there is:

  • No story
  • No Objective
  • No Boundaries

Anything you can think of doing, you usually can do. The nice thing is that it appeals to several different game players, who would normally seek different genres; you have the ability to explore and adventure through caves and find dungeons, and fight several types of enemies. Seeking treasures and materials; or adventure above-ground to find scenic locations or certain rare above-ground material deposits. Another “segment” is that if you can think of it, you can build it (as long as your idea fits within the game engine). For example, if you want to build a brick house, you can. But you will need to adventure and look for clay deposits, and then fire that clay into bricks, and then fashion the bricks into Brick “Blocks” which you can build with. It tries to balance the various things. Of course, that last bit is a taste of the concept of “crafting” which adds the “craft” to “minecraft”.

Basically, you can arrange various materials in a grid, and then that can create a new item that has a new use; For example, you can create axes, which make it easier to chop wood; shovels, which make digging dirt,sand, clay, and gravel easier; pickaxes, which are a necessary staple for underground exploration, swords to help inflict damage, armor, and various other tools and implements. Some people say that it’s the “procedurally generated world” that makes it worthwhile; I have to correct them, however, since although the world is “procedurally generated” that is no different then random maps on age of empires or Command & conquer; that is, the maps are generated procedurally. The appropriate term might be dynamically generated worlds- as you enter new areas, the game will randomly generate those new areas It’s not really so much “random” as it is “random with cues” that is, it doesn’t just randomly place blocks in a complete noise distribution, it randomly generates terrain and caves to look “natural”. This makes the replay value infinite; since even on the same file you could practically indefinitely go in a single direction and never run out of areas to explore. This brings about what I feel is sort of a bad point, though; while everything is generated randomly, the game has a habit of making things look pretty similar; in many ways, once you’ve seen one minecraft desert, you’ve pretty well seen them all. Of course occasionally the generator tosses in some unique landmarks or strange landforms, such as perhaps a dungeon lying right underneath sand so that the sand creates a small “dip” with exposed cobblestone, or perhaps grass covered mountains of trees in the center of a vast desert, etc.

This doesn’t so much detract from the game as much as it makes it easier to get lost. Thankfully, it usually throws enough unique landforms in that you can recognize them; “ahh, I remember, my main base was north of that mountain with the giant cave near the top”. The caves can sometimes be immense; having to light up every crevice to prevent monsters from spawning can get repetitive and boring, as you constantly find that the paths branch out in a handful of directions, and you find yourself getting lost near the bedrock with no torches, or something (which is more a result of being unprepared and reckless then of a particular problem with the game).

In a followup post I will discuss several “clone” games that are attempting to siphon off of Minecraft’s success, and even bring the game to new platforms.

Posted By: BC_Programming
Last Edit: 05 Jan 2012 @ 06:42 PM

EmailPermalinkComments (0)
Tags
Tags:
Categories: Games, Programming
 27 Feb 2011 @ 9:06 AM 

Whenever a new “discovery” is made of an ancient device like this one , it sparks debates about wether such a device is or is not a computer; in this case, by the commenters.

First, It’s important to note that the people discovering and working with these devices are Scientists they know damn well what they are talking about. There are far to many bloody armchair scientists who have this egocentricity that makes them feel like they are qualified to veto the findings and declarations made by the people working with this device hands-on for months and years based entirely on a short demonstration and explanation of how the device works. The people studying these types of discoveries are not homeless, educationless retards from the street; they are well-educated scientists who specialize in exactly that field, they know what they are doing.

The problems arise- well, at it’s core the reason is because so many people are egotistical morons – but also it’s because those ego-tistical morons don’t realize that “Computer” is a general-purpose term. Today, in common vernacular it generally means a desktop or laptop PC; based on this many people somehow feel that things like that described in the video are not really computers. In the comments there, there was even a debate about whether an abacus was a computer.

Of course it is. The person making that statement is clearly an uneducated troll. A Calculator is a computer; most people recognize that. But, a Computer does not need to actually perform any tasks on their own; a bunch of rocks are a computer just as much as our own fingers can be for counting or small objects. There is no requirement that a “computer” actually do the computing; in the case of us using our fingers we are using them more for “storage” then for actual calculation. But it still counts; a Computer explicitly means any device or devices designed to assist in the act of computation. So nearly anything can be called a computer. Of course whether something is technically a computer or not is a different story then that of whether people will understand what you mean when you say it; no doubt you would encounter any number of idiots who will argue your statements, much in the same way that there always seems to be a person in the room who has no idea what the difference between imply and infer are.

Posted By: BC_Programming
Last Edit: 27 Feb 2011 @ 09:07 AM

EmailPermalinkComments (0)
Tags
Categories: General Computing, idiots

 Last 50 Posts
 Back
Change Theme...
  • Users » 737
  • Posts/Pages » 112
  • Comments » 38
Change Theme...
  • VoidVoid « Default
  • LifeLife
  • EarthEarth
  • WindWind
  • WaterWater
  • FireFire
  • LightLight

PP



    No Child Pages.

Windows optimization tips



    No Child Pages.