Kuribo827 Posted August 13, 2009 Share Posted August 13, 2009 I hope I put this in the right place. I apologize to the board moderators if this is not. I have been working on a mod, Pleasant Burrows, that gives the player an alternate home/base that's rich in story. It's 95 percent done and practically ready for publishing. I am just waiting for a few text files from my co-writer. I need a someone who's handy with the scripting language in GECK to help put the last few bits of polish on it. I've tried dozens of times to script myself, but had no success. I've even gotten a script or two, but I need someone I can actively speak to, to help me with my mod. I can publish it without how it is, but with the help of a scripter the actual quest will function and various things in the base will have increased functionality (making it feel more like the story details things to be.) If you can script and want to be the final mastermind who makes this happen please contact me. If you know someone who might, please contact me. If you know of a place where I might be able to find bored/curious GECK scripters hankering for something to do please contact me. Thanks for your time. -Kuribo Link to comment Share on other sites More sharing options...
Cipscis Posted August 13, 2009 Share Posted August 13, 2009 What kind of script are you looking for? I might be able to help. Cipscis Link to comment Share on other sites More sharing options...
Kuribo827 Posted August 13, 2009 Author Share Posted August 13, 2009 Hey Cipscis! I sent you a note with the details. I'll list some of the matters that would need to be scripted in case any one else might be interested. -Quest Script that activates once the player reads a note and directs them to the next note.-Karma detecting Sentries (I have a script for this but can't get it to work) The following functions are not as conductive to the level's story. -Nuka Cola Machine that makes Ice-Cold Nuka's (copy pasting from the home sets doesn't seem to work.)-Vault Tec Bobblehead Display that carries over from previous displayer (same problem as Nuka Cola House machine)-Modified Anchorage Ammo Dispenser (I was able to get it to stop flashing) Link to comment Share on other sites More sharing options...
Kuribo827 Posted August 14, 2009 Author Share Posted August 14, 2009 All right, first script was written by BadPenny. What it's supposed to do is to make the turrets inside the player base shoot at anyone who does not have neutral or good karma. He was able to get it to work in his mod but unfortunately I couldn't get it to work for me. After countless trial and error on my part I gave up. Here is what he was kind enough to write for me. I apologize, I don't have the code indented so I tried to indent it. ScriptName RegulatorTurretScript ref myTurret short doOnce Begin GameMode set myTurret to getSelf If ( player.GetDistance myTurret < 3000 ) && ( doOnce == 0 ) && ( player.Getav Karma <= KarmaEvil ) setEnemy TurretFaction playerFaction ;;this makes the turretFaction an enemy? startCombat player myTurret.UseWeapon Turret03Laser2HR myTurret player 100 ;; turret fires 100 shots myTurret.evp set doOnce to 1 endif End Begin Gamemode If ( player.GetDistance myTurret > 3000 ) && ( doOnce == 1 ) StopCombat Set doOnce to 0 endif end Here's the script from the Ammo Dispenser in Operation Anchorage. After days of looking over the script I was able to quote out the part that makes it flash red. I think I also quoted out other sections, I don't remember what. What I would like the dispensers to do (and what I feel would be very characteristic of the base Artificial Intelligence, the base owner and the tone of the mod) is that when the player checks it they will either get a portion of randomly selected ammunition or a pop up message that displays "It looks empty." When the player finds the armory it's been cleaned out except for a humorous amount of Flamer ammo, so the idea is that the first time they check it each day they will get either get the random ammo (portion shouldn't fluctuate) or the empty message. It should favor the empty message and every time the check in the same day will display the empty message. It shouldn't give mines or grenades though. This functionality isn't that important and I think it might be harder to get working then any other script I may ask you for. scn PBurrAmmoBoxSCRIPT ;This script handles the giving of ammo the player when he activates the ammo box, and the random flickering that occures on the box. short hasAmmo ;Number of specific ammo the player has in his inventory short giveAmmo float disableTimer short switched short ammoAdded short MaxMicroFusionCell short MaxGrenadeFrag short MaxMineFrag short MaxMissile short Max10mm short Max556mm short MaxFuel short Max5mm short Max308Caliber short MaxShells ;GLOBALS ;DLC02Max10mm ;DLC02Max556mm ;DLC02MaxFuel ;DLC02Max5mm ;DLC02Max308Caliber ;DLC02MaxShells ;-----Flickering Stuff---- short flickering short flickerOnSecond ;(must be less than 100) float myTimer ;COUNTS UP to DLC02RezFlickerTime float timerToStopShader ;COUNTS DOWN Begin OnLoad set disableTimer to .5 set MaxMicroFusionCell to 10 set MaxGrenadeFrag to 4 set MaxMineFrag to 4 set MaxMissile to 4 ;-----Flickering Stuff---- set flickerOnSecond to GetRandomPercent * DLC02RezFlickerTime/100 + 1 ;example, if 25, this rolls a die between 1 and 25 set myTimer to 0 set flickering to 1 End Begin OnActivate if ( IsActionRef Player == 1 ) set ammoAdded to 0 ;--------10MM Weapons-------- if (player.GetItemCount Weap10mmPistol >0) || (player.GetItemCount Weap10mmPistolSilenced >0) || (player.GetItemCount Weap10mmSubmachineGun >0) || (player.GetItemCount WeapChinesePistol >0) if (player.GetItemCount Ammo10mm >= Max10mm) ;Do Nothing elseif (player.GetItemCount Ammo10mm < Max10mm) set hasAmmo to player.GetItemCount Ammo10mm set giveAmmo to Max10mm - hasAmmo player.AddItem Ammo10mm giveAmmo 1 set ammoAdded to 1 endif endif ;--------556MM Weapons-------- if (player.GetItemCount WeapChineseAssaultRifle >0) || (player.GetItemCount WeapAssaultRifle >0) if (player.GetItemCount Ammo556mm >= Max556mm) ;Do Nothing elseif (player.GetItemCount Ammo556mm < Max556mm) set hasAmmo to player.GetItemCount Ammo556mm set giveAmmo to Max556mm - hasAmmo player.AddItem Ammo556mm giveAmmo 1 set ammoAdded to 1 endif endif ;--------Flamer-------- if (player.GetItemCount WeapFlamer > 0) if (player.GetItemCount AmmoFlamerFuel >= MaxFuel) ;Do Nothing elseif (player.GetItemCount AmmoFlamerFuel < MaxFuel) set hasAmmo to player.GetItemCount AmmoFlamerFuel set giveAmmo to MaxFuel - hasAmmo player.AddItem AmmoFlamerFuel giveAmmo 1 set ammoAdded to 1 endif endif ;--------Gauss Rifle-------- ; if (player.GetItemCount DLC02WeapGaussRifle > 0) ; ; if (player.GetItemCount AmmoMicroFusionCell >= MaxMicroFusionCell) ; ; ;Do Nothing ; elseif (player.GetItemCount AmmoMicroFusionCell < MaxMicroFusionCell) ; ; set hasAmmo to player.GetItemCount AmmoMicroFusionCell ; set giveAmmo to MaxMicroFusionCell - hasAmmo ; player.AddItem AmmoMicroFusionCell giveAmmo 1 ; set ammoAdded to 1 ; endif ; ; endif ;--------Frag Grenade-------- ; if (player.GetItemCount DLC02WeapGrenadeFrag >= MaxGrenadeFrag ) ; ; ;Do Nothing ; ; elseif (player.GetItemCount DLC02WeapGrenadeFrag < MaxGrenadeFrag ) ; ; set hasAmmo to player.GetItemCount DLC02WeapGrenadeFrag ; set giveAmmo to MaxGrenadeFrag - hasAmmo ; player.AddItem DLC02WeapGrenadeFrag giveAmmo 1 ; set ammoAdded to 1 ; endif ;--------Frag Mine------- ; if (player.GetItemCount DLC02WeapMineFrag >= MaxMineFrag ) ; ; ;Do Nothing ; ; elseif (player.GetItemCount DLC02WeapMineFrag < MaxMineFrag ) ; ; set hasAmmo to player.GetItemCount DLC02WeapMineFrag ; set giveAmmo to MaxMineFrag - hasAmmo ; player.AddItem DLC02WeapMineFrag giveAmmo 1 ; set ammoAdded to 1 ; endif ;--------Minigun-------- if (player.GetItemCount WeapMinigun > 0) if (player.GetItemCount Ammo5mm >= Max5mm ) ;Do Nothing elseif (player.GetItemCount Ammo5mm < Max5mm ) set hasAmmo to player.GetItemCount Ammo5mm set giveAmmo to Max5mm - hasAmmo player.AddItem Ammo5mm giveAmmo 1 set ammoAdded to 1 endif endif ;--------Missile Launcher-------- ; if (player.GetItemCount DLC02WeapMissileLauncher > 0) ; ; if (player.GetItemCount AmmoMissile >= MaxMissile ) ; ; ;Do Nothing ; elseif (player.GetItemCount AmmoMissile < MaxMissile ) ; ; set hasAmmo to player.GetItemCount AmmoMissile ; set giveAmmo to MaxMissile - hasAmmo ; player.AddItem AmmoMissile giveAmmo 1 ; set ammoAdded to 1 ; endif ; ; endif ;--------Sniper Rifle-------- if (player.GetItemCount WeapSniperRifle > 0) if (player.GetItemCount Ammo308Caliber >= Max308Caliber ) ;Do Nothing elseif (player.GetItemCount Ammo308Caliber < Max308Caliber ) set hasAmmo to player.GetItemCount Ammo308Caliber set giveAmmo to Max308Caliber - hasAmmo player.AddItem Ammo308Caliber giveAmmo 1 set ammoAdded to 1 endif endif ;--------Shotgun-------- if (player.GetItemCount WeapShotgunCombat > 0) if (player.GetItemCount AmmoShotgunShell >= MaxShells ) ;Do Nothing elseif (player.GetItemCount AmmoShotgunShell < MaxShells ) set hasAmmo to player.GetItemCount AmmoShotgunShell set giveAmmo to MaxShells - hasAmmo player.AddItem AmmoShotgunShell giveAmmo 1 set ammoAdded to 1 endif endif if (ammoAdded == 1) PlaySound3d FXObjectUse ShowMessage DLC02AmmoRefill activate elseif (ammoAdded == 0) PlaySound3d QSTToneSequenceFail ShowMessage DLC02AmmoFull activate endif pms DLC02DeRezItemShader set timerToStopShader to 2 set flickering to 1 set switched to 1 endif End Begin GameMode ;-----Flickering Stuff---- if flickering == 1 if timerToStopShader > 0 set timerToStopShader to timerToStopShader - getSecondsPassed else sms DLC02DeRezItemShader set flickering to -1 endif endif if myTimer < DLC02RezFlickerTime set myTimer to myTimer + getSecondsPassed if flickering == 0 if myTimer >= flickerOnSecond playSound3D FXObjectHighlight pms DLC02DeRezItemShader set timerToStopShader to 2 set flickering to 1 endif endif elseif flickering != 1 set myTimer to 0 set flickering to 0 ;pick a random second to start flickering next pass set flickerOnSecond to GetRandomPercent * DLC02RezFlickerTime/100 + 1 ;example, if DLC02RezFlickerTime == 25, this rolls a die between 1 and 25 endif End These are the only two scripts I was fussing with. The final script I would probably need is one that makes it an actual quest that appears in your Pip-boy with Marker's and everything. It would start when the player picks up a note from either their Tenpenny or Megaton house and point them to the next note, which points to the next and so on. Hopefully the quest would only spawn the notes once the player has read the previous note, so that they cannot jump ahead in the line of clues. Unfortunately I can't give you the details on the clue note locations yet. It ends when they pick up the key to the front door of the base. I've been trying to get the Pristine Nuka Cola Machine to function in the base, but instead of switching out Nuka Cola for Ice Cold Nuka, it just eats the Nuka Colas. I had thought I at least get the add Nuka . I didn't do anything to the script that's the machine is already using. I've copy pasted the machine from the Megaton House and even tried attaching the script it uses to another Nuka Cola Machine I've placed in the level. I also hoped with your insight you might be able to tell me how I can get a Bobblehead display in Pleasant Burrows to retroactively update the bobbleheads the player finds. The Nuka Machine and Bobble Display both sound like scripting issues to me, but judging on the breadth of the work I know you've done I think you probably have a better understanding of what may be happening. At least with the Nuka machines, there seems to be 2 seperate scripts for the Megaton and Tenpenny house sets, so it might be the scripts. I've got another script matter but its a simple task of making a door open by a switch on one side of it and I think I'll be able to get that to work on my own. If not I'll have to pester you, sorry. I'll try my hardest to see if I can't at least resolve this matter on my own. That's all for now...I think. Please ask if I was not as clear as you'd like on some of the functionality. Link to comment Share on other sites More sharing options...
Recommended Posts