Quick Questions -- Quick Answers, The Eighteenth

Post » Thu May 26, 2011 9:36 pm

The term reference may point to two seperate things, a reference variable or a reference of a base object that exists in the world. A short explaination is on http://cs.elderscrolls.com/constwiki/index.php/Base_Objects_vs_References or a http://cs.elderscrolls.com/constwiki/index.php/Modding_Terminology#Object_vs._Object (scroll down to the rest of the info).


Ahh, thank you very much, that's a very helpful link.

I don't think items that are in an inventory/container even have references in the game. You are probably using their Obejct FormIDs (that is what the function GetInventoryObject returns).

EDIT: About your first question, I think you need to use SomeScript.SomeVariable, but I may be wrong...


Well the way I see it, SomeScript.SomeVariable would be very amibuous because there's multiple uses of the same script by different actors, so how would I differentiate between SomeScript(A).SomeVariable1 and SomeScript(B).SomeVariable1 ?
User avatar
Trevi
 
Posts: 3404
Joined: Fri Apr 06, 2007 8:26 pm

Post » Thu May 26, 2011 10:12 pm

No it's the effect itself, if it said spell then that would be the case. But for this you just need to use the CS ID for the two effects and it checks if the player has any spells with those effects.


When I apply the script to a trigger, I can't use a torch anywhere in the whole dungeon... Which seems kinda weird to me...

Fixed, thanks :)
User avatar
Robyn Lena
 
Posts: 3338
Joined: Mon Jan 01, 2007 6:17 am

Post » Fri May 27, 2011 2:44 am

OK, so I have multiple iterations of the same script that get added to actors under certain circumstances. Now I need to get a variable in a script from a certain actor. Could I just use SomeActor.SomeVariable or how would I do that? I tried something like this before and it didn't work, so I'm curious.
let actorRef.variableName:= . Will only work with variables on the calling actor's attached script.
User avatar
Austin Suggs
 
Posts: 3358
Joined: Sun Oct 07, 2007 5:35 pm

Post » Fri May 27, 2011 12:05 pm

