Jump to content

FatherSithis

Members
  • Posts

    9
  • Joined

  • Last visited

Posts posted by FatherSithis

  1. It's going to be a little tricky, since as far as I'm aware there are no videos used in game anywhere in Fallout 4.

     

    Remind me, was the annual sacrificial lamb Overseer vault in NV or 4? If it was 4, we do have a precedent with its projector video. If it was NV, we are still SOL.

  2. Something like this would be a welcome improvement. I have a stupid bug where cages (and even a few crops) will never actually get repaired, no matter how many times I pump the replacement parts into them. Repairing the cages is annoying, but deleting them with the console and then reloading the save to clear the flag that says I used the console is even worse.

  3. i followed all the steps but the game would not play the music. Any help please?

    I honestly do not understand how anyone can get it to work. Everything sound related just flat out does not seem to work. I just want Big Iron to play on repeat in a cell. Emitters did not work after following 5 different guides and setting up a custom music type for the cell did nothing. So I turned to Radio. You would think that it would be easy to strip down an existing station to just have one song, but that is sadly not the case. It is a total joke that after 5 hours of effort, I cannot get a song that is already built into the game to play in a cell.

  4. I did not change the first person static. My changes to the nif applied after making a new first person static and pointing it to the weapon. I think I ended up trying to triple it in so many places when it was not doing anything that they all applied together. The result is kind of funny. I will probably just extract the base 9 iron nif again, apply the scale in just one place, and give it the same name as this one. I am not hyper worried about the collision being perfect. I tripled the reach in the weapon stats, so it will do damage at the right distance at least. Thanks for the help.

     

    Here is what base*3*n= too big looks like:

     

    kwByAM6.jpg

  5. I am trying to make a unique 9 iron that is triple the normal size. I extracted the base nif from the bsa, scaled up the mesh in nifskope, and attached the new nif to the weapon. When I found the weapon in game, it was the size of a ordinary 9 iron.

     

    Any ideas?

  6. Thank you for contributing Matthiaswagg and Ishara. The final solution that you agreed upon worked perfectly. I did not know that I could do elaborate multi-lined scripts within the fragments section (I was under the impression that it was designed to work with a small set of one liners, such as GetOwningQuest().SetStage(#)). This key bit of information should hopefully making me more capable of fending for myself, but we will see where my ambitions take me.

     

    Presently, everything I have requested is solved. I have quoted the working solution in the base post and updated the status of the request to completed. When I get stuck again, I will add more requests to the base post.

  7. After spending the entire day reading and watching various tutorials and wikis on Skyrim Papyrus scripting, it became clear that there is no way I can possibly do everything that I want to do on my own. I am not a programmer and do not have 10,000 hours to spare to master such a skill. In many cases, I can get by with recycling scripts already in the Creation Kit or duplicate and tweak them a bit with what I have learned today. In other cases, I can do the same with scripts people shared to the world that I find on Google. These sources will not cover everything, so for everything else I will turn to this thread. With that said, for every script I request, I have already put several hours into finding something to suit my needs before making the request.

     

    For what its worth, I will give credit to contributors. My first major mod is going to be a thank you gift for a coworker who shared his Steam Library with my account, which will contain a couple of statics that will prevent me from making this particular mod public (If any artists out there want to help out with that to let the mod go public, I would gladly appreciate that as well).

     

    To keep the thread as clean as possible, when a requested script is given and works properly in the mod, I will edit this base thread post with the solution quoted inside a spoiler and attach "---COMPLETED" to the header of the individual script request. Below is an example where Request 1 is still pending a solution (and still needs attention) and Request 2 is completed (no longer needing further action):

     

     


     

    Request 1

    Request:

    Description of the request goes in here

    Request 2 ---COMPLETED

    Request:

    Description of the request goes in here

    Solution:

    Solution goes here

     

     

     

    I would like to thank everyone who decides to help in advance. The quality of my mods will significantly diminish without your aid.

     

    Forcing the player's health to go down to 1---COMPLETED

    Request:

    In the quest that introduces the user to the mod, there is an NPC that will nearly kill you if he does not like what you tell him (in almost like a Shout type of fashion). When the player makes a response that should trigger this near lethal burst of damage, the quest involved will be changing from stage 0 to stage 1 (the player is essentially refusing the quest at first if they go this route, and will eventually be sheparded towards the quest accepted stage of 10).

     

    There are a couple of conceptual approaches that I came up with, it is more so a matter of not being fluent enough to translate the ideas into a functional script. I can probably hammer out a standalone function, but I am lost as to what it is smart enough to get on its own vs requiring a property and what event to use (would be helpful if they simply had a "OnStageSet()" or something that looked along those lines). These concepts I came up with are heavily based on Console Commands, which I hope work in scripts. I am not attached to either of these approaches, so if there is a better way or I was wrong about Console Commands working in scripts, I am open to other approaches.

     

    Approach 1: Ugly, messy, and last resort approach

    Approach 1 involves a nasty combination of turning on and off the player being essential and damage/restoring actor values. The idea was to get a series of console commands to work together to kill the player without making them lose the game and get better real quickly. The sequence of commands I had worked out looked like:


     

    SetEssential 00000007 1 {Makes the Player Essential, confirmed to work in Console}

    Player.DamageAV,health 1000000 {more than enough to kill a player of any level who did not cheat, will kill player in absence of being Essential}

    Utility.Wait(5.0) {Give the Essential functionality time to regenerate Player health}

    Player.RestoreAV,health 1000000 {In playing with manual input of Console Commands, I noticed that I did not always regenerate while Essential, and turning off Essential would instantly kill me}

    Player.RestoreAV,health 1000000 {The restore fails sometimes, doing it twice helps lower probability of accidental death}

    SetEssential 00000007 0 {Sets the Player back to their natural mortal status}

    There are several things hat I do not like about this approach. First it is overcomplicated and makes you want to say "there has to be a better way". Second, it is prone to error that will cause the Player to die. Third, I don't want to have the user heal up for free, I would just tolerate it if there was no other way.

     

    Approach 2: Clever (by my scripting standards) use of variables

    Approach 2 will take the user's present health, subtract it by 1, and damages player health based on the result. This was my first idea, but I could not get it to work manually in the Console (which was a bigger deterrent before I spent the day reading about scripting and variables). The components I came up with included:


     

    float x = Player.GetAV,health {Chose float over int because I have seen that Console Command produce a number with a decimal}

    float y = x - 1 {Probably could just have x strait up be the health - 1, but I decided not to risk it}

    player.DamageAV,health y {damages player health by all but 1 hitpoint, which is my goal}

    I like this approach a lot better. It feels cleaner and more straightforward than Approach 1. I feel like I am on the right track with this one.

     

     

    To summarize, I need to bring the player's health down to 1 out of their present max (player.setav,health 1 will not work here because it will mess up the denominator, making the player 1/1) when the topic that sets the stage of a quest to 1 ends (the topic is a forced goodbye, so it could also be at end of the dialogue while in stage 1 if that is easier). I listed a few ideas on how to generally do this, feel free to use or ignore them as you see fit. Thank you for your time.

     

    Solution:

     

     

     

    Thank you Matthiaswagg and Ishara

     

     

    Go to the dialogue you wish the "shout" to be at. Where it says Papyrus fragments, go to the one that says 'End'. Type in the following:

    GetOwningQuest().SetStage(1)

    This will set the quests stage to 1. Put in a different number to set a different stage.

    Now go to stage 1, and create a new log entry. Either input something it should say of the player in their journal, or leave it blank. Look to the right, where there is another Papyrus fragment box. Put in this:

    Float x = Game.GetPlayer().GetAV("Health")
    Float y = x - 1.0
    Game.GetPlayer().DamageAV("Health",y)

    Hit the compile button. That's really all you need.

    By the way, you no longer use Player in skyrim. You have to do:

    Game.GetPlayer()
    Or
    Import Game
    GetPlayer


    This version of it should work now, since it uses Ishara's version of the script.

     

     

     

     

×
×
  • Create New...