Minecraft Creator's New Game Called 0x10c
silentbrad writes "As announced last month, Notch — creator of Minecraft — is working on a sandbox space game (no, not the Mars Effect April Fools joke, though it's similar). "The game [0x10c] is still extremely early in development, but like we did with Minecraft, we expect to release it early and let the players help me shape the game as it grows. The cost of the game is still undecided, but it's likely there will be a monthly fee for joining the Multiverse as we are going to emulate all computers and physics even when players aren't logged in. Single player won't have any recurring fees. ... The computer in the game is a fully functioning emulated 16 bit CPU that can be used to control your entire ship, or just to play games on while waiting for a large mining operation to finish. Full specifications of the CPU will be released shortly, so the more programatically advanced of you can get a head start.""
Seriously? You think a site like /. doesn't have readers that might be interested in a game that contains
a VIRTUALIZED CPU THAT CAN BE FREELY PROGRAMMED?
What are you, some sort of reddit user?
Support FSF: Stop thinking with your wallet, and think with your imagination. (cc/non-commercial)
Bit-coin fortune, here I come.
Also? RTFA.
Here's the CPU:
http://0x10c.com/doc/dcpu-16.txt
Support FSF: Stop thinking with your wallet, and think with your imagination. (cc/non-commercial)
I'm sure notch is able to write terrible code in every language.
I'm surprised we haven't seem more of this already. I guess the success of WoW has really dumbed down the MMO scene. Back in the day I played around with writing a BBS door game like Trade Wars 2002, but the behavior of your deployed fighters could be scripted and they could perform actions while you were offline. 0x010c looks awesome. We need more games like this.
Uh, Mojang definitely is "indie". Indie does not mean small or low budget, it's short for independent, as in, independent of the major publishers. Mojang self publishes, hence they are "indie". One hit game does not make them a major publisher.
And the 16-bit CPU is programmed with...assembly? Jesus Christ, please tell me that's not the only way he plans on letting people utilize it...
If you don't like it, nut-up and write a C compiler!
How many games run the scripts on the server, even when you're not logged in?
Program Intellivision!
Took me a few minutes to figure out, but the title is actually 0x10^C, which is 16^12 in decimal, which is 281,474,976,712,644, which is the year the game is set. Clever!
Well, the simulated processor is 16 bit, but that just runs the code you write to control your ship and such, as I understand it. Read carefully: "The computer in the game is a fully functioning emulated 16 bit CPU that can be used to control your entire ship, or just to play games on while waiting for a large mining operation to finish."
That means as part of the game, the game provides you a computer to work with, and that computer is 16 bit. There's a whole game going on outside that computer.
Program Intellivision!
It's very similar to the basic models of the PDP-11. 64K of 16 bit words, two-address instructions, operands can be registers or memory. It should be possible to modify a PDP-11 C compiler to compile for the thing.
No indication of how I/O works, or if there are timers or interrupts. If you're supposed to control a spaceship with this, they're going to need those. PDP-11 I/O was done by putting devices on the same bus as memory, and storing into their device registers. But the spec here says that you have 64K words of memory; no portion of the address space is reserved for I/O. So they may use the unassigned opcodes for I/O.
What I thought was the most interesting paragraph:
The possibilities of this CPU and generator are... Fascinating. For instance, users players (see, lines are already blurring) can exchange programs, so you can expect a lively scene of people exchanging programs. There's a nefarious side to this as well - Notch will not stop anyone from making viruses, so even computer security becomes an element of play. A virus could, for instance, disable a ship's weaponry or shields.
I can only imagine how godawful this would be if written in Java. Minecraft was bad enough on that front. I don't want to know what an emulated CPU would do in a JVM...
You mean like redstone computers that ALREADY EXIST? There's plenty of turing-complete implementations. And notch wasn't even TRYING to do that with minecraft. So please eat your words, immediately.
You're just showing how ignorant you are about software languages.
GCS/MU/P d- s:- a-- C++++$ UL++ P+ L++ E+ W++ N o K- w--- O M+ V- PS+++ PE Y+ PGP t+ 5- X R++ tv+ b++ DI++ D++ G+ e++ h-
A different point of amusement: The processor's capabilities and speed are roughly equivalent to the processor in the Intellivision. Most instructions are 1, 2 or 3 machine cycles long, but the processor apparently only runs at 100kHz. The Intellivision's CPU is 895kHz, but instructions take 6 to 14 cycles. The Intellivision is slightly faster, but lacks hardware divide/multiply and has less flexible addressing modes.
So, on the whole, it looks like "Intellivisions.... In..... SPACE!!!!!!!"
Program Intellivision!
Because that doesn't fit with the plot or mechanics of the game?
The plot is that the space race never ended, so in 1980ish we had ships equipped with 16 bit computers and cold sleep chambders. An endianness bug caused people who wanted to sleep for 1 year to sleep for 0x10^C years (which is where the name comes from), so now you all have to rebuild stuff.
The mechanics inolve writing programs that will be run offline; your computer in-game will execute a particular number of cycles per second. With a low level assembly language, Notch can (and does) define precisely how many cycles each instruction takes. How would you do that for a scripting language with API hooks? It would end up being ridiculously complicated.Doing it in assembly like his lets people hand-optimize their stuff a lot easier, especially when (as you say) the high-level languages will be quickly available anyway.
Basically, doing it your way would be fairly blah.