Click to Play!

Saturday, May 31, 2014

Status Report #40

     Wow. I can't believe I wrote 40 of these things so far. Well I've certainly tried to be productive this week. There is a working level up system now, spells that get stronger, status effects that affect characters, and enemies that stay dead when you kill them. Find out all that was made and see them in action below!

Friday, May 30, 2014

Clearing Rooms in Equica

     Yesterday I finally finished off spell upgrades and status effects. Now each spell has 4 tiers and enemies (as well as the player) can succumb to burn damage, paralysis immobility, wet electricity weakness, and so on. The next thing I jumped onto was managing how enemies respawn in the overworld.

     To keep it as simple as possible I made an ArrayList, a dynamic list with each scene's enemy names. Enemies are placed onto the room prefab and positioned by hand and labeled "E_(name here)#", then when the player wins a battle against it that enemy's name is added to the "Kill Off These Guys" list that is ran when the overworld starts up. They will only respawn when the map loads if you came from another overworld scene and not a battle or menu. This way is pretty efficient and allows me to dynamically add baddies to scenes when I need to.

Thursday, May 29, 2014

Scrapped: Enemy Tracking Decoy Spell

     Confound these blasted Decoy ponies. I tried and tried but my list of workarounds are only making a mess of the game. I wanted level 2 & 3 Decoy spells to be able to turn towards enemies one way or another but long story short it's better to just drop it before I waste another day trying. I simply readjusted the upgrade perks so that level 1 just attracts enemies, level 2 shoots, level 3 has more shots and is stronger, and level 3 has even more shots and power.

     I hate seeing this feature go, but there's a lot to do if I want this game to come out this year. I have to decide when to cut corners in the least painful ways possible. This is another one of those times. I'll definitely be keeping this idea in mind if I ever do a sequel.

Wednesday, May 28, 2014

Gushing About: Glover

     If you remember this game, give yourself 10 cool points. I assume you grew up in a time where Pokemon was the greatest thing ever and Spongebob was actually funny. Glover is a pretty obscure game by good ol' Hasbro and is responsible for numerous nightmares and impacting my imagination. to find out how and why, read on below.

Tuesday, May 27, 2014

Further Combat Improvements

     Something I'm adding to Unicorn quest before the next video is a satisfying critical hit indicator. With every hit on an enemy there is a small chance of your attack doing double damage. When that happens I'd like there to be a little action popup over the enemy that says "Critical Hit!" and vibrates. There's also the issue of deciding how leveling up should look.

Monday, May 26, 2014

Restructuring Spell Code

    It was a thought in the back of my mind but the consequences are coming up. I coded the spells' stats inefficiently by making them all share a single set of variables that change every time you switch. This allows a glitch like this: shoot a blast spell, switch to pyre as it's flying, blast does pyre damage. So instead of that mess I made it so each spell keeps track of it's own stuff when it's created.

     I use a few arrays (boxes where I can manage sets of data) now instead of variables. Those arrays switch spots when spell slots do and this way I'll have something constantly keeping track of which spell has which stats and upgrades. Now the spells can figure out how much damage they're supposed to do when they pop into the world.

Sunday, May 25, 2014

Making Upgraded Spells

     I'm still working on all the kinks for the upgraded spells. Some are complex, others are just bigger sprites & collision boxes. So I'm going to jump back to work on all those. I want to finish them all today! This is one of my bigger milestones on my list. Having it crossed off will do wonders for my morale. It'll also look really cool in the next video.

Saturday, May 24, 2014

Status Report #39

     Unicorn Quest keeps looking better every single day. It actually has a nice game feel to it now, as in it's playable and I can clearly see where the fun comes from. So far it tells me my idea for an arcade shooter RPG isn't insane (which is comforting). There's still a bit more to add before I go around posting a video of what I have on other websites.

Today I'm working on the spell upgrades (functionality of leveled up attacks) but you can see what has been done in the past week below.

Friday, May 23, 2014

Unicorn Quest Progress Video #12

     It's time for another progress video full of too many small details to post about! I tried to keep this video as up to the minute as possible because so many things change every passing hour. Here is what the game looks like as of 11:43pm on the 22nd.

      A lot of graphical improvements were made for the interface and a few menu functions are operational now. I also fixed up a bunch of bugs, polished the shield spell a bit, finished the death screen, and make health pickups. Pink hearts dropped by enemies give you a quarter heart and purple ones they drop take away a quarter heart.

     I feel like I'm on fire!! Everyday so much progress is made! I can't wait to see how things look a month from now. I want to get to a point where I'm just adding rooms and enemies to flesh things out.

Thursday, May 22, 2014

