Jump to content

RomanR

Members
  • Posts

    509
  • Joined

  • Last visited

Everything posted by RomanR

  1. OnAttack and OnRelease aren't functions, they're events defined by SetEventHandler command. By using it you specify type of event you want and a script which will handle it. However script functions made as event handlers aren't made to return values, so if you need such thing (and you propably will), use shared quest or global variable. You must also define SetEventHandler events again at every restart of Oblivion. Handler function can be like this: scn FnMyOnReleaseHandler ref actor ref weapon begin function {actor} if actor == PlayerRef ;It was player... let weapon := actor.GetEquippedObject 16 if weapon == MyMagicWeapon ;...who done swing with wanted weapon? if MyQuest.canCast == 0 set MyQuest.canCast to 1 ;inform another part via this quest flag endif endif endif end
  2. Hey, good thinking. If NorthernUI adds support for gamepads through its own NorthernUI.dll, setting "bUse Joystick" to zero in [Controls] section would work. At least it's a good start.
  3. The last part with timer is also very messy. Was it supposed to show a message and after some time teleport player somewhere? If ( GetStage WaV001 == 1 ) && ( GetStage WaV001 < 2 ) ;first play sound and show a message if GameTimer == 0 PlaySound AMBWhiteout2D message "As you abide about your day, you suddenly feel dizzy and then the world begins spinning around you in white light!" Set GameTimer to 1 endif ;wait a moment if GameTimer >= 1 Set GameTimer to ( GameTimer + GetSecondsPassed ) endif if (GameTimer >= 6) ;after 6 seconds Set GameTimer to -1 ;deactivate timer PlayerRef.MoveToMarker WaVLadyGreetingMarkerRef ;move player endif Endif
  4. Yes, books in Oblivion can only teach skills by default, but you can assign script to a book to add a spell of your choice. The simplest one would be like this: scn RomRBookTeachSpell ;if book was activated in a world begin OnActivate if GetActionRef == player player.AddSpell MySpell Activate else Activate endif end ;activated in inventory begin OnEquip player player.AddSpell MySpell end With OBSE you can add condition using HasSpell function to not try to add a spell every time, but it will work without it too.
  5. I suspect that this summon script isn't prepared for situation when summon spell is cast in rapid succession and is working right only when you wait until the spell finish itself. If not, the script will skip some phases because measured time for them didn't come. Regarding problem with fast travel/waiting/sleeping - after this the spell is no longer active, so there is nothing to control your creature anymore with script as it is. You will need to add ScriptEffectFinish (preferable choice) part or external source script must be running which can handle both situations.
  6. The summon script you mention is clearly made for persistent references, in short it simulates summoning by moving a creature from its "cage" (propably located in dedicated cell) to you and back. Is your summon persistent? Also with "No level processing" flag ticked (many creatures has) such creature will not run any AI package or script (so creatures made for summoning have this flag off and "Quest Item" flag on - makes them updated more often and their bodies will not be removed on cell reset) if you aren't in same cell. Regarding Spriggan's death I'm not sure, maybe it's something in summon script again.
  7. You're using Dispel command at a wrong time. Timer conditions are mismatched too, making a "fade phase" never to occur.
  8. Propably inserting "Dispel" command would help, if it's really the only problem: if ( timer > 30 ) ;Creature is dead and fade timer passed ;Move our creature back to its holding cell if killed == 0 SUMN.kill endif SUMN.moveto CreatureCageREF 0 0 10 ;Reset our creature if dead SUMN.resurrect ;Set our creature to an unprocessed state SUMN.disable ;If creature was killed by something else, dispel a summon spell if killed != 0 set killed to 0 dispel {Editor ID of this spell} endif endif ;Adjust timer state for early fade/disable upon death if ( SUMN.getdead == 1 ) && ( timer < 28 ) set timer to 28 set killed to 1 ;new short "flag" variable endif
  9. After some research and tests I'm positive it can be done. For ranged spells you can use invisible activators positioned in front of you - first one will shoot spell of your choice, second will serve as a target in which direction the first one will shoot. For positioning you will need OBSE, as vanilla doesn't have needed functions. Also positioning them at right direction is quite tricky in first person, but for races scaled near 1 doable. However using activator will bring some small disadvantages: 1. By default this won't raise any skill, but it can be arranged using OBSE function. 2. Doesn't trigger a crime when hitting friendly NPC (if you care of course). 3. Friendly fire (you can be hit by your "own" spell if not carefull). 4. On my computer projectile from activator doesn't light surrounding enviroment for some reason (but as I named my test power Mind Projectile, it's propably fitting). I can upload my test mod, if there's still interest, but bear in mind it's largely experimental - reasonably tested though.
  10. Yes, flags like "Must Complete", "Continue If PC Near" and "Must Reach Location" are blocking other packages to start if conditions to finish such flagged package aren't met, resulting in seemingly wrong behaviour of NPCs. If you want speed up your travel package a little, you can tick "Skip Fallout Behavior" (NPC will not engage other activities like conversations) or "Defensive Combat" (NPC will not engage in combat until attacked first). Propably the best is to link something for study: https://cs.uesp.net/wiki/Flags_on_Packages
  11. I would suspect something with network, since problem persist through different devices. If you can play your own recordings (music, sounds, video with sounds) on all these devices just fine, I would assume that PC, TV and smartphone is OK. Also many people are listening to music with too high volume, intesifing any imperfection of record and damaging their own hearing in the process. In this case just one linked video is propably not enough example. Perhaps your internet connection is the culprit and not your PC in the end?
×
×
  • Create New...