Yet another huge bug - Interior cell as a static limit

Post » Thu Jun 21, 2012 1:07 pm

I've put the solution in last post, can you test it? Thanks.
User avatar
sarah simon-rogaume
 
Posts: 3383
Joined: Thu Mar 15, 2007 4:41 am

Post » Thu Jun 21, 2012 2:09 pm

Still, I need mine as .esp so either I fix it or dice the dungeon into unspecified sized chunks till it works... Nice workaround, will give it a test in a bit :smile:

Thanks, I'll wait for your test.
User avatar
Dawn Porter
 
Posts: 3449
Joined: Sun Jun 18, 2006 11:17 am

Post » Thu Jun 21, 2012 8:42 pm

Here's the solution:

http://www.creationkit.com/Bug_list

Anyone online to test it? Thanks.

Better idea might have been to actually have people test the thing and confirm that it works before you put it on official bug fix page. :P Thanks for the problem though, this will definitely come in handy.
User avatar
Rhi Edwards
 
Posts: 3453
Joined: Fri Jul 28, 2006 1:42 am

Post » Fri Jun 22, 2012 12:38 am

I've tested it, and the page was created by me :)
User avatar
LittleMiss
 
Posts: 3412
Joined: Wed Nov 29, 2006 6:22 am

Post » Thu Jun 21, 2012 10:47 pm

Yeah I haven't added custom scripts to anything before, I take it you strip out the notes...
User avatar
Taylrea Teodor
 
Posts: 3378
Joined: Sat Nov 18, 2006 12:20 am

Post » Thu Jun 21, 2012 12:45 pm

Converting into an esm isn't the answer to every problem. What you're doing justifies it, doing it to dodge every little engine bug that might crop up doesn't. Especially since most people won't know how to generate the necessary ONAM records that actually make esm's editing vanilla content work properly.
Well as far as I know making a mod into an esm removes the item limit. That was the initial reason I had to make my mod an esm, so I suggested it.
User avatar
Ownie Zuliana
 
Posts: 3375
Joined: Thu Jun 15, 2006 4:31 am

Post » Thu Jun 21, 2012 11:13 pm

Umm super dumb question, when you say "edit properties" You mean not in the scripts tab of the load door ref? If so where do I go for this?...

Yes its in the tab, that's why I said not in the script, is it too confusing? Hope not.
User avatar
Rach B
 
Posts: 3419
Joined: Thu Mar 08, 2007 11:30 am

Post » Thu Jun 21, 2012 7:51 pm

you can just use a simple script on a door or an activator that looks like a door, that sends you to an empty "purgatory" then into the place of choice.

my amethyst hollows mod is using such a script because of the ram issue on esp files. so far there have been no users that have even noticed the door takes you to 2 places


the script is very simple. attach it on a dummy load door, set to not teleport(in my mod i am using an activator object that looks like a door). the REAL load door that originally connects to your worldspace is pushed out to the void area (keep the teleport marker on the navmesh where it should be)


Scriptname DCVR_AH_PurgeExitScript extends ObjectReferenceObjectReference Property PurgatoryMarker  AutoObjectReference Property DoorRef  AutoEvent OnCellAttach()If (GetOpenState() == 1)  GoToState("Busy")  Activate(Self)EndIfGoToState("Idle")EndEventState IdleEvent OnActivate(ObjectReference akActionRef)  Actor Player = Game.GetPlayer()  If (akActionRef == Player)   GoToState("Busy")   Utility.Wait(0.8)   Player.MoveTo(PurgatoryMarker)   DoorRef.Activate(Player)  EndIfEndEventEndStateState BusyEndState


the PurgatoryMarker is a xmarkerheader inside your empty purgatory cell (maybe place a collisioncube under it)
the DoorRef is the functional teleport door that activates your destination world (the one you had to put in the void area of your interior)


this script keeps your interior 100% compatible with NPCs and they will be able to find their way in and out of your interior using the navmesh. Followers will also follow with you into the worldspace
User avatar
Isabel Ruiz
 
