PROJECT VOID 0.0.3

Project-Void
Auteur Akabane87
Date de publication 04/02/2017 - 19:34:29
Date de mise à jour 21/03/2017 - 02:06:08
Genre Jeu

Disclaimer : this project is currently Way In Progress and there is no planned release date for now.

Credits :
Programmer/Designer/Graphist : Akabane87
Music : Stephane Badey

Description :
This project aims to be a space opera focused on dogfights. The way you build your spaceship using different modules
such as engines, canons and so on, will impact the momentum and the whole physics that will make your ship move and react.
Any module will have independant resistance and detroying a module will affect the physics of the ship until you repair it.


Currently playable :
You spawn with a default ship equiped with 3 canons and 4 engines in a small portion of the universe centered on an asteroid field.
An enemy ship controled by an AI will attack you once it spot you and patrol in the asteroid field otherwise. Once the combat is engaged,
there will be no way to escape unless you defeat the AI or get defeated. The enemey ship has the same modules as yours, with the same properties.
There is for now no real gameplay except the dog fight system that is still in progress. Each module composing the ships can be destroyed,
affecting the inertia tensor of the ship. When an engine or canon module is below 50% of its max HP, it will become disabled. Each module
has low regen rate, as long as it is not totally destroyed. For now there is no way to manually or automatically recalibrate the power of
each engine to make it move forward again once a module has been destroyed, but this is something that is already planned. So better prefer
restart the simulation by pressing select when your ship becomes uncontrolable (unless you have some SM pulsions).


Version notes :
- 2017/03/19 : v0.0.3 (pre alpha release for the GekiHen Contest)
- Reduce the max speed allowed in strafe when inertia is not enabled.
- Add a shoot position calculation for moving objects.
- Add a target selector and a crosshair on the shoot position of the selected target (touchpad to select a target).
- Fix a mistake in the volumetric fox slicing.
- Do not apply smoothed lod transition when transitionning from not visible to visible in term of frustrum culling.
- [TEMP] Teleport the character ship when reaching the limits of physic world.
- Fix another mistake in the projectile collision tests.
- Fix the autofocus shoot calculation to aim the autofocused point instead of autofocusing along the original shoot trajectory.
- Fix wrong hud element rendering on selection behind the camera.
- Fog rendering enhancements.
- Add some basic AI for other ships.
- Add color presets for player ship and enemy ships (ie faction type).
- Make the fire rate per weapon (for now all weapons keep the same firerate).
- Define asteroids as neutral faction (ie no faction).
- Add some real IA behavior :
- patrol system,
- enemy detection,
- enemy engaging,
- attack vector and target tracking,
- obstacle avoidance given the distance and the mass of the object.
- Improve IA avoidance with the ships and moving objects.
- Fix a bug with the initial values of the debug menu options' preset (default values were not displayed correctly).
- Use batched raycasts for projectile collision detection instead of calculating collisions geometrically (faster as hell).
- Use the exact contact point for the explosion FX source.
- Fix a mystical bug with batched raycasts that were making raycasts return random crap after some asteroids exited the physical world.
- Fix multiple issues with the new projectile raycast batched system.
- Add the new auto lock features and the new HUD system.
- Remove the old free move reticle preset from the debug menu and all options related that are not used anymore.
- Fix some double shockwave explosion fx possibility on high framerates.
- Smooth the avoidance of the AI that was too sharp (now using the same max strafe force as the player).
- Make the auto lock progressive on lock acquired/lost and also resumable.
- Increase the AI detection range and the length of the attack vector.
- Slightly increase the collision radius of the asteroids to better fit with the visual.
- Fix the orientation of axis aligned sprites with non identity local orientation matrix.
- Make the hit FX in the hit target referential.
- Change the hit FX to make lighter and brighter (and smaller).
- Make a cleaner collision handler where the AI can catch proxy/triggers/projectiles collision events.
- Toggle manual/autolock shoot mode with square button.
- Add damages to the projectiles that can destroy any part of the ships.
- Make engine and canon modules destructible as well (for now disabled).
- Make a cheap red color fader proportional to the amount of damage taken.
- Stop the barrel roll for AI while turning.
- Enable the inertia (no inertia dampeners) permanently on the AI if at least one thruster is broken.
- Make destroyed modules physically/visualy destroyed.
- Consider canon and engine below 50% of their HP disabled.
- Add a slow regen for non destroyed modules.
- Add an explosion FX when a module is destroyed.
- Make AIs switch target when the current target is destroyed.
- Make the rotation of the ships proportional to the remaining enabled engines power
(so that a ship with all engines destroyed cannot turn anymore).
- Fix some mistake in the calculation of the torque dampening that could lead to some angular velocity divergence.
- Add an auto target system for the player when no target is selected, if any enemy enters inside the autolock area.
- Make the shoot position displayed and the autolock assist auto target the different modules alive
in a specific order (Engines > Canons > Others).
- Add an additional enemy AI, and an allied AI.
- Fix a wrong friendly fire of the allied AI on the player.
- Use different colors for the target selector and the crosshair depending the target's faction
(white for neutral, red for enemy and blue for allied).
- Change the sphere's color of the ship modules to turn to red with a factor proportionally inverse to the remaining HPs.
- Leave back only 1 AI for framerate purpose.
- Deselect the target if out of display range.
- Remove the pick and drag objects option from the game.
- Hide the HUD when in pause mode.
- [TEMP] Mirror the AI ship relative position from our ship when really far from us.
- Add a stun duration on the AI when one of its module is destroyed, to make it lose control of its ship as a real player would do.
- Apply the fog value to the ship's modules too.
- Double modules' max HP for a longer fight duration.
- Prevent AI stun lock.
- Change the default color of the ships.
- Put the red color of the damaged module on the emissive channel.
- Allow to spawn more AIs (enemy and ally) from the debug menu (need to press reset button to be effective).
- Improve the camera.
- Prevent taking shoot inputs into account and updating the autolock while the game is paused.
- Prevent self targeting.
- Micro optimization on the collision detection of the projectiles depending the frustrum and the distance to the camera.


