-
Posts
436 -
Joined
-
Last visited
Everything posted by RichWebster
-
SSE Skip/disable seating animation?
RichWebster replied to RichWebster's topic in Skyrim's Creation Kit and Modders
Or even better, move a furniture position with the player already seated? -
Hey folks. Is there a way to have the seating animation skipped, either via script or keyword or such, for a specific object? I thought MoveTo() would do the trick, based on the notes, but it just moves the player to it, not force them to sit instantly.
-
Afternoon all. I've started putting together a coding standards spec for Papyrus scripts and wanted to hear other people's thoughts. https://github.com/rwebster85/PapyrusCodingStandards/blob/main/spec.md It's not something I want to try and force other people to use. It's just something I've written for my own projects, based on outside experience.
-
SSE GetSkillName() or Equivalent?
RichWebster replied to Wolfpack49's topic in Skyrim's Creation Kit and Modders
Trainers have a faction attached to them that specifies the skill they train, if that's any use. https://wiki.nexusmods.com/index.php/Adding_a_Trainer_NPC_to_Skyrim -
Attach a new script to your Activator and add the following: event OnActivate(ObjectReference akActionRef) UI.InvokeString("MapMenu", "_global.skse.OpenMenu", "MapMenu") endevent I've only ever installed SKSE manually so I can't speak to MO. But you should make sure the SKSE scripts are installed correctly by going to Data/Scripts/Source and seeing if there's a UI.psc file in there.
-
This requires SKSE: UI.InvokeString("MapMenu", "_global.skse.OpenMenu", "MapMenu") Or as a helper function: ;/* * Opens a UI menu by invoking a string. Requires SKSE * Example for asMenuType is "InventoryMenu" * * UI.InvokeString example usage: * {Opens the Map Menu} * UI.InvokeString("MapMenu", "_global.skse.OpenMenu", "MapMenu") */; function OpenMenu(string asMenuType, string asMenuName = "HUD Menu", string asTarget = "_global.skse.OpenMenu") global UI.InvokeString(asMenuName, asTarget, asMenuType) endfunction
-
There's lots of tools and techniques you can use, all depends on what your mod will do. If it's scripting you can use software engineering diagrams like UML, data flow diagrams, class diagrams, entity relationship etc. Simple bullet point lists are good for high level feature lists and details. You can then use those to create user stories, which can then be turned into other diagrams I listed above.
-
Modding Bethesda Games on Game Pass - What we know so far
RichWebster replied to Pickysaurus's topic in Site Updates
In response to post #91957498. #91958333, #91964623, #91969593, #91974693 are all replies on the same post. @OmegaDarkKnight I agree. It would be a mistake to block out the modding scene in future titles. Bethesda knows that, and my hope is MS will know it to. I'm not too worried about these Game Pass versions setting a precedent, since all the games are available elsewhere already. Also worth remembering that a game releasing on Game Pass doesn't mean you can't buy it. I purchased Forza Horizon 4 despite being a Game Pass subscriber because I wanted to own a copy. -
Hunterborn uses that function, as does my hunting mod. I've never seen that behaviour and I don't think HB has either. Is it related to the state being set? We use 4 and haven't had any problems.
-
SSE CK - Find users of objects
RichWebster replied to ChewNTobacca's topic in Skyrim's Creation Kit and Modders
Yea it's not super intuitive for new users :) -
SSE CK - Find users of objects
RichWebster replied to ChewNTobacca's topic in Skyrim's Creation Kit and Modders
Right click on the Actor in the object window and select "Use Info". Not sure if it will detail everything, but covers the things that count towards the "users" number. -
[LE] Weird behavior of disable()/enable()
RichWebster replied to gw5000's topic in Skyrim's Skyrim LE
SetCriticalStage(4) is basically like an actor turning to ash, but without leaving an ash pile. If they're a levelled or respawning actor they'll respawn as usual when the cell resets. -
Ingredients Harvested is one of the stats that doesn't fire an OnTrackedStatsEvent(), so you have to manually check for it. The basis of my script will do that for you, keep a track of the stat number and every time the player has an ingredient added, if the stat is higher than the previous number, you know it was an ingredient harvest :)
-
The way I had to do this in Hunting in Skyrim is to store the IngredientsHarvested stat, track every time the player added a new item, compare it to that stat saved as a global, and then increment my global. Here's my source. You should be able to alter to your needs. Start by setting your global to the stat value, I did this in a quest. ; Set my global count to the Ingredients Harvested stat so we can check against it HISIngredientsHarvestedTotal.SetValueInt(Game.QueryStat("Ingredients Harvested")) Attach this script to a Player Alias Event OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer) if !akSourceContainer && !akItemReference ; Only track any added items for the following scenarios: ; If there was no original source container and no object reference Ranger.IngredientHarvested(akBaseItem) endif endEvent I created a form list of ingredient keywords so I didn't have to check for every single item that wasn't valid. Event IngredientHarvested(Form akBaseItem) Int iList = HISIngList01.GetSize() while iList iList -= 1 Keyword iKeyword = HISIngList01.GetAt(iList) as Keyword if akBaseItem.HasKeyword(iKeyword) Int OldCount = HISIngredientsHarvestedTotal.GetValue() as Int Int NewCount = Game.QueryStat("Ingredients Harvested") if NewCount > OldCount ; For harvesting an ingredient the player earns XP Int XP = 1 if !HISRangerKnownIngredients.HasForm(akBaseItem) HISRangerKnownIngredients.AddForm(akBaseItem) ; If the player has never harvested this ingredient before, give extra XP XP = 3 endif HISIngredientsHarvestedTotal.SetValueInt(NewCount) TrackedStatXP(XP) iList = 0 return endif endif endwhile endEvent
-
I see, I assumed you'd had that part sorted from your function examples. Might need another think.
- 8 replies
-
- underwater
- scripting
-
(and 1 more)
Tagged with:
-
You could use the IsSwimming condition on an ability spell to detect when the player starts swimming. Then in a scripted magic effect you could loop and check for that image space mod, and do something when it's detected.
- 8 replies
-
- underwater
- scripting
-
(and 1 more)
Tagged with:
-
SSE Body Disappear after death Script
RichWebster replied to morismark's topic in Skyrim's Creation Kit and Modders
Does the actor have an enable parent attached? -
SSE Rentroom Script will not load
RichWebster replied to AureliusofKvatch's topic in Skyrim's Creation Kit and Modders
We all have to learn them the hard way. Glad your clean slate is working now though :)