Jump to content

Modding Tips Loadscreens


d4em

Recommended Posts

Loadscreen texts with modding tidbits

I'd use it

Probably needs to be a community effort

Maybe with different modules geared towards different kinds of users

---

I'll update this post with new tips as they come along

The mod should come with a guide containing all tips, credit where it's due, and elaboration where necessary

If I have a source, I'll post it in [brackets containing the name of the author] in front of the tip

Tips that need elaboration in the guide will be marked with a ☆ star

Tips that need to be tested / are not yet entirely understood will be marked with a ♘ horse

 

General

[Qrsr] Most of what worked for previous Bethesda games, still works for Fallout 4. If you are stuck, browsing the wikis of other games might get you through a roadblock.

 

Mod management

You can use instances in MO2 to have two completely independent mod installations for the same game

Use the notes column in MO2 to store important information, like compatibility or uninstall instructions

For speed, consider making an MO2 profile that only loads the mods you are currently working on and their dependencies

 

Ini tweaks

☆ [Qrsr] The ini setting sStartingConsoleCommand lets you run console commands when the game launches. You can use this to skip the main menu and load directly into an area you are testing.

You can turn quest markers off in the fallout4prefs.ini, under gameplay do bShowFloatingQuestMarkers=0 and bShowQuestMarkers=0

Set bUseCombinedObject = 0 in your fallout4.ini under general to disable previs.

Enable papyrus logging by setting bEnableLogging=1, bEnableTrace=1, and bLoadDebugInformation=1 in the fallout4.ini. Logs are dumped in documents\mygames\fallout4\logs\script

 

Console

☆ [SKK] To trigger base game attacks at settlements that have settlers, console: [ cqf WorkshopParent "WorkshopParentScript.TriggerAttack" WorkshopRef NumberOfAttackers ] e.g.  [cqf WorkshopParent "WorkshopParentScript.TriggerAttack" 000250fe 4 ]

[NeinGaming] if you get stuck in a workbench screen (because you messed up a recipe maybe), a quick way to fix that is to type player.moveto player in the console

[NeinGaming] to force an NPC out of their power armor, you can click them with an open console and type CallFunction "Actor.SwitchToPowerArmor" None

♘ [SKK] The [p] [pp] or [ep] suffix in the console means that an actor is persistent

♘ [PJM] console: tpc toggles previs on/off and gives a message if previs is disabled for the current cell (note: this didnt seem to work for me when I tried it a while ago?)

♘ [PJM] console: tb shows yellow cell borders when previs is disabled or while flying (flying with tcl?)

 

Creation Kit

To place an armed mine, select one from the projectile category

[RolazLagunza] Remember to get Creation Kit Platform Extended

In the miscellaneous > textureset category are a lot of decals you can place to give environments more character

 

AI and Navmesh

[SKK] When actors attempt to travel to a settlement, they often try to find the LocationCenterMarker for that settlement. Building over this marker can cause AI packages to freeze or teleport.

[SKK] If an actor spawns outside the loaded area around the player (defined by uGridsToLoad), their AI can teleport them to the edge of the loaded area around the player.

 

Scripting

Casting an objectreference to an actor sets some actorvalues to none. To use functions like .IsDead(), store the actor as a quest reference and cast that to an actor.

[RolazLaguna] You can use Champollion PEX to decompile scripts. Never use the decompiled script.

 

Previs

Previs is a system that precombines objects that do not move into a single group that is rendered as one. Turning it off will lower FPS.

[PJM] Using PJM's scripts to generate previs streamlines the process and allows you to patch previs for your load order.

[PJM] PJM wrote a detailed article on previs. You can find the link in the guide.

[PJM] You should take extra care when renaming mods that have previs data. The name of the plugin is stored internally in the previs files.

[PJM] Previs data is not stored in your save game. You can turn previs on/off without breaking your save.

[PJM] If your mod deletes or moves static objects, and the changes do not appear ingame, this might be due to a previs problem.

[PJM] Invisible or flickering objects, walls, or landscape are often caused by faulty previs.

[PJM] Large thin walls that appear at certain angles can be caused by previs being built from an incompatible mesh.

 

Performance

Be sure to release your persistent actors. Clear linked references, script variables, and quest aliases once you no longer need them.

