Damage scoring for Photo ops
One of the biggest design challenges moving forward with photo ops is trying to translate the idea of FPS mechanics for cameras. If I use it just like a gun it would functionally be an infinitely long shot gun with 100 some degree spread and infinite bullets. That won’t work
I like the idea of making it somewhat relative to actual photography skills, like composition, focus, and brightness. I’m not entirely sure if brightness will be possible since that requires some extracting of information from the render pipeline that I’m still learning. The others however are very doable.
I have split up how an enemy is damaged through several criteria. When a player takes a photo each of these elements will be checked and assigned a number. The total of all of them will be added together to get the amount of damage dealt. Some are not assigned a number and are just true/false since not having that element would make the photo very bad
Focus: If the character isn’t in focus the shot will do no damage.
Face in shot: If the enemy’s head isn’t in the shot then it will deal no damage. I would also like this to be specifically the face because taking a head shot from the back in real life would be a horrible picture. I want it to be intuitive in that the better picture deals the most damage.
Size: Checks how much of the screen the enemy takes up. If the enemy takes up less than 5% of the screen deal no damage. Increase damage based on %. Caps at 50%
Depth of field size: This is to incentivize players to use shallower depth of fields. This not only aesthetically lines up with how actual portraiture favors shallower DoF, but also makes it so the players have to accommodate distances to properly have the enemy correctly in focus. I’ll go more in depth on some of the technical things that come from photography in another blog post.
Number of enemies on screen: It is possible with this game, unlike most shooters, to deal damage to multiple enemies in the same shot. This would be called a group shot and adds a flat bonus damage for each additional enemy in frame. It will make for more clutch moments when players manage to insta kill two enemies simultaneously.
Face to Body ratio: Increase damage the more the shot is composed of the face rather than the body. This one will be very tricky to balance on values since this has to be weighted more than “size” regarding stacking effects, but if it is too much getting a shot of someone from far away with their head peaking out would be considered more valuable than an up close shot of their whole body. This has the highest potential to be cut or just be a major headache (though to be honest all of this is a headache to some extent).
Center of screen: Increases damage the closer to the center of the screen the enemy is. Shots will do 0 damage if the enemy is too far to the left, right, or top edge (bottom doesn’t work since taking a head shot would leave out 70 % of the character’s body)
Character specific abilities: The plan for this is to be a hero shooter like valorant or overwatch. It might be possible for different characters to have passives that add or subtract damage from character specific criteria. I could imagine a character who increases damage for how colorful a shot is (even though I have absolutely no clue if/how I would program that without spending years on it, but I’d like the possibility of things like this to be open in the future)
Concerns:
A lot of the ideas I have behind this game seem highly technical and revolve around accessing data from the rendering process. It’s a lot more complex calculations than most online FPS games so I’m worried that there will be lag with anytime somoene clicks to take a picture. I still have a lot to learn regarding the particular online multiplayer setup so I guess that’s a future me problem to deal with.