[SCRIPT] [RELEASED] On-Foot Cinematic Cam
@Elope No, the ini file is fine... give me a min and I'll record a short video showing all three on my machine so you can see what it should look like.
@Elope This is how the timings look on mine with those settings in that dll.
@LeeC2202 crap...My VPN is expired and google disk aint working for me now...
@Elope I can upload it to youtube if you really need to see it... all it really does is show that the timings are a lot shorter than the previous 10 seconds.
Let me know anyway, it's only short so it won't take long to upload... unless you've lost access to youtube as well.
@LeeC2202 Yep....no youtube access,thanks to the Chinese gov
Well I'll check if I've installed it wrongly or something else thanks for the help anyway!
@Elope I didn't realise that's where you were... I believe things are pretty well locked down over there, not good.
If you don't get it sorted, just shout up on here and as long as I have the page open, I'll see it and respond asap.
I'm just trying to track down an annoying intermittent bug that causes the on-foot system to fail when you hit the activation key... I think I've found it... hopefully.
@LeeC2202 Alright! keep up the good work!
Things are kinda locked up here but we still have VPNs lol,
In one fell swoop, I've gone from seemingly finding a bug, to completely breaking the whole thing and I have no idea what I did to break it.
2am, a vertigo attack and a broken project... what a way to end what I thought was a good day.
Bizarrely, I got up this morning loaded up the game and the exact code that failed last night, worked fine.... and then after an hour or so, it didn't... then it did.
The absolute worst kind of bugs in the world, are intermittent ones... we used to call them the "Friday afternoon" bugs because after a week of stressing as release date came closer, there was always something that cropped on Friday afternoon that you just knew was going to cancel out your weekend... usually an obscure bug that would magically disappear until you least expected it.
At times like these, I am reminded of why doing the graphics was sometimes the much better option.
sigh Finally found the elusive bug and then discovered that the melee camera is actually broken. I haven't touched that, so I have no idea what has broken it... Just as I was about to upload a new version with the fixed bug too.
Well that turned out to be easier to find than the other one... new version will be coming later (Version 2.2) with several new additions.
On-Foot cam will turn off when you aim. On the controller this means pressing LT at any time, whilst on Mouse + KB, it means pressing RMB when you have a weapon active that can be aimed. Not sure why it works differently.
On-Foot cam will now deactivate properly when you walk inside somewhere. Not sure whether to save the previous state and then switch back to that when you exit. If anyone has any thoughts on that, shout up.
Melee attacks now detect with ALL melee attack buttons. This means that Mouse users can simply press the LBM to do a melee attack and the camera will show the attack properly. Heavy Attacks (A on the controller) seem to need targeting to activate... but I could be wrong on that one.
Tweaked the focal point on the player to be slightly higher up the body, not much but it centres the view around the chest area instead of the groin... a far more interesting focal point when you're free-roaming with a hottie model.
Switched one of the probes to be a different type so you will get a more static view looking either over the shoulder, or back towards the face. Each time this view activates, it will randomly switch to one of four positions for the next time.
If I think of any more changes that I have added, I will post them later... now though, it really is time for food.
Just an amendment to what I posted previously.
Aiming (by using either LT or RMB) is now working fine in the sense that weapons other than Melee and Unarmed (Fists and knuckledusters) will cause the on-foot camera to deactivate. This allows you to drop out and shoot with no restrictions.
Another slight tweak means that you can now switch player models while the on-foot camera is active.
Why is it, I test something and it seems to work. I test it some more and it seems to work. So I release a new version and a few hours later, it seems as though it isn't working after all.
The problem only seems to appear when you switch characters and is cured by turning the On-Foot camera on again. It's getting stuck in a kind of limbo where it thinks it's on but it's not.
As much as I am enjoying doing this mod, every time I screw it up, or more importantly, every time I screw it up and release a screwed up version, it takes a huge chunk out of my motivation. I'm starting to wonder just how much I've got left.
Can you force it to 're-enable' when switching characters?
@turtlevan Turned out that the version I uploaded wasn't as badly wrecked as the version I was using when I made that post. When you switch characters via the selection wheel, it intentionally deactivates because it doesn't know where the new character is... it's just easier that way.
Any character could be in their car for instance, so it makes no sense for it to be on. All it means is that you have to re-enable it with a keypress, which is no different to getting out of a car in cinematic mode and then having to re-enable it when you get back into another car.
I was trying to be too clever by letting you switch models via a trainer when the camera is turned on and that's where things were screwing up. But instead of saying "What the hell, it's just a non-essential part of the game that screws up... who cares?" like I should do... I get obsessed. I get so obsessed that I end up breaking things trying to make that one thing work. Eventually it gets to be like trying to put the removed blocks back into a Jenga tower... and with the same eventual outcome.
So to sum it all up, things are not quite as bad as they seemed at stress o'clock last night, but I clearly need to spend some time reworking parts of the code to work better. Although I have been coding for a long time, I've changed languages so often that I don't always get to be as proficient in a language as I should. So I have to write messy and then do some tidying up.
But I have to balance that with not letting the project go idle so that people think it's been abandoned. I see too many mods on here where they just seem to have died, leaving users stranded with problems. That's not in my nature... I hate that.
What a stupid mistake I made in that last version. I thought it was a good idea to deactivate the camera when you were aiming but I completely missed the fact that the aiming control is the same as the brake in the car, so when testing for those controls, I forgot to add an "Are you sitting in a car?" check...
This is turning into a circus show... I can only apologise for being such a doofus.
And just to keep the flow of stupid coming, after uploading a "fixed" version, I find the native that let's you see when the player is aiming, which I should have used in the first place.
I missed it before because it's a native that applies to the "Player" and not the "Character". I get so used to typing "pdPlayer." which is my Player-Ped variable and then seeing what options pop up on the intellisense.
A big part of this learning curve is trying to learn what belongs to Game.?? Game.Player.?? and Game.Player.Character.?? That's as well as World.?? and UI.??, with the occasional Gameplay.?? thrown in for good measure. With well over 5000 natives, it's hard to miss them sometimes... not much of an excuse I know.
Damn this No Man's Sky is really distracting me from this. Must get organised... must get organised!!
If I tell myself that enough, it might work.
Attempting a major rewrite of some of the code but failing miserably. I want more flexibility and options and my current system doesn't allow for that properly. The perils of a write once, refine later approach.
So I abandoned my re-write for now and decided to work on the existing system. Lying in bed one night I was thinking about making the whole game a seamless cinematic experience and so this was born.
Basically there is a new setting in the ini file that tells the game whether you want the vehicle cinematic camera (Rockstar's existing system) to activate automatically when you get into a car. So if you have the on-foot camera working, getting into a car will switch straight into vehicle cinematic mode. Getting out of the car will switch straight into on-foot mode.
Driving is a real pain in that view, so it's probably not the most practical of options but I thought I would add it anyway to try it. You toggle it when you are sat in a vehicle by pressing the existing cinematic control. on the XBox Controller for example. So that control does two things now, switches cinematic mode on and off inside vehicles but also switches the auto-cam on and off at the same time.
As part of me expanding what the camera system can do, I have added a new "Static" camera probe to my existing "Orbiting" probes. This will drop in a fixed position, zoom based on the distance the player is from the camera (which I didn't do a very good job of demonstrating in the video I might add) and track their position.
So as you walk nearer, it zooms out and as you walk away, it zooms in. I am hoping to switch all the fighting and vehicle camera over to this system, which should resolve the blocked-view syndrome completely and make the fight camera a bit more dynamic. I say should with much hesitation... best laid plans etc...
So a new version is not quite here... but it's coming.
wow, going by your video, full time cinematic camera is working 100%!!
great job leeC2202!
when the on-foot cinema camera is active, and it's behind the players walking direction, the camera angle seems to be too high above, or too close to the player to where you see mostly ground and not much of the horizon.
Also ihave an idea for a camera type or suggestion. A camera that starts from behind the player while the player is moving, and then the camera travels in the direction of the player at a speed slightly faster than the player run/walk speed. drive-by camera.
camera always starts behind and passes the player on left side or right side
@turtlevan With regards to the camera angles, I think I know the angle you're talking about and it's one that I kinda like, because it lets you get a good all round view of the player... reminds me a bit of the old isometric angle, which is probably where the inspiration came from.
I grew up with Knight Lore, Fairlight and Highway Encounter... isometric is a favourite viewpoint of mine. Although I must confess, when I was once asked to do an isometric tennis game, I quickly passed the artwork on to someone else. I love the view, I hate drawing people in isometric viewpoints.
With your suggestion (for the drive-by camera), what would happen if the player turned 90 degrees, or even 180 degrees? Say you were walking forward and the camera starts behind the left side of the player. Just after it starts, the player turns 90 degrees to their left, cutting across the path of the camera. What would you expect the camera to do in that scenario?
That is a serious question by the way, not just trying to dismiss your idea. If I understand better how you envision things to work, I have a better idea of how it might work. You have to know how a change of situation will affect your idea and how the idea might adapt to suit the changes. If you're focused on the player, it doesn't matter where they go, but if you presume they will walk in a straight line and then they don't, you have a problem.
See this is one of the ways that the player focused camera has to differ from the vehicle one. You tend to drive vehicles in more open spaces at faster speeds, so any changes of direction are done in a longer amount of time. On foot, you can change direction in an instant, even on the spot when you're not moving at all.
If you notice in the vehicle cinematic modes, whenever the camera is performing any kind of lateral tracking, there is always a bigger distance between camera and vehicle, giving the camera a larger field of view for the vehicle to change direction in. I like some of the things the vehicle camera does and I want to try and replicate a lot of that to make this camera seem like it was part of the original game camera... but I have to think small scale, tight in, quick reactions, and when things do happen quick, to try and dampen the motion so it's not too jarring.
Just one other thing I thought about last night, is the camera shake. I think I am going to tie that in with the FOV setting, so the more the camera is zoomed, the more it shakes... like a real camera.
Thinking out loud time again... So here's the thing, the mod now has three items it can control.
- The overall state of the mod On/Off
- The state of the on-foot cinematic mode On/Off
- The state of the auto-vehicle cinematic mode On/Off.
If you press the activation key to turn the whole mod off, that turns off the on-foot mode as well but should it also turn off the auto-vehicle mode?
If you turn off just the on-foot mode, should that turn off the auto-vehicle mode as you can't have auto-vehicle mode without the on-foot mode active?
If you're in a vehicle with the mod turned off, should I allow the user to turn on cinematic mode in the car and if so, should that turn the whole mod on, including the on-foot mode?
Or should auto-vehicle mode be a completely independent state that simply functions if (and when) the on-foot mode is on?
The simple act of pressing a button can suddenly turn into a whole heap of decisions, when there is a dependency chain to consider.. Time to ponder... engages thinking to himself mode again.
it would keep tracking the player no matter where they go / turn
If the player goes directly into the path of the camera, the camera could reach a maximum zoom-out
the camera could also back away from the focal point once it has reached maximum zoom out.... similar to what the camera does in cinematic mode when you crash the car, and the camera is overhead.
Or thirdly, the camera can cut to the next camera if the player interferes with the trajectory by making a sudden turn into the cameras path
Edit: What is the time the camera stays before changing to next camera? Is it about 4-6 seconds? A few cool angles to add would be the angles from the PS3 generation on vehicle cinematic camera ( a few which are different from CG & PC). Also would be neat to see the three 3rd person angles added as a random 4-6 second long camera within the cinematic mode - however not as frequently - perhaps 1 out of every 10 cinematic angles.