Jump to content

Akreontage

Members
  • Posts

    82
  • Joined

  • Last visited

Posts posted by Akreontage

  1. ;-- Properties --------------------------------------

    bool b

     

    Event OnInit()

    b = true

    EndEvent

     

    ............................

    Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, Bool abPowerAttack, Bool abSneakAttack, Bool abBashAttack, Bool abHitBlocked)

    PercentHealth = self.GetTargetActor().GetAVPercentage("Health")
    if (PercentHealth < 0.200000 && b)
    Debug.SendAnimationEvent (Caster as ObjectReference, "Shout Start")
    voicecallsofia.Cast(self.GetTargetActor() as ObjectReference, none)
    b = false
    endIf
    EndEvent
    Use something like that and change boolean b to true again for example when health reaches 100%.
  2.  

    Have also a look at this mod: "Equipping Overhaul" by DragonDude1029

    http://www.nexusmods.com/skyrim/mods/49784/?

     

    Keep in mind the mod author is using SKSE script extender and wrote about some issues.

     

    Yeah, this mod is exactly what I am trying to do (except realistic unequipping/lid torches features).

     

    And yeah I figured out how to create Aliases using new quest, thanks.

     

    I was looking DragonDude's source files and I have one more question now... How does one can additem to player?

    In his source code all he does is he adds property "Armor property Shoes auto" and then adds Shoes to player like this: "GetActorRef().AddItem(Shoes, 1, true)"

     

    I tried to do the same:

    Armor property Shoes auto

    Game.GetPlayer().AddItem(Shoes, 1, true)

     

    I don't get any errors when compiling but I don't get Shoes in game either. What's the trick?

  3. Regardless how useless your script would be, the point is the error message you got. "a property cannot be used directly on a type, it must be used on a variable"

     

    Why, the reason behind that?

    Scriptname _newscript2 extends ObjectReference  
    Form f1
    
    Event OnEquipped(Actor AkActor)
    ; ...
        Game.GetPlayer().UnequipItem(_newscript1.f1Prop)    ; script  "_newscript1" is unknown it needs an anchor like quest, objectReference, ..
    ; ...
    EndEvent

    I have rewritten both script to show you, how does it work without papyrus error! Keep in mind, I still have no idea what you want to do, inside!

     

    script 2

     

    Scriptname _newscript2 extends ObjectReference  
    {rewritten by ReDragon 2016}
    
      ObjectReference PROPERTY weapon1 auto        ; fill with weapon which has attached the script "_newscript1"
    
    ; -- EVENT --
    
    EVENT OnEquipped(Actor akActor)
    IF (akActor == Game.GetPlayer())
    ELSE
        RETURN    ; - STOP -    not the player, do nothing
    ENDIF
    ;---------------------
        _newScript1 ps = weapon1 as _newscript1
    
    IF ( ps )
        ; If true, will return the weapon equipped in the actors left hand.
        ; If false, will return the right-hand weapon instead.
        form fm = akActor.GetEquippedWeapon(False) as Form        ; right hand weapon (False)
    
        akActor.UnequipItem(fm)
        akActor.UnequipItem(ps.fm1)
        akActor.EquipItem(ps.fm1)
        akActor.EquipItem(fm)
    ENDIF
    ENDEVENT

     

     

    script 1

     

    Scriptname _newscript1 extends ObjectReference  
    {rewritten by ReDragon 2016}
    
      Form PROPERTY fm1 auto Hidden                        ; do not fill this property by CK
    
    ; -- EVENTs -- 2
    
    EVENT OnInit()
        Utility.SetINIBool("bDisableGearedUp:General", False)    ; not good !?
    ENDEVENT
    
    EVENT OnEquipped(Actor akActor)
    IF (akActor == Game.GetPlayer())
    ELSE
        RETURN    ; - STOP -    not the player, do nothing
    ENDIF
    ;---------------------
        fm1 = akActor.GetEquippedWeapon(False) as Form    ; fill property on top
        akActor.UnequipItem(fm1)
        akActor.EquipItem(fm1)
    ENDEVENT

     

     

     

    Maybe it helps to understand papyrus scripting even more.

     

    Thanks a lot!!! And kudos for answering the actual question! I love people who can answer questions even if they (questions) are really stupid like mine.

    I just tried it and now I know how to access one script from the other script! That was really helpful!

     

    .....................................

     

    Since my idea of implementing proper geared up function failed I would like to hear your ideas on how to create something like that. I will work with any good idea I get.

    Thanks!

  4. To catch any weapon and work with any weapon that the player equips, you'll want to set up a quest and put the player on a reference alias. The script would be attached to said player alias. You'd use the OnObjectEquipped and OnObjectUnequipped events. Also by using a single script, you can use an array to store the current weapon from each of the weapon types that you want to display at the same time without trying to get individual scripts attached to individual weapons to communicate with each other.

     

    Equipping is also different from sheathing. A weapon can be sheathed and still equipped. If you really need to track the draw/sheathe moments, you can use OnActorAction from SKSE.

    Thanks, that was very helpful!

     

    Since there is no SKSE for Skyrim Special Edition I wonder if there is a way to disable Equipping/unequipping sounds and notifications when using EquipItem() and UnequipItem() functions? Or should I forget about it for now?

     

    So after all those hours it seems to me that it is impossible to do without "Sheathe weapon" function/SKSE. : /

  5. Hey all!

     

    I am trying to do my very first mod for Skyrim, but since I am not a good programmer nor a good modder I have a problem with Papyrus.

    So I am trying to create a mod for Skyrim Special Edition which will allow to see favorited gear on player (bDisableGearedUp; I do it because I can't stand seeing weapons appear from thin air, and also who else if not me...).

    Right now I am at the very early stage of development and I am trying to make my idea work with only 2 weapons: Iron Sword and Long Bow.

     

    Here is my script attached to Iron Sword:

    Scriptname _newscript1 extends ObjectReference  
    
    Form f1
    
    Form property f1Prop
    	Form function get()
    		return f1
    	endFunction
    	function set(Form f2)
    		f1 = f2
    	endFunction
    endProperty
    
    Event OnInit()
    	Utility.SetINIBool("bDisableGearedUp:General", False)
    EndEvent
    
    Event OnEquipped(Actor AkActor)
    	f1 = Game.GetPlayer().GetEquippedWeapon(false)
    	Game.GetPlayer().UnequipItem(Game.GetPlayer().GetEquippedWeapon(false))
    	Game.GetPlayer().EquipItem(f1)
    EndEvent
    

    And here is the script attached to my Long Bow

    Scriptname _newscript2 extends ObjectReference  
    
    Form f1
    
    Event OnEquipped(Actor AkActor)
    	f1 = Game.GetPlayer().GetEquippedWeapon(false)
    	Game.GetPlayer().UnequipItem(Game.GetPlayer().GetEquippedWeapon(false))
    	Game.GetPlayer().UnequipItem(_newscript1.f1Prop)
            Game.GetPlayer().EquipItem(_newscript1.f1Prop)
    	Game.GetPlayer().EquipItem(f1)
    EndEvent
    

    So the error I get looks like this : a property cannot be used directly on a type, it must be used on a variable

    No output generated for _newscript2, compilation failed.
    Which is obvious because I am trying to use property (_newscript1.f1Prop) from _newscript1.
    The question is: how can I get Form property from external script (from _newscript2 in my case)?
    And the other question is where should I create my script to make sure it is executed every time ANY weapon is sheathed and not only Iron Sword/Long bow.
    Thanks for your time!
  6. Since you resurrected this topic in 2016 I have to tell you that the issue with actors is related to their faces. The problem is face animations. When there are 5-6+ npcs at once on the screen fps is being cut by half. With my config I can drop to 40~ fps when in the Imperial City. That's a HUUUUUGE fps drop. If you set bUseFaceGenHeads=0 in Oblivion.ini you will turn the heads off and will see DRAMMATIC fps increase in rush hours. Although it's not fun to play without heads it is actually pretty playable with face animations turned off but fps will always be 60+. To do so download BSA Unpacker. Launch it. Press Open. Choose Oblivion\Data\Oblivion - Meshes.bsa. Press Extract All to some folder. Wait until it will finish extraction (1.3~Gb). Go to Oblivion\Data\ and delete Oblivion - Meshes.bsa. Now copy paste those files you extracted into Oblivion\Data folder (this step might break your installed mods, so better start doing this with vanilla Oblivion). Open Oblivion\Data\Meshes\Characters folder. Press ctrl+f and type %.tri. Delete all files with .tri extension you will find. Launch Oblivion and see magical fps improvement near actors. They won't show any expressions nor open their mouths, but that's what we did... Deleted face animations. After that you can install much better looking faces (Oblivion Character Overhaul v 2). Just remember that mod has it's own .tri files so you need to remove them. Just find %.tri files after mod installation and delete them. I myself am going to play oblivion this way right now because I haven't played it for ages. Those face expressions weren't good after all. : )

  7. As I already told you you will notice small fps drop in Skyrim. It is really small but it's there.

    Also you won't notice any difference when DirectX 12 will be released since Skyrim is game which uses DirectX 9. Until Bethesda will release DirectX 12 support which 100% won't happen.

  8. But... Back to the original query, I would also like to know if anyone has experienced any issues in upgrading to Windows 10.

    If you will have Skyrim installed on separate drive and install Windows 10 there won't be any problems with mods. But be sure to backup your load order list. For example yesterday I tested WIndows 10. Installed it on my SSD drive. Skyrim is located on HDD. After validating game cash in steam only load order was messed. Everything else was fine.

     

    Although there is other unpleasant thing about Windows 10... Fps is lower than you can get in Windows 7. I myself gonna use Windows 7 until real DirectX 12 games will appear.

  9. There are few problems with crossbows.

     

    Most obvious of them:

     

    1. All equipped gear displacement when equipping crossbow. Switching between other weapons doesn't change gear location, and doesn't cause clipping (two handed weapons pierce back, etc).

    2. There are some problems when switching between bows/crossbows. Wrong model is drawn, etc.

    3. Bolts are stuck in hand.

     

    For sake of demonstration I equipped all possible slots.

    Here is video:

    https://www.youtube.com/watch?v=fQnOk0KPYjo

     

    Installed mods:

    Unofficial skyrim patches

    SKSE

    SkyUI

    Equipping Overhaul

     

    There are also other bugs when riding the horse but I didn't record it right now. As I told earlier this mod works flawlessly when not riding horse/not using xbow.

  10. The title says it all... I am willing to replay Skyrim with geared up feature, but all mods I know have many problems. The best one of them all is Equipping Overhaul for me. But the problems occur when on horse or when using crossbows. Is there better mod available?

  11. Ok, I got it. As far as I can see from your signature you play on 4k monitor.

    4k is 8847360 pixels to calculate at once vs 1080p's 2073600 pixels. It seems like you just lack horse powers to play @ 4k. Test Skyrim @ 1080p and tell us about the results.

     

    P.S. And if you really do play @ 4k this is 100% the case. 4k is unreachable goal for current gpus.

  12. You get ridiculously low fps. That is not normal. For example I get 80-120+ fps in Whiterun with single gtx 680 @ ultra settings.

    Do you have sufficient PSU?

    Try to turn virtual cores off on your CPU. I don't know how the technology is called in AMD cpus, but as far as I know only 4 cores on your processor are physical.

  13. What you experience is v-sync input lag most likely. Nothing can really be done here because Skyrim requires v-sync to be on to prevent physics/animations bugs. Just to verify this is your problem, try to force vsync off through your gpu driver.

  14. I guess my real question is you haven't had any quests bugs either? Thanks!

    Not a single bug occurred since I started to use this guide.

    P.S. I also use some bux fixes, here is my load order. I recommend them to you also.

    GameMode=Skyrim
    
    Skyrim.esm=1
    Update.esm=1
    Unofficial Skyrim Patch.esp=1
    Dawnguard.esm=1
    Unofficial Dawnguard Patch.esp=1
    HearthFires.esm=1
    Unofficial Hearthfire Patch.esp=1
    Dragonborn.esm=1
    Unofficial Dragonborn Patch.esp=1
    HighResTexturePack01.esp=1
    HighResTexturePack02.esp=1
    HighResTexturePack03.esp=1
    Unofficial High Resolution Patch.esp=1
    SkyUI.esp=1
    FloraRespawnFix.esp=1
    Bring Out Your Dead.esp=1
    Invisibility Eyes Fix.esp=1
    Vampire Lord Serana Fixed.esp=1
    HearthFire Display Case Fix.esp=1
    DG and DB Axe Perks merged.esp=1
    Gildergreen Regrown.esp=1
    Run For Your Lives.esp=1
    When Vampires Attack.esp=1
    ShootingStars.esp=1
    Rainbows.esp=1
    MoreRainHeavyandDarker.esp=1
    SplashofRain.esp=1
    mintylightningmod.esp=1
    EnchantedArsenal.esp=1
    dovahkiinrelax.esp=1
    dD - Enhanced Blood Main.esp=1
    dD-Dragonborn-Dawnguard-EBT Patch.esp=1
    Footprints.esp=1
    Footprints - Ash.esp=1
    WetandCold.esp=1
    WetandCold - Ashes.esp=1
    

    Also Better Dialogue Controls, Better MessageBox Controls, Enchantment Reload Fix.

  15. 1. Install skse: http://skse.silverlock.org/

    2. Install latest ENB: http://enbdev.com/download_mod_tesskyrim.htm

    3. Follow this guide, and download tweaks file from downloads: http://www.nexusmods.com/skyrim/mods/50244/?

    4. Use desired uGridsToLoad WITHOUT CHANGING ANY OTHER SETTINGS (DON'T CHANGE CELL BUFFER etc.)

    5. Profit.

     

    I use uGridsToLoad=7 on gtx 680. No single crash. Ever. Totally worth it.

    I can't tell you anything about ugrids 9 (guess it'll still be stable), but if you'll play using ugrids 7 while following instructions I can guarantee you crash/freeze-free gameplay.

×
×
  • Create New...