Showing posts with label littlebigplanet. Show all posts
Showing posts with label littlebigplanet. Show all posts

Wednesday, April 20, 2011

Rush of Battle - LBP2 Song Guitar Tab

So now and then I figure I might as well share a bit about how to play some the more popular Foof Tunes in LBP2! (And otherwise!)

This is one of my favorites to play, I'll often play this for fans as I pop into their games. The Rush of Battle (at the end of Maximum Carnage - Level here http://lbp.me/v/xnbyvw , song here http://www.youtube.com/watch?v=7iGNq2jlet0 )

The two main riffs to the song are pretty simple to play. Tempo about 180 bpm, the beginning starts in E minor like so:

That goes twice and then it switches to A Minor like so: (just move up a string!)

Then it goes into my favorite riff in the song, starts on a D:
This plays 3 times and then:

And then we just start the whole thing off of an E!
This 3 times again, and then:

And those are the two basic riffs to the song!


Friday, April 15, 2011

Methods to the Madness - The Music

Welcome to the first part of the "Methods to the Madness" series - detailing every step along my journey of creating both "Madness" Levels. The first thing I created for both "Madness" levels was the soundtrack.  I have been playing and writing music for 10 years now. You can check out a collection of all my retail songs in this level - which will continually be updated - http://lbp.me/v/z0n-kq.

I know a fair amount of music theory and there are some approaches I take in particular to writing music. It's best to go into this post with a rudimentary understanding of music theory.

First off, I think in big terms when first approaching a composition. Does the song have an ambient feel? Kind of sad? Does it have a driving rhythm?

Rhythm is the most important part of music. Most of the time I will lay out the drum track first since it gives the song life. Whether the drums are fast, slow, have a bounce... whether the drum hits are soft or hard, are all vital to the feel of a song. The music sequencer in the game fits well to even rhythms. Every 4 spaces on the piano roll is a beat, so if you're not sure what to do it's a safe bet to just start with a bass drum on each beat. Then shape the rhythm from there. Maybe you want to stress the backbeat? That's very common and I love doing that. I always think of songs in 4/4 time in the music sequencer, that means the beats count 1 - 2 - 3 - 4.  So you could stress the backbeat by putting a snare on every 2 and 4.

The next most important part after drums is the accompaniment or the rhythm section. These would be the backing arpeggios, chords, and/or sounds that go behind the melody. Often in my "space" songs I will just use simple triad based arpeggios as backing. One of the trickiest things in writing chord progressions is leading the voices properly.  Chord triads form the same chord as long as the notes are the same - it doesn't matter what order they are in. For chord progressions to sound most melodic, you want each note to move the least amount it has to and keep as many common tones as you can the same.

For example, say we want to go from C Major to A minor. If we already have a C Major down, C - E - G (In any order), then we need to turn that into an A minor (A - C - E in any order).  C and E are common to both, so all we need to do is raise our G to become an A.  It is possible to copy and paste the notes and move them downwards until we land on the A to create A minor, but I guarantee short movement gives the best results.

After I have my feel to the song in place, I lay down the melody. My melodies are often improvised on guitar while the accompaniment plays. The mood I'm going for has the biggest impact on how the melody goes.  If I'm going for something space related, it's a pretty safe bet to stick to wide intervals for that "floaty" feel. I use a lot of min9 and min11 arpeggios. For example, the glockenspiel in the backing of "Lonely Galaxy" is just constantly jamming around a Bmin11 arpeggio.

One of the beauties of synthesized music is we can write things that are physically impossible to play otherwise. I have many runs cross over octaves quickly to give a reverb like ambience.

Beyond pure songwriting, the music sequencer has plenty of nuances to get used to. First off, the audio effects are VERY powerful. Playing with reverb and delay can really help give a full sound, but don't overuse it! Super saturated delay is no substitute for natural sounds and will only make the sound muddy!

There is also timbre. Timbre is the natural sound of an instrument, aside from dynamics from the player. Each instrument can vary the timbre quite a lot so use the right stick left/right to experiment with sounds. Sometimes I'll mix some timbres within a chord to give a very full dynamic range.

