Jump to content

Automatic viewport move


Recommended Posts

I recently saw how gamepad is supported on console version of BGEE and it seems really cool, at least for exploration of areas. Normally exploring is like "move viewport -> click -> move viewport -> click", it's a bit tedious. I usually use WASD to move viewport to reduce cursor trips to screen edge back and forth, but it's still two actions, when in fact only one is needed. Is it something that would allow on PC version something similar to gamepad experience for exploration? So viewport would follow party when not in combat or anything like it? Maybe it can be enabled with some set of configuration or some mod?

Edited by marchitek
Link to comment

It is possible to make the screen jump, or even glide, to a character, every so often, but not follow him around smoothly. I find the jumping rather distracting, even if it is slow. Besides, who to jump to? There are six characters in the party, and they are going to be separate every so often. Even if the "camera" could follow the party or character one, this would detract from immersion. It would take away the sense that there is a real, separate world out there through which the characters push themselves. The experience would be arcade-like.

Link to comment
3 hours ago, temnix said:

It is possible to make the screen jump, or even glide, to a character, every so often, but not follow him around smoothly. I find the jumping rather distracting, even if it is slow. 

I face the same issue when experimenting with MoveViewObject() action. But I have very good results testing LockScroll() action.

It can be activated via console:

C:Eval('ActionOverride(Player1, LockScroll())')

and deactivated with:

C:Eval('UnlockScroll()')

The problem is with cutscenes (scroll lock would break most of them) and with spells like "Wizard Eye" and "Farsight" (I hope I didn't miss anything). But probably it can be somehow overcome. I already have WeiDU code that unlock scroll before every cutscene and locks it back after custscene end. For Wizard Eye I plan just to lock view on eye itself when it is summoned (it would add some additional flavor to the spell, when you have wizard eye, you cannot see with your own eyes).

 

3 hours ago, temnix said:

Besides, who to jump to? There are six characters in the party, and they are going to be separate every so often. Even if the "camera" could follow the party or character one, this would detract from immersion. It would take away the sense that there is a real, separate world out there through which the characters push themselves. The experience would be arcade-like.

Best would be to have lock on selected character, but I don't think there is any trigger that allows to detect that. Obviously, this problem don't exist for solo runs. For party runs locking on Player1 could have RP justification: if you want to command companions directly, they need to be at least in view range, otherwise you need to use AI. But probably for powergaming indeed not very handy.

I played a bit solo with view locked on character and for me experience is amazing, for sure it makes your character more part of the game world. But ofc it is matter of taste.

Link to comment

I remember playing Bard's Tale 3 too well. The view was always fixed on my character, going from chest to chest and fighting waves of enemies running from off screen. I don't know, but maybe Baldur's Gate: Dark Alliance played this way, too. Ultima Online, too. It all feels like Diablo, not being in a universe that is going on its courses in parallel with you. Maybe like being thrown in a universe that's happening all around doing unfathomable things TO you. Anyway, I don't actually know how LockScroll works. I thought it just kept the current box from moving. If it follows the creature, good, but this action does only work from a creature script, as the guide here says. Which raises the question of where to put this script. In principle, it could be Player1's OVERRIDE, if the players are warned that this mod will be incompatible with others that insert anything there. As for cutscenes, you could patch them all to start with an unlocking and end with relocking. And include an unlock in their CutSceneBroken conditions. I would also check how all this will work with dialogues that happen off-screen, for instance, when someone accosts a party NPC off to the side somewhere. The conversation will start, but will the view jump to it, as usual?

Edited by temnix
Link to comment

You could send the party members into the screen by clicking on their portraits. Drawing a box with the mouse is more or less out for off-screen. But since it's going to be impossible to send them away from the screen by any means once they come in, the bigger problem is going to be keeping them near the main character after they are assembled. They don't follow automatically. The player will have to take care to herd them along all the time. But the idea is still viable.

A toggled ability could work too, and maybe without script insertion. It could be an instantly-casting (target type 7) summoning of an invisible minion who will do ActionOverride(LastSummonerOf,LockScroll())) and set a local variable on the character, when summoned again check for the variable and, if it's set, unset it and unlock the view. He should override the actions and unset the variable for the entire party, actually, so that the view is locked on only one character.

Link to comment
On 5/4/2022 at 11:57 PM, Endarire said:

My next concern is how I played by scrolling to a part of the map that I wanted my team to move then clicking there.

Yes, it's a pity that it is impossible to order movement from map screen. To travel bigger distance with less click you can always zoom out. But I must say, since there is no tedious viewport movement needed, all distance in the game seems to be half way smaller. I believe it's just matter of habit, I played a bit with LockScroll() and now it seems to strange scrolling view again. But I was playing solo, I believe for playthrough with party it could be less convenient. Now I could almost play with zoom lock, if not one minor issue, when enemy is approaching form the bottom of the screen it can be that GUI will overlap it, so there is need then for zoom out a bit.

 

On 5/4/2022 at 11:57 PM, Endarire said:

what about having a toggled innate ability for all PCs to lock or unlock screen focus for that character?

Could work it could even offer some dialog box where player can choose LockScroll() object. I'm personally more motivated to make it fully usable when lock permanently on Protagonist. Matter of play style.

 

I included my code that locks scroll on game load and handle cutscene properly as part of my Diablofication mod (see here).

Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...