Zania week 10: Inventory

The current test web deployment with laser equipped and god mode enabled can be found here: http://www.alongside.me/zania/ Requires flash 10 and uses GPU to do the calculation. My crappy AMD runs at around 20%.

My timing seems unfortunate, as tech bubble 2.0 is gearing into full throttle.  When articles of people not related to tech moving into tech for money appears, it is a sign that the count down to d-day has begun. Millions of dollars are being invested in companies founded around the idea of a feature instead of a fully fleshed out product. Yes, we’ve learned from the tech bubble of 2000, but that only educated a certain demographics of investors. Those that didn’t get hurt in tech 1.0 are bound to repeat history along with new bloods.

I give myself 1~3 years, before the whole thing goes out of control. 1 year if the accelerated gyration of the stock market due to algorithm trading is true, 3 years as a safe estimate because I often miscalculate the general investment public’s prescience by applying my own to them. BUT, in the grand scheme of things, it doesn’t matter. There’s a bigger obstacle to overcome which overshadows the boom and bust cycle of political Tourettism. The omnipresent statistics which says 95% of new companies fail in 5 years.

As such, I determined that revenue should come first before I go for the cool factor and popularity. I’ve given some thought to the next stage after the first demo on flash and determined that I need to push this out to apple iPad first and then perhaps iPhone. The reason why I chose Mac as opposed to Android is because GOOG is getting sued by AAPL while AAPL is getting sued by some patent troll Llodsys. My financial instinct tells me that a Patent troll will eventually get squashed by APPL while GOOG will suffer tremendously, besides, the 0.05% stakes that the patent trolls are asking is not as disastrous as the possibility to have the whole platform disappear. To do the deployment, I will need an original investment of a Mac Mini and a first generation iPad. A Mac mini goes for about $200 on Craigslist and a refurbished iPad goes for $340, $300 if I can find it on Craigslist. So, the focus of my first release, will be to generate $500 as a goal in order to bootstrap to the next level. The bootstrap should start once $200 is gathered since I have an iPhone for deployment testing. I should be able to get a feel of the environment while waiting for the next block of $300 to be generated to see if iPad deployment is more important.

Complete

  • Improve physics engine
  • Equip function for different type of ammo
    • Overhauled weapon.xml structure
    • Created test function RayCast for lasers
    • Lasers created, but at the wrong offset, wrong rotation and wrong length.
    • This is related to the radian to cartesien translator I made for bullets creation. Looks like math time.
    • OMG!!!! The drawing was correct. It is just not tracking the camera movement.
    • After tweaking, here’s the formula to track the laser position to the player’s GUI:
      • Zania.m_hud.graphics.moveTo(  -Zania.m_hud.GetX() + p1.x * CONFIG::PHYSSCALE,  -Zania.m_hud.GetY()+ p1.y * CONFIG::PHYSSCALE);
        Zania.m_hud.graphics.lineTo( -Zania.m_hud.GetX() + (p2.x * lambda + (1 – lambda) * p1.x) * CONFIG::PHYSSCALE, -Zania.m_hud.GetY() + (p2.y * lambda + (1 – lambda) * p1.y) * CONFIG::PHYSSCALE);
    • AI and other entity’s lasers does not track correctly.
    • The physics body for the AI ships were blocking the raycasting. So the ray was immediately blocked at 0,0. Need to add offset in the future.
    • Boom and it works. I am very happy
    • Realized that lasers are a fundamental part of the game world. Affects a lot of stuff. How am I going to count damage?
    • With the completion of laser, a whole new world of possibilities opened. I could allow the laser to split physics bodies if I want, but should probably keep myself to just doing damage for now. Will sleep on this.

Incomplete

  • Change xml loading to relative path instead of absolute path.
  • Fix RayCast problem with compound object
  • Add damage to Laser type weapons
  • Forced to revisit contact events and Damage assignment. The new physics engine changed that drastically, also, laser damage needs a separate event for itself.
  • Add offset for weapons position in ship
  • Move bullet creation to actor construction.
  • 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>