New ASSET : func_rotatingdoor : Final
WHAT IS IT A new entity for your maps that allows you to create rotating doors. It is 100% script based so can be placed in any mod folder your developing maps for. NO SDK compiling and NO scripting necessary. If you use it all I ask for is a line in your credits/readme, no need to contact me for permission.
HOW TO INSTALL IT Place func_rotatingdoor.pk4 from
HERE into your mod folder.
Add this line
Code:
#include "script/func_rotatingdoor.script“
to the end of the other #include’s in your mods doom_main.script file ( best option when developing maps) OR the top of every map script file that makes use of it ( best for released maps).
That’s it.
OTHER BITS INCLUDEDMy test map is included rotating_door.map, it automatically sets g_showTriggers 1 and r_showPortals 1 for you so you can see where the triggers are, touching the trigger behind the airlock doors will turn these options off otherwise you will have to do it manually. Hey it’s a beta test map what you want
HOW TO USE IT Load up the editor, right click in the orthogonal view func->func_rotatingdoor, read the options in the entity info window.
If you want to add script for it in a map its basically a func_mover with door type functionality programmed on top of it so all func_mover commands will work, ive also added 2 functions Locked and Opened to give you the equivalent of func_door’s isLocked isOpen commands, but because thier not SDK events usage is $myrotatingdoor.callFunction(“Locked”);
EH? WHATS MY MOD FOLDER? :-
base if your still developing your maps there tut tut.
WHERES DOOM_MAIN? :- If you haven’t already extracted it, its in pak000.pk4 in your base folder. Extract it to mod/script . Although if your making maps for someone elses mod it may be in any of their pk4’s you’ll have to hunt it down.
______________
Thanks to voldemort for early testing and criticism.
Please remember this is as Final as it going to get

, although I have given it a good testing and got rid of the majority of bugs there maybe others I haven’t noticed (Im just sick of looking at it for the moment so thought it about time to post). Feel free to post any criticism, faults, stuff you like/dislike and any other options you think should have been included. Maybe even other ideas for assets you would like to see.
S@aNiC..
_______________________
UPDATE
Ive tryed to make this with every thing i would of expected to find on an ID rotating door if there was such a thing.
K/V pairs.. (some descriptions have been cut down please see the editor entity info window for complete descriptions)
editor_usage "Rotating Door. REMEMBER to place the origin at the point the door should rotate around"
open_angle "vector of angles it will open to. Vector (Front Top Side) relative to editor view. + degrees rotates
clockwise, - degrees rotates anticlockwise. default is '0 +90 0' degrees..(rotates 90 degrees clockwise around its origin in editor TOP view)"
auto_shut "default is 0 (NO). set to 1 to make door shut automatically after open_time seconds"
open_time "default is 5secs. not used unless auto_shut is set. number of seconds to remain open"
no_sound "clears all sounds for this rotating door. Useful for multiple teamed doors in one location."
triggerMaxs "ADVANCED. x,y,z units to add to doors trigger Maxs. defaults to '2 2 2'"
triggerMins "ADVANCED. x,y,z of units to add to doors trigger Mins. defaults to '-2 -2 -2'"
start_open "the door moves to its open position when spawned."
accel_time "how long it takes the door to accelerate to full speed."
decel_time "how long it takes the door to deccelerate to a stop."
move_time "how long it takes the door to complete a move. cannot be used with 'move_speed'."
move_speed "how many units the door travels per second. cannot be used with 'move_time'."
solidForTeam "whether door is solid to objects bound to it, or objects it is bound to."
damage "how much damage to cause entities that block door."
health "when non-zero, how much damage to take before triggering targets."
snd_accel "sound to play when acceleration starts."
snd_move "sound to play when movement starts."
snd_decel "sound to play when deceleration starts."
lock_status "if locked = 1 door just becomes unlocked, if locked = 2 door moves to opposite position when
unlocked. Set key 'lock_status' to relock."
no_touch "if set to 1, door can't be opened by touching it, only by triggering it."
triggerClosed "name of entity to trigger when door closes, can be iterated with triggerClosed2, 3 etc."
triggerOpened "name of entity to trigger when door opens, can be iterated with triggerOpened2, 3 etc."
triggerBlocked "name of entity to trigger when door is blocked, can be iterated with triggerBlocked2, 3 etc."
snd_locked "sound to play if door is locked and player touches door."
snd_unlocked "sound to play when door is unlocked."
snd_locking "sound to play when door is locking."
snd_open "sound to play when door is opening."
snd_close "sound to play when door is closing."
snd_blocked "sound to play when door is blocked."
team "set this to make 2 or more func_rotating door's operate in synch."
lock_lights "these entitys will have thier material ShaderParm 7 set to 1/0 on unlocked/locked."
doorGui "name of entitys with Gui's associated with the door."
anyTouch "0 will only open for players, 1 can be opened by anything"
They will also use portals if present, but you have to make them yourself.
Model with gui and locklights and brush door