[SKK] More than 300 live actors in the loaded area will prevent your save game from loading at all. Check out SKK object counter for information on save game bloat and performance.

♘ [SKK] All placed objects (including actors) in ESP format mods are forced persistent (ESM format does not).

 

Nifskope

[El Ha] To make a havok-enabled object static, or vice versa, try grabbing a vanilla mesh that has the collision settings you want, find bhkCollisionObject > bhkPhysicsSystem > copy binary data and pasting that into the physics system of your own mesh

Edited by d4em
  • Like 1
Link to comment
Share on other sites

I think that's a fantastic idea. My first thought was that it might suck to only be able to halfway read something, but on the whole, since we also learn by spaced repetition, I think just being exposed to more concepts while playing can't hurt, and can spark ideas etc. Like, even a tip about something you already have known for ages can give you an idea if you read it while pondering how to do something. So I actually think the more, the merrier.

Link to comment
Share on other sites

from Move Workshop Markers by SKK

When actors attempt to travel to a settlement, they often try to find the LocationCenterMarker for that settlement. Building over this marker can cause AI packages to freeze or teleport.

If an actor spawns outside the loaded area around the player (defined by uGridsToLoad), their AI can teleport them to the edge of the loaded area around the player.

To trigger base game attacks at settlements that have settlers, console: [ cqf WorkshopParent "WorkshopParentScript.TriggerAttack" WorkshopRef NumberOfAttackers ] e.g.  [cqf WorkshopParent "WorkshopParentScript.TriggerAttack" 000250fe 4 ]

---

I'm just going to update this thread until there's enough to make a mod

Anyone else feel free to post any tips. Think: ini tweaks, (obscure) console commands, weird obscure bugs, any other tidbit related to modding

Also if anyone is interested in helping with testing / proofreading

 

Link to comment
Share on other sites

Yeah I'll help proofread and testing when there is need for it, sure.

Not a modding tip per se, but if you get stuck in a workbench screen (because you messed up a recipe maybe), a quick way to fix that is to type player.moveto player in the console

Same as above: to force an NPC out of their power armor, you can click them with an open console and type CallFunction "Actor.SwitchToPowerArmor" None

edit: nevermind about "RegisterForSingleUpdateGameTime" that's a Skyrim only thing I just realized oops

Edited by NeinGaming
Link to comment
Share on other sites

ok so something like

Invisible or flickering objects, walls, or landscape are often caused by faulty previs.

Most people who are already modding know this but new users might not

Should it go in? Should it be in it's own module? Does there need to be a skill level rating? How big is the group of new users for a 10 yo game?

Link to comment
Share on other sites

You probably saw this deep dive article already?

https://www.nexusmods.com/fallout4/articles/4316

IMO it's worth trying to come up with something that is at least "not wrong" and can help with common problems, and if the first versions of that are flawed in some way, hopefully someone knowledgeable will speak up. But I don't even know how to formulate a first, wrong draft...

For me, flickering usually occurs because something that places or changes anything in a cell coming after PRP in my load order. 9 times out of 10 I just put a override for the cell into a "__PRP_final.esp" type plugin that comes after anything touching cells, worlspaces etc., and mush the PRP previs together with the changes from mods. if I want to use the previs data from the mod and not PRP, I copy it's previs data into that final patch and give it a timestamp that is later than any others. But there's cases where that's not enough (particularly mods that come with previs files, i.e. that are more than just plugins) and I need to fiddle some more, until it works, but I have no real clue what I'm doing. I'm just arriving at the fix by attempting everything that doesn't help or makes it worse first.  And when it finally works, I'm just so glad I put it out of my mind immediately and go blast some radroaches, and learn nothing 😄

Mod authors who get buggered a lot about this stuff probably have a sort of top causes of errors, or common user mistakes?

Link to comment
Share on other sites

Yeah, that's the last article I did. You should check out those scripts, they make patching super easy. Just select the mod that has the cells you want to patch for and load all mods that affect those cells into xedit. Script basically does the rest. Select only the esp with the cells you want and choose improve FPS in selected cells when you generate the patch. It's amazing, you could probably make one previs esl for your entire LO but I haven't tried this yet

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...