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);
- Zania.m_hud.graphics.moveTo( -Zania.m_hud.GetX() + p1.x * CONFIG::PHYSSCALE, -Zania.m_hud.GetY()+ 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