v0.0013 (I’ve started numbering the builds)
Reports of my demise have been greatly exaggerated. I’m not dead, kidnapped, in jail, joined a cult or absconded to a tax haven. I’m not back on the drink either. The speculation can end.
First of all, apologies for my lack of updates. I’ve had some unavoidable stuff to deal with.
After some unscheduled time away from the project, due to ‘cost of living’ issues, and having to catch up on jobs I have neglected for the past 5 years, I had a bit of a medical episode, caused by a recurring injury, that required me to undertake some physio-therapy and some rather unwelcome exercise. Pah!
Since I am entirely self-financing the game, my ability to support myself is my primary consideration. And since the cost of living skyrocketed, after the Wu-flu lockdowns, my budget was somewhat dwindling. I don’t have any financial backers/investors. I haven’t rattled my e-begging bowl on crowdfunding websites, so I had to resort to the unthinkable - I had to do some work to earn some cash. Before I could do that, I needed to do some housekeeping, as my workshop needed some attention. Working on the game full-time, for three years, meant that real-life tasks I should have been doing during that time were being neglected and the pile had accumulated to become a mountain.
After clearing the job backlog, when I was ready to get back to work on SportShooter, I had a problem with my left shoulder - the result of numerous dislocations, which caused a sharp stabbing pain if I moved my neck or shoulders. That had to be addressed before I could sit down and continue my work on the game. Thankfully, all is well now.
With that said, I have quietly been back to work on SportShooter, full-time, for 10 months. Things are happening at a consistent pace again, after two years of intermittent progress and radio silence. The break from working on the game full-time has worked wonders for my energy levels and productivity. I feel thoroughly refreshed. I think this is reflected in the number of new features and fixes I have completed since my return - I come bearing gifts.
I’m pleased to announce some new additions to the game which are available in the current update. (If all went according to plan, the update will be live now)
First of all, a significant one – I have migrated the project from Unreal Engine 4 to UE5. This adds a number of features that will allow me to improve the visuals of the game and will facilitate a degree of ‘future proofing’. This has meant that a small number of assets had to be remade, due to some of Unreal 4’s features being deprecated in Unreal 5. The vehicle and destructible objects now use the new ‘Chaos’ physics system. I have replaced the particle effects with prettier ones, using UE5’s new Niagara particle system - Explosions, dust and smoke etc. Epic is phasing out the old Cascade particle system, so porting the game’s FX to the new system was necessary for the move to UE5. The migration inevitably broke a number of features in the game, so it took a couple of weeks to get things back to where they were prior to the move. Luckily, most issues that could have been affected by the migration were foreseen in the planning phase, which meant they could easily be identified and rectified after the move. That said, it wasn’t all fun and games. UE5 is a train wreck of an engine to work with which, in its current state, needs to be constantly poked, prodded and beaten to make it behave itself. The editor software is an unstable, crash-happy incoherent mess. Working with it is like an abusive relationship. Part of me loves UE5. Part of me wishes we’d never met.
Additions:
I have added a much-needed clay target glide physics system. Previously, targets descended at a uniform rate, regardless of the angle at which they were thrown. This meant that the targets all dropped like stones and, due to this, had to be thrown hard, to keep them in the air long enough to shoot. The high speed of the targets made them quite difficult to acquire, let alone shoot, so some type of glide system was necessary. The glide system I have implemented allows targets to be thrown at a lower velocity, while maintaining time in the air. This also means that targets thrown perpendicular to the ground will fall faster, allowing for some more challenging looper/chandelle targets. This system better mimics the way clays fly in the real world. It’s not a proper simulated physics system, but a vague, crude mathematical representation of one. What can I say? I suck at maths.
Skeet is now much more playable with the new glide system. The targets fly slower and take longer to descend, while maintaining their original distance of travel. They are now easier to hit, yet still challenging enough to be fun to play.
This new glide system is not without its problems, however. Some tweaking of the traps is needed. Most of the targets are unaffected, but some are now not throwing as expected, due to the change in the flight dynamics and some minor inconsistencies between UE4 and UE5’s physics systems, due to the migration. Some targets may not match their descriptions on the menu boards. This is a known issue and is currently being addressed. All things considered, the implementation of clay game mechanics is notably better than that of a certain nameless hunting game that recently introduced skeet and trap layouts to their title.
I have created a proper dynamic shot pattern spread for shotguns. Previously, the ‘spread’ of the shot was faked. The old method used a single invisible collision sphere as a projectile, which increased in size, over distance, to simulate the spread of the shot pattern. This system was a fudge, as I didn’t know how to create a proper multi-pellet shot pattern, at the time. The new system utilises a random conical pattern spread, with a variable number of pellets and cone angle. This will allow the ability to simulate different shot loads and chokes. I’m quite excited about this, as I have wanted to add this feature since I started the project. I have done a lot of testing on this feature to ensure stability and consistency, as it is a drastic change to the mechanics of a fundamental component of the game. I really didn’t want to roll this out unless it was going to work as expected. There is really only one requirement from a clay shooting game: the ability to shoot clays. Thankfully, it works better than I could have ever imagined and I’m enjoying playing with it myself. This also means that the pattern boards can now be used to visualise the spread pattern. When you shoot the board close-up, the pellet impacts are all bunched together. The further away you move from the pattern board, the bigger the pattern spreads. It’s a much more accurate representation of real life. It is now possible to hit more than one clay target per shot. The shot is now visible as it leaves the gun, which aides shot placement. It looks like an angry swarm of lead bees.
I have created and implemented a new vehicle model to replace the existing one. The original vehicle model was quickly thrown together, as a placeholder, and was always intended to be replaced. The new one is more detailed and better scaled. The awful digital speedo display has been binned in favour of a nice analogue speedo and tacho setup. Otherwise, the vehicle functions as it did before, with vastly improved handling characteristics. The player character is now visible inside the vehicle, with animated hands on the steering wheel. I have also added wheel particle FX to the vehicle, meaning that dust, gravel, debris and water spray are kicked up by the wheels, depending on which surface it is driving. Additionally, I have added a water mask, which prevents water from clipping through the bottom of the hull. Furthermore, I have added lights to the vehicle, which will become useful when I add a night map. Crash Impact sounds have also been added.
I have finally finished the new weapons inventory system, which allows the ability to add a virtually infinite number of guns to the game. Previously, I was limited by the rather un-modular nature of the old system, meaning that adding new guns was a quite a chore. It was all stripped out and redone, which was quite a traumatic experience... It was not fun. Now that the difficult part is out of the way, this new system makes adding additional guns a much quicker and simpler process.
Easier = More guns.
Guns are now categorised by type. (shotgun, pistol, rifle, assault rifle etc.) Only 6 guns can be carried at any one time. Each gun type occupies a slot. Each slot is type-specific. Only one gun per type can be carried simultaneously. If you pick up a gun of a type you already have, the existing one will be dropped.
The new inventory system incorporates a mouse-over selection system, to choose which gun to pick up. When you mouse-over a gun, a hand icon appears, indicating that you are able to pick it up. Left click to pick up the gun. This mechanic is also applicable to ammo and gear pickups.
The new inventory system has also allowed the implementation of carrying capacity upgrades for ammo. If you collect an ammo tin, a cartridge bag or a large ammo crate, these will expand your carrying capacity for ammunition of the type indicated on the container. This will mean fewer trips to the gun rooms to collect ammo. These are currently available for testing, but will become unlockable rewards for completing challenges, upon full release of the game.
The new inventory system also allows better implementation of weapon attachments. I have started building a proper attachment system which will allow the player to select optics/open sights/suppressors/lasers/flashlights etc. (not available to players yet)
I have already finished a laser sight. This is not available yet. It will be made available when the attachment system is finished.
I have added a .50cal rifle for use on the 1000-yard range. It occurred to me that the only rifle in the game capable of hitting the 1000yd targets is limited by the fact that the player can’t see the target from the firing position, due to that rifle only having open sights. The .50cal is scoped, as to remedy this problem. While the .50cal is in the game and playable, like the other guns, it currently lacks animations, except for the firing cycle. Once I have all of the currently planned roster of guns in the game, I shall then add all of their animations. I have already made some of the animations for these guns, others I have not started yet.
The .357 Magnum revolver is now playable. Like the .50 rifle, it doesn’t have animations yet.
Modelled an AR15 assault rifle with holographic sight. The AR15 is playable, has sounds and ammo pickups, but lacks animations. The AR15 has select fire functionality, switchable via the ‘C’ key, on the keyboard. (semi-auto/burst/full-auto) The holographic sight is fully settable, in elevation and windage, and can be set via the keyboard arrow keys, just like the rifle scopes. The holographic sight isn’t limited to the AR15. It will be available as an attachment to any gun it will fit.
Modelled and rigged a Skorpion machine pistol. (playable but no animations yet)
Modelled and rigged an MP40 sub-machine gun. (playable but no animations yet)
Modelled and rigged an AK47 assault rifle. (playable but no animations yet)
Modelled and rigged an 1100 Sporting semi-auto shotgun. (playable but no animations yet)
Modelled and rigged an 1100 Tactical semi-auto shotgun. (playable but no animations yet)
Rigged the Sten SMG. (playable but no animations yet)
Reskinned and rigged the 1912 trench gun. (playable but no animations yet)
Reskinned and rigged the PCP air rifle. (playable but no animations yet)
Reskinned the 1911 pistol, added the firing cycle animation and added the brass ejection functionality. (still no reload animation yet)
Reskinned the Lee Enfield No.4
Modelled a new over/under shotgun. It’s textured, I just haven’t rigged or imported it yet.
Reworked the Thompson SMG. I didn’t like the look of the model so I’ve redone it. It isn’t included yet. The old one is still present in the game, it just isn’t usable.
95% completed modelling an FG42 Type II. Just a couple of simple parts to finish.
Added a bit of weapon sway/float to make movement with guns a little less stiff. The driving variables behind the sway feature are implemented on a per-gun basis, so if you think the sway is a little too pronounced on a particular gun, let me know and I’ll dial it back a bit.
Added procedural recoil to all of the currently available guns to make shooting a bit more challenging and to give each gun its own unique characteristics. As with the sway feature, the recoil characteristics are gun specific, so if you think I need more or less recoil on a particular gun, let me know and I’ll look into it.
The character’s skeleton has been replaced (AGAIN…) with a new one. This was done as I have abandoned the animation software I was using previously. This will make future animation faster and easier. This was a big job, because there were a lot of dependencies on the name/position/rotation of the character’s bones. This caused an unfathomable number of issues that had to be fixed, just to return the character’s functionality to the state prior to making this change. This scandalously time-consuming task was necessary to make my (or a potential hired animator’s) job a little easier in the long-term. With this new skeleton I was able to build an animation control rig in-engine. This in itself was a monumental pain in the hole, as the documentation for this engine feature is limited. I basically had piece together snippets of information from documents, video clips and then try to fill in the gaps myself. That said, I now have a fully functional FK/IK control rig and a fairly decent understanding of the underlying system. This will aid the process of animating entirely inside of Unreal Engine. I’m quite excited about this, as it will mean no more faffing about importing/exporting anims from my DCC into Unreal. It will all be done in-engine.
I have made the boats driveable. They are no longer just decorative. Some tweaking to the handling characteristics is needed. The boat handling is quite awful at present.
Added another 5-stand Compak layout. There will be 5 in total, so just another 3 to go.
Finished sporting course 4: 30 stands, 150 targets, located in the large pine forest. This is my favourite course so far. Target presentations include risers, high birds, long crosses, spring teal, rabbit, lemmings and more. This has been fun to test. I hope everyone enjoys it as much as I have.
90% completed the CQB course. (inside the big metal building) It consists of a number of rooms featuring 100 plate targets, some obscured behind various types of cover. It is timed, like the ‘Practical Shooting’ courses. The scoring consists of gold, silver and bronze awards, which correspond to completion time. The objective is to finish the course as fast as possible, hitting all of the targets at least once. The course is fully functional and plays as expected. All that remains for completion is the addition of more props and decoration. It’s a bit bare as it stands.
Added a new game type – Pigeon Hide. As the painfully unimaginative name suggests, it simulates a pigeon shoot from a hide. It consists of a large number of birds presented from a number of directions, heights and velocities. It’s similar in format to the driven grouse and duck game types.
I have added the ability to change the colour of clay targets with a single setting. This changes the colour of the thrown clays, as well as the colour of the clay stacks on the traps, and the colour of the destroyed clay’s dust cloud. Clays can now be made any colour. I plan to add a setting to the trap remote, to give player the ability to change the colours of the clays, on the fly, in-game. This may require a redesign of the trap remote layout, so I can’t give an ETA on this feature just yet. The trap remote control UI has no remaining space for this feature at present.
Set up the .50 cal’ machine gun on the 1000-yard range. It isn’t finished, but it fires and has sounds and FX. I still need to figure out how to get the ammo belt to feed and follow the rotation of the gun, as well as setup load/reload animations. -A PITA I am not looking forward to.
Replaced the ‘placeholder’ character shooting vest with a more detailed one.
Replaced the character’s jeans with a new pair.
Started making new map icons for the different game types. Only a few added so far.
Added a notification message when the player attempts to enter a vehicle/spotting scope/emplaced machine gun, with a loaded gun. One of the objectives of the game is to promote safe shooting practices, so I wanted to encourage shooters to unload their guns when they are not in use. Some people were asking why they couldn’t enter the vehicle, if it was a bug. It isn’t a bug. It was because they were prevented from entering while they had a loaded gun equipped. This was intentional, I just didn’t document this feature and there was previously no way for the player to know what was preventing them from entering a vehicle. This was an oversight on my part. This has been remedied. I’m trying to keep pop-up notifications to a minimum because I don’t like screen clutter. I think it breaks immersion.
Fixed the standing to prone and crouch transitions and added the ability to aim while crouched and prone. This really should have been done before now.
Fixed the transition from idle to walking while aimed down the sight.
Added the scoring system to the Walked-Up course. (Somehow, I missed this previously)
Fixed the issue that prevented the rabbit targets from breaking on Sporting course 1 - Stand 24. I won’t bore you with the details, but rest assured it works properly now.
Fixed water interaction for player and vehicles, covering all of the lakes and ponds. (Not including the river yet) Unreal Engine’s water system is experimental and is incomplete, (as of UE5.4.3) so some hacking and bodging was needed to achieve water interaction for the player and vehicles. Now player and vehicle movement cause ripples in the water. EDIT: Updating the game to UE5.4.4 broke this feature, so some investigation is needed.
Fixed the dodgy navigation map behaviour. This wasn’t just a few simple tweaks to get it to work properly. This required a root and branch strip out of the old system and making a completely new one. The method I previously used had some limitations that I wasn’t aware of at the time, which prevented me from adding the features I had planned. Unfortunately, I still haven’t managed to figure out how to make the zoom focus on the mouse position. I’ll figure it out eventually.
Increased the range of the ‘Mouse Sensitivity’ slider in the controls menu, to accommodate higher resolution mice. (mice? mouses? IDK) Also fixed a bug that sometimes prevented the saved mouse sensitivity setting from loading at startup.
Fixed the bug that prevented the range spotting scopes from zooming correctly. They function as intended now. It was caused by a console command preventing the scope’s field of view being changed. (You may have to delete your controls config if this fix isn’t applied automatically with the update.)
Fixed the broken ‘aim down sight’ of the .50 cal mounted machine gun. This was caused by the same problem as the spotting scope zoom issue.
Fixed issue that caused an unloaded, open shotgun to appear in the ‘gun up’ position when selecting shotgun from the weapon inventory.
Fixed bug that prevented the character from sitting down in the vehicle when airgun was equipped.
Fixed the bug which inexplicably detached the top-half of the clay traps, on the tower stand, and moved them several-hundred meters away from their bases. I have absolutely no idea what caused this bizarre bug, but it was fixed by replacing those traps with new ones. Problem solved, but the mystery of what caused it is not. I don’t even have a theory.
Fixed a bug which resulted from the new clay glide physics system, which caused some strange behaviour from the walked-up targets. It took 2 whole days to track this issue down. I uttered a lot of expletives during this process. It’s fixed now, thankfully. I don’t think I could go through that again…
The disappearing clay target problem is now fixed. I didn’t fix it. It was resolved by the migration to UE5. I previously knew what was causing it (it was a sub-pixel rendering issue) I just didn’t know how to rectify it. I still don’t. UE5 fixed it for me. Result!!
Added missing collisions on shipping containers.
Tidied up the trap game layouts and removed the unnecessary barriers.
Added some more props.
Done some optimization work to reduce draw calls to the GPU.
I have converted many spline meshes to statics, which will result in a notable performance improvement for lower-end systems.
Replaced the flag skeletal meshes and cloth simulations with static meshes that instead use a material to handle the flag animation, as the original solution was unnecessarily computationally expensive. Having a lot of skeletal meshes and cloth simulations in a scene quickly eats up resources.
Many more changes besides the ones listed. I have been quite productive since my return. (a sense of guilt is a strong motivator)
Coming soon: 3-gun variation of the Practical Shooting discipline.
Guns coming soon: New over/under shotgun, Sturmgewehr 44, Glock 21, Walther PPK, HW40, Accuracy International L96A1, Ruger 1022.
Additional notes:
The rifle scope sight picture is currently suffering from some serious visual noise and ghosting, due to UE5’s new antialiasing system. I am working on a fix for this issue.
I have noticed some inconsistency in the scoring for the HFT, CQB and Practical Shooting games after the move to UE5. I am looking into it. I think I know what’s causing it.
I have disabled the Lumen global illumination system for the time being, as it is more trouble than it is worth. The performance hit experienced with lumen enabled is significant, for very little visual benefit. It looks pretty in some instances, but introduces all manner of artifacts and anomalies in others. There is no way to make it look nice while maintaining desirable performance levels. On my RTX4090, the game runs an average of 100fps with lumen disabled. It runs at an average of 80fps with lumen enabled.
Update notes for 27th Feb 2025
Update notes via Steam Community
Some depots below may not display changed files because our bot does not own the specific depot or game.
Game can be donated with a key, by sending a gift, or using curator system.
Sport Shooter Content
Depot 1331471
- Loading history…
Changed files in this update