Jump to content

theuseless

Members
  • Posts

    454
  • Joined

  • Last visited

Everything posted by theuseless

  1. Npc's generally don't steal anything but food or weapons. If they can "find" a weapon nearby when in combat, they will take it. If they are hungry and they can "find" food in a container, they will eat it. Again, this has a lot to do with responsibility, but I have seen Npc's that take food or weapons even with a 100. Just because it is set to Player owned, that doesn't mean that Npc's won't rob it. And again, you must set it as NOT respawnable. There is a bug in the game engine which doesn't like to allow us to lock chests. Maybe Midas Magic would have something in it for that, I don't know. Thanks Vagrant0 for being such a durned good moderator, and I love the new signiture you got. If I could give super kudos, you would have over 100 from me. -theuseless
  2. well, Boss would know better than I. Go with what the program says. I'm sure that many users have given feedback on exactly these two mods. There really isn't anything to lose as long as you backup your save.
  3. Well, the industry standard is 3dSmax. It is a VERY expensive program however. Some people like Maya, which is cheaper. But most amateurs use Blender. It has functionality and is free. I am going to start learning Blender, but I want to install a Linux partition to use it. The program was made for the Linux platform, then translated to Win and Mac. Personally I like Ubuntu 12 the best out of the Linux platforms I tried. Keep your Windows partition by all means tho! No Netflix on Linux. You can emulate and use Wine, but running Oblivion on Linux is difficult. I just want it for Blender. Unfortunately, 3d Studio Max is supposedly the easiest to learn, but Blender is powerful and open source (meaning people come up with additions all the time). If you are familiar with Photoshop, the transition to Gimp can be frustrating. And vice versa. If you can learn all the tools one at a time you will be able to do anything you want. Photoshop is easy, but there are things for Gimp they will NEVER have for photoshop. It is all a matter of preference. I prefer free, open source.
  4. I believe that I agreed with BOSS: "This would mean that you set Deserts after (or under) the UL mod" This means that it has priority. The way the game loads data (hence the Data folder) is to write the first code, Oblivion.esm. It will then write the next code (the next MODification) over the Oblivion.esm data. Then the next gets loaded, and so on. Which means that with Deserts loaded last, or on the bottom, that its changes will over write the changes made by any other mod loaded before it. That includes UL and even Oblivion.esm. Since UL has no quest data, you usually want to load these before (or higher up on the list) any mods that DO have quests. You might not even be able to access the portal to the Desert if the land has been changed where the door is. You shouldn't have any problems. If you do, report back here what the problems are. If it something like floating rocks/trees/shrubs, there isn't much that can be done but to use one or the other. I personally use two mods which use the same real estate. They mesh nicely together. They are Azure Palace and the famous Castle Seaview. Any conflict detector out there will tell you not to use these together. But they are so close to each other that they don't interfere too much. It actually is quite nice. But they both make changes to the same real estate, some in the same exact location. You can see fairly simply by this example what a conflict is and how to handle it.
  5. Ok, I made it so that you only need to replace 4 things in this script to make it work. Replace or modify the script name (scn). Replace the (doorIDhere) with your door's Editor ID. Again, this is the name of the door's Editor ID in the first double click screen, NOT after clicking edit base. Now replace the (person1IDhere) with your first NPC's EditorID name (my example was tUL665ClarkKent). Replace the second with your second Npc's EditorID name (my example was tUL665LoisLane). You are now able to save this as a script. It ran fine on my computer. I set up a couple of temp NPC's and tried it. You will have to tune your AI to make it work well. You might also tune the numbers in the block beginning with if ( Gamehour >= 18 ) || ( Gamehour < 6 ). Those numbers can be set to match when your characters are supposed to be insid sleeping, cooking or whatever you have them do :dance: The ";" is a special function which says to the game engine "skip anything after this symbol." I personally remove them now, but you don't have to. You will have to remove at least the first one (;<-------Change this). Remember too not to leave the (parenthesis) around your editor ID's. You will want to leave the ones around (Door.getpos z), as these tell the game to do math. Now you don't have to. scn (your tag here)RespawnScript ;<-------Change this. ;Take out all the (parenthesis) when you replace the names. Remove all code after ;<----- one of these. It will clean it up and make it run more smoothly. ref Door ref NPC1 ref NPC2 float DPosX float DPosY float DPosZ begin onLoad set Door to (doorIDhere) ;<--------------Put your unique door ID here set DPosX to (Door.getpos x) set DPosY to (Door.getpos y) set DPosZ to (Door.getpos z) set NPC1 to (person1IDhere) ;<--------------Put NPC ID 1 here set NPC2 to (person2IDhere) ;<--------------Put NPC ID 2 here if ( Gamehour >= 18 ) || ( Gamehour < 6 ) if getdead NPC1 1 NPC1.moveto Door NPC1.setpos x DPosX NPC1.setpos y DPosY NPC1.setpos z DPosZ NPC1.resurrect NPC1.enable NPC1.evaluatepackage else NPC1.disable NPC1.moveto Door NPC1.setpos x DPosX NPC1.setpos y DPosY NPC1.setpos z DPosZ NPC1.enable NPC1.evaluatepackage endif if getdead NPC2 1 NPC2.moveto Door NPC2.setpos x DPosX NPC2.setpos y DPosY NPC2.setpos z DPosZ NPC2.resurrect NPC2.enable NPC2.evaluatepackage else NPC2.disable NPC2.moveto Door NPC2.setpos x DPosX NPC2.setpos y DPosY NPC2.setpos z DPosZ NPC2.enable NPC2.evaluatepackage endif endif end -edit- Note that you only have to change 4 things. There are some good tutorials on the wiki if you can't get the script onto the door, but I tried to outline only what you will need to do in my post above. Post back here if you have further troubles with this code. An example of how the changes would look for my mod: scn tUL665RespawnScript ref Door ref NPC1 ref NPC2 float DPosX float DPosY float DPosZ begin onLoad set Door to tUL665AnvilDoorMCAnim01 set DPosX to (Door.getpos x) set DPosY to (Door.getpos y) set DPosZ to (Door.getpos z) set NPC1 to tUL665ClarkKent set NPC2 to tUL665LoisLane The rest of the code is left untouched in the new one. This should be easy for you to do. Again, come up with a prefix (a suffix won't let you easily search for your changes). Please don't just copy mine. You could go even further and make an Xmarker and place it in front of the door, where the spawn point is (yellow box with pink pyramid). You would only need to name the Xmarker and replace the (doorIDhere) with the name of the Xmarker. Keep both persistent if you do this. theuseless
  6. gimme a sec, I had company just walk in. I will be back and replace this with the working code.
  7. -edit- dont' use the script above. Use the one below please -edit- Add this script to the interior door. You will want to double click on the door. Then click where it says "edit base" to make it unique to your mod. I will use the common door "AnvilDoorMCAnim01" but you can use whatever door you like. So once you have clicked "edit base" it will have a name highlighted in blue. This should be called "ID" in the text before the field. Click anywhere before the name of the door to add your own prefix. I use tUL665 as my prefix. It stands for theUseLess almost evil. So my door would be named "tUL665AnvilDoorMCAnim01" in the mod. Make sure this is the interior door. If you plan on making more mods in the future, you can replace the 01 or add the mod name into the ID somewhere. When you click on "OK" it should ask you if you wish to make a new form. Click "Yes" to make your new door unique. What we did was make a door that will exclusively have the script attatched to it. You don't want the script to run every time that you see an AnvilDoorMCAnim01 door in the game. Now you want to make a script for the door. You simply need to copy the script above and replace the needed fields. Get Notepad++ as it is going to make the work much easier. Get Oblivion Syntax Highlighter for Notepad++ and install it. It really is easy. You don't need it for this but it will save you time in the future. Ok, now you can modify the script. Find your NPC's. Make sure they are new, unique editor ID's. If they aren't, you will need to remake them. Double click on the first character (don't click Edit Base). You should see the top field is called Editor ID. This is where you place the name of your character. This will be the name the scripts call it by, not the name you see in game. Make it have a unique name (like JoeMontanaRef, tUL665ClarkKent) or whatever. Now repeat this process for the second character (I'll call here tUL665LoisLane). When you are making this script, you can edit it in Notepad, the CS editor or MSworks, whatever you like. You will now want to change EVERY instance of (person1IDhere) with tUL665ClarkKent (or whatever you used as the name). Change every instance of (person2IDhere) to tUL665LoisLane (whatever the second name was). I see that I messed up the script above and forgot to change two instances of (person1IDhere) to (person2IDhere). I have the proper script below. We are also going to use the door as the marker to "teleport" the npc's to. It will make it much easier for you. Again, use the script below, not the one above. Change out all instances of (person1IDhere), (person2IDhere) and (doorIDhere) to whatever you have named them. Then go back to the CS, click the pencil. You will now want to click File -> New to make a new script. Copy/Paste your code to this place. Click on save and you have a script. Now double click on the door you named and make it a "Persistent Reference" by checking the box. Click on Edit Base. It should say Script then the field will say None. Change this to your new script name. You can type in the field and it will auto complete for you. Save all the way through and playtest it. It should be fine now. Congrats, you just made a simple teleport script and attatched it to a door. Post back here if you have any trouble. -theuseless
  8. Hi, I love the idea. I can't wait to see this as a finished project. I will offer a limited amount of my time to textures if you would like. I am still trying to complete my own mod, Castle Tharnstein. I can make interesting and unique textures. I can make normal maps, manipulate glow properties and edit/work with UV mapping. I don't have Blender, but I am fairly familiar with NifSkope and I'm a genius at Photoshop and Gimp. If you need some textures made or altered, pm me. I would be happy to help. -edit- Have you tried to upload them directly to the Terran Vampires (version 2 beta) site? You can upload tons of pics at once to the mod location.
  9. Ok, replying to another post later led me to this idea. Check the post herefor more details. Ok. So we can supermodify this code to suit your purpose. You can get more shaders and effects visuals on the nexus and other sites. Experiment around with them or at least the vanilla ones. List of vanilla shaders is here. Vanilla effects visuals are here. So if you use the functions in the post aforementioned, you should be able to make a relevant check to player.GetAV magic and then determine a set of if conditions to modify how much damage is used. I'm going to go work on my mod now, but you should post a new topic in the mod requests if this kick in the bum didn't get ya thinkin :turned: . Just link them back here and it should all fall into place simply.
  10. Mucho Awesomesauce? Really? I'm in lol. Usually I work for peanuts or kudos, but that somehow sounds more fun. scn (yourIDhere)Absorb30script short random short randomAttack ref Actor begin ScriptEffectStart set random to GetRandomPercent if ( random <= 20 ) set Actor to getSelf ;try to be effecient with computing power if ( Actor != player ) modAV health -30 player.modAV health 30 pme ABHE 2 pms effectAbsorb 2 endif endif end This should work. If you want the player to have magic shaders too, I can set that up. It really is a simple bit of code. -edit- I am going to use something like this on a sword. What a nice piece of code. I think I will make mine leveled and damage both parties, victim and predator.
  11. I appreciate your simple load list. I often see people here with a million mods active and it can be overwhelming. I personally delete all the mods off the list I know are working fine, but that is just me. Maybe this is an old mod. If it has never worked for you, maybe one of the other beauty packs will. I know that Cosmetic Compillation (also outdated) contains all of the Ren pack. I would suggest looking up a newer or larger mod. I suggest this one: http://oblivion.nexusmods.com/mods/24077 It is the one that I use. It isn't over the top, but looks nice on vanilla faces.
  12. Are you trying to use this script to run only on your quest data or on all quest data for all quests? If it is a universal code, it could be quite difficult without obse. I don't know much obse but i would bet there is something in there for you. If not, you could request it and it just might get made. It seems like a common enough code to warrant new scripting functions. I am frustrated that some code works in the cs and not console, and vice versa. If you are trying to get the position of a specific xmarker in x,y,z co-ordinates, that is simple. You just name the xmarker (or better yet place your own on top of it, as not to make a conflict). Then you can do all sorts of fun stuff such as movetomarker, getdistance, etc. If anybody else (like mr DavidBrasher) who has more experience modding than me reads this, it would be cool to see some other work arounds. short MyPosX short MyPosY short MyPosZ short QuestPosX short QuestPosY short QuestPosZ begin gameMode set MyPosX to player.getpos x set MyPosY to player.getpos y set MyPosZ to player.getpos z set QuestPosX to (markerID).getpos x set QuestPosY to (markerID).getpos y set QuestPosZ to (markerID).getpos z ;put math here end You would have to either define the markerID as a ref (which you could set dynamically) or you could call it by name directly. Again, this isn't a global script. You would have to define the markerID ref manually or set it with other code. Please give a small example of what you are trying to accomplish. It would help for people willing to lend a hand. theuseless -edit- If you could make one static marker and move that to the quest target, that would be ideal. I'm not sure if you can do this with vanilla however.
  13. Okay, I don't know much about obse or how it works, but it looks here like you have a loop which is supposed to remove as many objects called "pInvObj" as there are in the player's inventory. Why are you setting all this complex code up for a simple removeitem function? You say the script works for Azura's Star. Is this because the star is no longer a quest item? Have you tried looking to see if the CS made a dirty edit for the Colossul Black Soul Gem? I have had the CS mess with my mods before. I would run this with a simple, vanilla script. It doesn't seem like it would be harder than doing this: if GetStage ALVQSancturaryCH1 == 25 if player.getitemcount MG17MiscBlackSoulGem > 0 Player.RemoveItem MG17MiscBlackSoulGem 1 SetStage ALVQSancturaryCH1 30 endif endif This will run only once if the player has the item MG17MiscBlackSoulGem. Also note that this script uses the Misc Item instead of Mg17BlackSoulGem, which is an actual soul gem. You might try to make sure you are calling the proper ref. -edit- Thanks for posting something which makes me reach outside my comfort zone. I have avoided learning obse as many users won't d/l a mod if it uses it. I should start to get comfortable with it however. Thanks for allowing me to expand my horizon.
  14. Is your processor capable of running windows 64 bit? I understand that installing Ubuntu 64 bit onto a computer with a 32 bit processor can harm the computer. Please make sure you have the correct version of windows running. If your CPU doesn't have 64 bit architecture, you are running a risk of hurting your computer by just turning it on. Return the 64 bit version to the retailer and ask for the 32 bit version (I am assuming you didn't pirate it lol). You could also have problems with the graphics card you are running. Especially if you have drivers for the 64 bit version but are running it on a 32 it processor. theuseless
  15. Ummmm, I'm sorry james but I can't find anything in the link (which is broken btw!!!!!) to make your ini change the game in such a way. I can't find any reccomended settings which change language options or anything which would alter the appearance of text. Try to use a fresh ini file (I could email you mine if you like) and then make the tweaks ONE AT A TIME!!!!! until it runs how you like. I would only use some of the tweaks they listed. I would use the low poly grass, as it is a substantial gain in fps for little loss in visual effect. Also disabling the shadows on trees helps a lot. -edit- also I wouldn't recommend posting your email on a public forum. I did this once and still haven't stopped the spams :wallbash:
  16. Make them essential, that way they won't ever die. Or add a script to a custom door or activator as follows: scn (your tag here)RespawnScript begin onLoad if ( Gamehour >= 18 ) || ( Gamehour < 6 ) ;if it is night time if getdead (person1IDhere) 1 (person1IDhere).moveto (cellIDhere). (person1IDhere).setpos x ;(copy x co-ordinate for the bed here) (person1IDhere).setpos y ;(copy y co-ordinate for the bed here) (person1IDhere).setpos z ;(copy z co-ordinate for the bed here) (person1IDhere).resurrect (person1IDhere).enable (person1IDhere).evaluatepackage else (person1IDhere).disable (person1IDhere).moveto (cellIDhere). (person1IDhere).setpos x ;(copy x co-ordinate for the bed here) (person1IDhere).setpos y ;(copy y co-ordinate for the bed here) (person1IDhere).setpos z ;(copy z co-ordinate for the bed here) (person1IDhere).enable (person1IDhere).evaluatepackage endif if getdead (person2IDhere) 1 (person2IDhere).moveto (cellIDhere). (person2IDhere).setpos x ;(copy x co-ordinate for the bed or xmarker here) (person2IDhere).setpos y ;(copy y co-ordinate for the bed or xmarker here) (person2IDhere).setpos z ;(copy z co-ordinate for the bed or xmarker here) (person2IDhere).resurrect (person2IDhere).enable (person1IDhere).evaluatepackage else (person2IDhere).disable (person2IDhere).moveto (cellIDhere). (person2IDhere).setpos x ;(copy x co-ordinate for the bed or xmarker here) (person2IDhere).setpos y ;(copy y co-ordinate for the bed or xmarker here) (person2IDhere).setpos z ;(copy z co-ordinate for the bed or xmarker here) (person2IDhere).enable (person1IDhere).evaluatepackage endif endif end This code could get a little odd if the npc is very far away. It would not make sense if you were running faster than the npc and hit the door first. You could curtail this problem by adding a package to the npc which tells it to stick close to the house for the hours of 7 and 17. Just make it a proximity from your door. You can make the script run whenever you want, just change the gamehour part accordingly. You should have no problems with this script other than it will force the actors into the cell every time the player enters it at night. If they are forced by this script inside, then position outside, it could get a little buggy. Fine tune it to your preference and it should be okey dokey.
  17. -edit- double post.
  18. You could try to add the blade to your player (player.additem SE03Duskfang30A 1). If the animation plays, then I would skip this code. If not, then this code has it somewhere inside to make it right. It says in the beginning that it wont change out if the player is in combat or riding a horse (if Player.IsInCombat == 0 && Player.IsRidingHorse == 0), which makes me think that it will play the anim. The hard way would be to make it check every time you hit something with it, then add a spell which causes the damage to whatever it hit. This is difficult at best without obse.
  19. The problem with non obse format is that when you change the weapon out, you will have the animation of the player drawing the weapon. This is the issue pointed out by WarRatsG. If you use player.removeitem and player.additem, you will have to set another piece of code to make the player equip it. There is a code on Dawnfang, a sword you get from Shivering Isles which has a similar code: scn DawnfangScript ;related to DuskfangScript short ShouldEquip ;This variable is a flag if the weapon was previously equipped for use when the weapons swap ;This block resets the global variable SESwordDawnfangKills and sets the should equip flag if the previous weapon was equipped begin OnAdd Player Set SESwordDawnfangKills to 0 if ( SESwordDuskfangEquip == 1 ) Set ShouldEquip to 1 Set SESwordDuskfangEquip to 0 endif end ;This block sets the equip flag upon equip of this weapon, the second block does the opposite begin OnEquip Player if ( SESwordDawnfangEquip < 1 ) Set SESwordDawnfangEquip to 1 endif end begin OnUnEquip Player if ( SESwordDawnfangEquip > 0 ) Set SESwordDawnfangEquip to 0 endif end ;This block auto-equips the weapon if the should equip flag was set to 1.. it equips the entire list, as we dont know which one the player has begin gamemode if ( ShouldEquip == 1 ) Player.EquipItem SE03Dawnfang01 Player.EquipItem SE03Dawnfang05 Player.EquipItem SE03Dawnfang10 Player.EquipItem SE03Dawnfang15 Player.EquipItem SE03Dawnfang20 Player.EquipItem SE03Dawnfang25 Player.EquipItem SE03Dawnfang30 Player.EquipItem SE03Dawnfang01A Player.EquipItem SE03Dawnfang05A Player.EquipItem SE03Dawnfang10A Player.EquipItem SE03Dawnfang15A Player.EquipItem SE03Dawnfang20A Player.EquipItem SE03Dawnfang25A Player.EquipItem SE03Dawnfang30A Set SESwordDawnfangEquip to 1 Set ShouldEquip to 0 endif end It utilizes the player.equipitem block. I'm not sure if this runs the animation of player unsheathing the sword or not, but it might. The other code attatched to this sword is on a quest: scn SE03TsaesciBladeScript ;DawnfangScript related ;DuskfangScript related short Dawnblade ;This is the trigger variable to make the change (sets off the gamemode block) to Dawnfang short Duskblade ;This is the trigger variable to make the change (sets off the gamemode block) to Duskfang short Exchange ;This is a DoOnce variable that is set after the change then reset in the timing blocks short Daytime ;This is a DoOnce variable for the timing block in the daytime mode short Dusktime ;This is a DoOnce variable for the timing block in the evening mode short Test ;This is a DoOnce variable for the original rewarding of the weapon short Reward ;This is a trigger variable for the original rewarding of the weapon from Kiliban in SE03 float fQuestDelayTime begin gamemode ;These blocks determine when the blades will "change form" if ( Daytime == 0 ) if ( Gamehour >= 6 ) && ( Gamehour < 18 ) Set Dusktime to 0 Set Exchange to 0 Set Duskblade to 0 Set Dawnblade to 1 Set Daytime to 1 endif endif if ( Dusktime == 0 ) if ( Gamehour >= 18 ) || ( Gamehour < 6 ) Set Daytime to 0 Set Exchange to 0 Set Dawnblade to 0 Set Duskblade to 1 Set Dusktime to 1 endif endif ;These blocks handle the actual exchange. Because we dont know what type of blade (level) the player will have, we test for all of them. if ( Dawnblade == 1 ) if ( Player.IsInCombat == 0 ) && Player.IsRidingHorse == 0 if ( Exchange == 0 ) if ( Player.GetItemCount SE03Duskfang01 == 1 ) || ( Player.GetItemCount SE03DuskFang01A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang01 1 Player.Removeitem SE03Duskfang01 1 Player.Removeitem SE03Duskfang01A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang01A 1 Player.Removeitem SE03Duskfang01 1 Player.Removeitem SE03Duskfang01A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Duskfang05 == 1 ) || ( Player.GetItemCount SE03DuskFang05A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang05 1 Player.Removeitem SE03Duskfang05 1 Player.Removeitem SE03Duskfang05A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang05A 1 Player.Removeitem SE03Duskfang05 1 Player.Removeitem SE03Duskfang05A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Duskfang10 == 1 ) || ( Player.GetItemCount SE03DuskFang10A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang10 1 Player.Removeitem SE03Duskfang10 1 Player.Removeitem SE03Duskfang10A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang10A 1 Player.Removeitem SE03Duskfang10 1 Player.Removeitem SE03Duskfang10A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Duskfang15 == 1 ) || ( Player.GetItemCount SE03DuskFang15A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang15 1 Player.Removeitem SE03Duskfang15 1 Player.Removeitem SE03Duskfang15A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang15A 1 Player.Removeitem SE03Duskfang15 1 Player.Removeitem SE03Duskfang15A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Duskfang20 == 1 ) || ( Player.GetItemCount SE03DuskFang20A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang20 1 Player.Removeitem SE03Duskfang20 1 Player.Removeitem SE03Duskfang20A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang20A 1 Player.Removeitem SE03Duskfang20 1 Player.Removeitem SE03Duskfang20A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Duskfang25 == 1 ) || ( Player.GetItemCount SE03DuskFang25A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang25 1 Player.Removeitem SE03Duskfang25 1 Player.Removeitem SE03Duskfang25A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang25A 1 Player.Removeitem SE03Duskfang25 1 Player.Removeitem SE03Duskfang25A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Duskfang30 == 1 ) || ( Player.GetItemCount SE03DuskFang30A == 1 ) if ( SESwordDuskfangKills < 12 ) Player.Additem SE03Dawnfang30 1 Player.Removeitem SE03Duskfang30 1 Player.Removeitem SE03Duskfang30A 1 Set Exchange to 1 else Player.Additem SE03Dawnfang30A 1 Player.Removeitem SE03Duskfang30 1 Player.Removeitem SE03Duskfang30A 1 Set Exchange to 1 endif endif endif endif endif if ( Duskblade == 1 ) if ( Player.IsInCombat == 0 ) && Player.IsRidingHorse == 0 if ( Exchange == 0 ) if ( Player.GetItemCount SE03Dawnfang01 == 1 ) || ( Player.GetItemCount SE03Dawnfang01A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang01 1 Player.Removeitem SE03Dawnfang01 1 Player.Removeitem SE03Dawnfang01A 1 Set Exchange to 1 else Player.Additem SE03Duskfang01A 1 Player.Removeitem SE03Dawnfang01 1 Player.Removeitem SE03Dawnfang01A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Dawnfang05 == 1 ) || ( Player.GetItemCount SE03Dawnfang05A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang05 1 Player.Removeitem SE03Dawnfang05 1 Player.Removeitem SE03Dawnfang05A 1 Set Exchange to 1 else Player.Additem SE03Duskfang05A 1 Player.Removeitem SE03Dawnfang05 1 Player.Removeitem SE03Dawnfang05A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Dawnfang10 == 1 ) || ( Player.GetItemCount SE03Dawnfang10A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang10 1 Player.Removeitem SE03Dawnfang10 1 Player.Removeitem SE03Dawnfang10A 1 Set Exchange to 1 else Player.Additem SE03Duskfang10A 1 Player.Removeitem SE03Dawnfang10 1 Player.Removeitem SE03Dawnfang10A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Dawnfang15 == 1 ) || ( Player.GetItemCount SE03Dawnfang15A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang15 1 Player.Removeitem SE03Dawnfang15 1 Player.Removeitem SE03Dawnfang15A 1 Set Exchange to 1 else Player.Additem SE03Duskfang15A 1 Player.Removeitem SE03Dawnfang15 1 Player.Removeitem SE03Dawnfang15A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Dawnfang20 == 1 ) || ( Player.GetItemCount SE03Dawnfang20A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang20 1 Player.Removeitem SE03Dawnfang20 1 Player.Removeitem SE03Dawnfang20A 1 Set Exchange to 1 else Player.Additem SE03Duskfang20A 1 Player.Removeitem SE03Dawnfang20 1 Player.Removeitem SE03Dawnfang20A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Dawnfang25 == 1 ) || ( Player.GetItemCount SE03Dawnfang25A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang25 1 Player.Removeitem SE03Dawnfang25 1 Player.Removeitem SE03Dawnfang25A 1 Set Exchange to 1 else Player.Additem SE03Duskfang25A 1 Player.Removeitem SE03Dawnfang25 1 Player.Removeitem SE03Dawnfang25A 1 Set Exchange to 1 endif elseif ( Player.GetItemCount SE03Dawnfang30 == 1 ) || ( Player.GetItemCount SE03Dawnfang30A == 1 ) if ( SESwordDawnfangKills < 12 ) Player.Additem SE03Duskfang30 1 Player.Removeitem SE03Dawnfang30 1 Player.Removeitem SE03Dawnfang30A 1 Set Exchange to 1 else Player.Additem SE03Duskfang30A 1 Player.Removeitem SE03Dawnfang30 1 Player.Removeitem SE03Dawnfang30A 1 Set Exchange to 1 endif endif endif endif endif end While I will not modify/write these for you, If you would like I could write the scripts and release them as source here on the nexus. Or I could pm them to you for credit on the work.
  20. Well, there is a little bit of advice I would give you. It is said so frequently around here that I don't understand how people ignore it so much. Install ONE (1) mod at a time!!!!!! Then test it. There is no way that I could look at this list and tell you what is going on. Try to use the tool Better Oblivion Sorting System. It may tell you what your problem is better than I can. But seriously, you can't say "but I think the only mod I installed after I reinstalled oblivion that would affect it, (I didn't have it before I un/reinstalled) was the Imperial legion mod where I could play as a legion member" and think that you will get a simple, concise answer. REMOVE THIS MOD, THEN TRY it before you post that it 'might be' that. TRY IT OUT BEFORE WASTING ANYBODY ELSE'S TIME!!!!!!! Do what everybody else does and install them one at a time. You can add all the enhancement mods at once that you are SURE worked together, that is fine. But I would add the quests you wish to use FIRST and make sure the conflict isn't within one of them. Then add more mods ONE AT A TIME (you can cheat and add 2 or 3 at a time, then narrow down which of those caused your problem). This is a very common post which should never get posted. Narrow down your troubles to two mods and then ask for a work around or such. I'm sure that others have played with all the mods on your list, but I have not. Thus I cannot give you valuable advice -edit- Sorry for shouting, but if you want a serious answer, post a serious question.
  21. Ok, so it would take me a half hour to download that file. Compressed it is n 800+ mb download. This is Very Large for a mod. Definately make sure you have enough space on your hard drive to install it. You should really try to look around the forums a little. There is a sticky post here on the nexus on getting started. It can be a little daunting at first, but don't give up. I would ditch OBMM and go straight to Wrye Bash. It isn't the easiest program to learn, but once you get it down, you will swear by it.
  22. Well, you should post your load list on here for more accurate help. I see that most of the errors are in LOD data. These are files which show how the distant loaded objects appear (ie, the visable world around you). Any time you are looking at a distant mountain, it is not rendering all the meshes contained within the cell(s) it took to make it. You are seeing another, lower resolution (polygon count) mesh. What I am seeing in the error report (is this a dump from OBMM?) is that most of the conflicts are within a small area. It is probably a gate, mountain pass, etc that is altering the neighboring environment. A conflict is just another word for a change. If deserts changes the same place that say Unique Landscapes changes, you would want the deserts change to work over the UL change. This would mean that you set Deserts after (or under) the UL mod. Again, I am using UL as an example. I have never used bain installation, but I hear it is nice. I find that Wrye Bash is capable of handling any tasks I need, including uninstall of mods. You can also run Boss. It should have tags to tell you what to do with such popular mods as those.
  23. I have been informed the wrye bash page is at the official Bethesda site. Make an account there, log in and then search for Wrye Bash. They are very prompt at answering questions there. I have a hunch that it is because the folder it is contained within is in a Program Files folder. You should only need to use admin rights to install it. You shouldn't get uac blocking it otherwise. I have mine in an alternate install on win7. Heck, I even installed the game into a usb stick once. You only needed the stick and the disk to run it on your computer. It was fun but lagged like heck.
  24. scn SpellQuestTemplate ;script activates quest <------- says right there what the script is designed to do ;quest adds spells <--------- I am sure there is a reason for that. short HasReadOnce begin onEquip player ; this should only run when equipped to the player, from inventory if HasReadOnce == 0 StartQuest [QuestID] ; this is where the meat and potatoes are. The quest handles the addition of the spell. set HasReadOnce to 1 endif end begin onActivate player ; when the player picks the book up from in world activate ;make the player open the book to read if HasReadOnce == 0 StartQuest [QuestID] set HasReadOnce to 1 endif end xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;you can even define the variables in the quest script, such as below: scn SpellQuestTemplateScript begin onEquip player if (QuestID).HasReadBook1 == 0 ;you can simply change the variable by switching out the number, ie HasReadBook2 StartQuest [QuestID] set (QuestID).HasReadBook1 to 1 endif end begin onActivate player activate if (QuestID).HasReadBook1 == 0 StartQuest [QuestID] set (QuestID).HasReadBook1 to 1 endif end ;Now you can make the quest, I would make it for the second example I listed. The script would be as follows: scn QuestSpelltome0001 short HasReadBook1 short HasReadBook2 short HasReadBook3 short HasReadBook4 short HasReadBook5 short HasReadBook1,000,000 ;for example begin GameMode ;This will run every frame. Make sure the quest is disabled so this does not cause LAG if HasReadBook1 == 1 player.addspell [spell_1 EditorID] set HasReadBook1 to 2 ; this will ensure the spell is not added as a redundancy elseif HasReadBook2 == 1 player.addspell [spell_2 EditorID] set HasReadBook2 to 2 elseif HasReadBook3 == 1 player.addspell [spell_3 EditorID] set HasReadBook3 to 2 elseif HasReadBook1,000,000 == 1 player.addspell [spell_1,000,000 EditorID] set HasReadBook1,000,000 to 2 endif stopquest QuestSpelltome0001 end I will sometimes use a bit of code to add gold to the player. It will show you where the script runs and where it is not running. I add it as such: scn QuestSpelltome0001script short HasReadBook1 short HasReadBook2 short HasReadBook3 short HasReadBook4 short HasReadBook5 short HasReadBook1,000,000 ;for example begin GameMode if HasReadBook1 == 1 player.addspell [spell_1 EditorID] set HasReadBook1 to 2 player.additem gold001 1 ;<----------------- adds to the 1's slot elseif HasReadBook2 == 1 player.addspell [spell_2 EditorID] set HasReadBook2 to 2 player.additem gold001 10 ;<----------------- adds to the 10's slot elseif HasReadBook3 == 1 player.addspell [spell_3 EditorID] set HasReadBook3 to 2 player.additem gold001 100 ;<----------------- adds to the 100's slot elseif HasReadBook1,000,000 == 1 player.addspell [spell_1,000,000 EditorID] set HasReadBook1,000,000 to 2 player.additem gold001 1000 ;<----------------- adds to the 1,000's slot endif stopquest QuestSpelltome0001 player.additem gold001 10000 ;<----------------- adds to the 10,000's slot end This will tell you that if you have not read any of the books, yet the quest activates, it will add gold in the amount of 10,000. If you have read only the third book (to set HasReadBook3 to 1), you should get 10,100. If you then read the first book, it should add 10,001 gold. It is crude but tells you what part of the script works. If you get a gold amount of say 3, you know that the script where it adds gold once (player.additme gold001 1) ran 3 times. This shouldn't occur in this script, but it can in others. You can define a valueless, weightless object, but I don't do this to cheat. I use this as a simple way to make a check. Any modder can make a container with a billion gold. That isn't the point of this snippet. Again, get Notepad++ with oblivion script syntax highlighter if you don't use it already. -edit- If you look up tutorials on using C basic, you can get some cool tricks. Just remember that in C languages an object is a script. In Oblivion syntax, an object is the mesh (or quest, etc) which has a script attatched to it.
  25. Well, if you are replicating the effect from a working script, keep the script as close to the original as possible. I would reccomend using the book to fire a quest, just like they did. I would make a quest, name it (questname here), mark it as initially disabled. Make a script to attatch to it, named (questnameScript here). Then simply copy the code supplied, making the alterations you need. I find the game to very buggy at best. Sometimes I can call a ref in a script by its variable name (example: ref prisoner). Sometimes I need to call the reference directly (example: calling the prisoner as tUL665tharnstPrisonerAref). I don't know why it works to define a ref then use it in code, and others you have to long hand it. I have written codes with the same functions (nearly identical code). Sometimes it works to define a ref variable, sometimes it doesn't. What I'm trying to get at is that if they used the extra time to write the code to a quest, there is probably a reason. Just make a quest for the book to interact with. It should solve all your issues. -edit- I use the program called Notepad++. You can get oblivion script highlighter like it shows on this forum. You can do search and replace functions too. This makes it a lot easier to write and modify cloned scripts.
×
×
  • Create New...