Jump to content

DOWNLOAD MODS

Are you looking for something shiny for your load order? We have many exclusive mods and resources you won't find anywhere else. Start your search now...

LEARN MODDING

Ready to try your hand at making your own mod creations? Visit the Enclave, the original ES/FO modding school, and learn the tricks of the trade from veteran modders...

JOIN THE ALLIANCE

Membership is free and registering unlocks image galleries, project hosting, live chat, unlimited downloads, & more...

AliTheLord

Allies
  • Posts

    20
  • Joined

  • Last visited

Posts posted by AliTheLord

  1. Still got problems with the door script :(

    scn FrostcragSpireHiddenDoorSCRIPT01
    
    
    
    
    ref mySelf
    
    ref myTarget
    
    float timer
    
    short open
    
    short busy
    
    short dustFall
    
    
    
    begin onActivate
    
    
    	set mySelf to getSelf
    
    	set myTarget to getParentref
    
    	if isActionRef player == 0 && open == 0 ;;open
    
    
    		if busy == 0
    
    			mySelf.pms effectshockshield
    
    			playgroup forward 0
    
    			;;message "open"
    
    			FRDoorOpenCloseREF.enable ;;open 
    
    			set open to 1
    
    			set timer to 1
    
    			set busy to 1
    
    			return		
    
    		endif
    
    
    	elseif isActionRef player == 0 && open == 1;;close
    
    
    		if busy == 0
    
    			set open to 0
    
    			;;message "close"
    
    			FRDoorOpenCloseREF.disable ;;close
    
    			mySelf.pms effectshockshield
    
    			playgroup backward 0
    
    			set timer to 1
    
    			set busy to 1
    
    			return	
    
    		endif
    
    	endif
    
    
    end
    
    
    
    begin gameMode
    
    
    	if (GetStage DLCFrostcragSpire >= 40) && (FRDoorOpenCloseREF.Getdisabled == 1);;Im disabled therefor outside variable says Im closed and player is close enough then open. There used to be an && (player.GetDistance FRMainGate <=300) check here too, but if I include that it just doesn't work at all.
    
    			FRDoorOpenCloseREF.enable
    
    			playgroup forward 0
    
    	endif
    
    
    	if open == 1 && busy == 1
    
    		if timer > 0
    
    			set timer to timer - getsecondspassed
    
    		elseif timer <= 0 && dustFall == 0
    
    			myTarget.activate mySelf 1
    
    			set dustFall to 1
    
    		endif
    
    	endif
    
    
    	if open == 0 && busy == 1
    
    		if timer > 0
    
    			set timer to timer - getsecondspassed
    
    		elseif timer <= 0 && dustFall == 1
    
    			myTarget.activate mySelf 1
    
    			set dustFall to 0
    
    		endif
    
    	endif
    
    
    	; Get rid of effect when wall stops moving
    
    	if busy == 1 && IsAnimPlaying == 0
    
    		mySelf.sms effectshockshield
    
    		set busy to 0
    
    	endif
    
    
    end
    
    
    
    
    
    So the problem with the above code is that it doesn't play the effectshockshield, and there is no wait for the timer, the door just opens. The second script is;
    scn FrostcragMainGateSwitch
    
    
    
    short activated
    
    short busy
    
    short front
    
    float timer
    
    ref mySelf
    
    ref targetref
    
    
    begin OnActivate
    
    
    if busy == 0 && front == 0
    
    	playgroup forward 1
    
    	set front to 1
    
    	set busy to 1
    
    	set activated to 1
    
    	set timer to 3
    
    	FRDoorOpenCloseREF.enable;;open
    
    	;;message "anim forward"
    
    elseif busy == 0 && front == 1
    
    	playgroup backward 1
    
    	set front to 0
    
    	set busy to 1
    
    	set activated to 1
    
    	set timer to 3
    
    	FRDoorOpenCloseREF.disable;;close
    
    	;;message "anim backward"
    
    endif
    
    
    END
    
    
    
    begin gameMode
    
    
    	if isAnimPlaying == 0 && busy == 1
    
    		set busy to 0
    
    	endif
    
    
    	if activated == 1
    
    
    		set mySelf to getSelf
    
    		set targetref to getParentref
    
    
    		if timer > 0
    
    			set timer to timer -getSecondsPassed
    
    		endif
    
    
    		if timer <= 0
    
    				targetref.activate mySelf 1
    
    				set activated to 0
    
    		endif
    
    	endif
    
    
    END

    This script is attached to a switch which controls the door. When this script runs, the door plays the effectshockshield like it's supposed to, but it doesn't open and close. It just opens (if it's already open it moves back to the closed position, and then proceeds to open).

    The first script is a modification of the vanilla script in Frostcrag Reborn. Both scripts seem to contain a redundant dustfall ref, which I presume the BGS guys forgot about.

    Any help/advice would be appreciated!

  2. i tried that and this is what i got i did however remove one of the endif and end lines

    scripterror2.jpg

    onfortuneitly i still don't really understand script i do plan on learning scripting but the fact that i made the first script even compile is pretty much on sheer luck alone

    Before I try fixing script 3, do you actually need it?? :P

    Are you just going to use the one script?? If so use 2 or 3, depending on your preference.

    EDIT:

    This one compiles;

    SCN DELETETHISSCRIPT
    
    
    
    Begin OnEquip Player
    
    
    If Player.GetIsSex Male == 1
    
         If GetIsID MiddlePants02Female == 1
    
            Player.UnEquipItem MiddlePants02Female 1
    
          ;message box this is grils clothing i'm not wearing this
    
         Endif
    
    EndIf
    
    
    End
    
    

  3. script 1

     scriptName femalonly
    
    
    
    
    begin OnEquip Player
    
    
    if Player.GetIsSex Male == 1
    
    	elseif GetIsID Middlepants02female == 1
    
    	Player.UnequipItem Middlepants02female
    
    	MessageBox "This is girl's clothing i'm not wearing this."
    
    elseif GetIsID Middlepants01female == 1
    
    	Player.UnequipItem Middlepants01female
    
    	MessageBox "This is girl's clothing i'm not wearing this."
    
    elseif GetIsID Middleshirt01female == 1
    
    	Player.UnequipItem Middleshirt01female
    
    	MessageBox "This is girl's clothing i'm not wearing this."
    
    elseif GetIsID Middleshirt02female == 1
    
    	Player.UnequipItem Middleshirt02female
    
    	MessageBox "This is girl's clothing i'm not wearing this."
    
    elseif GetIsID UpperPants01female == 1
    
    	Player.UnequipItem UpperPants01female
    
    	MessageBox "This is girl's clothing i'm not wearing this."
    
    elseif GetIsID UpperShirt02female == 1
    
    	Player.UnequipItem UpperShirt02female
    
    	MessageBox "This is girl's clothing i'm not wearing this."
    
    endif
    
    End
    script 2
    SCN AAFemaleOnlyCloths
    
    
    Begin OnEquip Player
    
         If Player.GetIsSex Male == 1
    
              If Player.GetEquipped MiddlePants01female == 1 || Player.GetEquipped Middlepants02female == 1 || Player.GetEquipped MiddleShirt01female == 1
    
                   ;message box
    
                   ;Unequip all the possible items
    
         EndIf
    
    End
    script 3
    SCN FemaleOnlyCloths
    
    
    Begin OnEquip Player
    
         If Player.GetIsSex Male == 1
    
         If GetIsID MiddlePants02Female == 1
    
    	Player.UnEquipItem MiddlePants02Female
    
          ;message box this is grils clothing i'm not wearing this
    
    EndIf
    
    End
    on script 3 i'm also having these errors see pic below scripterrors.jpg
    OK, is the script attached to each of the objects?? If not you need to make it a quest script. Do you want the messages to be displayed when your inventory is open??
    For script three, try this; script 3
    SCN FemaleOnlyCloths
    
    
    Begin OnEquip Player
    
    
    If Player.GetIsSex Male == 1
    
         If GetIsID MiddlePants02Female == 1
    
    	Player.UnEquipItem MiddlePants02Female
    
          ;message box this is grils clothing i'm not wearing this
    
         Endif
    
    EndIf
    
    
    End
    
    End

    But there are better ways of writing it, as you have above.

  4. Random post about a PC :D

    Llinky.

    Would you say teh PC in that link is worth the price £350 = $570

    Not sure what kind of i5 it is, so will need to find that out, and I'd probably sell the 6850 on it's own and buy a 560Ti even if it ends up costing me more.

    Opinions are welcome :D.

  5. All those non-parent form warnings are safe to ignore. They're normal because the CS doesn't like what you're doing, even though CSE makes it entirely safe.

    I can take a look at things if you want, but if those are the only errors you have, you actually don't have any :)

    The main error is the script that opens the door after you read the book isn't working. I haven't got any further than that so I don't know if that's the only problem. I think I've figured out one possible culprit, so I'll fix that then see how it goes :D.

  6. Arthmoor, I'm about at the point where it's still not working and I feel the mod is tidy enough for someone else to take a look. Would you mind taking a look at it and see if there's anything glaring I've missed?? I've got a few warnings from the CSE, mainly;

    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E6A) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E69) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow08' (00133E68) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E61) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow08' (00133E60) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E51) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow08' (00133E50) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E37) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E36) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow09' (00133E35) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow06' (00133E34) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E1F) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E1C) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E1A) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow02' (00133E16) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow02' (00133E14) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E11) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E10) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E0E) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E0D) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E09) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow02' (00133E03) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow07' (00133E02) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow07' (00133E01) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E06) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E38) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E39) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00133E3A) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow08' (0013495E) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSmallSnow01' (00134960) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'JMRockSnow2080' (0006F515) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form '' (000045ED) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form '' (000C4961) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form '' (000045CE) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'BrumaLoadDoorUpper01' (00015443) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'ChorrolLoadDoorMiddle02' (000180AE) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'ChorrolLoadDoorMiddle02' (0001BAAA) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'FrostcragSpireTelepad' (01000D40) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'DLCFrostcragSpire' (01000D53) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'DLCFrostcragAurelinwaeSleeps' (0100124B) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    [CS]	Non-parent form 'DLCFrostcragAurelinwaeOfferServices' (01001247) exists in both file 'Frostcrag Reborn from HDD.esp' and 'DLCFrostcrag.esp'
    
    

    But when I look in TES4EDIT searching for the FormID doesn't give me anything. And the packages (DLCFrostcragAurelinwaeSleeps etc.), as far as I can tell, only exist once, which confuses me.

    Shall I upload the esp as well as the resources?? And do you want the original mod file that just edits the offical plugin??

    Many thanks what ever your answer :D.

  7. The first problem, it's hard to say why it works without seeing the file, so it might be a good idea to upload it (not Megaupload) somewhere to have a look. Have you made sure the variable indexes in the scripts are not in conflict?

    The second, yep, that's a legit bug in the script. I don't think even the vanilla CS would allow that to compile, so that's definitely broken. It hasn't even been fixed by the UOMP either so that will need to get reported there too. In the meantime, just remove the extra endif, it's in a block by itself anyway.

    I'll upload the file when I get a chance, and double check the variable indexes. Thanks for the help.

    Also, just double checked and the second script does compile in the Vanilla CS, but not in in the CSE. Should this script work in game?? What will happen when it gets to the mismatched endif, will it carry on?? Or return an error or some such? Had to remove the endif in order to compile it, but am wondering whether or not the old script even worked.

  8. Hi, I've taken it upon myself to de-isolate Frostcrag Reborn, to make it compatible with the UOMP and to (possibly) improve it further.

    What I have done so far is made DLCFrostcrag,esp (the original, clean Bethesda file) a parent (using esmify and the CSE) and have a file Frostcrag Reborn.esp, which is the original mod, renamed.

    I've removed IDM records, and am in the process of making everything reference the records in DLCFrostcrag, instead of duplicating them and making everything not fun.

    I've got quite far, and have been having fun with TES4EDIT. It's all a bit messy at the moment, as there are stil a lot of DUPLICATE001 entries that I need to go through and make them edit the parent records in DLCFrostcrag.esp. I've done a large number of them though, so everything is progressing quite nicely.

    My main problem at the moment is the script that opens/moves/rotates the big stone wall after you pick up/read the book that's on the frozen ice hand. (Frostcrag Spire Memoirs I think). If this makes sense. Basically, it's broken, and I don't know why, and isn't the most logical of scripts I've read, in that it appears like it shouldn't even work in the first place. Well, there are two scripts, but they are only loosely related.

    This is the script attached to the door wall thing;

    scn FrostcragSpireHiddenDoorSCRIPT01
    
    
    short open
    
    short dustFall
    
    ref mySelf
    
    ref myTarget
    
    float timer
    
    short open
    
    short busy
    
    
    
    begin onActivate
    
    
    	set mySelf to getSelf
    
    	set myTarget to getParentref
    
    	if isActionRef player == 0 && open == 0 ;;open
    
    		if busy == 0
    
    			mySelf.pms effectshockshield
    
    			playgroup forward 0
    
    			;;message "open"
    
    			FRDoorOpenCloseREF.enable ;;open 
    
    			set open to 1
    
    			set timer to 1
    
    			set busy to 1
    
    			return		
    
    		endif
    
    	endif
    
    	if isActionRef player == 0 && open == 1;;close
    
    		if busy == 0
    
    			set open to 0
    
    			;;message "close"
    
    			FRDoorOpenCloseREF.disable ;;close
    
    			mySelf.pms effectshockshield
    
    			playgroup backward 0
    
    			set timer to 1
    
    			set busy to 1
    
    			return	
    
    		endif
    
    	endif
    
    
    end
    
    
    
    begin gameMode
    
    
    	if (GetStage DLCFrostcragSpire >= 50)
    
    		if (	FRDoorOpenCloseREF.Getdisabled == 1)  && (player.Getdistance FRMainGate <= 300) ;;Im disabled therefor outside variable says Im closed and player is close enough then open
    
    			FRDoorOpenCloseREF.enable
    
    			playgroup forward 0
    
    		endif
    
    	endif
    
    
    	if open == 1 && busy == 1
    
    		if timer > 0
    
    			set timer to timer - getsecondspassed
    
    		endif
    
    
    		if timer <= 0 && dustFall == 0
    
    			myTarget.activate mySelf 1
    
    			set dustFall to 1
    
    		endif
    
    	endif
    
    
    	if open == 0 && busy == 1
    
    		if timer > 0
    
    			set timer to timer - getsecondspassed
    
    		endif
    
    
    		if timer <= 0 && dustFall == 1
    
    			myTarget.activate mySelf 1
    
    			set dustFall to 0
    
    		endif
    
    	endif
    
    	endif
    
    
    	; Get rid of effect when wall stops moving
    
    	if busy == 1 && IsAnimPlaying == 0
    
    		mySelf.sms effectshockshield
    
    		set busy to 0
    
    	endif
    
    
    end
    
    
    It doesn't work in my esp, but it works in the original Frostcrag Reborn plugin (which is just an edited version of the Bethesda plugin, hence the de-isolation). But, as far as I can tell, it shouldn't work in the orginial, or at least not as the author intended. Specifically
    	if (GetStage DLCFrostcragSpire >= 50)
    
    		if (	FRDoorOpenCloseREF.Getdisabled == 1)  && (player.Getdistance FRMainGate <= 300) ;;Im disabled therefor outside variable says Im closed and player is close enough then open
    
    			FRDoorOpenCloseREF.enable
    
    			playgroup forward 0
    
    		endif
    
    	endif
    because picking up the book in the hand only sets the QuestStage to 40, not 50. (50 only happens when you buy all the furniture for Frostcrag Spire.) So I'm confused as to why it even works in the original mod, and what could have caused it to be broken in my version. Any ideas/suggestions?? Now, my second, and very minor problem, is the following script (again from the original mod). The script is from the book.
    if ( IsActionRef Player == 1 ) && ( GetStage DLCFrostcragSpire < 40 )
    
    	set myParent to GetParentRef
    
    	set timer to 4
    
    	set init to 1
    
    	Activate
    
    	SetStage DLCFrostcragSpire 40
    
    	StartQuest FRThievesQuest
    
    	elseif ( IsActionRef Player == 1 ) && ( GetStage DLCFrostcragSpire >= 40 )
    
    		Activate
    
    	endif
    
    endif

    because there is an endif that doesn't match an if. The CSE doesn't even let me compile this script, but I haven't tried it with just the CS,

    Shouldn't this error cause the script to not run properly, i.e. return when it gets to the mismatch??

    Thanks for any and all help :). If uploading my file will help, then I can, but it's a little messy at the moment as I'm still working on it.

    Many thanks!!

    scn FrostcragSpireMemoirsScript
    
    
    ref myParent
    
    short init
    
    short DOONCE
    
    short nextTrap
    
    float timer
    
    
    begin OnActivate
    
    
    ;if ( DOONCE == 0 )
    
    	;RightfrostcragfrostSwitchRef.enable
    
    	;set DOONCE to 1
    
    ;Endif
    
    
    
    if ( IsActionRef Player == 1 ) && ( GetStage DLCFrostcragSpire < 40 )
    
    	set myParent to GetParentRef
    
    	set timer to 4
    
    	set init to 1
    
    	Activate
    
    	SetStage DLCFrostcragSpire 40
    
    	StartQuest FRThievesQuest
    
    	elseif ( IsActionRef Player == 1 ) && ( GetStage DLCFrostcragSpire >= 40 )
    
    		Activate
    
    	endif
    
    endif
    
    
    end
    
    
    begin Gamemode
    
    
    	if init == 1
    
    		if timer > 0
    
    			set timer to timer - getSecondsPassed
    
    		endif
    
    
    		if timer <= 0 && nextTrap == 0
    
    			myParent.activate FCSpireStarterMarker 1
    
    			set nextTrap to 1
    
    			set init to 2
    
    		endif
    
    	endif
    
    
    end
    Specifically
  9. Try this;

    
    scn *NAME*
    
    
    begin onactivate
    
     if
    
    *OBJECTREF*.getdisabled == 1
    
    *OBJECTREF*.enable 
    
     elseif *OBJECTREF*.getdisabled == 0
    
    *OBJECTREF*.disable
    
     endif
    
    end
    
    

    EDIT: Ninja'd and Trollf's way is better anyway :P

    • Upvote 1
×
×
  • Create New...