Making the Lose Condition

     Unicorn Quest needs to be hard for two main reasons. To lengthen playtime and feel like a genuine arcade style shooter.  But losing can be frustrating if it doesn't feel right. One thing I noticed about myself when playing things like Trials or Flappy Bird is that a quick redo makes the whole thing less painful and more like "Just one more time." and I'd rather have players quickly resetting battles when they lose than going all the way back to a checkpoint and losing items, experience, etc.

     In Unicorn Quest, if you lose all your hearts you can just reset the fight or exit to the entrance of the overworld room where the fight started. No penalties. If you die in the overworld (traps, lava pits, etc.) you reset to that rooms entrance as if walking in for the first time, but without losing items. Chests you opened will stay open and beaten enemies won't respawn.

    When you beat a boss, it'll be a hard battle that you came out on top of. You tried and failed, switched strategies and won. I want players to feel good about themselves when beating enemies, not just plowing through an easy game in a couple of days.

Now I just have to finish up death animations.

Wednesday, May 21, 2014

Why On Mobile?

     I was reading an article on Gamasutra a while back and it got me thinking about why I chose mobile as my primary platform in the first place. I basically want to help push expectations up. I know it's a niche but I believe there is a place for people who want deeper game experiences beyond minute to minute puzzles. I know the need exists because I know I've wanted that since I first bought an iPod Touch (9th grade). A big RPG adventure that's playable in small chunks.

     Day-by-day you spend minutes here and there trying to gather enough gold to restock potions and attempt a hard dungeon instead of collecting coins to keep crops alive. I'd rather have a tough Pokemon match than beat a level in Candy Crush when I'm on the toilet. It's possible for a single person to make a game with SNES quality in about a year thanks to the tools out there. I see the pocket sized mobile devices packing the power of PlayStation 2's and think this is a chance for really awesome games to come out, but the majority of what's out there isn't appealing to me.

     So in short, I'm making games that I wish existed. That's what most indies are after too right?

Tuesday, May 20, 2014

Unicorn Quest Progress Video #11

     Feels like this game got really shiny in just a few days. Wrapping up the combat's finishing touches makes the whole thing feel nicer. There's little elemental particle effects, shiny gems to collect, and big icons showing you what spell is equipped. There's a ton of other subtle improvements and reorganized code, but I'm in rapid development fever right now so I'd rather toss up videos more frequently than make multiple very long posts talking about what's been added.

     My gamedev fever should die down a bit once I'm working on something harder (like the speech/cutscene code) and I can go into detail on most of the improved mechanics.

Monday, May 19, 2014

Adventures in Equica: Combat Score System

     I was watching my girlfriend play Super Paper Mario and was fascinated by the way simple points for killing enemies made the game feel special. I imagined such a thing in an RPG and the idea felt exactly like what I wanted to try in Unicorn Quest. Now its shooter aspect feels more arcade styled.

     You get points for killing baddies and lose some for getting hit. When the last wave of enemies is cleared, victory fanfare will play and gems and experience crystals  for you to collect will spawn randomly across the battlefield. After you pick up everything you want you press an exit button to leave the battle room. The amount of rewards appearing depends on your score.

    I'm still balancing how many points are worth an experience point/gem but it's next on my list. Now that combat is working it's time to add in a bunch of missing features to make battling feel more solid. Also, if you're curious about the font used, its 8 Bit Wonder by Joiro Hatgaya from There's a black copied layer of text behind it to give it a solid appearance.

Sunday, May 18, 2014

Summer Work Station

     The best thing gamedev-wise about school was the comfortable work environment. In my dorm I had a work desk and I also had access to the windowless Gaming & Simulation Lab (which is getting a redesign & lounge area soon!) where I could work for 6 hours that felt like only 2. I also had my choice of a sturdy wooden chair and a spinning wheely one.

     At home I just lay on my bed. Tossing and turning as my arms fall asleep. If I'm going to develop all summer I needed a better work environment. I moved furniture in my room around in a way that let me use a short dresser as a desk. My parents took notice and came back to me with the setup you see above. All old stuff just laying around in the basement or at work.

      I can now gamedev in an upright position with dual monitors, a wireless mouse, drawing desk, and a scanner within arm's reach! This is going to be a very productive summer.

Saturday, May 17, 2014

Status Report #38

     First week of summer over already? And a lot got done too? This time out of the classroom has been great so far. I've made a nice routine for myself of handling blog stuff in the morning, working on Unicorn Quest all day, taking a workout break around 5pm, and watching a couple episodes of Attack on Titan at midnight. I have comfortable work conditions now (a chair instead of a stack of pillows) and I see production increasing even further starting today because I have no plans other than making progress for the next few weeks.

     Watch a video of combat in action and take a look at this week's status report!

