Quick Questions -- Quick Answers, The Nineteenth

Post » Fri May 27, 2011 8:29 am

Ah, fantastic! :) Thanks for your patience shademe. :hugs:
OBSE's actually got a toggleFirstPerson function that lets you switch you to 3rd/1st person without such a check.
User avatar
Sabrina Steige
 
Posts: 3396
Joined: Mon Aug 20, 2007 9:51 pm

Post » Fri May 27, 2011 6:30 am

Does anybody know how to get into the gates at astral plane from the Midas Magic Mod?

I've the astral mark/recall spell. But if I go to the astral plane and I want to go through a gate a message pops up: you have to use mark first.
So I use mark chose one of the cathegories (ruby/topaz..) and try to go through a gate but nothing happens..

What am I doing wrong?
User avatar
Emilie M
 
Posts: 3419
Joined: Fri Mar 16, 2007 9:08 am

Post » Fri May 27, 2011 11:00 am

OBSE's actually got a toggleFirstPerson function that lets you switch you to 3rd/1st person without such a check.


Oh, I couldn't find that on the wiki - my first port of call. Someone really needs to update that, I think it's now at least 3 versions behind. Thanks also :)
User avatar
SexyPimpAss
 
Posts: 3416
Joined: Wed Nov 15, 2006 9:24 am

Post » Fri May 27, 2011 9:19 am

Someone really needs to update that, I think it's now at least 3 versions behind. Thanks also :)


You do know that anyone can do that... go take a stab at it ;)
User avatar
Dan Wright
 
Posts: 3308
Joined: Mon Jul 16, 2007 8:40 am

Post » Thu May 26, 2011 11:42 pm

Yeah, but I don't really know any of the functions! That's why I need it! :rolleyes:
User avatar
Dorian Cozens
 
Posts: 3398
Joined: Sat May 26, 2007 9:47 am

Post » Fri May 27, 2011 4:09 am

Then take a look at http://obse.silverlock.org/obse_command_doc.html! It contains every single OBSE function, but none of the vanilla functions.
User avatar
Len swann
 
Posts: 3466
Joined: Mon Jun 18, 2007 5:02 pm

Post » Fri May 27, 2011 1:44 am

That bookmark is often more useful than the cs wiki :goodjob:
User avatar
Jessica Raven
 
Posts: 3409
Joined: Thu Dec 21, 2006 4:33 am

Post » Fri May 27, 2011 4:53 am

So here's one that's giving me no end of trouble.

Basic setup is, I'm setting up an indoor Oblivion gate to go to the seven random Oblivion planes. Since the gates in the planes are set to go to the Tamriel worldspace and I don't really want to touch them at all, I cloned the OblivionGateToTamriel door, set it to my destination cell, changed the mesh to a collision box, and set up a series of trigger zones to move them over top of the existing gates via SetPos when the player enters the plane.

All of this works without a hitch. I get to the plane fine, I can close them fine, the TZ works fine, the box moves to the right spot, but the game refuses to see it as a gate back out. Thought it might be the collision box mesh, swapped it out. No go. I've got it pointing to an XMarkerHeading appropriately.

Any ideas what might be at issue, here?
User avatar
priscillaaa
 
Posts: 3309
Joined: Sat Dec 30, 2006 8:22 pm

Post » Fri May 27, 2011 10:24 am

I'm having some trouble with some scripts I'm working on. What I'm trying to do is create a suit that will add a custom 50% Chameleon Ability spell while the Player is sneaking. I have a script that mostly works, but if the suit is removed while in sneak mod, the ability remains. So I've scripted the suit to add a token and scripted the token to add the Ability. The problem with this setup is that as soon as I exit the Inventory Screen after equipping the suit, I get a big ugly CTD. :banghead:

The script for the suit is:
scn VStealthSuitScriptBegin OnEquip Player Player.AddItem VStealthToken 1EndBegin OnUnEquip Player Player.RemoveItem VStealthToken 1 Player.RemoveSpell VChameleon50; added to make sure the spell is removedEnd


The script for the Token is:
scn VStealthTokenScriptBegin GameMode  If Player.GetEquipped VStealthSuit == 1	If player IsSneaking == 1	 Player.addspell VChameleon50	Elseif Player IsSneaking == 0	 Player.RemoveSpell VChameleon50	Endif  EndifEnd


