Thursday, August 8, 2013

Slowly, but surely.

Progress!

I'm starting to get a bit nervous about potentially needing art asserts in the future. I feel comfortable handling all the coding/logic/scripting/etc, but when it comes to creating art assets? pfffft. newp.

Over the past few days I've been able to implement the following:

  • Mouse wheel lets you zoom in and out! yay.
  • Ability to switch camera modes. 
    • push the "End" key to toggle between modes. 
      • Mode1 (default): Fixed camera, chases you around. 
        • This mode is intended for use with click to move (default)
      • Mode 2 : full camera control by holding right-click and dragging
        • This mode is intended for use with WASD movement (Not implemented yet)
  • Added a player health bar
    • Very ugly placeholder. -- but works
  • Added an "Action bar"
    • Ability icons (temp, thank you http://opengameart.org)
    • Ability tooltips
      • tooltips are dynamic, they update automatically based on damage/target/range numbers.
    • Clickable ability usage
    • Eventually abilities will be able to be dragged from slot to slot. 
      • Vital to the ability advancement system in the future. 
  • Enemies will auto-acquire targets when they are damaged. 
  • Added enemy spawning. 
  • Made 2 variations of the fireball
    • Variant 1 homes in on target
    • Variant 2 is a "dumb fire" spell and moves in a straight line no matter what.
  • Created an enemy ability control system that defines what abilities enemies use and when. 
    • Allows for customization of spell order, preference, decision making, etc. 
  • Made a flag for abilities to "require viable target"
    • This prevents you from using the fireball spell without a potential target. Before you could cast it, nothing would come out, and you'd still suffer the cooldown. Now, it requires a viable target or won't cast/animate at all. 
As usual, you can check it out below the break.

Saturday, August 3, 2013

Creating Abilities, Testing them out, and adding some feedback.

Well, here we are again.

Lately, I haven't been able to spend nearly as much time in Unity as I'd like. I know, it's mostly my fault... well... Borderlands 2's fault I suppose (have you checked out the Tiny Tina DLC? I loved it!). 

I've still be able to find some time to work on how the ability system is going to play out. 

Last time I gave you a look at the targeting system that I'd built for use by abilities, this time I've put together two simple abilities and added some really basic animations to them. This is mostly just to figure out how all of them pieces work together and to get things to actually work. This is all, of course, very very placeholder prototype style stuff. I am NOT an artist, or an animator... so this is what you get. :P 

With that out of the way, let's look at what we've got here. 
  • You can use the buttons at the bottom to increase/decrease the number of targets these abilities can hit. (make the numbers big, it's way more gratifying).
  • Character is HUGE -- I exaggerated the size of the character so I could see how things move.
  • He should kind of breathe a bit during idle. It's subtle, but it's there. 
  • He carries around a sword now, that can be easily swapped to whatever other weapon we want. 
  • He runs, sort of... Due to how huge he is, he can get stuck going ON TOP of the enemies in the scene. 
  • the 1 key will allow you to do a melee ranged cleave with the sword. 
    • The damage should happen right in the middle of the swing.
  • the 2 key shoots a fireball
    • The fireball should launch when he extends his hands, and do a little "burst" when he launches it, then the same "burst" when it hits. 
Working on this has actually given me some great emergent issues to work out. 
  • The character needs a "dead range" where he decides that he's in melee range and will stop running towards a selected target or point. 
    • (when you mouse up, if you do so on an enemy, he will target/chase the enemy and get all wonky cause he can't get as close as he wants. Versus releasing mouse on the ground where he just defines a point to run towards.)
  • This can also cause for some "quick spinning" of your character, which isn't exactly bad... but compounds the next point. 
  • The camera is a bitch. It can cause pretty significant confusion as to which way you are facing and where your spells/abilities are going to go. 
    • I'm debating adding a "ring" around the feet of the character that helps to display which way you are facing. Similar to a selection reticule on the ground with an arrow or something signifying forward. I think this option will work very well, especially in a game with 5+ people and a buttload of monsters in the scene, but I feel like it's a bit ugly. Maybe if I find an artist that's something I can get help figuring out. 
Anyways.. I feel like it's coming along well. I'm still learning *BOATLOADS* by the day. I'm finding some of the most difficult challenges to be less about unity and the software, but more about keeping myself in check. Every time I learn something new, or really begin to click with some aspect of Unity, I have to fight myself from going back to previous parts and completely reworking them. I've already reworked this character, and the npcs at least 4 times now. In that same vein, every time I learn/click with something I have to stop myself from trying to add in 400 new features/mechanics that just seem to make sense with my new knowledge! 

I suppose there are much worse problems to have than "I've figured out a better way" and "oh, this gives me loads of new ideas!" 

Check it out below the break :