First "official" release. Bugfix: After changing the layout of an elevator, buttons may have stopped working until you left and reentered the elevator's cell. Bugfix: On initial startup, displays and buttons remained unpowered under some circumstances, requiring leaving and reentering the elevator's cell. New Feature: Added load door capabilities. It's now possible to have floors on an elevator that lead into other cells, such as interiors. New Feature: Simulated travel. This is important if you have load doors on your elevator; It allows the cart to change floors while unloaded. New Feature: Added invisible door to build NPC paths with. New Feature: Locksmith mod support - Mod doors get added to the Locksmith exclusion list to prevent bizarre behavior. New Feature: Added a sliding version of the service hatch. New Feature: Added some new material swaps, like a double sided one for the utility elevator shaft and for non-rusty versions of the service hatch. Feature Change: Behavior of the door guard was slightly changed. It will now keep doors open for up to 120 seconds while the door is blocked by an actor. This door guard grace period is now configurable via script property. Feature Change: A change in controller code prevents the Creation Engine bug workarounds from triggering (and failing) when the elevator's cell has unloaded. You should now almost never see these workarounds fail (fingers crossed). Visual Change: The elevator controller got a new NIF with some functional blinkenlights. Visual Change: The elevator carts now use a double sided material, so light won't leak out of the cabin. Visual Change: New NISTRON SNE badge inside cabins. General: Updated the Pack-Ins with stuff required for new features.
How to use the new load door feature:
To add a floor with a load door, first place a NEF_ElevatorOuterLoadDoor on the elevator shaft. Reflink it to the controller as usual, using the NEF_ElevatorOuterDoorKeyword keyword. Then place another NEF_ElevatorOuterLoadDoor inside the interior cell you want to make accessible. Reflink the load door in the interior to the newly placed load door on the elevator shaft, using the new NEF_ElevatorRemoteLoadDoorKeyword.
Next, place a NEF_ElevatorCallButton inside the interior cell and reflink it to the load door in the interior cell, using NEF_ElevatorCallButtonKeyword. You can also place a NEF_ElevatorCurrentFloorDisplay (the nixie display) inside the interior. Reflink normally to the controller, using NEF_ElevatorDisplayKeyword.
Bug Fix: If a twin door elevator base was placed with negative Z angle rotation, the controller would get confused on floors with only a single door. As a result, the controller would open the wrong (front vs. back) door on the cab, preventing entry/exit on such floors.
New in Beta 3: General: Refactored Elevator Controller Code Improved: Creation Engine Bug #1 Workaround - Engine occasionally fails to preserve refattached object positions on game save/reload New: Creation Engine Bug #2 Workaround - Erroneous positions of refattached objects after TranslateTo() is interrupted by cell unload New: Motor Movement Failure Detection New: Unsafe State - During potentially dangerous (to character life) error conditions, the Elevator cab aligns with the nearest door, which gets locked in OPEN position so noone gets trapped inside. All elevator controls are then disabled and a system message is shown. New: Elevator Controller Shows System Messages On Floor Displays New: Detection For Elevator Layout Changes (must unload/load to take effect) New: NEF_ElevatorPowerSource Keyword For RefLinking Elevator Controller To Power Connector/Source Changed: IsPowered Property On Elevator Controller Is Now Exposed To CK
Possible System Messages: S00000 - Boot / Controller is initializing (on load) S00001 - Boot / Controller configuring itself for new elevator layout (on first load or after layout change) S00010 - Error / Controller could not acquire reference to nearest door (elevator setup error or framework not properly installed) S00011 - Unsafe State / Motor Failure (recoverable error due to engine bug #2) S00012 - Unsafe State / Sensor Failure (recoverable error due to engine bug #2) S00013 - Unsafe State / Realign Failure (recoverable error due to engine bug #2) S00020 - Unsafe State / System Boot Failure (system error, please notify manufacturer) S00099 - Elevator Halted (interrupt condition)
You will not see any system messages >9 under normal operating conditions. If you get messages 11 to 13, leave the cell with the elevator and come back later. It will be fixed after cell unload/reload. Alternatively, save and reload the game 2x or until no system message is displayed anymore.
Exposed IsPowered Property on the Elevator Controller Script: - Set it to TRUE in Creation Kit if you want the Elevator to always have power. - If you want the Elevator to have a power connector that must be wired up instead: Leave the IsPowered property at default value (undefined) and use the new NEF_ElevatorPowerSource keyword to reflink the Elevator Controller to a connector or other reference that can be powered. The connector/reference must have the CanBePowered keyword. The Controller's IsPowered property will update automatically, according to the connector/reference's power status.
I can't seem to get it to work. I followed the instructions in .pdf file, double-checked everything, but I'm still getting "this elevator has no power" error. Tried IsPowered property, tried reflinking a power connector - nothing works. I checked other mods that use this (Cliff Edge and Goodneighbor) but they both simply have IsPowered set to true, which doesn't work for me.
I'm trying to use this in a custom-made interior settlement (i.e. in a newly created interior cell) - could that be a problem?
Are you testing your mod on a clean save that has not seen it before? The IsPowered property is not a Const property and will therefore bake into the save. Once baked, changing the setting in the plugin does nothing to that save; It'll always use the setting from the save.
You can probably change the baked setting for a save from the console, by selecting the controller (on the cabin roof) and typing "setpv IsPowered true" in console.
Do you know how to control whether the elevator is on a certain floor? For example, for use in traffic lights or blocking. As an example: I have an exit (vertical lifting door) from a room (the “shelter” set, at the height of the 4th tier of the elevator) to the elevator counter and I need to block the door when the elevator is not on the 4th floor.
For the record, this is strictly for (A) modders to add to their environments, and (B) for said environments (ex:MMEC - Goodneighbor), right? This doesn't add the elevators into any existing vanila cells, does it?
I'm not sure if I'm missing something or doing something wrong, but I'm not seeing any of the new load door capabilities in the latest file. I've created a mod in the creation kit and made the Framework a master as instructed, but when following the instructions from the sticky above using the elevator for load doors, NEF_ElevatorOuterLoadDoor doesn't exist in the CE and the keyword NEF_ElevatorRemoteLoadDoorKeyword is nowhere to be found. The last keyword with the NEF_ prefix is "NEF_ElevatorRadioKeyword"
Don't know if you will see this one but I'm back to messing with this mod and I have it showing buttons in the car, I have a display saying its on floor E, but pressing the buttons does nothing and it is powered on in the CK. I have 3 floors from bottom to top as E, 1, 2. Not sure why its not working this time around except for me messing around with the double door car.
EDIT: working now but floor 1, the front door of the double door car opens instead of the back door like I want it to :/
See edit above, its working now but the wrong side is opening on a double door set up. I want the back to open but its opening the front door to a blank wall.
I'll keep hammering away and see what I did wrong.
I'll try to describe what I'm doing. I want Floor E to open the back door only. I want floor 1 to open the back door only. I want floor 2 to only open the front door. So what do I need to do to the doors to make it so the correct ones open only? At this point only 2 is right which is the main floor. Going down to 1 we get the front door instead of back which opens to a blank wall instead of the back door opening which is where I have it aligned. And floor E both doors open instead of just the back one.
Reflink the back door (floor piece, not the one on the cab) directly to the controller, using proper keywords. Then simply delete the unused front door (floor piece only, not the one on the cab and it's button.
Its been a while since we talked about this but I do have a comprehension problem I mentioned. I'm having difficulties understanding what you are saying. Could you walk me through what I need to do from start to finish. I have 1 double cab right now at the bottom of the shaft where both are opening but I only want the back door to open on bottom floor.. First floor up I want the back door to open. 2nd floor up I want the front door to open up. No other floors in between. So lets scrap the whole thing to just the bottom cab packin (NEF_ElevatorBase_Double), the first floor door which is the back door packin(NEF_Elevator_SingleBack) and the 2nd floor which is front door packin (NEF_Elevator_SingleFront). What keywords do they need since I've been linking the two floors (not the cab per instructions) using NEF_ElevatorOuterDoorKeyword. So floor 2 needs which keyword to open only the front door and floor 1 needs which keyword to open the back door only and for E to only open the back door where the cab is at the bottom?
88 comments
First "official" release.
Bugfix: After changing the layout of an elevator, buttons may have stopped working until you left and reentered the elevator's cell.
Bugfix: On initial startup, displays and buttons remained unpowered under some circumstances, requiring leaving and reentering the elevator's cell.
New Feature: Added load door capabilities. It's now possible to have floors on an elevator that lead into other cells, such as interiors.
New Feature: Simulated travel. This is important if you have load doors on your elevator; It allows the cart to change floors while unloaded.
New Feature: Added invisible door to build NPC paths with.
New Feature: Locksmith mod support - Mod doors get added to the Locksmith exclusion list to prevent bizarre behavior.
New Feature: Added a sliding version of the service hatch.
New Feature: Added some new material swaps, like a double sided one for the utility elevator shaft and for non-rusty versions of the service hatch.
Feature Change: Behavior of the door guard was slightly changed. It will now keep doors open for up to 120 seconds while the door is blocked by an actor. This door guard grace period is now configurable via script property.
Feature Change: A change in controller code prevents the Creation Engine bug workarounds from triggering (and failing) when the elevator's cell has unloaded. You should now almost never see these workarounds fail (fingers crossed).
Visual Change: The elevator controller got a new NIF with some functional blinkenlights.
Visual Change: The elevator carts now use a double sided material, so light won't leak out of the cabin.
Visual Change: New NISTRON SNE badge inside cabins.
General: Updated the Pack-Ins with stuff required for new features.
How to use the new load door feature:
To add a floor with a load door, first place a NEF_ElevatorOuterLoadDoor on the elevator shaft. Reflink it to the controller as usual, using the NEF_ElevatorOuterDoorKeyword keyword. Then place another NEF_ElevatorOuterLoadDoor inside the interior cell you want to make accessible. Reflink the load door in the interior to the newly placed load door on the elevator shaft, using the new NEF_ElevatorRemoteLoadDoorKeyword.
Next, place a NEF_ElevatorCallButton inside the interior cell and reflink it to the load door in the interior cell, using NEF_ElevatorCallButtonKeyword. You can also place a NEF_ElevatorCurrentFloorDisplay (the nixie display) inside the interior. Reflink normally to the controller, using NEF_ElevatorDisplayKeyword.
Bug Fix: If a twin door elevator base was placed with negative Z angle rotation, the controller would get confused on floors with only a single door. As a result, the controller would open the wrong (front vs. back) door on the cab, preventing entry/exit on such floors.
Thanks to Jamstraz for reporting the problem!
General: Refactored Elevator Controller Code
Improved: Creation Engine Bug #1 Workaround - Engine occasionally fails to preserve refattached object positions on game save/reload
New: Creation Engine Bug #2 Workaround - Erroneous positions of refattached objects after TranslateTo() is interrupted by cell unload
New: Motor Movement Failure Detection
New: Unsafe State - During potentially dangerous (to character life) error conditions, the Elevator cab aligns with the nearest door, which gets locked in OPEN position so noone gets trapped inside. All elevator controls are then disabled and a system message is shown.
New: Elevator Controller Shows System Messages On Floor Displays
New: Detection For Elevator Layout Changes (must unload/load to take effect)
New: NEF_ElevatorPowerSource Keyword For RefLinking Elevator Controller To Power Connector/Source
Changed: IsPowered Property On Elevator Controller Is Now Exposed To CK
Possible System Messages:
S00000 - Boot / Controller is initializing (on load)
S00001 - Boot / Controller configuring itself for new elevator layout (on first load or after layout change)
S00010 - Error / Controller could not acquire reference to nearest door (elevator setup error or framework not properly installed)
S00011 - Unsafe State / Motor Failure (recoverable error due to engine bug #2)
S00012 - Unsafe State / Sensor Failure (recoverable error due to engine bug #2)
S00013 - Unsafe State / Realign Failure (recoverable error due to engine bug #2)
S00020 - Unsafe State / System Boot Failure (system error, please notify manufacturer)
S00099 - Elevator Halted (interrupt condition)
You will not see any system messages >9 under normal operating conditions.
If you get messages 11 to 13, leave the cell with the elevator and come back later. It will be fixed after cell unload/reload. Alternatively, save and reload the game 2x or until no system message is displayed anymore.
Exposed IsPowered Property on the Elevator Controller Script:
- Set it to TRUE in Creation Kit if you want the Elevator to always have power.
- If you want the Elevator to have a power connector that must be wired up instead: Leave the IsPowered property at default value (undefined) and use the new NEF_ElevatorPowerSource keyword to reflink the Elevator Controller to a connector or other reference that can be powered. The connector/reference must have the CanBePowered keyword. The Controller's IsPowered property will update automatically, according to the connector/reference's power status.
I followed the instructions in .pdf file, double-checked everything, but I'm still getting "this elevator has no power" error.
Tried IsPowered property, tried reflinking a power connector - nothing works.
I checked other mods that use this (Cliff Edge and Goodneighbor) but they both simply have IsPowered set to true, which doesn't work for me.
I'm trying to use this in a custom-made interior settlement (i.e. in a newly created interior cell) - could that be a problem?
The IsPowered property is not a Const property and will therefore bake into the save. Once baked, changing the setting in the plugin does nothing to that save; It'll always use the setting from the save.
You can probably change the baked setting for a save from the console, by selecting the controller (on the cabin roof) and typing "setpv IsPowered true" in console.
I even went into the script and forced it to be True, hwoever I load into the game and it still says no power.
The last keyword with the NEF_ prefix is "NEF_ElevatorRadioKeyword"
Any help is much appreciated!
Proper plugin version should now be available for download.
Please verify.
EDIT: working now but floor 1, the front door of the double door car opens instead of the back door like I want it to :/
I'll keep hammering away and see what I did wrong.
I'll try to describe what I'm doing. I want Floor E to open the back door only. I want floor 1 to open the back door only. I want floor 2 to only open the front door. So what do I need to do to the doors to make it so the correct ones open only? At this point only 2 is right which is the main floor. Going down to 1 we get the front door instead of back which opens to a blank wall instead of the back door opening which is where I have it aligned. And floor E both doors open instead of just the back one.
This is for folks who make mods. They can easily put these elevators in their mods, by referencing this mod.