One of the coolest features is the ability to bend pitch. If you drag the end of a note up or down you'll actually be blending one note into another. You can also hit R1/L1 on this bend note to scale it more. This way you can bend to a note and sustain, or even bend - sustain - and bend again!.

The note ends can be independently scaled with the right stick for different volumes or timbres - this means you can gradually fade in and out, or even distort the timbre of a sustained note! There are quite a bunch of possibilities that I am only starting to touch on - I will make much more music in the future, I guarantee!

Stay tuned for the next installment - User Interfaces!

Wednesday, March 30, 2011

Essence of Madness


My latest LBP2 level has been published, and it includes 6 original music tracks! Plus a few short interludes . :) All available as prizes! This has a much bigger focus on the graphic adventure gameplay. Check it out on LBP.me here : http://lbp.me/v/zbdvtk This is called "Essence of Madness" and is a direct sequel to Corridors of Madness.

I will publish a post detailing just about everything that went into this within the next week - "Method to the Madness"... stay tuned. :)

Sunday, February 20, 2011

The sequel to Corridors of Madness - and more!

To my LBP fans - I'm sure you've at least heard of my LBP2 level Corridors of Madness (LBP.me link)

Well within the next week or two I hope to have the sequel published! It will be bigger and feature more genre-bending action.

For a small preview, check out one of the songs from the new soundtrack: Insomnia

I write all the music myself that I use in my levels.

This sequel will follow the story of our brave LBP federation captain as you drift into space following his escape from his ship when it was overrun by aliens. Tumbling through space, both physical and metaphysical, you will encounter a strange world with many challenges for survival.

This will feature:

  • Enhanced pseudo-3D rendering engine
  • All original soundtrack
  • Multiple Endings
  • Multiple modes of gameplay

Wednesday, February 2, 2011

Broken Computers, world records, and LBP2

I haven't been so active lately since my computer died. :( I've also been snowed in constantly so couldn't drive it to the shop for repairs, but rest assured, I will be updating regularly again in no time.

If anyone was watching or attending the IGN gaming world record event at the sony styles store, you might have seen me there! IT was great meeting everyone there and awesome witnessing the records being shattered.

I'm also almost done with my first entry into retail LittleBigPlanet 2 ... it's going to be special. :)

Monday, December 13, 2010

Unicorns like to dance

Um... so there's a bug in 1.04 of the beta that prevents me from editing music online. Poop. So I loaded an empty level offline to see if I still could edit - and I could! So then one thing led to another...

 http://www.youtube.com/watch?v=nxm-p_MZoJU

The unicorns each have a recorded animation to just move their arms around, and their legs and movement is handled by movers, and they also have anti-gravity. So it just keeps emitting them to form the congo line sort of thing.

Saturday, November 20, 2010

LittleBigPlanet 2 - Get modularity with microchips.

Did you know you can turn microchips into easily reusable functions? You can give them custom-named inputs and outputs and use them just like the built in logic tools!

Check out the video here: http://www.youtube.com/watch?v=jiPXvpBaNKU

Here is a small tutorial that should give you some ideas on how you can create easily reusable pieces of logic that I will henceforth call functions.

When you wire to and from a microchip, it creates ports and will remember where each port is wired to, so you can then copy the microchip and plug in any acceptable input into a port. Functions do not have to return anything, but in this simple example we're going to make a function that implements a "dead - zone" : The signal will only be used if it fits within a certain % range.

A sequencer set to "Input Mode : Positional" Will use its analog input to adjust the current play cursor to fit within the given % of the total range. Confused?

For example: If your sequencer has 10 columns and you feed a signal of 50%, the cursor will rest right between column 5 and 6 - activating anything there such as batteries and tags.

I use this to provide a threshold. Keep in mind, only the absolute value is taken into consideration: A value of -50% will still be halfway on the sequencer.

Anyway, hope this helps. This is fully scalable to any amount of inputs/ outputs until the game crashes. :) Just remember the one on the bottom ALWAYS activates/deactivates the entire chip.

Thursday, November 18, 2010