Friday, May 16, 2014

Scrapped: Subtle Bouncing

     A very annoying and game-breaking bug came up yesterday. It allows you to walk through any solid object if you push into it for a second. To get around this, I spent all of yesterday rethinking the way I do collision and went back to the problem I had months ago. In the end, the answer was obvious (like always) and I simply needed to get rid of a polish effect.

    There was a subtle bounce movement when Clover ran that make her gallop feel more natural, but that movement pushed the sprite just enough to clip through walls. I tried putting protective fields around everything to turn off the bounce when near something, but Clover's collider ignores it. In the end, it just needed to be scrapped. I'm really sad to see this nice touch go, but I'd rather have imperfect character animation than a broken collision system.

Thursday, May 15, 2014

Enemy Collision Handling

     A problem I've had for a while now is a glitch where you can run into an enemy from the side and push until you clip through them. After that Clover's collision stops working and you can run through everything like a ghost. To fix that I needed to change the way I approached enemy collision boxes.

    In a way similar to how walls work there is an outer layer that prevents sprites with smooth translations from doing so (to avoid wall clipping). That layer is it's own object that recognizes if you are in battle, and if so, it activates the same properties as a wall. Under that layer is the enemy hitbox where it can damage you or you can damage it (assigned with an elemental tag that causes status effects). Just underneath that layer is the character controller collider. That's the one that makes the object move and keep from moving through other solid objects.

     With this setup I no longer clip through anything when running about. I still have to test  how enemies interact with each other and the environment, but things are looking hopeful right now.

More details on enemies when I finish the current two.

Wednesday, May 14, 2014

Gushing About: Gunstar Heroes

     For those unfamiliar, Gunstar Heroes is a game full of explosions and  stunning 16-Bit visual effects. For those who are familiar with it, you probably know the excitement I'm talking about when I recall playing it for the first time. I played this at a friend's house in 9th grade on the Wii's virtual console and my jaw dropped as I realized such an awesome game has been out of my life despite being around when I first discovered Sonic.

Tuesday, May 13, 2014

Getting The Decoy Spell To Work

     One of the more complex spells in the game is the Decoy spell. It summons a hologram-like turret that shoots spells in the direction it's facing. Getting this thing to work properly was a lot more challenging than tossing out a fireball.

Monday, May 12, 2014

Level 1 Spells in Action

     Now that all the spells are finally coded I can show you what they look like in game. Keep in mind that the game is still in development and I'll be touching up the spell sprites and animations a lot as the summer goes by. For now, I'm happy with how they look. My next step is adding little effects like flame particles shooting out when the Pyre spell blows up and little lightning bolts for the surge spell. I'll also need spell icons for each to make the action button and spell summary page look nice.

Check out the video on YouTube!

Sunday, May 11, 2014

New Pixel Art Plan

      I've been brainstorming ways to more easily turn my pencil and paper art skills to become my mouse and pixel art skills. I've decided that the best way to go about it is to simply draw assets I want on paper, scan them in with my printer, play with the size, then start lining up pixels. Drawing all the environmental stuff and complex characters from scratch using only MS Paint pixels ranges from hard to impossible, but drawing what I imagine on paper comes naturally.

      I'm going to give this idea a try. Filling up a sheet of copy paper with doodles of things I need (drawn approximately to scale) with details included. I can scan the sheet and start making all my pixel art then touching the sprites up in Gimp.

Saturday, May 10, 2014

Status Report #37

     School is finally over. I can hardly believe it. Just two more years and I'll have a lot of time to make whatever games I want and live in a place where I make the rules. I'm getting a taste of freedom now by having the first ever summer where I focus solely on making a game. No part-time jobs this year. I will be focusing purely on creating Unicorn Quest!

The End of Spring 2014 Semester status report is after the jump.

Friday, May 9, 2014

Spring 2014 Semester Is Over

     Today marks the last day of school. I am just one Statistics final away from glorious game development freedom. In case you haven't noticed the tone of nearly every single post this month, I'm very excited to have some free time this year. I'll overcome this last hurdle, pack up my things (all but my trusty laptop) and leave for home in the morning.

     I'd say the only thing I'd miss this summer is my girlfriend, but I'll just try to occupy myself until I get to visit her again. Shouldn't be too hard. After all I still have to finish every spell's upgrade, create at least 3 special enemies for each region, make 10 common enemies, design boss fights, code AI pathfinding, make a more detailed world map, make sprites for several spell upgrades, make a dynamic text box system, and create all the different items.

    Those are just what I have in mind to start with. I hope to get to a point where I'm just putting pieces together in late July. Once all the hard stuff is done, making a game out of it all should be easy.

