Project Boon – Dev Diary #32 – Adding more monsters with some slight improvements

I added 4 more monsters and customized the basic one to shoot bullets instead of missiles.

The Movement State doesn’t work properly yet, I’m going to rebuild all the AI but the basics are there. They chase the player, they feint and they shoot as they should.

The Pain State (stun) calculations are also there as well as customized Speed, Health, Damage, Range, Spread and Reaction values.

Doom E1M1 Remake with UE4 and Freedoom assets (Update)

This is the first update of my Doom E1M1 remake with UE4 and Freedoom assets.

Now there are weapons, pickups and some decoration around the map. Rockets have splash damage so they’re more dangerous and fun.

All the game logic will be shared in the future for free so anyone can make their own sprite based FPS including multiplayer.

You can try this prototype here:

Project Boon – Dev Diary #30 – Finishing the health and armor systems

I waited to finish the health and armor systems until I got the weapon system done. Now damage affects player and enemies correctly.

This is how it works, if you don’t have any armor all the Damage goes to Health. Normal Armor absorbs 1/3 and Mega Armor absorbs half the Damage. But if you have less Armor Points than the amount to absorb then armor behaves like Health Points.

Also, if you have 99 Mega Armor points and get a Normal Armor you’ll have 100 Armor Points but the absortion will be reduced form 1/2 to 1/3, making it a negative trade off.

The Environmental Suit and Invulnerability are working as expected.

Radial damage coming from a missile pushes the player, the same can be done to enemies but I’ll leave it like this until further experimentation is done.

I tweaked the nukage material to display different textures animated in sequence.

Project Boon – Dev Diary #29 – Environmental stuff

I’ve been reworking all the weapon system. At first each weapon and its functionality was contained in an individual actor which was spawned when picked up and attached to the player.

Through interfaces I could communicate between actors and activate them when needed.

But being sprite based I thought it would be better and simpler to just put everything in the PlayerCharacter and that’s what I did. All the weapon information is inside a series of structs.

I’ve been making some changes to the collisions, I improved some but some others are now all messed up. Now you can step on enemies and I added some impact effects. I’ve been playing with physical materials, thanks to this I can make them capable of damaging the player. And it’s also possible to add physical materials to sprites so it could be possible to change the kind of blood spurt with different enemies.

This is the SKAG (BFG) I’ll keep, the primary blast can affect up to 40 targets within an 80 meters radius and half a second later 40 rays from the player can damage enemies within a 100 meters range. And every unit damaged gets a miniblast visual effect.

I also improved how you die, now a spectator pawn is spawned and you can move around until you press LMB.

You may not notice it but now every sound is attenuated and spatialized and I increased the max number to 64 to avoid crashing the audio system. I may need to increase it to 128.

Another unnoticed change is movement. I doubled the acceleration and reduced friction.

Now it’s time to properly setup all the collisions, I want a explosive barrel chain reaction.

Project Boon – Dev Diary #28 – Experiments in BFG carnage

I made some modificatons to the SKAG (Super Kick-Ass Gun) which is Freedoom’s version of the BFG and filled the map with enemies, 744 to be exact.

I think I’m going to combine the original mechanics that make the BFG behave like a shotgun on steroids and the expansive damage.

It’s going to look cool and will add some interesting gameplay to the mix.

Project Boon – Dev Diary #27 – Testing the weapons with some zombie soldiers

This was a lot of fun! Time to shoot some enemies, not much to say.

The super shotgun won’t need any piercing damage because the system is launching all the tracers at the perfect moment hitting enemies behind when one is dead.

I noticed that I forgot to add some function to check if the weapon is empty or not when you keep pressing Fire.

And the BFG… LOL, I’ll have to tweak it because the audio system restarts when you kill too many enemies.

Project Boon – Dev Diary #26 – Updating the weapon system

There were some animation glitches that I fixed. I had to add some extra sprites to the pistol, shotgun and minigun because their muzzle flash didn’t include the weapon.

They’re some kind of graphical overlay that gets drawn on top of another sprite.

I could have added a socket and synchronized the Flipbooks but this solution is far easier and simpler.

These are the additional changes I made:

The pistol has perfect accuracy on the first shot but if you keep pulling the trigger the recoil makes the bullet spread horizontally.

The same goes for the minigun but this one fires in 2 bullets bursts.

If you got a berserk pack and use the fist you will punch multiple targets in an area of effect. This will make it very useful with hordes of weak enemies.

The shotgun shoots 7 pellets at a time spread horizontally.

The super shotgun shoots 20 pellets at a time spread in a cone. I’m thinking about making it capable of piercing enemies too.

Project Boon – Dev Diary #25 – Starting with the weapon system

I set up all the weapons with a basic State Machine.

Because they’re 2D I can’t use an Animation Bluprint nor an Animation State Machine but with some Switch on Enums, Sequences and Delays properly configured I could make it work.

There are still some glitches that I’ll fix next while adding the rest of the functionality like spread or area damage.