PDA

View Full Version : Do Elevators and Doors sync?



English Mobster
January 21st, 2009, 11:42 PM
OK, I was working on a map (Its my first map, mostly for me to screw around in, lol) and I was wondering: Do elevators and doors sync? I wanted the player to walk onto an elevator and have it take him up to a different level WITHOUT having to press a button (and go back down on its own after he walks off), and I wanted him to be able to press a button and open a gate, Zanzibar-style.

Is this possible? Do they sync?

And, on a similar note, if they do sync, how do you make them in the first place?

Thanks.

blind
January 21st, 2009, 11:45 PM
The doors in TheGhost's room synced pretty well in Yoyorast.
Ask him ?

DarkHalo003
January 21st, 2009, 11:46 PM
The last time I saw someone try to sync and elevator, it only worked 2/3 of the time. Download the map WMP_Dismal, which has an elevator that only works sometimes.

Short Answer: Not so much.

Doors do sync however, although I don't believe those like that of the muster doors on a50 do.


The doors in TheGhost's room synced pretty well in Yoyorast.
Ask him ?
You could also ask Selentic. I'm positive the bases in Sympathy had doors.

DarkHalo003
January 21st, 2009, 11:46 PM
sorry for double post, lag.

Inferno
January 21st, 2009, 11:47 PM
They do not sync unless you use a biped crushing script. Although a door or elevater activated by proximity does sync usually.

There are plenty of tutorials on halomaps.org.

-edit
3 posts while I was typing. Christ.
WMP_dismal was a leak of a really early build of Imp-dismal. I hate you for mentioning it.

DarkHalo003
January 21st, 2009, 11:52 PM
They do not sync unless you use a hoped crushing script. Although a door or elevated activated by proximity does sync usually.

There are plenty of tutorials on halomaps.org.

-edit
3 posts while I was typing. Christ.
WMP_dismal was a leak of a really early build of Imp-dismal. I hate you for mentioning it.
Sorry, never knew. I liked it though. Could have really been a good map if worked with enough....

KiLLa
January 22nd, 2009, 03:50 AM
The last time I saw someone try to sync and elevator, it only worked 2/3 of the time. Download the map WMP_Dismal, which has an elevator that only works sometimes.

Short Answer: Not so much.

Doors do sync however, although I don't believe those like that of the muster doors on a50 do.


You could also ask Selentic. I'm positive the bases in Sympathy had doors.
Try playing hypothermia sometime ;)


Bottomline is, they CAN sync but won't with default setup of tags..
As said before you'd need a biped crushing script to sync the action taking place..

Sasc
January 22nd, 2009, 11:25 AM
I think Trigger Volumes sync too.

i.e. a player walks into the trigger volume and the elevator will work both server and client side, as long as the elevator is a device machine I believe.

(device_set_position device_name 1) for turning the device machine on (0 for off)

(volume_test_object trigger_volume_name (players)) for the players

Evil_Monkey
January 22nd, 2009, 12:14 PM
These 2 are probably 2 of the best that I have seen that actually worked when the button was pressed.

This one works really well, 2 elevators.
http://hce.halomaps.org/index.cfm?fid=2476

This one also works really well. It has 2 elevators and a big bridge.
http://hce.halomaps.org/index.cfm?fid=3480

Proximity doors sync without any scripts required, although sometimes if the proximity distance is too short there will be little lag. After doing some testing a while back, proximity doors sometimes did "bug out" when a player joined they saw the door in the opposite position. Maybe they joined when the door was in the "1" position for others whilst the clients joining was still in "0"?

Any other type of device that is controlled by a switch will need a script like killa said, it requires the biped crushing method.

Advancebo
January 22nd, 2009, 05:53 PM
What exactly is the biped crushing script?

Inferno
January 22nd, 2009, 05:56 PM
Since devices don't sync you have to sync the them by using another object that does sync. So we take a cyborg who has health. Since biped health syncs we crush the biped killing him to activate the device and bring him back to life to deactivate it.

Elementary my dear advancbo.

Advancebo
January 22nd, 2009, 08:18 PM
So how does he get crushed :O?

Scripting is something I am not good with :P.

klange
January 22nd, 2009, 08:23 PM
Drop something big.

Inferno
January 22nd, 2009, 08:23 PM
A warthog teleports up and then falls and smashes his face in.
Hence biped crush.

English Mobster
January 25th, 2009, 02:27 AM
Anyone know of any good tutorials for, for instance, making the button for a door to work and getting an elevator to work when you are in close proximity to it? I found one which is for proximity-activated doors, but when you approach the elevator, it leaves before you can get on, lol.

Advancebo
January 25th, 2009, 10:22 AM
In the device machine tags, there is a number you can change to increase the distance of which it detects you. For your case, put about 0.5-1 units.

Hunter
January 25th, 2009, 11:48 AM
I put 5 before xD, thats why it worked crappy Lol.

FRain
January 25th, 2009, 11:51 AM
You step in a trigger volume.

A biped off in some unknown distance / secret area is alive.

A vehicle or crate is created above said biped's head.

Vehicle/crate crushes biped.

Trigger volume checks if its dead. If yes, it opens. If no, then it stays shut.

Sel
January 25th, 2009, 12:04 PM
Haloguru made a sync script for this, Automatic devices sync fine though.

Evil_Monkey
January 25th, 2009, 12:28 PM
I found one which is for proximity-activated doors, but when you approach the elevator, it leaves before you can get on, lol.