Door model, Airlock doors




Door model with door frame model and locklights


Multipart door using brushes, takes 2 minutes to make


Stairs using brushes



Teamed pair of door rotating different directions




All these doors above are from the testmap.
_____________
EDIT: 15/01/08 Since PCGameMods no longer exists? ive updated link.
This is a nice gift...thank you.

I know there were a few posts lately asking how to make rotating doors so this should give them a nice stock item to use. I'm just wondering, is this like a rotating door that goes around and around, or can it be used like a normal door that you'd find in most homes: as in it only rotates 90 degrees then back like a standard, ubiquitous door? A screenie would be nice for illustrative purposes and may encourage ppl to try it.
To Rich and mod gang: I don't know if it's possible, but it may be nice to have a "pre-fad warehouse" section on this site where things like this door could be stashed for easy searching and retrieval. I saw a similar feature on someone's Q2 site and it seemed like a good idea. There may not be a whole lot to put in there now, but this door would be a nice one. No doubt others may follow if there is a good home for them.
DoV_Tomas
Quote:
I'm just wondering, is this like a rotating door that goes around and around, or can it be used like a normal door that you'd find in most homes: as in it only rotates 90 degrees then back like a standard, ubiquitous door?
Its more like a normal door , has an angle to open to then closes this angle.
Although theres a lot more you can do with it as it can swing on all axis.
Updated first post with some screens and a list of k/v's.
I had the chance to try this out before i had to leave. Its very kewl but the fact that if you touch the door it closes! I dont like that! It can be a problem especially if its a tight space the door closes if even a pixel from the player touches the door!
I also dont like the way that the door closes and opens the same way i would prefer if it opened both ways and closed both ways!
Very nice tho! it seems that people are starting to take hold of the scripting in doom 3
If any one remembers the snail machine Using this you can reproduce it in seconds without scripting
Think beyond jsut doors this can be applied in a whole log of new ways
If any one asks me this is brilliant
you can replace both complex and simple coding simply with this one addition.
Quote:
Its very kewl but the fact that if you touch the door it closes! I dont like that! It can be a problem especially if its a tight space the door closes if even a pixel from the player touches the door!
You can always set the door up as "no_touch" "1" so it dosnt create its own trigger then its down to you to place the trigger be it multi, once etc where ever you want it.
Quote:
I also dont like the way that the door closes and opens the same way i would prefer if it opened both ways and closed both ways!
From early design it was oneway only ( most house doors operate this way). May have a look at adding a new k/v though "bothways" or somthing similar, theres a couple of ways i could implement this , ill have a think about the best way to do it and see what i can come up with.
Thanks for your comments.
When i tried to put thta #include into my script, d3 don't want to start and shows me a warning in the blue console:
file D:\Doom 3\base\script\doom_main.script, line 99: newline inside string
how can i fix that thing?
At a guess, it sounds like you might have left the closing quotation mark off the #include directive.
ok when i put them in my map i make double doors like i want them, but then during render and in game the start open and open in 2 different directions and when i try to select them, they suddenly dont exist, i cant select them in render. i have no clue wat is going on. any help?
Edit:doors face the right way but i save my map and BSP and the doors arent in the game. i do not get how that is possible.