Sunday, April 26, 2015

Bolt!

(Want to skip to the game? By my guest!)

Okay, so I'm really excited about Bolt!

I'm also really conscious of where Bolt fails. I've never made a racing game before, and I had this quirky idea for how to organize it so that I didn't have to code any "real cars" or anything:

 If I always had the player "attached" to one of these hexagonal prisms, well then I would be able to attach them to a specific face of that prism. And if every prism knew which prism followed, you could make a linked list of prisms. And when you got to the end of one prism, I could have the player warp to the beginning of the next prism:


 Link a bunch of prisms together and boom! Instant racetrack. It was a pretty simple concept that I immediately succeeded in complicating:


Bolt is an interesting concept, but a pretty shallow racing game, I think you'll agree. I really only scratched the surface with what kinds of races I can make with these building blocks, and I really only scratched the surface of what's actually fun about this kind of racing game. You have no control over acceleration or braking, so it's all about having a rhythm of boosts to hit. That really only clicked partway through development. I'd like to add multiplayer, and an actual tutorial, since the instructions might be difficult to follow the first time around.

But man, if I were to grade my Game-A-Weeks on how cool my screenshots look? A+:



You can find the game right here


Menu Music is by Bart, in-game music is by RevampedPRO, usage under this license.
Main Menu typeface is "Hetilica" by Diego Quintana.

Sunday, April 19, 2015

Inchworm

(Inchworm can be played right here)



This is another really quick submission. Because I was sick for most of the week, I didn't have much time to finish this game up. Still, this is a nice kernel of a game that could really work. I didn't have time to fine tune the spawning system like I usually do, and I would really have liked some more time to experiment with more camera controls, but I'm reasonably satisfied with what I did in something like 5-7 hours.

The main menu music is by sonartuning, and the game music is by Avgvst. Both are being used under this license.

Sunday, April 12, 2015

Cube Chuck!

(Want to skip to the game? be my guest!)

Originally, I was going to call this Sling Box, but that's already a thing. So is Chuck Box, so here's Cube Chuck!



To be fair, this is definitely a smaller offering than some of my other game-a-weeks, but I did have less time than I usually have - I also wanted to experiment a bit with this odd idea I had for an infinite level, where the game world is a cylinder that keeps rotating.

There's not much of a hook to Cube Chuck, but I think it's a little deeper than it seems at first glance. I got really excited when I realized I could have the player move the cube left and right with rigidbody.addTorque (which always results in some weird behaviors). And once I had this cube bouncing and spinning around, it sort of became a bit charming. I immediately had to add the sparks effect and the little plinks to every collision (stealing a bit from Chibi Robo).


I also took the opportunity to steal the death effect from Super Smash Bros.

The background music for this week's game comes to us from SouljahdeShiva under this license

And here is a link to the game!

Sunday, April 5, 2015

Shoot the Moons

(Want to just skip to the game? By my guest!)

This week's game is called Shoot the Moons! Convert the Sun... Shoot the Moon.. maybe next week I'll do another "<Insert Verb> the <Insert Celestial Body>."

But really, this week's game came out very well. I got started early, and I knew that whatever I did I wanted to do most of my movement with rigidbodies and addforce. I usually make movement like this, but I'd been using transform movement almost exclusively so far in my weekly games. I had an idea of a game where you're simply shot forward at an increasing velocity, and you have to dodge larger or smaller asteroids that pass by. If you were moving fast enough, you could smash right through certain-sized obstacles.

Well, instead of that, I made this:


Once I had movement working, I really enjoyed moving all around in every direction. I gave the player a long trail renderer so that you could tell where you were going and where you'd been (and also, because I think I'm addicted to them) and for a while, I amused myself with just flying about:


I had some trouble figuring out how I'd make this into a game though. The most interesting thing about flying around was, of course, nearly crashing into things. I made these triangles and placed them near other obstacles to try to encourage that. Then I went back to my original idea, and realized that I could just make the asteroids all have these triangles attached to them. After that, it was just a matter of framing the conflict around these incoming asteroids.

Last thing to note: I'm really happy with how the look of this game ended up. White, blue, and yellow were a good color scheme, and the triangular tori (just learned that word) really complemented the triangular faces of the hedron-spheres. Here are two more pictues I shot in full-screen:



The game is available right here!

Oh, last LAST thing to note: Two things I may change if I get the chance before Monday are 1) Sometimes you don't boost when you hit space and 2) The line drawn from enemies to the core should really grow redder as they get closer.

And one MORE thing: I'd be completely remiss if I didn't mention that the triangle pickup noise was by NenadSimic, the menu music was by SouljahdeShiva, and the in-game music was by p0ss. They're all being used under this license

