Jump to content

PeterMartyr

Premium Member
  • Posts

    1052
  • Joined

  • Last visited

Everything posted by PeterMartyr

  1. OH use states once the player emptied the chest, so the script does not run Edit Not sure if your aware of Big O Notation, but your script does not need a loop, you're making it too complicated if chest.getItemCount(gold01) || chest.Find(item) qvDhMFX_SpottedGreen.stop( cur) qvDhMFX_SpottedRed.stop( cur) qvDhMFX_SpottedGreen.play( cur, -1) endif code not tested and Find might be just for Arrays ¯\_(ツ)_/¯ Just to show you example of how code can be improved, with Big O Notation
  2. Because the script is really badly written, show me where in the script you remove the gold from the container or transfer it to the player. That is why, when you recheck it, it is still there
  3. When you double check the downloaded version, LOL, get the hash of the zip file before uploading and after downloading it; otherwise, you're wasting time comparing them. Work smart, or else your looking at it without checking it in any meaningful way.
  4. That is correct. The ampersand is reserved and gets replaced by the entity in XML. Only I use & stop giving advice you do not understand.
  5. The MO virtaul mechanism dirties the water; it was created to virtualize the game as static. The environment updated poorly when subjected to dynamic change; the fix is to not virtualize in MO when dynamic change is required. That is called keeping it simple. OR Have a massively complex workaround that works in MO; the choice is yours. Has MO user I am assuming you created the fomod using MO Virtual mechanism
  6. I highly recommend using either Wrye, MO, or vertex to mod and play; however, creating a mod is done in the real world to avoid any Mod Organiser virtualization messing up the creation kit virtualization, mudding the waters. A mountain cannot have two tigers. Keep it simple stupid, etc. Etc. ... Yeah, I know this work a round and that work a round, and it is good; just keep telling yourself that and enjoy your unnecessary complexity.
  7. Unhandled exception "EXCEPTION_ACCESS_VIOLATION" at 0x7FF7B92E8090 SkyrimSE.exe+0198090 mov rax, [rcx+0x30] Think of it like this: It CRASHED!!!! The problem occur at this memory address, The Skyrim exe registered the exception with this Error number Above, where it says the error number is the memory address, is the blind leading the blind? I do not know what the error number signifies, so let me give the above brownie point... You are missing a master; truthfully, I do not know. I will say this: if you experience a start-up crash, straight away run xEdit to diagnose it; if you are lucky, it will tell you the missing master, making the crash log pointless for start-up crashes BTW, I know the difference between a memory address and an error integer number because I am a software engineer.
  8. Not enough information, are you even sure setting the stage fired, what debugging procedures did you use? Opening the console screams I do not know what I am doing. Set Stage return a boolean if success or not FYI true or false. If does not fire, it will also return a false ok? What happen? Do some proper debugging, and prove it is not user error. Also post your code, even if it is a just dialogue fragment, gives us something to work with. What object contain the code? Are you making a mod or just a player HINT tying to to reset the quest if you are developing a mod, have you considered stage 25 10 20 Current Stage 25 <<< if stage 20 fails 30 <<< if stage 20 succeeds bypass 25
  9. There no way you can code cold turkey, papyrus may not be syntax sensitive, so it is very very very forgiving.. but not that forgiving. See you if you can find a Skyrim Papyrus Hello World guide EDIT I did it for you for use this http://www.cipscis.com/skyrim/tutorials/beginners.aspx Good luck, and a here something you may like to know, when Champollion decompile code, human being do not write code like that.... look at the Game and SKSE source code for the correct syntax options, it will make your code way more readable by others, this mainly effects parameters and blocks of code. Which I am aware is above your pay grade ATM, but keep it mind, try not copy the style of decompiled code. Study the source codes And this will be weird but even on Creation Kit Wikki, the syntax does not look like the source code and I can prove it, with screenshots. But OFC it will still work, papyrus is very very very very forgiving, it is just harder for human beings to read it. Basically that way the wikki does it, is like microsoft office book for dummies, to avoid overwhelming the user. Study the source codes, use the wikki to see how well you understand it. Do the complete Tutorial Papyrus for Beginners EditorIDs in Papyrus External Functions and Propertie States in PapyrusMore than once, until you understand it Eventually you come across code in the source files that not on the WIkki, (trust me there heaps missing) hopefully by this stage, that will not be a problem for you. You trained yourself to work it out.
  10. I think you're forgetting basic casting principles, casting one way working fine, casting the other way does not.... considering this is random harvesting, to successful cast the other way, you need to be 100% sure, which your not. Good luck.
  11. Do the usual replace a NPC procedure, there extra special in doing this, that will also teach you how to use nifskope, since you will need to merge some heads. Find a guide on Special Edition for merging heads with nifskope, do not cheat with nifmerge, your only cheating yourself. FYI there is 100,000 - 500, 0000 plus NPC mods on the nexus, it not that hard. Don't let it bet you :laugh: If it is your first replacer, do not try to do it plugless, make a plugin (esp), work up to plugless has your nifskope skill improve.
  12. mate let see if I get this ?? you want to override MO2 with MO1.4 NO.... but like a policemen, I shite you not, once said to another policemen about me "mate you cannot arrest him, it is not a crime to be stupid" no joke, I wisen up, I hope you do to :laugh: But the question is WHY ????? Basically you can override forwards but not backwards without unforeseen issues happening, however I would not be shocked if there a guide on how to do this, with first do this, then that, jump up and down, do hokie pokie, boom shaka la, you have gone backwards..
  13. accessing is one thing, manipulating is another ... to edit or manipulate yeah they need to be upack, by adding DLC BSA to kit ini file, it can access anything, the devil is in the detail, no need to unpack it example: binary string files, that cannot be edited accessor and mutator So yeah to use layman terms, the kit can access any thing, if you need to manipulate with photoshop, Nifskope or the creation kit, unpack it.... If ya gonna do game engine, coding stuff, you might as well learn the correct terminology ¯\_(ツ)_/¯
  14. NIFMerge is as buggy as and does not merge the heads correctly stop looking for 1 click fix and learn to use Nifskope, hint it not copy and paste it is copy branch with a paste branch.. and it is not that friggen hard Load the CK mesh and the RaceMenu mesh in NifSkope. The CK mesh is located in the 'FaceGeom' folder and is a numeric value (i.e. 005900) Open up the block windows in both meshes and find the TriShape data for the head mesh. Right click on the RaceMenu head mesh block, select "Copy Branch". Right click on the NiNode of your CK Mesh file, and select "Paste Branch". Now throw Nifmerge in the BIN Edit: I am software engineer, perhaps some 3D digital artist could do a better guide with pictures , plus I have not merge heads in seven years hehehe any takers ?
  15. Attach an Actor Script to an Actor Object, or yeah an Event will not fire, this is true for events in all objects, in all languages with Inheritance "presay", keep going you will learn how how it works.. BTW welcome to the deep end, nothing to fix except your learning curve. Edit OFC there will be other Objects also registered to receive that Event. Question is, I got no idea what object your using or require, so cannot recommend anything. But I would check the AliasReference Script to see if it receives the Event OR use this on the furniture Object Reference Event OnActivate(ObjectReference akActionRef) If akActionRef == Game.GetPlayer() ; do something cool EndIf EndEvent :devil:
  16. LOL I quickly worked out your using Runtime States, cos the armor can OFC vary ... OGM if I had to explain to you how use automatically generated states at runtime, I would rather kill myself. I am sure creating a various "proper states" that handle the potential variations, will work, BUT THAT NOT WAY YOU DO IT... heheheheehe you need to handle states generated at runtime in an open state, just saying It needs to be 100% dynamic OK? hardcoding some states like I said will work, but creating 30 hardcoded states is a lot work for no gain, where all potential 30 could be handled by just one. Put this way the code should scale OK, should slots increase to 100, hypothetically, it should just adapt with no changes required out of the box. Has well as also scaling down for example you are naked. BTW the papyrus log "ERRORS" are actually the game engine handing code that was not correctly validated before running.. so lift your game mate, a good example of a user who helps in these forums, while alway validating his code before running is redragon... if anyone uses his code correctly you never get a papyrus log error. Basicly a Papyrus Log Error is the game engine catching an exception in the code that should have, would have caused a "maybe" CTD. Depending on the severity ¯\_(ツ)_/¯ BIG EDIT I had a tiny thought, your just trying to display the armor slots while not manipulating it, why are you even using states? OVER KILL anyone? Just use a plain text options Form[] akItems = PlayerRef.GetContainerForms() Int nIndex = akItems.Length While nIndex nIndex -= 1 Armor akArmor = akItems[nIndex] As Armor If akArmor != None && akArmor.IsPlayable() == True If PlayerRef.IsEquipped(akArmor) self.AddTextOption(akArmor.GetName(), GetbodySlot(akArmor.GetSlotMask())) EndIf EndIf EndWhile If you want to say click on it and get the armor rating yeah you need states, just to display it, no, btw I kept it simple, I could listed the the armor in inventory he was not wearing
  17. for the dark face bug just lower Maids II Deception in the load order till it clears and stop uninstalling mods, OR adding in mid play-thru OK. The gray face bug is cause by the YOU the player.... what causes it is a known fact :confused: The data in the game save does not match the data in the current plugins in load order, so not a bug OK, you did it. I have never seen it happen like magic, even reordering with LOOT can causes it, depending on what gets overwritten. You also do not need the KIT for that. But it may be require reinstalling a mod you installed and rolling back the game save to before you uninstalled said mod. FYI that called repairing the damage. Depending on what tools you have? You can do this, load an old save and say, fix my mods and reset the load order to match the save, it not that hard rolling back. It is practically all automated, HINT you will NOT find that in MO
  18. just follow the advice and upack the english string...... from the DLC's.. how many time do you need to be told? Yep I giving the exact same same advice, btw :laugh: just in case you may need BSA unpacker, and upack to temp folder too, and if you unpack the whole thing into data folder blame yourself, just incase number 2 REPEAT do not unpack the whole thing, just the ENGLISH strings to a temp folder. BTW #3 this means it is Localized and you may in over head, are you sure you want to do this?? BTW # 4 if Maids II Deception has masters other than Skyrim, FYI Dawnguard and or Dragonborn, yep unpack the string there too
  19. Are u using the correct fixes SKSE <-non-negotiable you need this to fix the memory allocation or yeah crash and burn for sure. a SKSE INI correctly filled Bug Fixes by Meh321 the unofficial patch It is not that hard to get stable game, then all other problems are cause by crappy mods... remove them. I not rocket science for pete sake Anyone that say you can play without SKSE is f**king moron, it is non-negotiable, it even cleans your dirty saves... over time. Edit: I will be the first to admit and up my hand up, I uninstall mods (HEHEHEHEHE) that and adding mods mid-play thru ( I do that too ) is one of the biggest reason for unstable game... remember you point at at "something" there is three fingers pointing back at YOU.
  20. Wow this outdated to the point where only one item is current, and needs to cleaned, but way it say to do it, OFC is outdated and not supported by current version xEdit, why is this still a sticky when with all things considered, it is 100% outdated. All it does is confuse newbies, and individual the need a a guide like this to be up to date... Ignored this used Xedit and follow the instructions... it will give you, cleaning from top to bottom, one at time And I mean follow the instruction, cleaning is automated these days, it is one click job per plugin xEdit clean this, waiting.... waiting.. Oh it done to easy. All I did was load it... correctly Edit: even the OP say it is outdated, while not updating it, it since this cut and paste of the original on LE, which they did not created, so they do not have skill to updated it, nexus moderators what are you doing? Is there no mechanism to unstick it? How do I know it is Cut & Paste, cos I chatted with Original Author, when this was originally made in LE, years ago, so I am very aware of it history EDIT TWO For Current how to clean plugins with xEdit refer to this link https://tes5edit.github.io/docs/7-mod-cleaning-and-error-checking.html#ThreeEasyStepstocleanMods that the Official site, so it gets updated in the future, that link will still be current, unless the webpage has a total revamp.. so it will still point you in the right direction @ moderators if some idiot makes a new post using above text and images, do not be bigger idiot and pin it. All you need is the link. Unless your prepared to maintain it? Plus this post proves moderators are not inclined to maintain these Forums. BTW the original Author that OP plagiarised is still on the xEdit team
  21. To start on this task find a FREE youtube 20-50 hour guide on an introduction to advance CPP, but no one can reverse engineering anything from a release version OK ? you can hack it to a degree, but reverse engineering never. Honestly I do not even think you understood the complexity involved in what you wrote, reverse engineering a DLL with no source files or debugger PDB files, with no coding experience... Not saying you cannot do it, but it will take years of learning.
  22. In case your wondering that is a circular array used has a Queue Data Structure like hump a PC printer queue.. :laugh: :laugh: :laugh:
  23. what exactly is happening on row 34 and column index of 35 on your script? You've given one line of code, no idea what row it is, and ... GetOwningQuest().SetObjectiveDisplayed(10) Seems to have nothing whatsoever to do this the error? Plus is just a fragment ? etc My advice would be making sure the vanilla script are installed correctly and are being overwritten by SKSE correctly (if you have it installed) A simple mistake some people make is overriding SKSE scripts with Vanilla Scripts post the whole script under a Spoiler Tag like so If you seriously expect help
  24. yep but it been years there a remove from Faction Function but I think the correct way to do it is set the faction rank at -1 FYI the remove from faction function just set the rank to -1, so cut out the middle man anyone correct me if I am wrong https://www.creationkit.com/index.php?title=RemoveFromFaction_-_Actor https://www.creationkit.com/index.php?title=SetFactionRank_-_Actor both should work :laugh:
  25. Hi guys just let me say it is a rule of thumb that you do not do with a List what you can do with an Array. Array sizes are static once declared and there size allocation cannot be change in the memory. BUT that does does mean you cannot resize an Array. Made a new one, that bigger, copy that data over, overwrite the old Array variable memory pointer with the new bigger array with the same Data. The PC OP will delete the old memory, and the pointer now points to bigger array with the same data, waiting to be filled with more data. Ultimately it is up to you which one you use.. but an Array is faster. A List will reject duplicates, how does it know it is a duplicate ? a list cannot snap to the end of the list, it as to always start at the beginning and illiterate thru the entire List, if it is found, reject it, or keep going, when it is at the end of the list it will add a new item. Every time. Another example Get(20) a list goes 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 alliterating through to 20 there you go This is an Array item[20] there you go, see why it is faster? Or add at item[20] Done List add at 20 a list goes 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 alliterating through to 20 now let's add this. Now you make informed decision... I use both.. A list is more versatile but that comes at a performance cost, if you don't need the versatility of a list you should be using an array, it is that simple.
×
×
  • Create New...