0x10c - Notch goes to space

I call it ock-see-ock.

Can't see this game succeed at all. Not a sign at all of hattez.

Surely it should be pronounced "two sixty-eight".

It's pronounced "notch".

merphle wrote:

Surely it should be pronounced "two sixty-eight".

That's what I thought, too.

Hex Ten to the Thirteen

Problem is, I've never even heard of a nice, clean 16-bit architecture. x86 was horrible, and I think it was the only actual 16-bit instruction set that was ever in common use. So I guess they kinda do have to roll their own.

I was under the impression that early RISC implementations were 16-bit, but it turns out they were all 32-bit. Still, it was designed with the object of simplification.

I love how crazy of an idea this is and it's great that Notch has the funds to build his dreams but... the more I read the more this sounds like "anti-fun". At least to me... It looks like there's an ultra-niche of fans out there that get it but I just don't. Am I missing something?

I'm sure there's a lot more to it. I suspect that the ship controls will be "black boxed", and so you'll have all the basics installed and ready to go. You can modify the systems yourself, or just trade for or otherwise acquire new software and hardware as needed. Probably you'll be able to craft the stuff too.

There's no way he's redoing something as low-level as Core Wars, it's gotta have a more accessible game around it. But I think it's very cool to have the option to mess with control software.

And don't forget, Minecraft's concept is too simple to be believed. "Players pick up blocks and stack them to create things". I mean, it's *stupid*. It's like a video game proposal for three year olds. And yet... Notch seems to have a genius for making simple things fun, and for allowing emergent properties to come to the fore.

Robear wrote:

There's no way he's redoing something as low-level as Core Wars, it's gotta have a more accessible game around it. But I think it's very cool to have the option to mess with control software.

Which is why I mentioned RoboCode upthread. I think the biggest obstacle to working out exactly what the game is about is the lack of IO spec, to know what the computer can talk to, or with other craft. I'll agree that there's going to be some manual controls (if for no other reason than as a fallback), but the options that programming some AI for ship(s) provides is quite big.

I've never dug into the X games, but isn't there some simple ship AI in that?

I'm hoping that the computer programming stuff is like redstone in minecraft. You don't need it to play the game but you can make some amazing things happen if you know what you're doing.

The impression I get is the computer thing will be for automation. You can fly your ship, fight, mine, explore and so on manually, but if you program your computer properly then your ship will continue to do those things even when you are afk or even logged off. It will be interesting to see how that works out.

The thing I find interesting is the admission that you could possibly need malware protection, which would mean ship-to-ship communication is possible, that communication protocols will be needed and handled correctly, and that the safety net won't prevent the code from doing all kinds of weird and wonderful things.

Or simply that there will be a burgeoning trade in software components, and that you'll need to make sure that what you install doesn't brick your ship 20 minutes out of space port, where pirates are waiting to collect your ass up.

MikeSands wrote:
merphle wrote:

Surely it should be pronounced "two sixty-eight".

That's what I thought, too.

The "c" is a superscript though.

It's more like "16 to the power of the speed of light".

0x10^c = "extense".

And it's not that C, it's the base-16 C. It's 16^12.

MoonDragon wrote:

Or simply that there will be a burgeoning trade in software components, and that you'll need to make sure that what you install doesn't brick your ship 20 minutes out of space port, where pirates are waiting to collect your ass up.

Pretty much. I can see a fleet of ships coordinating, but I could also see someone exploiting comms vulnerabilities to steal those ships.

I'd hope there's an equivalent to docking in EVE where you can go that's safe if you don't want to let it run by itself.

Hypatian wrote:

0x10^c = "extense".

And it's not that C, it's the base-16 C. It's 16^12.

You're right, that's how long the people slept.

I'm wondering if 16-bit computers are really going to have the memory space necessary to properly run networking of any kind. The 'natural' memory size for 16 bits is 64K, and that's not likely to be enough.

16 bits are just messy to program.... the whole segment:offset thing sucks. I'm really starting to think that he should be doing the 68000. There are incredibly fast emulators for that already out, and you can put enough RAM on one to do anything you need. The real hardware was limited to 16 megs (it only used 24 bits of addressing), though in practice I think the Amiga, the most expandable machine in that generation, could only do 8.5. I'm not sure if CPU or RAM is going to be the choke point on how many ships can run on a server. If it's RAM, then Notch could give each machine 512K or 1M, and then potentially charge you more money for more RAM or something.

A nice, flat-addressed 512K or 1M would be beautifully easy to work with, and it's definitely enough space to do GUIs and games and such.

I've been calling it ZeroX TenC.

I really wish he was providing a higher level scripting interface to ship functions rather than going all the way down to emulating an actual CPU. I can't help but think that this crosses some inaccessibility threshold that shouldn't be crossed.

I mean, give me python or lua or something and I can handle that, but this is going to require a level of nerdery that I'm not willing to dedicate to something like a videogame.

My math says it's pronounced "zero."

gore wrote:

I really wish he was providing a higher level scripting interface to ship functions rather than going all the way down to emulating an actual CPU. I can't help but think that this crosses some inaccessibility threshold that shouldn't be crossed.

I mean, give me python or lua or something and I can handle that, but this is going to require a level of nerdery that I'm not willing to dedicate to something like a videogame.

There are already projects that do C.

Yeah, I wouldn't worry. Little compilers are not hard to build.

Point of information: It's a 128kB addressable machine, not a 64kB machine. Word size is 16-bit, and memory locations are word-addressed, not byte-addressed. Of course, it's unclear how much memory the VM will actually have, or if that's something you'll have to upgrade, etc. Could also be some sort of bank-switched setup for larger memory sizes.

Yeah, it's just -- yuck, bank-switched memory bites. Segment:offset addressing in general bites. We had the technology to do this right in, what, 1983? Lemme go check, I'll edit this in a minute.

edit: 1979! Do it right, Notch, it fits your fiction, even.

From poking around a little, it sounds like the going theory is 128kB main memory, with a 1.44MB disk.

I honestly don't understand a huge amount of what is being said in this thread.

Vector wrote:

I honestly don't understand a huge amount of what is being said in this thread.

Unless you're a CS or EE major it's not surprising that you don't. The basic idea is that computers in the game will actually be realistically simulated computers that players will be able to program. The simulated computers are more akin to computers from 20+ years ago in terms of specs. People are discussing all the problems with both having such restrictive specs as well as difficulties of working with a realistic system.

I'm wondering if 16-bit computers are really going to have the memory space necessary to properly run networking of any kind. The 'natural' memory size for 16 bits is 64K, and that's not likely to be enough.

Actually, Ethernet originated in the mid-60's, and ran on weapons systems in the Navy. 64kB is more than enough to run a networking stack and do useful other things. Silicon Labs makes a modern Ethernet controller that runs with just 16kB RAM; I suspect that if we limit the features to what was needed in the early 80's, the requirement would be smaller. And AppleTalk took up only 6kB in the original Mac. That supported 32 nodes.

Just a thought - I see the point you're making, but I sort of wonder if you've forgotten that we did have networking back then, in those tiny systems. No offense intended.

Yeah, but even the wimpiest Mac ever had 128K.