February 10, 2012

Future console OS.

I remember when the 360 first came out how I thought the interface was just so awesome with the blades and such. I immediately programmed a windows shell to emulate it and used it for the longest time even after the NXE update simply because I still believed it was better.

I still believe that some interfaces on the consoles are BA and should be available on regular OS'. Today though I had a genius idea while working on my linux system. Aside from the fact I think every programmer should make their own OS at some point I find it a personal sense of entertainment and satisfaction to do so. The idea that came to me is why not make a game OS that isn't hardware dependent like the consoles. The consoles are a great step forward and allow developers to have a stable platform for testing and such and all these other great benefits which is why they're not going away anytime soon if ever. However there's not any particular reason I could think of that we couldn't have an OS dedicated for gaming. I'd have a USB around to load up and boot from then put games on other USBs in a format only recognized by the game OS which would likely be small enough to fit on the USB with the game in case someone didn't have it and simply boot from that. I'd say it's not that bad of an idea...

Moving forward I would need ideas for what such an OS should include and am open to ideas. I'm thinking something like a second life or PSHome experience for the majority of it all and your character gets loaded into every game for that OS so you're actually playing yourself in an rpg or shooter or whatever you happen to be playing, even if it's not all the time you'd be in there. Of course this would need an extremely advanced voice emulation system for your character to verbalize his script believably but this is fantasy talk so I can put in whatever I want really. Anyway so browsing the net and other functions would load fairly normally other than a startup animation and I'd like everything to be as seamless as possible. Various world locations would have grounded links to web pages to get info quickly and easily and would be displayed in the games instead of launching a separate app to try and quickly grab a small amount of info. This would be things like tips on how to beat a boss character or hidden item locations and easter eggs or info on a new weapon or pick up that hadn't been in the game before.

Ideally this experience would function as all various game types to begin with and players would simply build games using the available resources and scripts, think of it as a running engine that you can load scripts in and out of and make changes to while it's going without re-compiling. So at any time you could access a set of character features and profiles set up for any game type at any time combining a free runner with a shooter with a platform puzzle in a short matter of steps as fluidly as possible. You'd be able to build and destroy the world in a similar fashion of not being constrained to an area but simply being able to expand however you want. I'm thinking more along the lines of a vexel (voxel?) based system but the cubes are instead much much smaller and can be dynamically grouped as necessary with various properties that can be set to them for the world while players aren't so rigid but more curve like and smooth and flexible.

The example above is actually something I've already tested in a "demo room" I've set up for various scenarios, it's like a test area to try out a feature without launching the whole game. I've set it up so the character I'm playing can run, jump, slide, roll, side step, crouch, crouch while running so either upright or crouched running, jump off a wall, grab a ledge, move along the ledge or climb up, kick while sliding, turn while wall running which is also an option, 180 jump while wall running or simply wall run to a jump upward to grab a ledge for example, kick while doing any of that, and many other combinations of these all with just one button based on context of being pushed, held, states of while currently doing, or in relation to location. Instead of jumping at a wall you'll run up it for example, and if you're pushing up you'll jump up and try to grab where as if you push down you'll 180 jump away from the wall which wile you're landing or running you can combo into a slide or roll by tapping or holding the button. Meanwhile with all this going on for one button you've got all the other buttons for shooting, grenades, melee, aiming, reloading, swapping weapons, and any other number of functions. I make it sound like it's overly complex but I can assure you it's not, rather it's extremely intuitive and the whole system is extremely easy to pick up and play but versatile enough that it can take a long time to master which will keep you playing and discovering new tactics for a long time to come. One of the scenes in the game requires you to have mastered some of these techniques to rescue an injured player while running through a collapsing building which is free form and not scripted in terms of making the run, the building collapse is specially scripted but that's about it, and for the players sake this isn't until the later part of the game.

4 comments:

  1. Why you write that long posts. My eyes hurt.. :D

    ReplyDelete
  2. that sounds really interesting, i wish i had the programming capacity to understand all that you talked about

    ReplyDelete
  3. amazing review, simply inspiring,... good work

    ReplyDelete
  4. I can't wait till wetware for input.

    (captcha - presser) funny stuff)

    ReplyDelete