I'm not sure what's causing the CTD. What would be the best (non OBSE) way to fix this? This is for part of http://www.gamesas.com/bgsforums/index.php?showtopic=1055275&hl= and I really don't want to make it OBSE dependent.
User avatar
Julie Ann
 
Posts: 3383
Joined: Thu Aug 23, 2007 5:17 am

Post » Thu May 26, 2011 9:45 pm

Shouldn't that be player.IsSneaking? Besides that, I can't see anything obvious.
User avatar
Alex [AK]
 
Posts: 3436
Joined: Fri Jun 15, 2007 10:01 pm

Post » Fri May 27, 2011 5:58 am

After going through all the horse-related functions, I'm pretty sure the answer is no, but just in case...

...is there a way to set playerslastriddenhorse, either to another ref or to nothing? I mean, I know how to GET it. But, I want to SET it. Specifically, to none, to prevent said lastriddenhorse from fast-traveling with the player. Open to any suggestions. OBSE is fine, convoluted workarounds are A-ok.


Bump, still haven't found any answers about this.
User avatar
Justin Bywater
 
Posts: 3264
Joined: Tue Sep 11, 2007 10:44 pm

Post » Fri May 27, 2011 12:15 pm

Bump, still haven't found any answers about this.
Don't think there exists a function that does what you ask.
User avatar
stacy hamilton
 
Posts: 3354
Joined: Fri Aug 25, 2006 10:03 am

Post » Fri May 27, 2011 9:52 am

Shouldn't that be player.IsSneaking?

That was it! :D Thanks! I kept looking for something complicated so, of course, I overlooked something simple. :embarrass:
User avatar
Dean Ashcroft
 
Posts: 3566
Joined: Wed Jul 25, 2007 1:20 am

Post » Fri May 27, 2011 8:37 am

All player made potions have a formID starting with FF. You can use getFormIDString and getItems to walk through the player's inventory and do the job.
forEach aIterator <- player.getItems 40	 let rPot := aIterator[ "value" ]	 if eval (( getFormIDString rPot )[0:1] == "FF" )		  let sNumItems := player.getItemCount rPot		  player.removeItem rPot sNumItems		  shopKeeperRef.addItem rPot sNumItems	 endIfloop


Hey shadeMe, I put this into the game and it worked perfectly!! Thank you so much for your help :). But I have one problem now. Since it automatically removes all the potions starting with FF, it removes them even after they have been removed once and I've bought them back from the merchant. So is there a way to have this stop affecting potions after you buy them from the merchant?
User avatar
Hot
 
Posts: 3433
Joined: Sat Dec 01, 2007 6:22 pm

Post » Fri May 27, 2011 5:30 am

How do you add leveled spells via script to an actor? neither additem nor addspell work.
User avatar
Unstoppable Judge
 
Posts: 3337
Joined: Sat Jul 29, 2006 11:22 pm

Post » Thu May 26, 2011 10:38 pm

The CS Wiki http://cs.elderscrolls.com/constwiki/index.php/AddSpell page has a pretty good workaround. The short answer is, you can't, really, unless OBSE does something I'm not aware of.
User avatar
Flutterby
 
Posts: 3379
Joined: Mon Sep 25, 2006 11:28 am

Post » Fri May 27, 2011 9:03 am

Hey shadeMe, I put this into the game and it worked perfectly!! Thank you so much for your help :) . But I have one problem now. Since it automatically removes all the potions starting with FF, it removes them even after they have been removed once and I've bought them back from the merchant. So is there a way to have this stop affecting potions after you buy them from the merchant?
Use this bit :
short sAlMenubegin menuMode 1040   if ( sAlMenu == 0 )	  let sAlMenu := 1   endIfendbegin gameMode   if ( sAlMenu )	; the removal code	  let sAlMenu := 0   endIfend
That will call the code only after you exit the alchemy menu.
User avatar
BlackaneseB
 
Posts: 3431
Joined: Sat Sep 23, 2006 1:21 am

Post » Thu May 26, 2011 11:48 pm

Just a small thing that I've been wondering for a while.

On the Quest Data tab, pretty much every vanilla quest has the quest condition 'GetIsPlayableRace == 1'. What for? Is it really necessary?
User avatar
STEVI INQUE
 
Posts: 3441
Joined: Thu Nov 02, 2006 8:19 pm

Post » Fri May 27, 2011 7:04 am

