munkyfish Posted November 16, 2008 Share Posted November 16, 2008 ok so i have been trying to add new schematics to the game and its driveing me mad if any one has been able to do this yet please let me know what you did my last try has resulted in the workbench not working :wallbash: Link to comment Share on other sites More sharing options...
w0t Posted November 16, 2008 Share Posted November 16, 2008 what did you do? :E Link to comment Share on other sites More sharing options...
munkyfish Posted November 16, 2008 Author Share Posted November 16, 2008 ok here is what i got so far created a new laserwepon formID: 01061793, EDID WeapPersonalisedLaserRifle(useing the laser rifel as the model) created a new schematics for the wepon FormID: 010baffb,EDID SchematicsPersonalisedLaserRifleuseing the bottelcap mine as a template i changed the SCRI to point to CE 3B 03 01 (when reversed becomes formID 01033BCE) created notes for the Schematics FormID: 01033bce, EDID SchematicsPersonalisedLaserRifleNoteFormID: 010c33ae, EDID SchematicsPersonalisedLaserRifle10FormID: 010c33af, SchematicsPersonalisedLaserRifle20again useing the bottelcap mine as a template i then created the success and failure messages and descriptions i created in the GRUP(GLOB) countPersonalisedLaserRifle and countPersonalisedLaserRifleBonus next the scripts in SCPT i added FormID: 010baff9, EDID SchematicsPersonalisedLaserRifleItemSCRIPT in that i made the SCTX scn SchematicsPersonalisedLaserRifleItemSCRIPT short AddOnce BEGIN OnAdd player if (AddOnce == 0) ;If the player already has a copy of the schematic, getting another improves the quality of the created item. ;Second Improvement if (player.gethasnote SchematicsPersonalisedLaserRifleNote10 == 1) ;Increment a variable for number of times this schematic has been gotten. set countPersonalisedBonus to 1.25 ;Show message of quality improvement. ShowMessage SchematicsImprovedMsg player.removeNote SchematicsPersonalisedLaserRifleNote10 player.addNote SchematicsPersonalisedLaserRifleNote20 ;Remove this item from inventory set AddOnce to 1 removeme ;First Improvement elseif (player.gethasnote SchematicsPersonalisedLaserRifleNote == 1) ;Increment a variable for number of times this schematic has been gotten. set countPersonalisedBonus to 1 ;Show message of quality improvement. ShowMessage SchematicsImprovedMsg player.removeNote SchematicsPersonalisedLaserRifleNote player.addNote SchematicsPersonalisedLaserRifleNote10 ;Remove this item from inventory set AddOnce to 1 removeme ;Otherwise, just add the note elseif (player.gethasnote SchematicsPersonalisedLaserRifleNote20 == 0) ;Add the Schematic Note player.addNote SchematicsPersonalisedLaserRifleNote ;Remove this item from inventory set AddOnce to 1 removeme endif endif END and set the SCRO enterys to point to the right places i then copied (and in here i think the problem is ) FormID: 0001b01e EDID SchematicsWorkbenchScript in this i changed the SCTX to scn SchematicsWorkbenchScript CHUNK OF CODE MISSED TO SAVE SPACE ;short countPersonalisedLaserRifle Begin OnActivate if IsActionRef player == 1 ; display message box of possible weapons set HasItems to 0 if GetHasNote SchematicsBottlecapMineNote == 1 || GetHasNote SchematicsDartGunNote == 1 || GetHasNote SchematicsDeathclawGauntletNote == 1 set HasItems to 1 endif if GetHasNote SchematicsNukaCocktailNote == 1 || GetHasNote SchematicsRailwayRifleNote == 1 || GetHasNote SchematicsRockitLauncherNote == 1 || GetHasNote SchematicsShishkebabNote == 1 || GetHasNote SchematicsPersonalisedLaserRifleNote == 1 set HasItems to 1 endif if GetHasNote SchematicsBottlecapMineNote10 == 1 || GetHasNote SchematicsDartGunNote10 == 1 || GetHasNote SchematicsDeathclawGauntletNote10 == 1 set HasItems to 1 endif if GetHasNote SchematicsNukaCocktailNote10 == 1 || GetHasNote SchematicsRailwayRifleNote10 == 1 || GetHasNote SchematicsRockitLauncherNote10 == 1 || GetHasNote SchematicsShishkebabNote10 == 1 || GetHasNote SchematicsPersonalisedLaserRifleNote10 == 1 set HasItems to 1 endif if GetHasNote SchematicsBottlecapMineNote20 == 1 || GetHasNote SchematicsDartGunNote20 == 1 || GetHasNote SchematicsDeathclawGauntletNote20 == 1 || GetHasNote SchematicsRockitLauncherNote30 == 1 set HasItems to 1 endif if GetHasNote SchematicsNukaCocktailNote20 == 1 || GetHasNote SchematicsRailwayRifleNote20 == 1 || GetHasNote SchematicsRockitLauncherNote20 == 1 || GetHasNote SchematicsShishkebabNote20 == 1 || if GetHasNote SchematicsPersonalisedLaserRifleNote20 == 1 set HasItems to 1 endif if HasItems == 1 ShowMessage SchematicsWorkbenchMsg else ShowMessage SchematicsWorkbenchNoneMsg endif endif End Begin GameMode if weaponCondition > 100 set weaponCondition to 100 endif player.AddItemHealthPercent WeapShishkebab 1 weaponCondition PlaySound UIRepairWeapon ; increment count ModPCMiscStat "Weapons Created" 1 set countShishkebab to countShishkebab + 1 BIG CHUNK OF CODE MISSED OUT TO SAVE SPACE elseif button == 8 ; Personalised Laser Rifle ; 1. check for schematics if GetHasNote SchematicsPersonalisedLaserRifleNote == 0 ShowMessage SchematicsWorkbenchFailureGenericMsg else ; 2. check for components if ( player.GetItemCount SensorModule > 0 ) && ( player.GetItemCount Conductor > 0 ) && ( player.GetItemCount FissionBattery > 0 ) && ( player.GetItemCount LaserRifle > 0 ) ; 3. make it ShowMessage SchematicsWorkbenchSuccessPersonalisedLaserRifleMsg player.RemoveItem SensorModule 1 1 player.RemoveItem Conductor 1 1 player.RemoveItem FissionBattery 1 1 player.RemoveItem LaserRifle 1 1 ; calculate condition set weaponCondition to (weaponCondition * countPersonalisedLaserRifleBonus) if weaponCondition > 100 set weaponCondition to 100 endif PlaySound UIRepairWeapon ; increment count ModPCMiscStat "Weapons Created" 1 set countPersonalisedLaserRifle to countPersonalisedLaserRifle + 1 ;If the player has made one of each item, add Achievement 40 if countWeapAchievement == 0 if countBottlecap >= 1 && countDartgun >= 1 && countDeathclaw >= 1 && countNuka >= 1 && countRailway >= 1 && countRockit >= 1 && countShishkebab >= 1 && countPersonalisedLaserRifle >= 1 addachievement 40 set countWeapAchievement to 1 endif endif else ; 4. failure message set item1 to player.GetItemCount SensorModule set item2 to player.GetItemCount Conductor set item3 to player.GetItemCount FissionBattery set item4 to player.GetItemCount LaserRifle ShowMessage SchematicsWorkbenchFailurePersonalisedLaserRifleMsg, item1, item2, item3, item4 ShowMessage SchematicsWorkbenchMsg endif endif endif endif End and last i added any missing SCRO (pointers as they point to all the needed items and messages i know this is alot but if anyone can see my problems please help Link to comment Share on other sites More sharing options...
Vagrant0 Posted November 17, 2008 Share Posted November 17, 2008 Last I was aware, there was no way to compile scripts, so there is no way to make changes to any scripting. I havn't really been following too closely, but don't think this has been done yet. Non-compiled scripts will not work, and if you are parenting with the master, may cause those scripts to stop working. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.