Version notes :
- 2017/02/05 : v0.0.2 (pre alpha release for the GekiHen Contest)
- Add a smooth lod transition.
- More accurate ribbon trails.
- Recoded billboard renderer that can now manage correctly Z ordering of semi transparent billboards with different textures.
- Fix bad projectile collisions on biggest asteroids.
- Fix a wrong duplication of the light when resetting the scene.
- Fix the physic damping that was framerate dependant.
- Use real thruster properties for ship's acceleration and strafe.
- Make engine FX proportional to and in the direction of the total amount forces applied to the ship (including friction) to have
a nice thruster effect of inertia compensation when stopping.
- Smooth thruster flare appearance/disappearance.


- 2017/01/28 : v0.0.1 (pre alpha release for the GekiHen Contest)
This version is more like a sandbox where you can only drive a prebuilt ship in an asteroid field and shoot asteroids.
This includes temporary features such as drag and dropping asteroids with the touchscreen, a debug menu, and wip controls.
- Nearly coded from scratch crossplatform Vita/PC(d3d11) engine using the official sony's SDK.
- Physic engine (native on vita and provided by sony in their SDK)
- Optimized volumetric fog using FBM Perlin noise.
- Procedural asteroids geometry and texture (textures are precomputed for faster loading time) using FBM Perlin noise.
- Single light spot rendering shaders for 3d objects.
- Tweakable controls with 2 presets (from the debug menu).
- Tweakable rendering options (from the debug menu).



Controls:
- Left Stick : 3D strafe right/left/up/down
- Right Stick : ship's orientation and aiming
- Left Trigger : acceleration
- Right Trigger : shoot
- Cross : toggle pause+freemove cam/unpause+ship cam
- Triangle : toggle friction/no friction (ie inertia dampeners on/off)
- Square: toggle auto aim/manual aim
- D-Pad : navigate through the debug menu
- Start : show/hide debug console
- Select : reset the scene
- Front Touchscreen : manually select a target


Special thanks :
- To Team Molecule for all their incredible work on the HenKaku.
- To TheFlow for the amazing VitaShell.
- To Netchoa and Arnaud M. for testing and giving some precious feedbacks.
- To the members of Qoode's slack (ex Xtreamlua team) for enduring my spam in the psvita section for better and for worse ;).
- To SCE for discontinuing the psm and forcing independant programmers to go underground.



Download links :
v0.0.3 :
Vita : http://www.mediafire.com/file/lnu9n3yvcmmi6i8/projectvoid_v0.0.3.vpk
PC : http://www.mediafire.com/file/nsnp9d6g3toppxd/ProjectVoid_v0.0.3.rar
(the PC version has been done essentially for debug purpose. It has no sound support, no HD rendering, and minimum support for mouse/keyboard emulation. So prefer use a pad).

v0.0.2 : http://www.mediafire.com/file/pj56dlv7x3vflge/projectvoid_0.0.2.vpk

v0.0.1 : http://www.mediafire.com/file/167pbb7ad85k4yw/projectvoid_0.0.1.vpk

Project-Void
Project-Void
Project-Void