Jump to content

CPU

Premium Member
  • Posts

    22
  • Joined

  • Last visited

Everything posted by CPU

  1. If you add it to banditfaction then add it also to playerfaction. In this case it will be not hostile to player and bandits will ignore it.
  2. If you just need Forms or ObjectReferences then SKSE allows the creation of arrays of more than 128 items. But using a FormList in this case can be better.
  3. Be aware that "making master" does not mean setting it as ESM. You just need to load the other mod in CK before creating your mod. And then editing it. This will make the other mod as master (that means a dependency mod)
  4. Actually, if you are OK with just a 2D object it is not really complex. Create a simple 4 vertex object (a square) with a texture. Do your symbol in the texture. Create the magic effect of type script and add a script to it. Create a "Static" object and add your NIF to it. In the event OnEffectStart of the magic effect you can put some code (I can write it for you if you need) to spawn the new object, place it over the caster and move it as long as you need. In the NIF you can use the NiMorphController to add a spin rotation on the Z axis to have it turn.
  5. In your code there are no actual link to the objects you are using. You cannot use simple variables you need to use properties. ScriptName ScriptObject Extends ObjectReference ScriptQuest Property LocalQuestScript Auto Event OnActivate(ObjectReference akActionRef) LocalQuestScript.TestLinkFunction() EndEvent And remember to fill the property with the quest. In case the script extends an object that is owned by the quest (ReferenceAliases for example) then you can just use GetOwningQuest() and cast it to the script name to use its functions.
  6. Add to the actors the faction of the actors spawned, so they will ignore them. Greetings from the other site :)
  7. Good luck with your work. I always support games that are built to support modding. Tried to pre-order but I think I have to wait November 29th. Good luck!
  8. In response to post #56080861. My point of view. Consider old downloads also. So old modders (still alive) will get a benefit. This will probably be just for the first dividend. The consider just the delta of downloads.
  9. You have an open door on LL, oh somebody that does not exist, is not humanoid or else, and (in fact or theory) is not in this dimension. :laugh:
  10. Hello "mod mafia" here. I advised you to PM the site owner if you have problems with any of the moderators. And I, personally, agree with all the actions took by my "mafia colleagues". And yes, was me that get you 1 warning point and make impossible fo you to post for one week. I hope during this time you will reflect and learn, for the future, to avoid to insult and attack.
  11. Or you can use some SKSE plugins, like the extremely stable and useful PapyrusUtil that in its part Storageutil, allows you to add variables to objects (and so Actors) And all info you edit is stored in the SKSE co-save. High performance and low to carry about it.
  12. Just as a simple info: An ObjectBase is not in the Skyrim world so it has no "distance". Only ObjectReferences have a distance (and references to BaseObjects in a container gets the distance from the container.)
  13. Hello Terra Nova, you can slightly improve the performance of you script in this way Actor property PlayerRef auto Actor[] DeadActors = new Actor[10] ; We need an array to place all those dead actors, if any, inside. Keyword property ActorTypeNPC auto ; Ignore all actors that do not have this keyword. Function ArraySetDeadActor() ; Array stuff ================ Int i = 0 ;============================= ; Cell stuff ================= Cell kCell = PlayerRef.GetParentCell() Int iCell = kCell.GetNumRefs(62) ; Real NPCs ; ============================ While iCell iCell -= 1 Actor kDeadActor = kCell.GetNthRef(iCellIndex, 62) as Actor if kDeadActor.isDead() && kDeadActors.HasKeyword(ActorTypeNPC) ; The keywork is OK only if you need to filter out creatures. DeadActors[i] = kDeadActors i += 1 endif EndWhile EndFunction I hope this helps. Why it has better performance? * The number of items got from SKSE is restricted to only actors * The cycle has better performance because the check condition is lighter * Less castings * The init to init the array can be done directly at global variable instanciation level, without requiring an init function
  14. I am a scripter (actually a really advanced one.) And an average builder (but i don;t like to do it, so I will not do it.) If you need help on a Follower mod, just PM. By the way I wrote a full Follower tutorial guide, but cannot be posted on Nexus because it contains some "adult" stuff inside (but maybe now, with the new rules of Nexus it can, not sure.)
  15. In some cases, for some mods, it is useful to find the actual player team mates. It can be done using Papyrus and SKSE. Actor[] teamMates = new Actor[16] int numFound = 0 Cell c = playerRef.getparentCell() int num = (c.GetNumRefs(62)) as Int while num && numFound<16 num -= 1 Actor a = c.GetNthRef(num, 62) as Actor if a && a.isPlayerTeamMate() teamMates[numFound] = a numFound += 1 endIf endWhile At the end you will have an array with all the player team mates (followers for all the followers extension mods) and the actual number of them. I hope this helps.
×
×
  • Create New...