
Angled sliding doors
#1 Posted 18 November 2019 - 02:17 AM
I've attached a pic of my door in 2d mode. The second pic is my messy visualisation of the door sector's movement each time I activate it.
I'm using build 8039 of mapster32.
This post has been edited by conoklast: 18 November 2019 - 02:18 AM
#2 Posted 18 November 2019 - 02:27 AM

#3 Posted 18 November 2019 - 02:31 AM
Seb Luca, on 18 November 2019 - 02:27 AM, said:

Perhaps Ion Fury version of mapster32 has overcome these limitations? Here's a screengrab of Davox's sliding door from the first level; as you can see, it's much more complex
#4 Posted 18 November 2019 - 02:31 AM
Source: I got the same trouble when making a diagonal double swing door in IF's z5a1.map and Oasiz had the solution.
Edit: sorry I got that wrong, it's sliding you want and not swinging. Check the angle of your SE in F8 mode and make sure it is correct, a difference of 1 unit won't be noticeable when you view it in 2D mode but can bring trouble.
This post has been edited by MetHy: 18 November 2019 - 02:37 AM
#5 Posted 18 November 2019 - 02:34 AM
MetHy, on 18 November 2019 - 02:31 AM, said:
Source: I got the same trouble when making a diagonal double swing door in IF's z5a1.map and Oasiz had the solution.
hmm.. I tried with the SE both straight up and down, and it just made the sliding door move in the direction of the SE. Just to be clear, I'm not using Ion Fury's mapster, just the standard eduke32 version.
edit: yep sliding! - I checked the angle in F8 mode and it's 1792 (2048 minus 256) so it's aligned correctly. I think I'll play around with some minor adjustments to the angle to see if I can get it to work.
This post has been edited by conoklast: 18 November 2019 - 02:44 AM
#6 Posted 18 November 2019 - 07:54 AM
I know there are several ways to build sliding doors, from the looks of it we both use the easy/quick/cheap method where the sector is completely independent from any white wall but IIRC the original way of building them (which I remember as a bit more tedious) involved connections to fixed vertices, so (just a guess here) maybe rebuilding your door that way would provide it with an anchor to a white wall, and hopefully prevent it from running away.
Lately I've been working with diagonal map sections a lot, it's really a lot of fun but one does have to pay more attention to whatever it is they're doing than usual in such spaces, little oddities like this can happen easily, the best way I've found to make my life easier is to try and have as many of those wall lines as possible at a perfect 45 degree angle (or any multiple); the less 'straight' your diagonal plan will be, the harder getting away with the occasional sketchiness is going to get.
edit - if you want to make sure your SE really is at the perfect angle, try making it wall-aligned with your door for a second and press O on it so that it should align itself with its sector, then give it the default alignment again, but I'm not sure if it's even humanly possible to find a perfectly viable solution like this, even if one got it right somehow, the calculations are probably so precise that just moving the SE by a pixel I assume could eventually mess it all up (which I reckon the game itself would love finding odd reasons to do during casual playthroughs).
This post has been edited by ck3D: 18 November 2019 - 09:56 AM
#7 Posted 18 November 2019 - 01:17 PM
All good - I'll just come up with an alternative I think.
This post has been edited by conoklast: 18 November 2019 - 01:17 PM
#8 Posted 18 November 2019 - 01:22 PM
On original d3d they will always drift.
#9 Posted 18 November 2019 - 01:55 PM
Older games rarely handle angles beyond the four cardinal directions very well, if you walk back and forth on a diagonal line you'd eventually drift off course, especially as you let go of walk and the momentum runs out - sometimes this is even visible, in that it almost looks like Duke is hitting a wall and sliding along it. As usual it was probably a case of more precise math versus frame rate, they could probably have made the movement in these games more accurate, they could even have used floats, but then the rest of the game/engine would also have to be built with this in mind and performance would have taken a hit. Making something work on a PC used to be something of a balancing act and it was never a help that the tools weren't that good either.
#10 Posted 18 November 2019 - 03:07 PM
oasiz, on 18 November 2019 - 01:22 PM, said:
On original d3d they will always drift.
Someone should back port some of these fancy new IF features to a D3D mod.
#11 Posted 20 November 2019 - 05:17 AM

It took a lot of effort to make some of the code, some of it is not directly very duke friendly either.
#12 Posted 20 November 2019 - 05:29 AM
conoklast, on 18 November 2019 - 01:17 PM, said:
All good - I'll just come up with an alternative I think.
Sorry that didn't work; now, maybe if your door is switch-activated and your map isn't using RPV's, you could instead make it a two-way train? Haven't built one in a while myself, and never a diagonal one I don't think but I assume the Locator sprites might function as anchors to effectively lock the sector into position, all the while being a pretty similar set-up and achieving the desired visual effect?
edit - don't waste your time trying that; see Forge's post below
This post has been edited by ck3D: 20 November 2019 - 09:14 AM
#13 Posted 20 November 2019 - 05:45 AM
ck3D, on 20 November 2019 - 05:29 AM, said:
most likely wouldn't work out of the box.
even though the 'nose' of the sector "aims" for the locator, the center of the door would be the point from which the door would move. The effect still gives the grid line preferential treatment. The shorter the distance of travel, the more 'bull in a china shop' it will act.
The 'door' could possibly be manipulated to properly open without wandering through the wall, but short distances don't work so well for the return part of the effect.
You'd probably have to do some expert joined-sector magic to make the door-train think it's traveling farther than it really is.
I could be wrong, that just what I observed when I tried to use the train effect to make rotating wall pictures on an angle.
This post has been edited by Forge: 20 November 2019 - 06:04 AM
#14 Posted 20 November 2019 - 08:35 AM
You'd place the rotation pivot somewhere extremely far away, slidedoor would technically just rotate around the pivot but if the diameter is large enough, it might fool the player to think that the object moves diagonally to some degree.
with rotate rise you can give the rotation amount with gpspeed, which is why this could work.
Slidedoors themselves have internal fuckery to reset the position if you try to control it via two simultaneous wallpoint controls (possible with fury effects).
But otherwise, they will always drift, unavoidable bug.
2way trains are not really good as they have a minimum distance you need to meet, plus the trains tend to kill the player.