Jump to content

payl0ad

Premium Member
  • Posts

    330
  • Joined

  • Last visited

Everything posted by payl0ad

  1. Not 100% certain but you can use pretty much anything as an enable parent. The fusion generator script for example uses a LGHT object for its flickering animation, which is done by enabling/disabling the light. That LGHT (a spotlight-type that points to the ground) is used as an enable parent for an omnilight-type LGHT object positioned below the spotlight. I haven't tried all types but the script accepts any ObjectReference and I've seen literally all kinds of objects used as enable parents while poking through Fallout4.esm.
  2. A wild guess: The compiler is looking for Scripts\Source\Base\Quest.psc and fails to find it. Did you extract the script sources? Is that precise file present?
  3. We had a feature similar to this up until 0.9.7 of PIRAD. Ended up removing it in the end because it forced some ugly choices in our main script. Now, having settled on a stable feature set in 0.9.9, I'm actually thinking of finding a new implementation for mutations. I like your approach, giving people perks with upsides and downsides. I just don't want to have to cough up a whole set of perks to make this happen. If I were to provide the framework (PIRAD and a new script), someone could provide the perks to go with it.
  4. Well people tend to report stuff as bugs that's not a bug. I mean, I've received bug reports from people being incapable of operating their own mod manager. I tend to just close the bug as "not a bug" with or without a quick comment and be on my merry way when that happens. Good practice to avoid that situation: When submitting a bug, be certain it is actually a bug. Isolate and test beforehand, don't treat a bug report as a way of requesting tech support.Provide steps to reproduceGive as much detail as possible, bare minimum would be your load orderRespond to eventual feedback the author needs from youTry fixing it yourself using xEdit
  5. L00ping has put up a mirror for the 0.344 binaries: http://www.mediafire.com/file/acariiaqnkuiiv2/Fallout4_ENB0344.zip/file Which is perfectly OK with ENBs license, as seen here: https://web.archive.org/web/20180704034504/http://enbdev.com/license_en.htm
  6. Creating models is a minor part of creating a worldspace mod. You might not even need any new models given that we have plenty of assets to play with already. You typically start by learning your tools. As for the Creation Kit, that means building your first cell and generally learning how to operate this monster of an application. I'd suggest starting with the interior cell tutorial on the Creation Kit wiki. It's for Skyrim but the differences are miniscule for your use case. Most of the things involved in creating a worldspace aren't difficult by themselves. There's just extremely many of them and if you lose track you'll have bugs aplenty later. You'll need to properly atomize all of the tasks involved and you might not even have a complete list yet. That's why it will take long. 1-2 years is not exaggerated at all if you're on your own and don't develop full time (i.e. you have a life aside from modding). In fact, most authors who have gone through this will confirm that it's extremely time consuming to build even tiny worldspaces. And that's for someone who already knows his toolkit. I don't mean to patronize or try to stop you but there have been literally dozens of worldspace mod projects that never finished because the author didn't imagine it being that much work. Most died off after a few weeks and never left the "we need ideas" stage.
  7. If that array holds some type of Form you could use a FormList instead of an array to circumvent that limit. If you just need some ordered list of forms to loop over, they behave very similar. You can also modify them at runtime like an array.
  8. Shouldn't the Container be an ObjectReference type? Container is the base type but the actual container in the game is an ObjectReference.
  9. Yeah I know it's Alpha, but it's essentially just choosing a sane default what we're talking about. Manual sorting has always been the norm. LOOT isn't reliable for FO4. But it's fine to offer automatic sorting with some warning that it likely will not produce a "correct" order, whatever that means in a given case.
  10. You can try using the FOMOD Creation Tool: https://www.nexusmods.com/fallout4/mods/6821/
  11. In the past few weeks, while reinstalling my laptop after a system wipe, I've gone through most mod managers. MO2, Vortex, Wrye Bash, was NMM user before. Honestly, NMM is still the cleanest and simplest one that does what I need it to, and only that. Vortex GUI is needlessly complex and hiding too much, MO2 can't export/import load orders to text files, Wrye Bash is overloaded with features that I never use, has a horrible GUI and also can't import/export from what I can tell. I'm a special case though because 95% of the time I'm developing mods and not actually playing. I also come from a heavy Linux/UNIX background, so I like my tools lean and simple because that's just my kind of workflow.
  12. As someone who has a worldspace mod project on the backburner (so I kinda know what I'm talking about), please realize that if you have never made a mod, starting with a worldspace mod is setting yourself up for failure. You don't have the required knowledge to make that and you are likely also clueless about how much work this will be. You will likely work on this for 1 or 2 years before you are at a stage where you can release an alpha version. Start smaller. Like, much, much smaller. If you want to build places for the player to explore, try making a mod that only adds some interior cells. Like moreXplore or Inside Jobs.
  13. If you don't mind me asking, how much is still left to do?
  14. It might be a good idea to search for things released under a Creative Commons license. They are typically free to remix for non-profit. Perfect for modders.
  15. Just throwing in an additional idea: Make the radio station an object you can build in one settlement and make it location-aware in the way that the news anchor can say from where he's broadcasting. I'd imagine people would want something like this in a sprawling wasteland town. Hell, you could even have some specific lines about what crops they're growing, if any. I know this is lots of VA work but damn. Or at least make the station an actual place you can visit.
  16. Use xEdit to open the mod you want to change, open the "Container" section and see where that takes you. You have to start somewhere. ;)
  17. Well you can use xEdit to edit the contents of those containers.
  18. Works like a charm. Gave you some kudos already, thanks mate!
  19. Find all references to a given object you want to attach a hazard to. Build ref info for Fallout4.esm, then go to the "referenced by" tab of the STAT record you want to attach a hazard to, select all REF type references and copy as new record into a new (or existing) plugin. Navigate into your plugin, expand all worldspace and interior cells and select all of of the records in one of either section - do not try to operate on both worldspace and interior cells simultaneously, it won't work. Then use this script to replace their reference bases with the load order corrected FormID of a HAZD record you want to attach: { Replace FormIDs with intReplace in strSubR subrecords } unit UserScript; const intReplace = 'your load-order corrected FormID goes here'; strSubR = 'NAME'; var ReplaceCount: integer; function Initialize: integer; begin ReplaceCount := 0; end; procedure SearchAndReplace(e: IInterface; i: integer); begin if not Assigned(e) then Exit; // remove rfIgnoreCase to be case sensitive Inc(ReplaceCount); AddMessage('Replacing in ' + FullPath(e)); SetEditValue(e, i); end; function Process(e: IInterface): integer; begin if not Assigned(ElementBySignature(e, strSubR)) then begin Add(e, strSubR, True); ElementAssign(ElementByPath(e, strSubR), LowInteger, ElementByPath(e, strSubR), False); SearchAndReplace(ElementBySignature(e, strSubR), intReplace); end else begin SearchAndReplace(ElementBySignature(e, strSubR), intReplace); end; end; function Finalize: integer; begin AddMessage(Format('Replaced %d occurences.', [ReplaceCount])); end; end.That should work out. You essentially place a HAZD at the exact same spot where the pivot point (the small yellow axis you can see in the CK) of the STAT record is. You might have to clean up invalid reference properties or links of your original references (some might set the scale of your HAZD to something you didn't expect or link to something you don't expect) but Creation Engine might also simply ignore invalid reference properties. Can't say for sure.
  20. Archiving Protip: Keep separate Data folders for each mod you're working on and keep those folders all on the same disk. They do not need to contain the vanilla archives. As long as your Data folders are on the same disk, moving the vanilla archives and ESMs around between Data folders doesn't necessitate an actual data transfer (internally, the file system just changes some inode data pointers). This way you can just drag&drop all loose file folders from your Data folder into Archive2 without thinking too long about it. Just takes some discipline but saves you thought and effort when developing. Also gives you less room to make mistakes. Updating BA2s is a breeze this way. It does force you to delete extracted vanilla assets that may linger around but I tend to keep my folders somewhat tidy anyway - stuff I don't need anymore in dev gets deleted right away or backed up to NAS.
  21. So I just do something like myObjectRef.AddKeyword(myHarvestKeyword)you mean? That simple?
  22. Alright, this works pretty damn fine. There's one caveat with my implementation though and I'd like to have some input from you guys. Currently, the harvesting part works any number of times on a single corpse. I'd like to limit that so a corpse can only be harvested once. Preferably in a way that is easily detectable. If there was an item that does not show up in the quick loot menu and is otherwise not playable too, I could add that to the container after harvesting and use it to block the hotkey. But I don't know if there is such an item. I also can't think of a different solution except tracking harvested ObjectRefs in an array and let the script deny service when it comes across an ObjectRef that it's seen before. But that would only help for the last 128 corpses that were harvested. Should also sorta work but feels incredibly clunky to me. Anybody want to help out? :smile:
  23. Actually I think it's good to show that process too because it suggests using archives to the user, which might make more modders adopt archives. It's pretty relevant for precombine data, lots of small files that cause lots of I/O load. And it makes things easier to manage and less likely to cause weird file-related issues for the user. Thanks. Yeah, I'm glad I left it in. In retrospect maybe I should have mentioned using the archiver in the CK for mods that don't already have archives but I never though of it until today. If I were to teach someone how to make archives, I'd skip the CK entirely because it's neither necessary nor does it make the process simpler - on the contrary. I actually make all my archives using only Windows Explorer and Archive2 and it's never once caused me any issues. If anything, exposing yourself to the folder structure instead of letting the CK do its magic will teach you how things interlock a little better.
  24. Actually I think it's good to show that process too because it suggests using archives to the user, which might make more modders adopt archives. It's pretty relevant for precombine data, lots of small files that cause lots of I/O load. And it makes things easier to manage and less likely to cause weird file-related issues for the user.
  25. I gotta say, I like that idea. But I have no clue where to even start on a technical level.
×
×
  • Create New...