If I remember correctly, that can be changed by raising the power-up time. I haven't got guerilla/Kornmann00 installed at the moment so I can't verify that. Or you could just change the proximity distance so that you have to be literally on the device for it to activate.

Sel
January 25th, 2009, 12:33 PM
If I remember correctly, that can be changed by raising the power-up time. I haven't got guerilla/Kornmann00 installed at the moment so I can't verify that. Or you could just change the proximity distance so that you have to be literally on the device for it to activate.

The activation radius, yes.

sevlag
January 25th, 2009, 07:49 PM
so THATS how you make a biped crushing script...now i understand.

well im gonna go apply this to this one test map I have with shitty man cannons, throw some doors in front of the base that will utilize biped crush.

could I just throw the biped onto the level behind scenery?

and how do you "bring the biped back to life" exactly?

Inferno
January 25th, 2009, 10:35 PM
(object_create_anew <object>)

sevlag
January 27th, 2009, 06:28 PM
(object_create_anew <object>)no, so it respawns in game without the need to type that command, like after the bipeds death, the object disappears and a new biped spawns.

I don't know how that works, I guess since to me the script sounds like this...

if dead=door opens
if alive=door is closed

so if I'm seeing this right, upon pressing the switch to reseal the door, the script would respawn the biped?

correct me if I'm wrong here

Inferno
January 27th, 2009, 11:25 PM
Yes.
(object_create_anew) is a script. So is every other command that you can enter in the console.

sevlag
January 28th, 2009, 08:21 AM
Yes.
(object_create_anew) is a script. So is every other command that you can enter in the console.
ok, so use to typing that command into my dev prompt to spawn shit on a specific map. thats why I said it, so yeah. thats cleared up now :P

English Mobster
January 28th, 2009, 03:48 PM
OK, everything works now, thanks. But how do you make it so if you press a button, the door opens?

sevlag
January 29th, 2009, 10:31 AM
OK, everything works now, thanks. But how do you make it so if you press a button, the door opens?
script something to open the door, like a holopanel or like an inert C4 charge like my friend used as a switch for PoA blast doors

English Mobster
January 30th, 2009, 03:08 AM
And how does one do that?

Advancebo
January 30th, 2009, 04:28 PM
Wait, so automatic doors that open when someone walks near can sync?

Inferno
January 30th, 2009, 04:34 PM
Why wouldn't they? If a player is near it, it opens. No syncing involved.

Choking Victim
January 30th, 2009, 04:42 PM
Wait, so automatic doors that open when someone walks near can sync?
They sync because player positions sync.

English Mobster
January 31st, 2009, 02:35 PM
But to add to the current question on the table (Which is how do I write a script so when I press a button, I make it so it opens a door?):
How many world units does it take to = 1 meter?

Advancebo
January 31st, 2009, 02:55 PM
@inferno & victim

yayz, now I can finish my Gemini port :D

Matooba
February 1st, 2009, 07:35 PM
Go to the control palette and add levels\b40\devices\holo halo control\b40_holo control then go to the machine palette and add the door that you want, i used levels\b40\devices\b40_garagedoor\b40_garagedoor. For the control click the flag "can only change once" and for the Machine click the flags "does not operate automaticly" and "can only change once"

Now open your scenario in sapien or a hobo and create the correct things for the script to work.


* hog1
* hog2
* steven1
* steven2
* device_machine gate
* device_control press!
* trigger volume check
* flag - time1
* flag - time2

Put time1 and time 2 over top of the bipeds and place hog 2 over steven2
Hog 1 can be placed anywhere except over steven1 otherwise the door would open on the start of the server
now I understand this is by far not a tutorial for beginners but the set up of the right objects in sapien
is not to hard



(script continuous syncgate
(if (= (unit_get_health steven1) 0.0) ;;This checks if the biped steven1 is Dead or not.
(begin
(device_set_position gate 1.0)))) ;;If steven1 is dead it opens the device

(script continuous sync_time1
(if (= (unit_get_health steven1) 0.0) ;;This creates a new steven1 everytime he dies
(begin
(object_create_anew steven1) ;;This allows players who join mid way through to sync up to what is really happening
(sleep 50))))

(script continuous sync_time2
(if (= (unit_get_health steven1) 0.0) ;;If steven1 is dead the hog that just killed him moves back to time1
(begin
(object_teleport hog1 time1))))

(script continuous sync_time3
(if (= (unit_get_health steven2) 0.0) ;;If steven2 is dead, create a new steven2
(begin
(object_create_anew steven2)
(sleep 50))))

(script continuous sync_time4
(if (= (unit_get_health steven2) 0.0) ;; If steven2 is dead, teleport hog2 to time2
(begin
(object_teleport hog2 time2))))

(script continuous start
(if (and (= (unit_get_health steven2) 0) (volume_test_objects check (players)) (= (device_get_position press!) 1.0) true) ;;This is the important part, this checks if steven2 is dead and a player is in volume check and if the device control press! is at position 1
(begin
(object_teleport hog1 time1) ;; if all of that is true then it teleports hog1 to time1 thus crushing steven1 causing syncage, and the opening of gate
(sleep 50))))

Advancebo
February 1st, 2009, 08:27 PM
This makes Highgrounds, Last Resort, etc possible :O

Inferno
February 1st, 2009, 08:43 PM
No, that is completely possible.