Everybody who's spent more than five minutes modding Fallout knows that editing proto files is a dangerous business. The game hates you for it and tries everything it can to stop you from doing it. It is said that every time someone edits a proto MCA feels a sharp pain in his lower abdomen.
Anyway, Timeslip in his infinite wisdom has given us the get/set_proto_data functions which let us all avoid the horrors of proto editing in favor of harmless scripting. The only problem is that it's never really clear under which value the juicy proto bits are stored, so I thought I might as well do some exploring using a variation of the method described by Nirran here and make a database. I just looked for data I thought could be useful to me, and skipped some other ones, but you pretty easily guess the missing ones by just checking here and comparing with the data listed below (e.g. I didn't check the "number of the list of the critical failures possible for this weapon", but you can deduce from the order that it's 76). The only very slight downside to the scripting approach is that the new data is temporary (reload the game and it's gone), but this can be easily circumvented by just checking for a return to the old value and resetting it in that case.
Proto General
ObjectID: 0 (the numbers in the header files)
TextID: 4 (usually ObjectID * 100)
Items General
Flags Ext: 25 (if not a weapon, it's -16777xxx, with xxx being 040 for items both usable on yourself and others, 048 for only usable on self, 56 for unusable, 200 for chems, 184 for containers, and 216 for what I think are quest related items, but I'm not sure).
Item Type: 32
Material: 108 (I don't think they did this consistently; a first aid book for instance comes up as metal, but I tried it with Leather Armor and sure enough leather pops up)
Size: 112
Cost: 120
Weight: 116
Weapons
Flags Extended: 25 (what I understand so far is that you want -16777xxy, with xx being either 21 or 05 and y being 6 for a onehanded weapon, 4 for a non-biggun twohanded weapon, and 3 for a biggun)
Min Dam: 40
Max Dam: 44
Max Range 1: 52
Max Range 2: 56
Min St: 64
AP cost 1: 68
AP cost 2: 72
Burst Rounds: 84
Magazine Size: 96
Armor
AC: 36
DR Normal: 40
DR Laser: 44
DR Fire: 48
DR Plasma: 52
DR Electrical: 56
DR EMP: 60
DR Explosion: 64
DT Normal: 68
DT Laser: 72
DT Fire: 76
DT Plasma: 80
DT Electrical: 84
DT EMP: 88
DT Explosion: 92
Drugs
Changed Stats Immediate: 36, 40, 44 (look in define.h for the relevant values; e.g. charisma is 3, sequence is 13, etc.)
Changed Amount Immediate: 48, 52, 56
Duration 1: 60 (in minutes)
Changed Amount after first duration: 64, 68, 72
Duration 2: 76 (in minutes)
Changed Amount after second duration: 80, 84, 88
Addiction Rate: 92
Ammunition
Caliber: 36 (check the proto.msg from 300 on for the values)
Mag Size: 40
AC mod: 44
DR Mod: 48
Damage multiplier: 52
Damage divisor: 56
Critters
base stats:
ST: 36
PE: 40
EN: 44
CH: 48
IN: 52
AG: 56
LK: 60
HP: 64
AP: 68
AC: 72
Melee Dam: 80
Carry Weight: 84
Sequence: 88
Heal Rate: 92
Crit Chance: 96
Resistances:
DT Normal: 244
DT Laser: 248
DT Fire: 252
DT Plasma: 256
DT Electrical: 260
DT EMP: 264
DT Explosion: 268
DR Normal: 272
DR Laser: 276
DR Fire: 280
DR Plasma: 284
DR Electrical: 288
DR EMP: 292
DR Explosion: 296
skills extra (so on top of the skill's base value of, for instance, 4*AG in the case of throwing):
Small Guns: 316
Big Guns: 320
Energy Weapons: 324
Unarmed: 328
Melee: 332
Throwing: 336
First aid: 340
Doctor: 344
Sneak: 348
Lockpick: 352
Steal: 356
Traps: 360
Science: 364
Repair: 368
Speech: 372
Barter: 376
Gambling: 380
Outdoorsman:384
misc:
Body Type: 388 (0 for biped, 1 for quadruped, 2 for robotic)
Experience Value: 392
Kill Type: 396 (check define.h for the value)
Anyway, Timeslip in his infinite wisdom has given us the get/set_proto_data functions which let us all avoid the horrors of proto editing in favor of harmless scripting. The only problem is that it's never really clear under which value the juicy proto bits are stored, so I thought I might as well do some exploring using a variation of the method described by Nirran here and make a database. I just looked for data I thought could be useful to me, and skipped some other ones, but you pretty easily guess the missing ones by just checking here and comparing with the data listed below (e.g. I didn't check the "number of the list of the critical failures possible for this weapon", but you can deduce from the order that it's 76). The only very slight downside to the scripting approach is that the new data is temporary (reload the game and it's gone), but this can be easily circumvented by just checking for a return to the old value and resetting it in that case.
Proto General
ObjectID: 0 (the numbers in the header files)
TextID: 4 (usually ObjectID * 100)
Items General
Flags Ext: 25 (if not a weapon, it's -16777xxx, with xxx being 040 for items both usable on yourself and others, 048 for only usable on self, 56 for unusable, 200 for chems, 184 for containers, and 216 for what I think are quest related items, but I'm not sure).
Item Type: 32
Material: 108 (I don't think they did this consistently; a first aid book for instance comes up as metal, but I tried it with Leather Armor and sure enough leather pops up)
Size: 112
Cost: 120
Weight: 116
Weapons
Flags Extended: 25 (what I understand so far is that you want -16777xxy, with xx being either 21 or 05 and y being 6 for a onehanded weapon, 4 for a non-biggun twohanded weapon, and 3 for a biggun)
Min Dam: 40
Max Dam: 44
Max Range 1: 52
Max Range 2: 56
Min St: 64
AP cost 1: 68
AP cost 2: 72
Burst Rounds: 84
Magazine Size: 96
Armor
AC: 36
DR Normal: 40
DR Laser: 44
DR Fire: 48
DR Plasma: 52
DR Electrical: 56
DR EMP: 60
DR Explosion: 64
DT Normal: 68
DT Laser: 72
DT Fire: 76
DT Plasma: 80
DT Electrical: 84
DT EMP: 88
DT Explosion: 92
Drugs
Changed Stats Immediate: 36, 40, 44 (look in define.h for the relevant values; e.g. charisma is 3, sequence is 13, etc.)
Changed Amount Immediate: 48, 52, 56
Duration 1: 60 (in minutes)
Changed Amount after first duration: 64, 68, 72
Duration 2: 76 (in minutes)
Changed Amount after second duration: 80, 84, 88
Addiction Rate: 92
Ammunition
Caliber: 36 (check the proto.msg from 300 on for the values)
Mag Size: 40
AC mod: 44
DR Mod: 48
Damage multiplier: 52
Damage divisor: 56
Critters
base stats:
ST: 36
PE: 40
EN: 44
CH: 48
IN: 52
AG: 56
LK: 60
HP: 64
AP: 68
AC: 72
Melee Dam: 80
Carry Weight: 84
Sequence: 88
Heal Rate: 92
Crit Chance: 96
Resistances:
DT Normal: 244
DT Laser: 248
DT Fire: 252
DT Plasma: 256
DT Electrical: 260
DT EMP: 264
DT Explosion: 268
DR Normal: 272
DR Laser: 276
DR Fire: 280
DR Plasma: 284
DR Electrical: 288
DR EMP: 292
DR Explosion: 296
skills extra (so on top of the skill's base value of, for instance, 4*AG in the case of throwing):
Small Guns: 316
Big Guns: 320
Energy Weapons: 324
Unarmed: 328
Melee: 332
Throwing: 336
First aid: 340
Doctor: 344
Sneak: 348
Lockpick: 352
Steal: 356
Traps: 360
Science: 364
Repair: 368
Speech: 372
Barter: 376
Gambling: 380
Outdoorsman:384
misc:
Body Type: 388 (0 for biped, 1 for quadruped, 2 for robotic)
Experience Value: 392
Kill Type: 396 (check define.h for the value)