Use this bit :
short sAlMenubegin menuMode 1040   if ( sAlMenu == 0 )	  let sAlMenu := 1   endIfendbegin gameMode   if ( sAlMenu ); the removal code	  let sAlMenu := 0   endIfend
That will call the code only after you exit the alchemy menu.


But won't that still remove potions that I have bought in a previous transaction? Like from the last time I brought up the alchemy menu?
User avatar
Evaa
 
Posts: 3502
Joined: Mon Dec 18, 2006 9:11 am

Post » Fri May 27, 2011 6:12 am

But won't that still remove potions that I have bought in a previous transaction? Like from the last time I brought up the alchemy menu?
Looks like I wasn't thinking very clearly. As a work around to the issue you brought forth, you can remove all the player's FF-indexed potions to a off-world container and add them back later.
short sAlMenubegin menuMode 1040   if ( sAlMenu == 0 )	  let sAlMenu := 1	  forEach aIterator <- player.getItems 40		   let rPot := aIterator[ "value" ]		   if eval (( getFormIDString rPot )[0:1] == "FF" )				let sNumItems := player.getItemCount rPot				player.removeItem rPot sNumItems				zzSomePersistentContainerRef.addItem rPot sNumItems		   endIf	  loop   endIfendbegin gameMode   if ( sAlMenu ); the removal code	  let sAlMenu := 0	  zzSomePersistentContainerRef.removeAllItems player   endIfend

User avatar
Leanne Molloy
 
Posts: 3342
Joined: Sat Sep 02, 2006 1:09 am

Post » Fri May 27, 2011 10:33 am

Looks like I wasn't thinking very clearly. As a work around to the issue you brought forth, you can remove all the player's FF-indexed potions to a off-world container and add them back later.
short sAlMenubegin menuMode 1040   if ( sAlMenu == 0 )	  let sAlMenu := 1	  forEach aIterator <- player.getItems 40		   let rPot := aIterator[ "value" ]		   if eval (( getFormIDString rPot )[0:1] == "FF" )				let sNumItems := player.getItemCount rPot				player.removeItem rPot sNumItems				zzSomePersistentContainerRef.addItem rPot sNumItems		   endIf	  loop   endIfendbegin gameMode   if ( sAlMenu ); the removal code	  let sAlMenu := 0	  zzSomePersistentContainerRef.removeAllItems player   endIfend


Ahh good thinking, I will try that out once I'm able to wrap my head around the code lol. Thank you so much for your help :)
User avatar
Michelle davies
 
Posts: 3509
Joined: Wed Sep 27, 2006 3:59 am

Post » Fri May 27, 2011 9:19 am

Would it be possible to merge the dlcs plus the unofficial patches for the dlcs into one single esp, or is this impossible without errors because of some copy protection or other thing?
User avatar
Katie Samuel
 
Posts: 3384
Joined: Tue Oct 10, 2006 5:20 am

Post » Fri May 27, 2011 9:08 am

Would it be possible to merge the dlcs plus the unofficial patches for the dlcs into one single esp, or is this impossible without errors because of some copy protection or other thing?
There is no copy protection placed on the DLCs ( or any other plugins for that matter ). Merging them all together will render useless the mods that have the DLC(s) as their master(s) for one.
User avatar
Anne marie
 
Posts: 3454
Joined: Tue Jul 11, 2006 1:05 pm

Post » Fri May 27, 2011 2:09 am

There is no copy protection placed on the DLCs ( or any other plugins for that matter ). Merging them all together will render useless the mods that have the DLC(s) as their master(s) for one.


Is it possible to, say, take a dlc and merge in the equivilent unofficial official mods patch, then merge in the equivilent SM plugin refurbished esp, and after doing this for all the seperate dlc, merge the files together?
User avatar
Pixie
 
Posts: 3430
Joined: Sat Oct 07, 2006 4:50 am

Post » Fri May 27, 2011 8:37 am

How to determine if an arrow is in the nocking process or if it is completely nocked?

My one thought is to start a timer when the attack button is pressed, compare this to the speed of the bow and use that to guess if the arrow has been nocked yet.

Anyone know of a simpler/cleaner way to do this? I was hoping that it would be an AnimationGroup but it is all just "AttackBow" Animation

thanks,
dan
User avatar
Rachel Hall
 
Posts: 3396
Joined: Thu Jun 22, 2006 3:41 pm

PreviousNext

Return to IV - Oblivion