Thursday, May 8, 2014

Mobile Development & Senior Capstone Plans

     While my mind is mostly occupied with thoughts of how much development time I'll have this summer I also find myself organizing how my next two school game projects will be done. See my upcoming plans and obstacles below the break.

Wednesday, May 7, 2014

Animated Unicorn Spells

     I've animated the spells in Unity and made some adjustments to make the sprites look better. They arn't working in game yet, but I finally have all the pieces to do so. My next step is going through each spell one at a time and making them work in action. I'll start by making the spell switcher work so I can shift through each spell.

     In code form the currently equipped spell will be a string value and I'll have an array keeping track of which one you have on. That will allow me to easily swap their positions in the array so players can customize the switching order to put their favorite spells and combos closer together.

     Once everything is working I need to decide on what each spell's icon should look like and whether those should change as you upgrade them.

Tuesday, May 6, 2014

iOS Distribution Certificate Expires Tomorrow

     This is the last chance to get my iOS games for a while. My distribution certificate expires tomorrow and my apps will be removed from the app store. Until I get enough money for a new Mac they won't be coming back. Hopefully I can get one in 2016 and bring my newer apps to iTunes when I renew my developer license.

     Wow... My first game developer's license was for iTunes. I remember how awesome it felt to call my self a real game developer for the first time. I also remember how exciting it was working on my first app (a Friendship is Magic "Best Pony" Slideshow with random vectors) and Fish Feaster, a game I was actually going to finish. The moment I got a game running on my iPod where bunch of colorful rectangles with scribbled eyes to swim around a blue background and ate each other, I knew I was finally going to finish a game. Here I am about a year later taking baby steps to finishing games I always wanted to play.

Monday, May 5, 2014

Unicorn Spell Descriptions #2

     When making sprites for Unicorn Quest spells I ended up with interesting new designs that changed the way I think of them. Each one feels more unique than ever. There's no point in having the electric and ice spells behave just like fireballs with new type advantages. My game design document spell descriptions have updated a bit so catch the new way spells work below the break.

Sunday, May 4, 2014

A Disappointing End To An Interesting Project (PWAA)

The game is done and you can play it here.

     Today marks the due date for the Phoenix Wright project that acts as my forensics class final. From the beginning I knew the entire development would be a crunch, but I really felt that it was a necessary step towards making me a better game developer. It's finally done and the end result of the 3 weeks I spent on this is entirely disappointing to say the least.

    It's more like a virtual storybook than the decently polished adventure game I had in mind. Weak characterization, very little player choice, the illusion of branching, choppy transitions, and general low graphical quality plagued this project, but I'm still glad I made it.

Saturday, May 3, 2014

Status Report #36

     Finals week starts Monday and then I'm free to work on Unicorn Quest all summer. Right now my hands are full with submitting my Phoenix Wright game and my college project. Check out this week's report.

Friday, May 2, 2014

Cutting Corners: PWAA Forensics Project

     To get this thing done in time I made some very noticeable quality downgrades. The most glaring of them being the lack of smooth transitions, the static text, uneven lines of text, sprites that don't fade in/out, some missing sound effects, very flat/cheesy dialogue, and plenty of plot holes. What is intact is the information I'll be graded on and some interaction beyond just pressing the spacebar.

     If I had more time I could make it feel more like a proper Phoenix Wright imitation but I'm really swamped between this, other finals, and my urge to finish this and get back to Unicorn Quest. Some time when I get my grade back for it I'll find a website where I can distribute a ZIP file containing the whole Unity file so someone else can pick up where I left off or rework what I did into something much cooler.

Again, I'm glad this exists. I learned a bit from making it. But I'd really rather be working on something I find a lot more fun.

Thursday, May 1, 2014

Crunch Week: Phoenix Wright Project

      I can say it now even though I felt it coming in the beginning... Never start a game project with only 3 weeks to do it when you could have just made a PowerPoint presentation. At least that's what my tired body keeps saying. My creative heart just wants this game to exist so somebody else will be inspired to make an even better one.

      It's due at 11pm on Sunday and I've got all the hard parts out of the way. With just a couple late nights I should have it done and off my chest. It's a bit more stressful than expected but that's mostly because the senior capstone got me so excited for the project I want to do after Unicorn Quest. There's also the nagging part of my brain that want to get back to Unicorn Quest and make it as awesome as it can be, but I'll have all summer to enjoy making my first dream project.

     Onward and steady. Time to get this thing done so I can prepare for finals with noticeably less weight on my back. I really hope this thing does it's job and makes other Gaming & Simulation students want to approach class projects creatively rather than miserably. And I hope I learn to plan these things out farther in advance.