Zania week 12: Laser

Forum is active and can be found zania.alongside.me/Forum

You can now change weapons, even though there are 4 choices, only Bullet and Laser are functional. Current working build is on zania.alongside.me. Those with Firefox and some script blocker might just encounter an empty game. That’s because the flash is loading xml from a web address. No plan to fix for now, because the change is significant.

After weeks away to take care of family, I am now back to work on this full time. The sickness hasn’t disappeared, we are just more efficient at time management, so I get some time for myself. It’s also hard getting into the habit of working 12 hours a day and as such, I do some stupid things when I really don’t feel like coding. One of those is figuring out how to count LOC (Lines Of Code) on my whole project. The answer is 28,428 LOC and should start shrinking from here on as I begin the optimization process. The next time someone asks me what’s the largest project I worked on, I can refer to this stats. Not that it should matter, quantity is not quality, but the corporate world works on metrics and has no way of measuring quality i.e. how much a person cares about their work.

On top of everything else that’s been going on, I have started drawing for 1 to 2 hours at the end of the work day in order to get my artistic feelings back. I am doing this in preparation for a week that will be dedicated to producing graphics for the game. Here are some of them from back-of-the-envelop practice. I started out drawing with correct perspective and shadows, then blackened out the whole thing to see if I can actually distinguish the items with the black vector style. Turns out that it is hard, I’ll have to think of something to make distinguishing easier. As a result, I doubt I can show steampunk style with pure black. That means steampunk is out.

 

Complete

  • Use filtering to rule out contact between player and their own weapons
  • Event for handling laser is done…bullet doesn’t seem to be doing damage though.
    • ContactListener was listening on isBullet() identifier, changed to m_bullet reference present.
  • Removed kinetic bullet’s extra resolution contact resolve in the physics engine due to performance.
  • There’s a major bug where the focus on the stage gets lost and keyboard input stops getting received
    • Found a mention here: http://www.actionscript.org/forums/showthread.php3?t=187907 and here: http://board.flashkit.com/board/showthread.php?t=761063
    • Fix is not working, changing the useCapture does not seem to work
    • The problem is when an object within a List object is clicked
    • Object is not created on the main Stage, therefore when the event bubble propagation back up, it ends nowhere
    • Added to List as my fix
      • aList.addEventListener(MouseEvent.CLICK, focus, false, 0, true);
      • private function focus(event:Event):void{
        stage.focus = stage;
        }//private function focus(event:Event):void{
  • Item duplication bug because the time lapse between when the command is issued to when the item data is loaded.
    • Do I need to fix this?
    • No, but fixed for the future using flags.
  • player.Equip() to change Ship’s weapon, which determines recoil and size of the weapon.

Incomplete

  • Major problem. Asset loading from web xml invokes a warning from adobe. Need to change this to be built into the flash file.
  • Add offset for weapons position in ship
  • AI calculation on where to turn is a bit off when player is positioned at the 2nd quadrant (and directly at negative y axis) compared to the AI.
  • GUI health bar not decreasing correctly fully, also, health count drops to negative before counting is terminated
  • Determine which class should be the one retaining weapon ID
    • Actor? Ship? Player? AI?

Reviewed milestone

  • Core: Physics based space shooter
  • GUI: Health, ammo, radar, inventory
  • Graphics: B/W vector graphics
  • Music: 1 track repeated

Original Milestone

  • One player ship and one ai ship artwork finished along with their xml data (Art + some programming)
  • Hitpoints, body existence timer and actor destruction (Hardcore Programming)
  • One planet orbiting the sun. (Hardcore Programming)
  • GUI placement (Art + menial Programming): Health bar, ammo count, radar, inventory
  • Booster animation (Art + Math + some programming)
  • Populated galaxy (menial programming)
  • Dynamic graphics loader for background? (Cleverness)

Features for next release

  • Genetic AI
  • Secondary gravity fields for planets large objects and black holes
  • Multiple galaxies

Features for future release

  • Base building
  • Market systemZ

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>