Posts: 3447
Joined: Sat Nov 04, 2006 4:39 am

Post » Thu Jun 21, 2012 2:09 pm

Thanks, that's similar to what I did, biggest difference is that I'm using a global so a single script can handle all your doors:

http://www.creationkit.com/Bug_list
User avatar
Cool Man Sam
 
Posts: 3392
Joined: Thu May 10, 2007 1:19 pm

Post » Thu Jun 21, 2012 8:10 pm

this is a single universal script that is applied to all troubled interior load doors, you only change the objref property of DoorRef in the reference editor scripts tab for each worldspace or travel destination (you can even use this if you want to make something like what Dovahkin Hideout originally had - doors linking to vanilla places - with this, you dont even need to edit or create new doors in those cells)

since my map teleport thing was inside my huge interior cell, i had to recycle this same script (dont need to make extension scripts for new doors) for every teleport destination that goes to vanilla tamriel locations... all without ever touching or editing any of those cells. as far as i know this is the cleanest and least intrusive way of doing it
User avatar
JR Cash
 
Posts: 3441
Joined: Tue Oct 02, 2007 12:59 pm

Post » Thu Jun 21, 2012 12:29 pm

Sounds good! Make a step by step tutorial so I and others understand everything.
User avatar
Brian LeHury
 
Posts: 3416
Joined: Tue May 22, 2007 6:54 am

Post » Thu Jun 21, 2012 1:00 pm

Can someone please go into more detail about what this bug is? I'm quite lost and I'd like to be prepared for it if such a problem arises.
User avatar
lexy
 
Posts: 3439
Joined: Tue Jul 11, 2006 6:37 pm

Post » Thu Jun 21, 2012 3:29 pm

Can someone please go into more detail about what this bug is? I'm quite lost and I'd like to be prepared for it if such a problem arises.

See the video! Can't be more detailed than that.
User avatar
louise hamilton
 
Posts: 3412
Joined: Wed Jun 07, 2006 9:16 am

Post » Thu Jun 21, 2012 9:41 pm

Yeah, I'd love to see both methods as I'm a total noob at this!
User avatar
Guinevere Wood
 
Posts: 3368
Joined: Mon Dec 04, 2006 3:06 pm

Post » Fri Jun 22, 2012 3:34 am

Noob or not we all are here to learn, and since I'm here to learn and not compete I would gladly test other solutions, but for that I need a complete guide, from one door to another, it's confusing enough with tutorials, without them...... :D
User avatar
djimi
 
Posts: 3519
Joined: Mon Oct 23, 2006 6:44 am

Post » Fri Jun 22, 2012 3:49 am

its very simple.

1. as soon as your interior starts to CTD on exit, move your load door (the door only, not the teleport marker) outside of your walled area. put it out somewhere into the void so that its far enough away that when the door opens you dont hear it opening.

2. create a "dummy door" in the place your original door was. I personally prefer to use an activator object that uses the load door's nif, and set the Activate Override to say Open, or Travel TO or whatever you want.

3. attach the script i posted to the activator dummy door

4. create the purgatory cell - go to your world tab at the top of the CK, and select Cells. right click in the cell window (left hand column) and create new. name this something specific MyModPurgatoryCell etc

5. Drop an xmarker header into it and name the reference PurgatoryMarker

6. go back to your dummy door and double click it to edit the reference window

7. go to the scripts tab and point your PurgatoryMarker property to your xmarkerheader (or just hit autofill if you named it the same)

8. point the DoorRef property to the real load door that you pushed off to the void space.



the advantage to this solution is so that NPCs can find their way to and from your cell on their own.

for example if you release one of your followers inside your interior, they cant find their way out unless a navmesh has a teleport marker that eventually links to tamriel

also if you have NPC's that use packages that travel to and from your interior, they wont be able to run their packages unless you have a properly linked navmesh (which is why it is important to leave your door teleporter on the oringial spot on the navmesh)
User avatar
Tanika O'Connell
 