LittleBigPlanet 2 Music - Lonley Galaxy / Cosmic Tears

Clicky here: http://www.youtube.com/watch?v=CFNFa4uRt10

This was a song I wrote by request for a space theme. I think it turned out pretty well! I have the MP3 of this straight from the PS3's audio out. I am going to be transcribing this to real midi so it won't be gone forever when the beta ends.

LittleBigPlanet 2 - Cursor Based UI - Basic Menu Tutorial 2

 Check out the youtube video Here: http://www.youtube.com/watch?v=7nKPkZE1mIY

So you want to improve the technology of your menus and use some of that new-fangled point and click functionality? No problem!

Creating cursor based UIs is actually a little more intuitive than the digital counterparts. First thing we'll need is your cursor

- this can be any kind of visual, from a cross-hair, to an arrow, a finger, anything! The visual aspect is insignificant - it's the

HOTSPOT we care about!

The hotspot can be a small piece of invisible hologram material - perhaps a tiny circle - that will act as the user's cursor

position, and will interact with clickable objects. Be sure to scale the thickness of this to match the objects you want to test

against - it MUST intersect them!

Glue your hotspot to your cursor and place a microchip on it. If you'd like to keep your cursor level at all times, you could put a

gyroscope there to make sure it stays put. Also put an advanced mover there - set speed to your desired cursor speed. I also like

to set the acceleration to 100% just to keep it constant, and also the deceleration to 100% to make sure it stops when you want it

to. Alternatively, you can use a setup with some NOT gates on your desired analog input and hook those up to anti-gravity object tweaks

with dampening set to 100% - That makes absolute sure!

At this point you probably gathered we want to wire our movement input (eg, left analog stick) to the appropriate left/right and

up/down speed inputs of the advanced mover. That's great! we have a cursor that moves around! But it doesn't do anything...

What I like to do, as shown in the video, is put some tags down. Tags are an extremely powerful feature of LBP2 and should not be

taken for granted. For things like UI I like to use white tags, so put a white tag on your cursor hotspot's microchip and name it

MOUSEOVER. You guessed it - Anything that now intersects with the hotspot can detect this tag and perform a "OnMouseOver" style

function. For mouse click, put down another white tag but name it MOUSECLICK - you can activate this however you'd like to register

a click, eg. the output of X from the controllinator. Depending on your intentions, you could also implement an ON TAP (see the

blog post) function if you'd like to differentiate between rapid clicks and/or holding the mouse button down.

Now that we have a fully functional cursor, let's make something to click on! Everything clickable only needs to implement means to

read MOUSEOVER and/or MOUSECLICK. Implement? MOUSEOVER? This sounds like real programming! Shablago!

But it truly is. This is an object oriented style approach, where each object in the world has its own role and methods. But

anyway, all we care about is - YAY, BUTTONS. First you need to make sure your object - or your object's hitbox (an invisible piece

of hologram you can use to handle intersections) - contains the appropriate IMPACT SENSOR switches.

For MOUSEOVER, make sure your impact sensor is set to INCLUDE TOUCHING - YES, and REQUIRE TAG - YES - White, MOUSEOVER. Now this

can do whatever you'd like. Perhaps you have a sackbot, and you'd like to now loop an animation for "YAY PICK ME". Or maybe it's a

button and you want it to glow. YAY, BUTTONS.

That's great, but how about on mouse click? Same deal! Make an impact sensor set to INCLUDE TOUCHING - YES, REQUIRE TAG - YES -

White, MOUSECLICK. And now this can be wired to do amazing things. Like start a game. GNARLY.

There can be a lot more you can do with mouse cursors. For example, clicking and dragging objects. Maybe picking something up and rotating it with the SIXAXIS, differentiating between two types of cursor clicks, the sky's the limit. That all goes beyond the

scope of this tutorial and hopefully the basics have served you well.

LittleBigPlanet 2 - Basic Menu Tutorial 1.

(Check out the youtube video here)
(On Tap Function, Signal Inverter)

So let's make some fancy menus for custom options and other doodads! I've designed multiple methods for this and I'm going to

present what I think are easiest to visualize.

