8 ms·
Now here's an interesting bit: "Question: can we trade the programs we create? How will you stop malicious viruses etc?" "yes. And I won't stop viruses, the p
by phoboslab 15y ago
Now here's an interesting bit:
"Question: can we trade the programs we create? How will you stop malicious viruses etc?"
"yes. And I won't stop viruses, the players will have to do that themselves."
~ https://twitter.com/#!/notch/status/187474819980328962 https://twitter.com/#!/notch/status/187474819980328962
- exch 15y agoNice. With a bit of fiddling one could perhaps invert an enemy's shield polarity. That always seems to work miracles in any sci-fi show.
- untog 15y agoReverse the polarity of the neutron flow. Works every time.
- dlikhten 15y agoThis opens a whole stream of electronic warfare, however, the problem is that this will be writing programs that have no real-world usage. Except... These programs will be a great way to introduce both kids and adults to programming as learning it will give an edge to people. Question: Will we need to program an OS? And does it run Linux?
- Florin_Andrei 15y ago> These programs will be a great way to introduce both kids and adults to programming This would be a tremendous way to do that. Programming on normal computers is always kind of disconnected from the real world. So, your program can add two and two. Great. Now what? Microcontrollers alleviate that issue to some extent. Now your program can walk and talk, and push real-world objects. But you kind of need to learn a bit of electronics too. Notch's Universe solves this issue neatly. It's a mock real world, with programmable computers. Now your software can do some interesting mock-real-world stuff, like fly spaceships. That's pretty neat.
- swang 15y agoLearning about assembly/to-the-metal coding is probably not the best way to learn programming. "OP? LOAD? REGISTER? PC LOAD LETTER? What's a word? There's only 8 registers? Does that mean I can only save 8 things? What do you mean I have to push things into a stack?" This is why most people advocate learning python or ruby. You don't have to deal with the underlying manipulation of the computer until you've decided you actually like programming.
- scott_s 15y agoConsider that a while back, that was the only way to learn programming. Personally, I think Python is a great way to teach programming, because it allows us to get to concepts quickly. Accidental complexity is at a minimum, and the inherent complexities of programming become the focus. But, even thought that's my personal preference (based on some experience; I've used Java and C++ to teach programmers and had to explain away accidental complexities), I hesitate to say it's best because I have no evidence backing up that claim. What's important is learning certain concepts, perhaps the most important of which is algorithmic thinking. That is, knowing what result you want, knowing how you start, and being able to reason through how to get from the start condition to your desired result, step-by-step. What helps is when the result you get is something you care about. I can easily see that for some people, getting something to behave a certain way in a videogame will be a more compelling result than others.
- tptacek 15y agoKnuth would disagree with you. And PC LOAD LETTER?
- mightywok 15y agoI love me some Donald Knuth references
- jlouis 15y agoThat depends. The Knuth MIX architecture is much like the architecture Notch has in mind. But the more recent MMIX architecture is far more like a modern 64 bit RISC system. In fact, it does look odd that Notch would prefer such an old behemoth nowadays. An MMIX like ISA would open up the world for compilers much more. With this, it looks like people should be confined to writing simple stuff - which is kinda the point but still rather sad.
- Zaak 15y agoI expect that there will be some kind of default OS released with the game, and that many alternatives will pop up very quickly. It will not run Linux, because Linux requires a 32-bit CPU with megabytes of RAM. Someone might write a Linux-like system for it though.
- jiggy2011 15y agoMost likely it won't need anything other than some very basic firmware which would be part of the emulator. It is unlikely to need any mechanism for managing drivers for example (unless you can build custom hardware). You might need some form of scheduler if you are running different programs to do different stuff (weapons , engines , navigation) but this could be something very simple and again baked into the emulator. Some form of shell might be nice, but again not necessarily required.
- Zaak 15y agoYou could run your spaceship computer like that, but you could also install a multitasking system that allows you to download files from your favorite space BBS while playing a game of solitaire and plotting the course to your next mining asteroid.
- jiggy2011 15y agoNotch suggested on twitter that there would be more than 1 CPU for each ship , so I imagine multitasking would work that way.
- tlrobinson 15y agoNot to mention a MMU. Of course that didn't stop someone from implementing an ARM emulator on an AVR and running Linux on it... http://hackaday.com/2012/03/28/building-the-worst-linux-pc-ever/ http://hackaday.com/2012/03/28/building-the-worst-linux-pc-e...
- ricardobeat 15y ago
- samstave 15y agoYou would clearly have to reroute power from the primary core to the auxiliary shield systems which have been modified based on the tachyon attraction theory and amplified by shutting down unnecessary support systems on storage decks 3, 6, 11 and 42.
- andypants 15y agoSomebody can write anti-virus software for the game and sell it!
- jiggy2011 15y agoI worry about the griefing potential here. I can imagine nothing pissing off a noob more than getting a virus within 10 minutes of play and having no idea how to stop his ship from self destructing. Perhaps this will need some sort of firewall system built in where ships cannot communicate unless ports have been explicitly opened. Perhaps some sort of communications proxy that can serve for safe communications. It could have a system similar to EVE where high security systems have infrastructural to mitigate risk whereas low sec systems lack this but contain the best rewards.
- coderdude 15y agoI was thinking they could treat software and components like we do when granting third-parties permission to access our Twitter/Facebook accounts: Plasma Shield Generator requests the following permissions: * Read/write to the ship's log * Draw power from the core * Use the red alert system Plasma Shield Generator will not: * Access communication protocols
- nknight 15y agoIt's 128KB of RAM, that's the same as the original Macintosh in 1984. I would be surprised if it ran at more than about 10MHz. And nevermind the constrained resources for implementing any of this hypothetical infrastructure, unless Notch adds an MMU, you can't enforce permissions You can't think about this in modern terms. It's not a modern computer. It's a 1980s computer, and it's supposed to run a spaceship. Think microcontrollers, not smartphones or set-top boxes.
- coderdude 15y agoCouldn't the permission system exist outside of the constraints of the in-game computer (as just some game mechanism)? If each of the ship's discrete components were accessible at some address, couldn't the game enforce the permissions at a level above the simulated CPU? A rough static analysis of the code might reveal where those components are accessed, and as long as you enforce permissions while the software runs then you should be able to catch anything that tries to slip past.
- jonnycowboy 15y agoThis is covered fairly extensively in Neil Stephenson's Snow Crash. It even uses the same term for the persistent world "metaverse!"
- Florin_Andrei 15y agoNotch is playing God. Well, actually that sounds like a recurring theme, now only taken to a more complex extent.
- nooop 15y agoHe won't stop viruses, but will those viruses be made illegal in UE?