Posts: 3412
Joined: Fri Jan 26, 2007 1:34 am

Post » Thu Jun 21, 2012 7:58 pm

I see, and the way back? You talk about one door, but a load uses two doors, that's what is confusing me, and what happens in purgatory?
User avatar
Esther Fernandez
 
Posts: 3415
Joined: Wed Sep 27, 2006 11:52 am

Post » Fri Jun 22, 2012 1:29 am

Ok, how do you create an activator out of a standard door?
User avatar
Cody Banks
 
Posts: 3393
Joined: Thu Nov 22, 2007 9:30 am

Post » Thu Jun 21, 2012 7:11 pm

Ok, how do you create an activator out of a standard door?

You can just duplicate the load door, works the same, just don't flag the teleport in the reference tab.
User avatar
lucile
 
Posts: 3371
Joined: Thu Mar 22, 2007 4:37 pm

Post » Thu Jun 21, 2012 4:49 pm

since the destination is not changed in any way (do not un-teleport your original load doors), the way back uses the original load door in your worldspace, since the CTD is a 1-way problem (entering into your cell wont CTD)


the only reason for the purgatory cell is just to purge the RAM. you wont even see it in-game. most users will not even know they travelled to 2 places. the script's OnActivate automatically sends you to the purgatory cell and immediately activates your real door remotely from the purgatory cell to circumvent the CTD


the advantage to using a activator instead of a blank door is the user wont see Close Door immediately after opening it (not a huge issue) otherwise it works the same. the OnCellAttached event in the script always makes sure the door closes itself the next time you visit the interior cell
User avatar
darnell waddington
 
Posts: 3448
Joined: Wed Oct 17, 2007 10:43 pm

Post » Fri Jun 22, 2012 3:36 am

@http://www.gamesas.com/user/766649-amethyst-deceiver/

Let me try to be more precise (understanding others ways of thinking it's not always easy), so it moves the player to a certain place, is that place the final place? If yes, to go back it's just repeat everything right?
User avatar
anna ley
 
Posts: 3382
Joined: Fri Jul 07, 2006 2:04 am

Post » Thu Jun 21, 2012 12:50 pm

You legends...
User avatar
Amanda Leis
 
Posts: 3518
Joined: Sun Dec 24, 2006 1:57 am

Post » Thu Jun 21, 2012 12:52 pm

since the destination is not changed in any way, the way back uses the original load door in your worldspace, since the CTD is a 1-way problem (entering into your cell wont CTD)


the only reason for the purgatory cell is just to purge the RAM. you wont even see it in-game. most users will not even know they travelled to 2 places. the script's OnActivate automatically sends you to the purgatory cell and immediately activates your real door remotely from the purgatory cell to circumvent the CTD


the advantage to using a activator instead of a blank door is the user wont see Close Door immediately after opening it (not a huge issue) otherwise it works the same. the OnCellAttached event in the script always makes sure the door closes itself the next time you visit the interior cell

Ah! So if the door is activated in the purgatory no problem occurs! Is that it?
User avatar
Alexander Horton
 
Posts: 3318
Joined: Thu Oct 11, 2007 9:19 pm

Post » Thu Jun 21, 2012 7:12 pm

You legends...

Bethesda is the only legend here, BugsLegend ;)

:D
User avatar
Epul Kedah
 
Posts: 3545
Joined: Tue Oct 09, 2007 3:35 am

Post » Fri Jun 22, 2012 12:23 am

Now I fully get it:

DoorRef.Activate(Player)

You have the player activate it so he travels! NPCs wont need that because they will use the green navmesh triangle. Good, sounds good! Not sure if my solution works for NPCs, so this one is sounding good too.
User avatar
Marlo Stanfield
 
Posts: 3432
Joined: Wed May 16, 2007 11:00 pm

PreviousNext

Return to V - Skyrim