To make a menu you pretty much just need 4 basic components:

1) Visual cue to the items you can select
2) Some sort of selection indicator. Either a little dot or overlay, or even something that follows triggered magnetic keys.
3) A selector or series of selectors
4) A way to cycle through the inputs.

First, draw up your menu's layout. Also include what will be the indicators that can either light up, become emitted, etc.

Experiment! Use physical lights in LBP, use sackbot animations, the sky's the limit.

Typically people use a controllinator to handle UIs. To perform a simple, single column UI list you can use a single selector set

the number of options in the list, and wire each selector output to your indicators in order.

You can wire a directional output (such as the left analog stick or D-Pad) to the cycle of the selector. A positive value will

cycle forwards, a negative value will cycle backwards. If you feel the input isn't cooperating in the order you'd like, you can

invert the signal (See SIGNAL INVERTER blog post).

Using a series of AND gates, fed by selector outputs and your method of selection (For example, wiring the X output of the

controllinator into the other part) you can then fire off functions for each individual option. Maybe begin a cut scene, change

your sackbot's animation, play a fart sound - anything!

If you feel single column menus are too simple, try out one with multiple columns! A method I find that's easy to follow is to use

one selector for the rows, and one for the columns - So if you have 4 rows by 2 columns :

SELECTOR A is set to 4 slots - Cycle through this with your UP/DOWN methods
SELECTOR B is set to 2 slots - Cycle through this with your LEFT/RIGHT methods.

I also use a grid of AND gates to combine them, so in this case we'd have a grid of 8 AND gates and just go in lines adding the

selector outputs to the AND gate inputs.

It is these AND gates that indicate your selection. From here on you can continue the single column menu's approach, use AND gates

with your grid AND gates, and your confirmation method, to fire off your "Do Option" function for each choice.

Simple... but complicated. Enjoy and make your own UIs! Remember there are multiple methods to doing anything in engineering, you

might find methods of doing this that you find easier or more efficient - Good! I can't wait to see what you all do.

LittleBigPlanet 2 - On Tap Function

Simply use a counter with a limit of 1 that resets itself to create a function that outputs only once per cycle.

For example - The X output of a controllinator into a counter of 1 that outputs to both its own reset input and some menu function.

I have previously described an overly complicated version of this, because in the version of the code I was running at the time, the counter resetting itself took precedence towards resetting and wouldn't output to the rest of the chain. Now a counter can reset itself while still outputting to other devices.

LittleBigPlanet 2 - Signal Inverter.

Signal Inverter
This is an extremely simple utility chip.

To invert a directional signal you can just take a
(1) directional splitter and then put the + output of that into the - input of a (2) Directional Combiner, and then take the - output of the (1) Directional Splitter and punch that into the + input of the (2) Directional Combiner; essentially reversing the signs.

Presto!

A pseudo-3D Raycaster in LBP2?... YES!

Yes it is true, I am insane. I have been toying the last few days with many ideas to implement a raycasting renderer in the LittleBigPlanet 2 Beta similar to the ones in games like Wolfenstein 3D or Ken's Labyrinth. Of course I don't know if I'm insane enough to implement texture mapping, I think I'd settle for at least differently colored walls.

Youtube Link here: LBP2 Raycaster concept

This is not using any glitches (eg. 50 layer glitch) to accomplish its goal and of course would allow full movement on the horizontal plane.  I am attempting to raise the resolution but so far my efforts result in catastrophe, the game hates it. I'm still going to try to at least get a better video up.

Saturday, January 9, 2010

LittleBigPlanet GOTY edition starring - ME!!!!!


Yes, that's right, I created one of the bonus levels for the LittleBigPlanet Game of the Year edition. Although this is a little late, I guess, here is my personal introduction that can be found on the blu-ray disc.

My interview is right here: http://www.youtube.com/watch?v=ZzESxyqRcT4&feature=related
(CREDIT GOES TO CogSpartan457 for taking/uploading the video)

A video of my level is here: http://www.youtube.com/watch?v=bghwANdxK18
(Credit goes to JHKthree for taking/uploading the video)