This last week, after all the new year's holidays and celebration i had some time away from the office, so being at home made have A LOT of time for the game.
So this was a wildly productive week.
Also, i got back the first track from the music guy (Hexenkraft, check it out if you're into dark-synth metal), you can hear it on the video. Planning on getting at least around 14 minutes of music produced for this game (costly, but awesome).
Feature wise, i'm almost "there". Need to have better map generation and such, but pretty soon all that remains to be done is just content creation, and there's a bunch of stuff planned content-wise.
This week's additions are (in order of what got changed):
- Doors can now have access levels + colors that make them require a specific card that enemies drop according to their faction. So for example, a green faction enemy can drop a level 3 green access card, which will enable the player to open doors with level 3 or less from that faction's color.
- There's a level ending now! It basically required to create a switch entity which can be activated by the player, trigering some condition on the current level.
- Armor system, with 2 basic armors pieces (light torso plate and light helmet)
- Hits now have a probability to be distributed on different places of the body, with different damage modifiers and criticality. These hits affect the condition of the item in that body place (torso hits afect the torso armor, etc). Hits on the head are almost fatal if you don't have a helmet.
- Quick change slots! Makes life easier, and makes balancing what goes into the slots a challenge, will probably add the ability to change the amount of slots via skills.
- A main menu! With options to configure keys, video and audio.
- Added heat vision mode and the corresponding heat vision goggles.
- Added doppler vision mode and the corresponding movement detector goggles.
- Added night vision mode and the corresponding night vision goggles.
- Added a "hurt indicator" on the whole screen (a lot like Call of Duty or other FPS games). This hurt indicator varies intensity according of how much were you hurt and what type of damage you received (normal is red, acid is green, lava is orange, etc).
- Upgrades that have a permanent effect now have limited slots that you can inspect in the UI, making decisions about using upgrades a lot harder (especially if the upgrade has a penalty to a stat, which haven't yet been added but are coming anyways).
- Added hazard resistance, mainly for imps to resist lava and types of armor that can protect you from floor hazards.
- AI now can risk crossing floor hazards, avoid them and enter emergency mode if it doesn't finds a safe place out of the hazard.
- Jumping (mainly to cross hazards).
- Dashing (currently mostly to gain kinematic energy).
- Added kinematic energy, this makes running, jumping and dashing useful to enhance the damage of certain types of damage.
- Added stamina, so running, jumping, dashing and doing certain actions consumes it. Stamina gets replenished according to the character's endurance stat.
- Added knockbacking.
- Added melee weapons (a combat knife for now). This is the first weapon that has primary and secondary attacks. Using melee weapons require consuming stamina, so it's not like they don't have "ammo". The melee weapons also get their damage modified by the amount of cinetic energy the character has, so attacking after dashing or running makes melee weapons hit harder than doing it statically.
- Grabbing enemies and movables. You can use enemies as shields while you flee! This requires a roll for the strength stat and also has checks periodically so you lose grip of the grabbed entity. This system needs to be fixed as currently the grabbing is pretty loose and the entity doesn't follows too closely the player.
- After grabbing the enemies you can release them, if you have enough strength you can kick them, sending them against other enemies and knockbcking them.
- Melee hits and knockbacking can now stun entities, making the option of throwing an enemy against others a good way to flee a pretty tight situation.
- Lowered the speed the AI flees from the aggro entity (made it impossible to use melee if not).
- Crates, terminals and switches now don't affect bullets, making them a strategic element where you can stop progress of chase from the enemies but not prevent them from shooting you.
- Teleporters, along with telefragging!
- Added explosive (and non-explosive) barrels. These can be empty, have acid (spawns acid tiles), napalm (spawns lava tiles) or explosives (explodes and breaks some kind of walls). The acid and lava barrels also leave a lingering effect where the player gets damaged for a certain amount of time.
- Added icons to the UI that explicitly lets you know when you're being buffed by an effect.
- Added a better shader for the water, acid and lava (needs work tho).
- Doors squish entities on close. This makes killing enemies on a door choke point very fun!
- Added "gibs" and blood splats! Makes the game a lot juicier.
- Quickslots get prefilled on startup, so the player doesn't has to configure at first them. This makes the barrier of entry of the inventory usage a lot easier.
- All the weapons on level startup get reloaded now, so enemies are a LOT more aggressive and the player can engage right off since the start.
- Added an inter-level intermission screen, for now it just lets the player save the game and exit or continue to the next level.
- Added a saving/loading mechanism. For now it just saves the player stats, so the player can save between levels. I'm planning on having a "lite" mode where players can save-scum (this lite mode will have certain penalties tho).
- Added sounds to the imp fireball (throw and hit). Also added a hit animation of the fireball and it "burns" now the entity it hits.
- Added different corpse colors according to the way an entity dies. Red if being killed by weapons, if burned they get charred gray, will add more for acid, etc.
- Added a general type icon in the inventory for each item. Makes organizing stuff easier.
- Made quickslot management easier: 1) When a quickslot gets drained (i.e. if your quickslot has a medikit stack) it gets replaced by a similar stack if available; and 2) when you have an equipped weapon and switch to a quickslot, and your current weapon doesn't has an assigned quickslot, it gets swapped with the quickslot item.
- Added a mini-command line for certain testing commands (made quality of life a LOT better for testing).
- When gibbing was added the entity drops would remain on the splatted entity, not visible. Now it drops them all as drop-crates.
- Made drop-crates shine a light so they can be seen when dropped.
- Fixed a bug with the hover info, which made the info VERY unreliable. Also fixed a bug that made hover info crash the game in some weird conditions.
- Fixed a bug where you could switch weapons while reloading and the weapon reload didn't get cancelled.
- Fixed a bug where and entity would step on a hazard floor that it wasn't touching (using round instead of floor to calculate current tile).
- Fixed a bug where the selected item's description in the inventory would linger in the UI panel if it was closed and consumed from a quickslot.
- Separated the spread of the weapons from the precision of the weapons. Previously having high accuracy meant that the shotgun was just a continuous stream of bullets, making it very powerful but very wrong.