Jump to content


  • Content Count

  • Joined

  • Last visited

About mrsrt

  • Rank

Recent Profile Visitors

902 profile views
  1. The correct folder for skse plugins (DLL's) is Data\SKSE\Plugins. I don't know about MO2 much as I'm installing everything myself by hand. It's better to ask in some MO2 specific topic
  2. Привет! It looks like CrashFixes but made for NV. It doesn't rly fits Skyrim because: 1) Exception addresses from NV highly likely will be different in Skyrim. 2) We have CrashFixes already with handling of most known Skyrim specific crashes. However, some addresses may correspond and some generic fixes could help as well (if they're exist). I cannot tell you more coz there's no src provided. In other words 95% of the plugin will not work for Skyrim, however 5% could be effective, but most likely there's no 5% and the plugin is redundant. I'll test it on my setup. This thing already is very interesting. Most of ini options are loading while game launch and will be stored in process memory until you close the game without any additional dll's. But, according to author's research all params are going to be read from file for each installed esp, so it could be really slow with enough mods installed on slow file system. The plugin doesn't rly fix the issue but at least caching these params to be read from ram. Is a good optimization, but not for everybody, for example, I have NVME disk for Skyrim and have no issues with loadings, however it could help extremely well for those who has HDD or slow file handling. Thank you for mentioning the plugin, I'll include it in my guide with the next update. It's CPU affinity. This is quite long and complex topic to speak, I'll try to be short. Most of modern CPU's have technologies to handle two threads on one physical core (Intel Hyper Threading and AMD SMT). It works pretty well with multi-threaded applications and OS overall, but has its drawbacks: your single-core performance will be less. Skyrim is not a real multi-threaded application and its fps mostly depends on single-core performance. This way if you disable Intel HT or AMD SMT you get FPS boost in Skyrim but less system performance (note: FPS boost is possible only if CPU was the bottleneck in giving you FPS for your setup). To avoid disabling the technology completely you can do this only for one process on OS level with CPU affinity. Disabling every second (virtual) core like shown in the screenshot will do the trick. So, you'll get performance boost only if: 1) You have a CPU that supports Intel HT or AMD SMT and is enabled. 2) Your GPU renders a frame faster than CPU processes the frame. Otherwise, CPU will process faster and wait longer for GPU. 3) Your framerate is not stable/static. Yes, it also can go up to 4Gb. However, if there's no more space ENB will create another process. I recommend to start a new game, but the game should adapt to changes after save cleanup. Personally, I was switching these modes without new game creation and saw no difference, but I remember Genio said some problems can occur. You setup your limit yourself with SKSE.ini, it's the DefaultHeapInitialAllocMB option, but the real value is: DefaultHeapInitialAllocMB - 256. I recommend to set 1280, so the maximum block size will be 1024. 1280 is the max value you can set for DefaultHeapInitialAllocMB. Comment from SKSE devs: Personally I have never seen consumption for my skyrim more than 600mb. However, it's possible to patch up this value to allow set more if needed. Compatibility options change environment for a working program. If developers created their application in an environment that is completely different with yours then yes, it could give you some problems, but I didn't hear about any such problem for skyrim. This option mostly affects window handling and it could make some difference to game window and game loading, but overall there shouldn't be much changes. Good luck with stability!
  3. ExpandSystemMemoryX64 option is really helpful with fps and stutterings, I personally noticed it, however it has a serious flaw: you cannot use memory heap bigger than 512mb (DefaultHeapInitialAllocMB=768), if you set more your game simply crashes on load. I still recommend you to complete the memory part of my guide (SSME way), set DefaultHeapInitialAllocMB to 1280, disable ExpandSystemMemoryX64 and enable ReduceSystemMemoryUsage. Otherwise, if you'll install really a lot of mods, eventually, you'll bump to the heap limit. Also, I wasn't able to make my game stable with SMP. It has some internal problem or incompatibility that I didn't research. It also can bring you additional crashes, just for your notice.
  4. Please, provide your crashdump as file, this analysis in the first post almost useless in understanding the problem. Also would be good to see SKSE.ini configuration and the crashfix log. This is what I can say at the first sight: 1) HdtInvisibilityFix was reported to me as unstable thing that cause the game to crash, especially when loading or creating a new game. 2) HdtSkyrimMemoryPatch looks redundant. As I know, everything you need for stable HDT is correct physics preset and, in some cases, HDT Crash Fix by Hawk (for some reason he decided to delete his account on LL, that's sad). Default allocation provided by the game engine works pretty well. You'll never run through any out of memory errors if your memory pool is big enough because the game engine loads and unloads data dynamically. With SKSE you can set the pool up to 1280mb what's 2x more than enough for a typical skyrim. I'm playing the game with the default allocator flawless for several years. My current crash rate about 1 per 40 hours and usually caused by alt+tabs. Furthermore, it's safer than os allocators, for example, if some mem pointer goes out of limits it will access the nearest allocated data, in case of os allocators it will lead to access violation and game crash, becasue all data was allocated personally and must not go out of bounds. In case of default allocator all data is stored inside one big memory block with shared access, if the pointer will go out of bounds it will be able to access incorrect data but will not crash your game. It may lead to a bug or may not, but at least highly likely you'll avoid that crash. And access violation is the most frequent reason of skyrim crashes (like 99%).
  5. According to the description, it looks like he adds thread.sleep() inside the infinite loop, while CPU waits for GPU to render a frame. Well, it definitely will reduce CPU usage in that case, but may increase input lag coz frame can be done while sleeping. This way developers prevent 100% CPU core utilization with infinite loops in server developing for example, such as loop of a socket selector. But.. 1) I don't think it is viable for games, especially for render thread which needs to be work as fast as possible with the smallest delay. 2) It will be completely useless if GPU works faster than CPU in processing game ticks. So, this plugin is more useless than harmful (unless there're some critical bugs inside). However, if you have some problems with CPU cooling or power consumption you could be interested in this. I'll test it for a while when I have time.
  6. Yes, that's probably possible, but in my case I don't close IDE instances before game launch as I have 32gb ram, so they shouldn't be affected this way. Furthermore, Intellij Idea keeps everything inside existing processes. When I tried the first version of this plugin released in May it was ruining not only IDE instances but also browser and file explorer as well. It looked like he writes memory somewhere by static pointer and something like that was written in the description.
  7. Thank you for the analysis, it saved me some time that I don't have completely now. Not sure about older Win versions, but Win 10 handles process priorites pretty well. You can set priority up to High for your important processes. But efficiency of the action is doubtful, to see noticable impact all cores of your CPU should be busy, only in that case priorities will be used by the thread broker. As of system stability, your process will compete for resources with system processes only if it was set in Realtime priority and never above them. A popular game now CoD: Modern Warfare also automatically sets its process priority to high. But what I don't understand in this process-priority meta is why game process sets priority itself if it should be decided by user and nobody else? If user needs priority for it he can just start the game process with required priority and affinity with a bat file. There's no point to do that with dll or anything else. What really makes the plugin dangerous is that it affects RAM outside of process memory. Every time I launch the game with that plugin it ruins my IDE and browser instances. Firstly I thought it was fixed in the new version as browser behave well but then my IDE stuck while commit merging... Players should be notified about the threat the plugin brings.
  8. First of, this is a new version of a dangerous plugin that was released in May. I left a detailed report after pesronal test that can be read above. I also have tested the newest version but not for long and not widely. It seems to be safe to use now, but as of ~5 hours of test I encountered an additional gamesave loading CTD with code 0xF53759. Error said a function got incorrect argument, what can happen only by incorrect calls with dll. Removing dlls solved the problem. I didn't notice any difference while playing neither with FPS, nor stability, nor loading speed as ppl say in comments. Completely no changes. My game was built leading the guide and I have no CTD or stability issues. It's possible that it helps to those who doesn't use memory patches as it pretends to replace crashfix plugin by meh321. For those who has already a properly built Skyrim, it seems, brings nothing. In this case I prefer to use the widely tested crashfix plugin. UPD: Seems te be still unsafe. My software started to behave weird after launching Skyrim with that plugin. Not sure if it's really caused by the plugin, but pretty similar to what I saw in the previous version. Please, inform me if your PC goes wild after installing that plugin, need at least one more confirmation as I cannot properly test it now due to work.
  9. It completely depends on your game setup and save file. Vanilla Skyrim 32 bit usually consumes not more than 2 Gb, however, my Skyrim with a lot of mods and 4k textures may eat up to 7Gb for a short time while grid loadings (main process + enbhost). First what I would recommend to do is to make a proper memory management, this guide will help you https://www.loverslab.com/blogs/entry/10715-2020-skyrim-le-stability-guide Second, check how much memory your game rly consumes. You can do that with Performance Monitor, linked in the post above by Hawk, or simply with task manager. If the consuming amount will be near the space you had free before launch then you definitely need to free your ram. Exactly free, not buy. More than a half of your RAM is consumed even before the game launch, when Windows 10 can work with only 1.5Gb. Close your browser and all unnecessary software before gaming.
  10. A little update: - Included HDT-PE Crash Fix by @Hawk9969 - Fixed ENB download link
  11. Not quite that way. This value represents total number of static nodes from human animations. A signed short variable is used to hold this value which range is from -32768 to 32767, it means, if you put in that variable a value bigger than 32767 register overflow will happen and the value will not represent real amount of static nodes anymore. Unfortunatelly, this variable is used to call process memory by pointer which incorrect address leads to ACCESS_VIOLATION_EXCEPTION (SIGSEGV) that always crash the game process. This is exactly what happens when too much animations was installed for unpatched Skyrim. This value and the crash is indepentent by machine, load order, SKSE plugins, etc. Only hkx bahaviors related to the crash (that are building by FNIS). The only real technical purpose to filter animation packs is to decrease memory consumption, everything else can be fixed. Papyrus only allows to create arrays 128 or less sized. To cover sexlab user's needs several arrays was binded to clusters of 125-sized arrays, what results in 125 * 4 = 500, 125 * 6 = 750. The more arrays used in a cluster the more animations it will hold and longer iterations with the cluster will be.
  12. I have tested the plugin and it ruined a half of working software on my PC including browser and even file explorer's instances until reboot. It means the plugin has dirty and faulty memory management. The description is quite hard to understand, it was written on english but still chinese. If I understand it correctly, it takes some static memory address and starts to use it as an additional skyrim's pool without any checks and allocations. This is unacceptable. - The memory area can be used by other software that allocated it, in the best case it will just crash the software's instance. - The memory area can be written by other software, this way it will crash your game. I strongly do not recommend to use the plugin because of this. If you still wanna try it, use AddressExtension = false, probably it will solve the problem. The next thing it provides is "Memory Buffer". It sounds pretty similar to OS Allocations by CrashFixes with doubtful performance changes. I have no idea how exactly it works as author didn't provide any source code. Personally, I didn't notice any performance difference. The "Free Memory" feature lacks of description. But even so I can say that this feature is redundant because the game has a well done internal memory cleaner that works pretty well. Additional cleaner will bring only risk to break using memory. Process affinity and priority you can set yourself with a bat file or a task manager. Script repairing with a dll sounds pretty weird. What's the point to use native/memory calls if you can edit scripts directly? "Embedded Game Window" sounds even more weird. If you're frequently alt-tabbing it's better to just use a borderless window, provided by OneTweak, for example. It's good if it works btw, but the impact is insignificant to install dll just for this with risks the dll brings. The FPS Booster, according to description, just disables some effects through enb. Cannot comment as I didn't test it but sounds like editining ini through dll. So far, I see a potentially dangerous plugin that may ruin not only your game stability but also active software on your PC. I do not recommend to install the plugin and will not add it to the guide unless some significant changes will be done and source code released what I asked him for.
  13. Hm, did you try to place the lock before TlsSetValue call where the accessing value initializes? Unfortunatelly, I cannot experiment with this as I don't encounter the bug and cannot reproduce it. Well, nevermind then if it works with no problem. No point in changes. Looks like a compiler's optimization.
  14. Can confirm the problem is actual for some people. However, a big part of players aren't affected by the crash for some reason. Probably, it depends on given data (meshes, physic xmls) which processing postpone the problematic TLS call or it's simply platform dependent. By skipping a part of the function we may get unpredicted behavior and/or crashes on another TLS call, as you already mentioned. To avoid this we can use some kind of lock instead of return: void hdtPhysicsExtensions_15E2E0(void* param1, void* param2) { DWORD tlsIndex = *((DWORD*)hdtPhysicsExtensions_871D0C); while ((eax = TlsGetValue(tlsIndex)) == NULL) // Wait until value is initialized {} ecx = *(eax + 0x2C); ... // Rest of the function's body. } P.S. Thanks again for your work and don't bother with scums over here that spread nothing but flood and toxicity.
  15. It's just for test purpose to find out what exactly causes your problems. Normally, these mods shouldn't give any problems (i hope, lol).
  • Create New...