Notch's next game is an MMO
0x10c.com
0x10c.com
Star Trek Online's #1 most common feature request from beta testers was "ship interiors." Players didn't want to play "WoW in Spaaaace" game. They wanted to play "The Sims meet Star Trek" and relive their favorite Star Trek TV episodes. That sounds like a pretty cool game (for a small, but dedicated niche), but Perpetual's game designers scoffed and (having worked at Blizzard) proceeded to create "WoW in Space."
> A cloaking field, for example, might require almost all the power from the generator, forcing you to turn off all computers and dim all lights in order to successfully cloak.
I'm hoping that "dim lights" means actually dimming the lights inside and being less able to see, and that the fact it's mentioned is a sign that this is their intended direction. I really hope Notch nails this. Give me a chilled-out space MMO that lets me have a friend ride shotgun and take over the controls to check out the awesome spaceship I just bought and then help fight off some attackers Millenium Falcon style. Please.
I've played VO on and off a few times now. The combat and physics are really excellent, and the backstory and aesthetic are captivating as hell, but it falls short of that escapist 'real place' feeling for me because if it were real you would be playing some sort of slave-pilot lashed permanently to the controls of their spaceship.
What if "dim all lights" means that the player must dim the lights in their actual, real-world room and the game will use a webcam to sense that the lights have been adequately dimmed?! :)
In fact the best thing about SFB was how power was a limited but very flexible resource -- should I go faster, overload weapons, reinforce shields, power special maneuvers, tractors, repairs, etc. I can see how you could build a great MMO around this.
An RPG'ish space game that just let me tool around as if it was Han Solo inside the Millennium Falcon, exploring the universe would be really sweet. Doubly so if it let me and a buddy fly inside a tangible cockpit.
I'd love to know if such a game currently exists.
The station avatar stuff ended up being boring garbage with no real substance. It got multiple people fired at CCP.
However, it's a bit... idiosyncratic?
To have a big ship, you'll need lots of friends to perform all the jobs, and you can take shifts in flying the ship (or set it to autopilot) or cleaning the space showers.
The virtual CPU could then be used to control the ship guns. A better software would mean more accurate hits or perhaps improve the power / force / firing rate ratio by adjusting it automatically. People could even create their own auto pilots.
For example, I've long wanted a submarine and/or battleship simulation that would provide a true feeling of being part of a huge ship, with players assuming various roles as necessary. Add a MMO element and it'd be just amazing.
You might be on to something.
I have odd notions of 'exciting' I guess.
Adding the MMO element ... a warship depends on top-down control. The captain gives orders, and a lot of which involve turning valves, pushing buttons, watching screens. Hours pass ...
Okay - make the job exciting so players stick around. So when the captain says 'fire torpedo' there is a player there to load it up.
Sure it can be done, but how? A small fortune to the fellow who figures it out, I guess.
http://yppedia.puzzlepirates.com/Puzzle#Duty_Puzzles
Would this work in an environment that was attempting to be more realistic - probably not - but I am sure a similar dynamic could be used to make a task interesting. This is after all intended to be on star-ships well in the future.
One of the screenshots off the website is this: http://0x10c.com/screenshots/006.png
Also, there's probably going to be a lot of community sharing of ideas and programs (just like there is with Minecraft) so non-programmers will be able to steal code from other people if they really want something.
Obviously I have no idea, but he says "_can_ be used to control your entire ship" not "must be programmed to do anything."
Looks fun, I want to make a program that does orbit translations and stuff for you with minimum delta-v.
Let the original author keep the insides secret, maybe the protection decays over time (say a year)
Sounds a lot like copyright but sensible and the false constraint is only to make the game fun : P
People will just infect useful scripts and let consumers copy/distribute them.
Thats it.
I know griefers - and they will find a way to abuse the crap out of this.
Honestly I'm not saying anything, but this entire mmo idea is just plain bad. If anyone other than notch had come up with it, it would have been shot down at t(-1).
Figuring I couldn't possibly do anything but fuck it up, I passed.
The thinking, I was told, was that Gods & Heroes's subscription revenue would fund Star Trek Online's development. Gods & Heroes's development was funded by investors who thought they were getting a Star Trek MMO.
When you can build your own ships in this game with a changing interior i am sold. We are talking about the creator of Minecraft here, maybe he is the one who really get's this freedom stuff.
Notch understands "Minimum Viable Product"
I would like to introduce you to our new game, titled "Fill in The Blank". You run around, maybe as part of a group of some sort. Maybe rescue some hostages, scout and snipe terrorists every now and then and maybe stab a chicken or two. Physic, shaders and purple monkey dishwasher; I'm surprised you got this far before signing up for our email notification subscription."
Yes, some personalities have plenty of currency to spend amongst their fan base.
Only 1/2 :-)
He also counted some things up to 3, a numeral (and index) which does not exist in the ValveVerse.
Notch clearly disagrees: "The game 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."
It's interesting the first iteration of the site was actually on April fools day, a good way to withdraw the idea if it sucked (no withdrawal needed ; ) ). I'm guessing but I wonder if there are more sites out there with slight variations on the idea to determine which one gets the most exitement and spreads the fastest
This aspect alone is enough to excite me, can't way to play it!
If there's a living designer who could pull it off then my money would be on notch.
Taken to its fullest extent, this seems like not just a game, but also a simulated world in which one can learn and practice actual engineering skills.
Should be really fun to see where this goes.
It should have been called World of Errands.
Anyone who once thought they liked the game's single player questing aspects should spend a week with a free scroll of ressurection and experience what the game has become, because it's really awesome and fun.
You have N players == N computers to simulate. Assign randomly 5 computers to each player to emulate. Choose the result that majority of clients return and optionally punish cheaters.
EDIT: apparently simulation will go on even when players log out, so each connected client may need to simulate 100 in-game computers to account for that. Still less resource intensive than running everything on the server. But Notch thought about that much longer and surely have great reasons for his architecture.
I think part of the point of it being a special emulated CPU set at a certain speed is to make it fair for each player, rather than the player having more processing power just because they have a better computer.
The easiest way to secure all that is to run it on the server. Anything going to the client or trusted coming from the client eventually gets hacked if there's much interest in doing so.
Not sure how that would affect the lag, though.
Sounds like fun.
It's just a big switch/case over the instruction set by the looks of it. Those things can get pretty damn large if your are implementing anything close to a proper CPU.
It's just very condensed, I imagine so he can change a bunch of values and re-test quickly.
int pos=(ram[PC++&0xffff]+X)&0xff; byte v=ram[(ram[pos]&0xff)|
And so on. It just seems like some sort of code generation would be much easier.Most likely when you have a bug in something like this it will be isolated to one specific instruction. So you can just zoom in on the bit you need.
If you followed the standard Java practice for this you would probably have an Instruction class that inherited from several base classes and that would make your project very large and difficult to navigate indeed.
Code generation doesn't need to be heavyweight.
0x0000
0x0001
0x0002
...
That help?
ram[PC++0xfff]&0xff
((ram[PC++0xfff]&0xff)|((ram[PC++0xfff]&0xff)<<8))
Of course Notch said it has been generated, so he probably had a neat definition that barfed this garbage out. But it's strange that so many commentators here are defending the output as a reasonable coding style for a VM!
Or BNE (branch not equal): if the last instruction (hopefully a compare) set the Z(ero) flag, jump ahead t instructions. otherwise don't do anything.
Maybe notch has asserted that if he can't fit what an instruction does in ~60 characters, that instruction is doing too much
I know this sounds like nitpicking, but that mistake right there has caused many a 6502 emulators to produce erroneous results. The 6502 core's status register is resident and the flags in it are changed only when an op-code directly does so; it never "resets" arbitrarily, so proper conditionals that act on a specific status flag can actually occur far and wide between the op-code that actually affected that one specific flag.
I've only briefly glanced through the dcpu-16 spec, but it doesn't seem to explicitly call Z or N by the names I've imputed, I think they're just regular registers that get used for a certain purpose sometimes.
"this _sounds_ like nitpicking"
when emulating a cpu, there's nothing but nits. pick away :)
CPUBuilder is most likely a class with a single method:
buildCPU()
{
return new CPU();
}If he sticks with that, there are good few cross dev. tools. (even C ISTR)
I can't wait.
When I played EVE, I always thought that a programmable ship would be fun. Although there is a risk that programmers will get an unfair advantage.
On the other hand it may get more people interested in programming.
I wonder if this will ship with an interpreter/compiler for any language or whether you will have to write ASM?
Surely won't be long before there is a LISP for it.
I can also imagine a lot of people getting pissed of because they keep getting killed accidentally by someone else's buggy software.
What will the first computer virus do?
Will there be "actual" viruses? Can we convince Notch to let our characters get Space Flu?
It really depends on how the admins choose to handle this, whether spreading viruses is fair play or whether it will get your account banned.
I can imagine a newbie would find it highly annoying if 5 minutes into the game they end up with some Space Virus that causes their ship to spontaneously auto destruct all the time.
Regards mining: Generally this is the most boring part of any MMO, just mindlessly grinding resources. Hopefully the programming aspect will let you do this while you are offline and have some scripts to decide what to do when you are attacked etc.
The other problem with the programming aspect is this. I imagine Notch put it into the game thinking that it would be something fun for all players to mess about with. What could happen in reality is that a few of the better programmers release a bunch of scripts to do anything and these scripts become to best scripts out there.
In such a case anybody writing their own code would probably be at a disadvantage compared to the other 99% running UberScript v3 so you end up with all players running essentially the same software.
I hope that this game can be designed in a minecraft sort of way where it is not directly competitive and more can be gained by players working together rather than everyone out to "gank" each other. Although epic space battles are always fun.
Take average griefer X - has nothing better to do, he goes around finding 'care bear' miners - your typical farmer, running macro script 1.
He now proceeds to bump your craft constantly using a macro into the sun.
Farmer ship blows up - and since this must have progression paths - an expensive leveled up ship goes bust, while the griefer goes of laughing all the way back to 4chan or SA.
If programming is part of the gameplay, then being good at programming means you are good at the game. It would then be best considered an entirely fair advantage.
Perhaps there will become a market in the game for selling programs to run on the CPUs.
Some players specialize in programming, others in logistics , battle command etc.
Of course it will be an interesting microcosm of the software industry in such a case.
Will people care about piracy of their code? Will anybody start releasing under GPL etc?
As I have said elsewhere , most likely all the best code will end up on a wiki somewhere and everyone will use that.
Of course it depends upon the dynamic of the game. Whether it is like Eve where you just get one ship. Or whether people will build full automated fleets, space stations etc.
In the latter case they better be prepared to buy some serious hardware to run the server end of this on.
Early on, the best scripts were closely-guarded secrets, but as time went by, the quality of publicly-available scripts, as well as the scripting engines to run them, increased significantly. At this point the ecosystem resembles the rest of the programming world -- a combination of custom "in house" code, "proprietary" code, and open source code.
I'd guess there probably would be a FORTH dialect first. It seems a lot more fitting with the context.
I forever want to be in a situation where if I have more experience I will do better. This doesn't mean in every sense as I always expect to learn more in general and also from those who have less experience or whom I'm helping. Also, I hope the reverse is always true when I'm with those who have much more experience than I do like professors and tutors at university.
I built a prototype trying to do something similar, inspired by a text-based RTS/MMO that kept running while you were asleep. For me this was an unrealistic goal, if the simulations are complex enough you can't operate at a price point users will pay for. Even if you can, because the game is now CPU bound, far less players fit on a single instance -- you now need incredibly clever partitioning and load distributing facilities to keep the world appearing seamless. Even AAA titles haven't solved that problem, a look at world PVP lag in EVE or WoW will tell you as much.
Could you run part of your MMO server work as a distributed-computing setup on client PCs? (but how would you get that working in real time?)
Maybe the players that are online at a particular time could be doing some of the extra processing - the game client could run 1 or 2 extra 16-bit virtualizers in the background, along with the virtualizer for the player's own 16-bit cpu and the game thread. So 4 threads running on 4 separate cores.
If it's designed carefully, the code should be trivially translatable to native x86, at which point you may even be able to run a few thousand on a single reasonably beefy server, depending on how fast the virtual CPU runs and the average load.
you do realize we're talking about Notch here right?
Typing that should have been a pretty unambiguous clue you needed to stop.
That's kinda my point, coding ability didn't limit his ability to delight people.
He has programmed a number of games from scratch in very short time periods without using a bunch of pre-existing tools etc.
He is obviously very much a generalist and has done everything from 2d/3d graphics , networking , gameplay handling , AI and now CPU emulation. I would imagine most AAA developers will at some point find a niche and stick to doing that.
Not to mention building minecraft which is a non trivial programming exercise in terms of managing and rendering thousands upon thousands of blocks which can all potentially be re-arranged.
Perhaps he is not John Carmack but I would be confident he is at least as good as 90% of the programmers working in the game industry.
Yes.
>He has programmed a number of games from scratch in very short time periods without using a bunch of pre-existing tools etc.
PHP, QED. Also no he didn't, he used lwjgl.
>He is obviously very much a generalist and has done everything from 2d/3d graphics , networking , gameplay handling , AI and now CPU emulation. I would imagine most AAA developers will at some point find a niche and stick to doing that.
No.
>Not to mention building minecraft which is a non trivial programming exercise in terms of managing and rendering thousands upon thousands of blocks which can all potentially be re-arranged.
You do a real disservice to the people working on modern physics engines. Jesus.
>Perhaps he is not John Carmack but I would be confident he is at least as good as 90% of the programmers working in the game industry.
No.
Assuming you allow for eventual instead of atomic consistency, and allow for loss of CPU for several seconds if an instance goes kablooey, the load distribution is really not that hard. (And your spaceship really doesn't need five 9's. It's a game, so just blame it on "an ion storm". Or "a space monster" if that floats your boat ;)
Partitioning does not need to be too clever if you can constrain the number of ships per region - certainly something you can impose via game design.
Lag only matters if you interact twitch based. Notch's plans lend themselves to indirect agency via the simulated ship's computer instead, so if everybody perceives the world as it was a few seconds ago, not much is lost.
It's certainly a doable task. Notch's mind is in the right place to pull it off. No doubt, it'll be hard - but it'll be interesting to see what he comes up with.
That would obliterate the point of the MMO aspect though.
EDIT: One more thing regarding the ion storm or whatever - gamers aren't that forgiving about those things.
You could try and blame it on space monsters and what not, but gamers know pretty quick when something is borked. And they hate it hard. - Anything that isn't within their locus of control which negatively impacts game play is easily hated.
I can't stress enough how painful flamewars from pissed off gamers are to deal with.
I'm not sure how much you are aware of current occurrences in EVE online, but for what its worth - they too had the similar lag issues (while still being called excel in space).
They recently deployed a time dilation mechanic to make it possible for people to play the game and enjoy massive fleet battles, which has increased satisfaction amongst the player base immensely.
Assume for a moment a team of developers spend several months if not years doing infrastructure build-out to support the imagined CPU simulation system. Now they just have to implement the rest of the engine, the part powering the actual game, in which all players, CPUs, and other elements are active and interacting with one another at all times.
I'm hoping Notch succeeds, but lets be realistic -- the closest anyone has got to offline simulation is effectively "event queue and timer" and not for lack of trying.
Huh? A CPU simulation is not that complicated a task. If it takes Notch several developers and years of time, he's definitely doing it wrong.
> active and interacting with one another at all times.
Yes. That's a solved issue, mostly. It's a large task, but it's not an unsolved problem. (See e.g. social networking sites. Humongous amounts of people interacting with each other)
The point is that you'll need to make some concessions to the realities of large scale when it comes to the game design.
> the closest anyone has got to offline simulation is effectively "event queue and timer" and not for lack of trying.
Funny. And here I thought Havok just gave a talk on physics in MMOs. (GDC China).
(There's also the point that a monthly subscription fee of $15 buys you a nice VPS slice these days. If you're willing to cut into the - significant - profit margin of MMOs, you have a lot of performance available for offline simulation. I'll stand by my judgment that it's a hard, but solvable, problem)
Shame the name is trademarked.
If it combines the "build-it-yourself" bits of Minecraft (build your ship, build your computer, build your programs) with MMO trading, and guild-building of EVE Online, and let players build the universe, then it might be a real winner.
I'll sign-up regardless.
I doubt even Notch is able to accurately and fully emulate reality itself just yet, though.
* Hard science fiction.
* Space battles against the AI or other players.
which, combined with: * Lots of engineering.
* Fully working computer system.
reminded me of essays such as "Realistic Space Combat" [0]. I wonder if Notch considers such a thing.I was more concerned about general physics considerations (inertia, etc) and scale (like intercepting stuff flying at 30000km/s).
This looks heavily inspired by this indie game. In spacechem you must you use "chemistry pipe design skills", that highly resemble how you design logic circuts, in order to create certain molecules.
It also seems quite inspired with what you can do in minecraft with the redstone.
All that, but more open, pushing the limits. Not such a bad idea.
Go mine iron to craft parts for your spaceship!
We'll be completely alone forever, and future scientists would have completely wrong picture about universe in such an absence of information. Thinking about that, we already miss a lot of information because of red shift… There're facts potentially explaining the eternal question ‘about universe and everything’, but they are slipping away from us, crossing the event horizon never ever to be learned about. Not a fun thing to know.
Personally for me that was a discovery thanks to the explanation by Lawrence Krauss in his ‘A Universe From Nothing’ popular talk (http://www.youtube.com/watch?v=7ImvlS8PLIo).
I think you're referring to his tweet: "What happens if you try to read a 64 bit representation of 1 in a 16 bit system, but you get the endianness wrong?"
In other words, the endianness and 64/16-bit comments in that tweet weren't a puzzle, so much as the back story. (Check the paragraph beginning "In 1998"). i.e.: "What happens if you specify something one way and a program reads it a different way? You end up a 200 trillion years in the future!"
[1] http://www.huffingtonpost.com/2012/03/02/markus-notch-persso...
A similar concept doesn't guarantee a similar user experience.
Notch is talking about real resource management issues, combat as an inherent part of the game, random AI encounters, etc..
This is a game that happens to share some SL-like properties. SL is just a framework. Arguably that makes SL more interesting in some ways, but it's also a lot harder to "get" something out of SL other than pure socialization.
(0x10c.stackexchange one day?)
That being said, since it's going to be a virtual CPU with what seems to be a system based on 6502 opcodes (or similar), we can assume that this means there will also be an opportunity for abstraction/compilation to that system. Basically, there would most likely be cross compilers available in a matter of time that could aide in the development so you don't have to learn ASM or anything that low level. If you want to learn for the sake of learning, and with a great chance of being able to implement that new knowledge in to this game, then learn C - it will teach you a lot more about lower level development and would be a great candidate for a cross-compiler when one were to come out (ex: http://www.cc65.org/)
I am so exited right now!
I hope so because anything which encourages and helps people to learn programming is a plus in my book.
I'm sort of thinking that if you used an x86 CPU there are so many existing tools that could be used for it instead of having to write new compilers, etc.
And how do you get that much sleep on a 16bit cpu
DCPU-16 machine code = MSIL
The framework is the machine. Free your mind.
(Let's just ignore that the tech ran without issue and succesfully woke you up after 281*10^12 years.)
I find this actually really clever. I suppose the less programmatically inclined will trade new programs from the people building them.
Now, if it were 0b10...
While it isn't aiming for all the same points, and is obviously inspired in some parts by Minecraft, I think for example Cube World is a much better looking game. http://wollay.blogspot.co.uk/
Consider the common complaint about current-day Lego blocks: "Legos used to be simple." You can say that it applies only to the functional aspect, shape, but I think it also applies to their visual aspect. I mean, how many special blocks does Hogwarts or Prince of Persia really need?
And, disregarding all of that, there's a significant portion of gamers out there who will pay in both money and loyalty when you evoke nostalgia, which Minecraft does via pixellated graphics.
Firstly the game is written in Java and hogs enough CPU/RAM as it is. If they had started making high quality assets they would have had to maintain that standard throughout which would have made it much more difficult to iterate quickly which is something that minecraft is all about.
I think of it like Lego , Lego kits are nowhere near as pretty or detailed as other proper model kits but they allow many different possibilities.
Sadly "Monthly Fee" is something I don't like... I don't have the money to pay it, nor a credit card to do it, so nope.