MODELDEF ignore rotation?

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: MODELDEF ignore rotation?

Re: MODELDEF ignore rotation?

by Diode » Thu Jul 19, 2018 7:51 pm

Using ACS's StartConversation this can already be toggled, so adding it for using an actor wouldn't be too hard.
Just had a look into this. Unless I'm wrong, it seems like it only supports the original binary dialog format, or only works when triggered from elsewhere? I couldn't find a way to use StartConversation with either format directly on interaction with the actor as the dialog seems to override the thing special. But there's a distinct possibility that I'm a blind and clueless fool.

Re: MODELDEF ignore rotation?

by Graf Zahl » Thu Jul 19, 2018 12:40 pm

For the record: Using ACS's StartConversation this can already be toggled, so adding it for using an actor wouldn't be too hard.
Adding a 'No rotate' model flag would end up a mess - and not even solve the problem at hand without making things worse.

Re: MODELDEF ignore rotation?

by Enjay » Thu Jul 19, 2018 12:14 pm

I agree that what I suggested is no substitute for a properly implemented feature but it could work in some situations. What are you doing shooting people in chairs, computers, vending machines and 'phones anyway? ;)

IMO, it makes perfect sense for it to be in the dialogue system because (I suspect) it will just be a simple override to not call that behaviour during a dialogue, and thereby fix the problem in a nice, robust manner - presumably for sprites as well as models.

There could well be a need for something similar elsewhere but I'm sure that some ZSCript and even DECORATE solutions will already exist for some situations.

Re: MODELDEF ignore rotation?

by Diode » Thu Jul 19, 2018 11:41 am

Graf Zahl wrote:Definitely not. I actually expected something like this: User wants A. Doing B achieves A. Ask for B instead of A.
I suggested the modeldef route because I didn't think there were many people who'd care about strife dialog, since its rarely used, and it seemed less of a necessity for sprites than it did for 3D models, since if you only want something drawn from one angle in sprites, you just... don't draw the other sprite angles.

Aside from that I'd been playing with environment mapped textures on models too, and thought there would probably be someone who'd eventually want a model that doesn't turn with its actor's movement if they were trying to make some kind of ghostly or void-like monster.

I can resubmit this a strife dialog request if you want.
Enjay wrote:So, the player would see the object, walk up to it an use it but the player would actually be having his conversation with the invisible actor instead. The visible actor would just be a static decoration and would not turn to face the player.
This'll work for some things but I think things would start getting messy if I wanted the player to be able to also shoot the visible actor. I'm not certain but it might also add a layer of complexity if I wanted to animate the visible model in response to the dialog, but then again, it might not.

Re: MODELDEF ignore rotation?

by Enjay » Thu Jul 19, 2018 11:27 am

Diode wrote:a 3D model of a character in a chair or another situation in which they wouldn't be able to turn around, or an inanimate object, such as a computer, vending machine, telephone, etc.
While having a ZDSF option would be good, certainly in the examples listed - if Diode wants to make progess with his mod, an invisible actor could be placed in the same location as the inanimate object. So, the player would see the object, walk up to it an use it but the player would actually be having his conversation with the invisible actor instead. The visible actor would just be a static decoration and would not turn to face the player.

Re: MODELDEF ignore rotation?

by Graf Zahl » Thu Jul 19, 2018 10:42 am

Definitely not. I actually expected something like this: User wants A. Doing B achieves A. Ask for B instead of A.

Re: MODELDEF ignore rotation?

by Gez » Thu Jul 19, 2018 10:35 am

That's not a rotation, that's facing angle. I'm nitpicking but rotation has kind of a specific meaning in the Doom engine.

Basically what seems the most likely to be possible is a ZSDF feature where a conversation doesn't cause the actor to face the player. I don't see that MODELDEF would be the right place for that.

Re: MODELDEF ignore rotation?

by Xaser » Thu Jul 19, 2018 9:21 am

If that's the primary use case, the more prudent thing to do would be to add a flag that disables the rotation (if something like this doesn't exist already). The same case could be made about a character in a chair that uses sprites.

Re: MODELDEF ignore rotation?

by Diode » Thu Jul 19, 2018 8:48 am

Graf Zahl wrote:You have to present a use case for something this seemingly nonsensical.
Initiating strife dialog with an actor causes the actor to immediately rotate to face the player. This isn't desirable if the actor is, say, a 3D model of a character in a chair or another situation in which they wouldn't be able to turn around, or an inanimate object, such as a computer, vending machine, telephone, etc.

Re: MODELDEF ignore rotation?

by Graf Zahl » Wed Jul 18, 2018 11:43 pm

You have to present a use case for something this seemingly nonsensical.

MODELDEF ignore rotation?

by Diode » Wed Jul 18, 2018 9:12 pm

Would it be possible to get a new flag for the MODELDEF lump that would stop a model from inheriting any of its actor's rotations?

Top