Monday, March 30, 2015

The Deadline is not Monday

Well, this was bound to happen at some point: I did not finish my game for this week! That's not exciting, but it does give me some time to think about why I ran out of time. Honestly, the answer is pretty clear: I should not have spent so much time trying to create my own character controller.

I had a lot planned for this week's game: I was going to make an infinitely scrolling level made of a three-tiered box-spawning system (easy). I was going to make enemies which re-position themselves (easy) and which fire attacks at the player which the player can deflect back at their enemies with a well-placed attack (tricky, but doable). The player was also going to be able to melee-attack these enemies (possibly tricky) and each time the player killed an enemy, the infinite scroll would increase speed (easy again). The player's movement would be simple: I'd just code jumping and moving one square left and right, and the infinite scroll would take care of the illusion of movement.



In retrospect... Yeah, I may have bitten off more than I could chew. But what really killed me was that whole "simple" movement system. I did not use Unity's character controller, and ended up not choosing a very elegant way of moving the character around. I began work on the game Thursday, and within a few hours I had player movement completed. I then created the infinite scroll of boxes, and immediately found that my movement system just immediately brought the player to the top of whatever box they collided with. I continued to work on issues with player movement until... Sunday morning. I believed I could tie the game up in a day after I had movement settled. Well, it's 3:00am Monday morning, and I'm calling it: no game this week. Tough noogies, but success is a poor teacher anyway.



One of my rules with this blog is to submit something to the blog before going to bed Sunday night (or Monday morning in this case). Another rule is to do a new game every week. This game never quite got off the ground, but I think the concept is sound... Maybe I'll start it up from scratch in some future week and see how it goes the second time through.

Sunday, March 22, 2015

Week 2: Convert The Sun

One thing that should be immediately clear by now is that I like contrasting colors and clean geometric shapes. It's probably just how my brain works. A lot of my game ideas tend to involve spheres, for instance. This week's game definitely does:


I wasn't certain what I wanted to make when I started making this. I knew I wanted to use bfxr to make some sound effects to use, and my initial idea was to make the game an exploration game, where you traveled along a small planetoid listening to different alien animals and identifying each one by its call... But while trying to figure out how to move about a small planetoid, I happened upon a gliding style of movement using the RotateAround method. With some trail renderers, and the ability to spawn a bunch more orbiting "pucks" you get something like this:


And I thought that was mighty cool, so I ditched the original idea and made the game about this little blue puck gliding about a bright yellowish planet shooting out more blue pucks. This was almost fun on its own, but I decided it'd be interesting if you had to worry about getting hit by other gliding pucks. I thought these could be red, but visually that was a pretty bad idea. So I kept the enemy squares yellow, to simplify things. At this point, the object of the game became clear: it's blue vs yellow. You have to eliminate the yellow to win. If you don't, the yellow will eliminate you.


A very simple game, really, but I got to brush up on my delegates, and use some sound effects I made with bfxr. I also had to deal with a lot of positioning headaches due to, again, a very simple game taking place in a somewhat complex arena. Oh, and speaking of sound, the menu music is by Alexandr Zhelanov, and the in-game music is by cynicmusic. Both files were used under this license.

I could have put a limit on the rate at which you can fire off pucks, which would have made the game much more intense, but I didn't. It's a very easy, calm-feeling game (with not-so-calm menu music, but it works). I feel like players can make the game intense on their own if they want.

Oh, and you can play the game here!

Sunday, March 15, 2015

Week 1: Diamondback

For week 1 I wanted to start with something simple. Something I already knew how to do. I managed to fail at this.

I decided I would make a simple shmup in Unity, but as soon as I was in the editor and seeing what cool things I could do, I immediately did this:


For some reason, I really wanted the player's ship to be pointing up at an angle. I also did this:


Since it felt like the player was actually shooting upward into the air, instead of forward into space, it made sense to have the player's projectiles sort of fall back downward at him or her after reaching their zenith. It ended up being a pretty cool mechanic, but all of a sudden my game functioned 100% on a diagonal plane in worldspace. This proved to be sort of an odd constraint to work with, especially when dealing with enemy behavior. The effect the perspective had on the game was definitely very cool though, and I got to make this thing:

   
All of these cubes move towards the player in unison, giving the illusion of there being a sort of odd, geometric terrain rolling far below the ship.

I unfortunately didn't have the time to implement any sound effects - chalk that up to poor time management, I guess. For my next project, I think I might start with sound. I've never tried using bfxr before, so starting from there could be very cool.

Anyway, if you're reading this and you want to try the game, it's up right now, right here!