OK, so I have multiple iterations of the same script that get added to actors under certain circumstances. Now I need to get a variable in a script from a certain actor. Could I just use SomeActor.SomeVariable or how would I do that? I tried something like this before and it didn't work, so I'm curious.
Yes it is possible but not as flexible as we'd like. The syntax would be
set actorPersistantRef.SomeVar to 100-or-set SomeVar to actorPersistantRef.SomeVar
The biggest drawback of this is that it only works when the actor is persistant (well technically it's always persistant) and it has a Persistant Reference ID. So if you have multiple, variable or dynamic amount of actors this approach won't really work.

-kyoma
User avatar
Love iz not
 
Posts: 3377
Joined: Sat Aug 25, 2007 8:55 pm

Post » Thu May 26, 2011 10:07 pm

So if you have multiple scripts running on one actor you need to keep the variable naming unique across all scripts to avoid ambiguity when trying to set variables from other scripts? I think I'm beginning to understand.
User avatar
Jade Payton
 
Posts: 3417
Joined: Mon Sep 11, 2006 1:01 pm

Post » Fri May 27, 2011 4:29 am

So if you have multiple scripts running on one actor you need to keep the variable naming unique across all scripts to avoid ambiguity when trying to set variables from other scripts? I think I'm beginning to understand.
Actors can only have one base script ( i.e., the script defined in the actor's record ). All other scripts running on the actor ( like those of tokens ) are inaccessible to the reference operator (.).
User avatar
Dylan Markese
 
Posts: 3513
Joined: Sat Dec 01, 2007 11:58 am

Post » Fri May 27, 2011 11:41 am

Me again, what is the collision for a tripwire? I can't get my tripwire to not get triggered when the PC doesn't break it...
User avatar
Meghan Terry
 
Posts: 3414
Joined: Sun Aug 12, 2007 11:53 am

Post » Fri May 27, 2011 1:59 pm

Remember that guard armour from a few pages back? Im having a http://img686.imageshack.us/img686/6163/screenshot35.png with the cuirass. Can anyone tell me exactly what I may have done wrong in nifskope?

The armour is purely nifskope chopping, I took the arms and shirt from an upper class clothing and put it under the chest piece. But I'm not sure how to solve this issue. Any precautions or work arounds to issues like this???

Someone please help.
User avatar
JD FROM HELL
 
Posts: 3473
Joined: Thu Aug 24, 2006 1:54 am

Post » Thu May 26, 2011 9:56 pm

I have that blackscreen bug with an Nvidia Card in an Exterior Version is patched.

How to avoid it ? I think it was something with fog values
User avatar
suniti
 
Posts: 3176
Joined: Mon Sep 25, 2006 4:22 pm

Post » Fri May 27, 2011 3:41 am

I need some quick help, ya'll. I'm trying to get a bed and a container to be activated remotely from a cell (using an activator that you place). Apparently, Morrowind's ShowRestMenu doesn't work for Oblivion, and I can't for the life of me figure out how to call a rest menu except by remote activation.

Also, since I'm here, how can I call a remote container to dump it's contents to the player?


:EDIT: I managed to answer my own question. Thanks anyways!
User avatar
carrie roche
 
Posts: 3527
Joined: Mon Jul 17, 2006 7:18 pm

Post » Fri May 27, 2011 8:45 am

Hi,

I need help to find where the height of the world map window can be read. I found GetMenuFloatValue "player_grab_zone\width" 1004 for the width, but GetMenuFloatValue "player_grab_zone\height" 1004 returns a higher value than the world map window height (I guess it returns the world map height, + the height of the buttons below). I guess there is another xml trait where it's stored. Do anyone know?
User avatar
Glu Glu
 
Posts: 3352
Joined: Sun Apr 01, 2007 5:39 am

Post » Thu May 26, 2011 10:40 pm

I have that blackscreen bug with an Nvidia Card in an Exterior Version is patched.

How to avoid it ? I think it was something with fog values


Yes it's the fog values, not sure what need to be done but it is related to them.
User avatar
Trevi
 
Posts: 3404
Joined: Fri Apr 06, 2007 8:26 pm

Post » Thu May 26, 2011 9:36 pm

Yes it's the fog values, not sure what need to be done but it is related to them.


FogNear value mustn't be 0.000. Just put it 0.001 or 0.0001 whatever the CS minimum is.
User avatar
Jacob Phillips
 
Posts: 3430
Joined: Tue Aug 14, 2007 9:46 am

Post » Fri May 27, 2011 6:47 am

Whoops. Got some cells to correct I guess.
User avatar
kennedy
 
Posts: 3299
Joined: Mon Oct 16, 2006 1:53 am

Post » Fri May 27, 2011 6:58 am

I'm trying to attach a script to a modified set of Shrouded Armer that will give the Player an Ability spell when sneaking. The current script is:

scn VypersSoSScriptbegin OnEquip Player  If player.IsSneaking == 1	 player.addspell VSoSShroudOfSithis  Elseif player.IsSneaking == 0	 player.removespell VSoSShroudOfSithis  EndifEnd


I get no errors when saving the script, but the spell (Shroud of Sithis) is not being added while sneaking (or at all). What am I doing wrong here?
User avatar
herrade
 
Posts: 3469
Joined: Thu Apr 05, 2007 1:09 pm

Post » Fri May 27, 2011 6:13 am

I'm trying to attach a script to a modified set of Shrouded Armer that will give the Player an Ability spell when sneaking. The current script is:

scn VypersSoSScriptbegin OnEquip Player  If player.IsSneaking == 1	 player.addspell VSoSShroudOfSithis  Elseif player.IsSneaking == 0	 player.removespell VSoSShroudOfSithis  EndifEnd


I get no errors when saving the script, but the spell (Shroud of Sithis) is not being added while sneaking (or at all). What am I doing wrong here?


OnEquip runs only once, when the object is equipped. You need a quest script or some other way to constantly check wether the player is sneaking.
User avatar
no_excuse
 
Posts: 3380
Joined: Sun Jul 16, 2006 3:56 am

Post » Fri May 27, 2011 5:57 am

Question:

Will conflicting QUST records cause problems in proper quest execution?

I.E. Tears of the Fiend, Ruined Tail's Tale, Malevolent, and Lost Spires all have their own entries for the 'GenericArgonian' (one of several they conflict in) Quest entry. It appears each one has its own conditions to check for in these entries. Will these types of conflicts cause problems? If so, is there any way to merge the entries manually or automatically so they become compatible?

Appreciate the help.
User avatar
Emily Rose
 
Posts: 3482
Joined: Sat Feb 17, 2007 5:56 pm

Post » Thu May 26, 2011 11:40 pm

OnEquip runs only once, when the object is equipped. You need a quest script or some other way to constantly check wether the player is sneaking.

I changed Begin OnEquip to Begin GameMode and put an additional If to check if the Player is wearing the armor. It work perfectly now. Thanks! :D
User avatar
Nadia Nad
 
Posts: 3391
Joined: Thu Aug 31, 2006 3:17 pm

Post » Fri May 27, 2011 11:00 am

What is the best way to determine if an actor is currently following someone? I know of http://cs.elderscrolls.com/constwiki/index.php/GetCurrentAIPackage and http://cs.elderscrolls.com/constwiki/index.php/GetCurrentAIProcedure and they seem to work pretty good. But I'm curious about other situations where one actor follows another (as would become obvious with http://obse.silverlock.org/obse_command_doc.html#GetFollowers, http://obse.silverlock.org/obse_command_doc.html#GetNumFollowers and http://obse.silverlock.org/obse_command_doc.html#GetNthFollower). Like any of the other package types perhaps?

P.S. No need to worry about summons, I'm already dealing with them in a seperate (and accurate) way. :)

-kyoma
User avatar
Jessie Rae Brouillette
 
Posts: 3469
Joined: Mon Dec 11, 2006 9:50 am

Post » Fri May 27, 2011 1:47 am

I keep seeing mods which have dialogue responses of over 150 characters, how have the modders overcome that limitation?
User avatar
Laurenn Doylee
 
Posts: 3427
Joined: Sun Dec 03, 2006 11:48 am

Post » Fri May 27, 2011 6:51 am

I keep seeing mods which have dialogue responses of over 150 characters, how have the modders overcome that limitation?


I'm not sure, but I guess it would be done by editing construction set.ini, maybe this part:
[Localization]iExtendedResponseLength=255iExtendedTopicLength=50bAllowExtendedText=0

User avatar
Courtney Foren
 
Posts: 3418
Joined: Sun Mar 11, 2007 6:49 am

Post » Fri May 27, 2011 9:59 am

Thanks, bAllowExtendedText did the trick.
User avatar
Scarlet Devil
 
Posts: 3410
Joined: Wed Aug 16, 2006 6:31 pm

Post » Fri May 27, 2011 12:33 am

What is the best way to determine if an actor is currently following someone? I know of http://cs.elderscrolls.com/constwiki/index.php/GetCurrentAIPackage and http://cs.elderscrolls.com/constwiki/index.php/GetCurrentAIProcedure and they seem to work pretty good. But I'm curious about other situations where one actor follows another (as would become obvious with http://obse.silverlock.org/obse_command_doc.html#GetFollowers, http://obse.silverlock.org/obse_command_doc.html#GetNumFollowers and http://obse.silverlock.org/obse_command_doc.html#GetNthFollower). Like any of the other package types perhaps?

P.S. No need to worry about summons, I'm already dealing with them in a seperate (and accurate) way. :)

-kyoma
I believe an actor can only have one package target at a time. The above functions were written to be used with the player, in all probability. Has getFollowers ever returned the same reference when called on 2 different actors ?

btw, new thread : http://www.gamesas.com/bgsforums/index.php?showtopic=1064593
User avatar
sw1ss
 
Posts: 3461
Joined: Wed Nov 28, 2007 8:02 pm

Previous

Return to IV - Oblivion