The installation instructions are pretty vague and say nothing of SSE so this is a method. There are two xEdits- one is on git hub, the other is specifically for SSE found on the nexus. This works for the nexus xEdit SSE.
Extract the zip from the above link and put it somwhere that isn't documents, desktop, or downloads, into a folder. Extract the MXPF zip. Move only the folder "Edit Scripts" into the folder containing xedit, which already has an 'edit scripts' folder- so the contents of MXPF go into it.
If you are using Flora Respawn Fix, then the script also goes into this same Edit Scripts folder. :)
I just kept getting the error 'mteFunctions' on line 2261: Array index out of bounds", then I updated the mteFunctions.pas from github, and now it says 'mteFunctions' on line 2307: Array index out of bounds"
For those encountering the same problem - the script on github - https://github.com/matortheeternal/mxpf/blob/master/Edit%20Scripts/lib/mteFunctions.pas - got updated 2 months ago (May 2023) with a fix for this issue.
This is an even simpler way to install this thing. 1) Open where you have SSE edit. 2) Open this archive. 3) Find Edit Scripts directory in the archive. 4) Drag the directory from the archive to your SSE Edit directory. 5) Overwrite what is needed. 6) Close archive.
I'm Trying to do this for OddsnEnds and I did what it showed in the video but I get an error 'mteFunctions' on line 2261: Array index out of bounds? This is used for SSE atm as an alternative to additem menu. Any suggestions?
Trying to make one of the scripts here work on weapons for damage Tried a hundred variations of it and nothing seems to be working it returns either an error for line 31 complaining about a semicolon which ofc is not there in the original script or if I remove the keyword filter it simply returns with a complaint that it found no weapon entries in my plugins. None of this makes any sense to me. Please help. This is where I am currently.
{ MXPF - Rebalance Armors by matortheeternal
Sample MXPF Script, sets all heavy armor to have 1200% higher Damage. } unit UserScript; uses 'lib\mxpf'; function Initialize: Integer; var i: integer; damage, newDamage: real; rec: IInterface; begin // set MXPF options and initialize it DefaultOptionsMXPF; InitializeMXPF;
// select/create a new patch file that will be identified by its author field PatchFileByAuthor('TestMXPF'); SetExclusions(mxBethesdaSkyrimFiles); // excludes bethesda files from record loading LoadRecords('WEAP'); // loads all Armor records
// you can filter the loaded records like this // it's important that the loop starts at MaxRecordIndex and goes down to 0 // because we're removing records for i := MaxRecordIndex down to 0 do begin rec := GetRecord(i); // remove records that don't have the WeapMaterialElven keyword if not HasKeyword(rec, 'WeapMaterialElven') then RemoveRecord(i) // remove records with Data - Damage = 0 else if (genv(rec, 'DATA - Game Data\Damage') = 0) then RemoveRecord(i); end;
// then copy records to the patch file CopyRecordsToPatch;
// and set values on them for i := 0 to MaxPatchRecordIndex do begin rec := GetPatchRecord(i); damage := StrToFloat(geev(rec, 'DATA - Game Data')); newDamage := Int(damage * 13.30); AddMessage(Format('Changed damage from %0.2f to %0.2f on %s', [damage, newDamage, Name(rec)])); seev(rec, 'DATA - Game Data', FloatToStr(newDamage)); end;
// call PrintMXPFReport for a report on successes and failures PrintMXPFReport;
// always call FinalizeMXPF when done FinalizeMXPF; end; end.and original now below { MXPF - Rebalance Armors by matortheeternal
Sample MXPF Script, sets all heavy armor to have 25% higher armor rating. } unit UserScript; uses 'lib\mxpf'; function Initialize: Integer; var i: integer; armorRating, newArmorRating: real; rec: IInterface; begin // set MXPF options and initialize it DefaultOptionsMXPF; InitializeMXPF;
// select/create a new patch file that will be identified by its author field PatchFileByAuthor('TestMXPF'); SetExclusions(mxBethesdaSkyrimFiles); // excludes bethesda files from record loading LoadRecords('ARMO'); // loads all Armor records
// you can filter the loaded records like this // it's important that the loop starts at MaxRecordIndex and goes down to 0 // because we're removing records for i := MaxRecordIndex downto 0 do begin rec := GetRecord(i); // remove records that don't have the ArmorLight keyword if not HasKeyword(rec, 'ArmorLight') then RemoveRecord(i) // remove records with DNAM - Armor Rating = 0 else if (genv(rec, 'DNAM - Armor Rating') = 0) then RemoveRecord(i); end;
// then copy records to the patch file CopyRecordsToPatch;
// and set values on them for i := 0 to MaxPatchRecordIndex do begin rec := GetPatchRecord(i); armorRating := StrToFloat(geev(rec, 'DNAM')); newArmorRating := Int(armorRating * 1.25); AddMessage(Format('Changed armor rating from %0.2f to %0.2f on %s', [armorRating, newArmorRating, Name(rec)])); seev(rec, 'DNAM', FloatToStr(newArmorRating)); end;
// call PrintMXPFReport for a report on successes and failures PrintMXPFReport;
// always call FinalizeMXPF when done FinalizeMXPF; end; end.
I got directed here from a Special Edition mod. This says it requires xEdit for Skyrim Classic. Does this work for SSE? If so, to where do I unpack the files from the download? Sorry, I'm new to this...
Edit: I figured it out, I just need to run the game and see if its working
Thanks, kudos. Video is 23 minutes, while 2 phrases can tell you how to install it. Cheers. In my case I only need it for a patch for FO4 Crafting Framework.
i like how a year later OP still hasnt respondeded to "what did you do?". as i dont know what SSEEDIT.exe is. is that a modified name for the gamm launcher? sigh.. weight is dumb
It's a Skyrim SE specific version of xEdit, an application to analyze ESM/ESP/ESL files and resolve conflicts between them. You'll also want to check out LOOT as it not only allows you to sort your mods intelligently, but shows you possible conflicts and dirty edits in multiple files.
As for what to do, see AstroGazer's post after you've installed it.
i wish that this third party edit to an editing software that most users wouldent need, would stop being required for some mods to work even though they could easily just compress bsa files into a bashed patch. but nooooo they have to require the editor which doesnt work on my computer due to the way i have steam set up. (this isnt exactly a problem with this edit, but rather of mods that could get away with bashed patches and decide not to making things infinetly more complicated for steam users of skyrim special edition, im glad you made this but im not glad that people are requiring this edit when they could use standerd forms of modding. 'tldr i understand that this mod is great for modders and for people who actually cant do the bashed patch, but when you can and it requires another program it makes me frustrated. also i cant even get the editor to launch due to steam library issues and install locations being different on different drives etc. i know this is a very specific issue but still.)
Hey Mator. I just want to say thanks for all the great utilities. My game would be just a fraction of what it is without them. I hope you had as much fun developing them, as I have had using them.
Looks like there's an error in the example script for armor rebalance?
// remove records that don't have the ArmorLight keyword if not HasKeyword(rec, 'ArmorLight') then RemoveRecord(i) The script is supposed to buff heavy armors, but it removes everything but ArmorLight-keyworded items?
248 comments
Extract the zip from the above link and put it somwhere that isn't documents, desktop, or downloads, into a folder.
Extract the MXPF zip. Move only the folder "Edit Scripts" into the folder containing xedit, which already has an 'edit scripts' folder- so the contents of MXPF go into it.
If you are using Flora Respawn Fix, then the script also goes into this same Edit Scripts folder. :)
I just kept getting the error 'mteFunctions' on line 2261: Array index out of bounds", then I updated the mteFunctions.pas from github, and now it says 'mteFunctions' on line 2307: Array index out of bounds"
1) Open where you have SSE edit.
2) Open this archive.
3) Find Edit Scripts directory in the archive.
4) Drag the directory from the archive to your SSE Edit directory.
5) Overwrite what is needed.
6) Close archive.
{
and original now belowMXPF - Rebalance Armors
by matortheeternal
Sample MXPF Script, sets all heavy armor to have 1200% higher
Damage.
}
unit UserScript;
uses 'lib\mxpf';
function Initialize: Integer;
var
i: integer;
damage, newDamage: real;
rec: IInterface;
begin
// set MXPF options and initialize it
DefaultOptionsMXPF;
InitializeMXPF;
// select/create a new patch file that will be identified by its author field
PatchFileByAuthor('TestMXPF');
SetExclusions(mxBethesdaSkyrimFiles); // excludes bethesda files from record loading
LoadRecords('WEAP'); // loads all Armor records
// you can filter the loaded records like this
// it's important that the loop starts at MaxRecordIndex and goes down to 0
// because we're removing records
for i := MaxRecordIndex down to 0 do begin
rec := GetRecord(i);
// remove records that don't have the WeapMaterialElven keyword
if not HasKeyword(rec, 'WeapMaterialElven') then
RemoveRecord(i)
// remove records with Data - Damage = 0
else if (genv(rec, 'DATA - Game Data\Damage') = 0) then
RemoveRecord(i);
end;
// then copy records to the patch file
CopyRecordsToPatch;
// and set values on them
for i := 0 to MaxPatchRecordIndex do begin
rec := GetPatchRecord(i);
damage := StrToFloat(geev(rec, 'DATA - Game Data'));
newDamage := Int(damage * 13.30);
AddMessage(Format('Changed damage from %0.2f to %0.2f on %s', [damage, newDamage, Name(rec)]));
seev(rec, 'DATA - Game Data', FloatToStr(newDamage));
end;
// call PrintMXPFReport for a report on successes and failures
PrintMXPFReport;
// always call FinalizeMXPF when done
FinalizeMXPF;
end;
end.
{
MXPF - Rebalance Armors
by matortheeternal
Sample MXPF Script, sets all heavy armor to have 25% higher
armor rating.
}
unit UserScript;
uses 'lib\mxpf';
function Initialize: Integer;
var
i: integer;
armorRating, newArmorRating: real;
rec: IInterface;
begin
// set MXPF options and initialize it
DefaultOptionsMXPF;
InitializeMXPF;
// select/create a new patch file that will be identified by its author field
PatchFileByAuthor('TestMXPF');
SetExclusions(mxBethesdaSkyrimFiles); // excludes bethesda files from record loading
LoadRecords('ARMO'); // loads all Armor records
// you can filter the loaded records like this
// it's important that the loop starts at MaxRecordIndex and goes down to 0
// because we're removing records
for i := MaxRecordIndex downto 0 do begin
rec := GetRecord(i);
// remove records that don't have the ArmorLight keyword
if not HasKeyword(rec, 'ArmorLight') then
RemoveRecord(i)
// remove records with DNAM - Armor Rating = 0
else if (genv(rec, 'DNAM - Armor Rating') = 0) then
RemoveRecord(i);
end;
// then copy records to the patch file
CopyRecordsToPatch;
// and set values on them
for i := 0 to MaxPatchRecordIndex do begin
rec := GetPatchRecord(i);
armorRating := StrToFloat(geev(rec, 'DNAM'));
newArmorRating := Int(armorRating * 1.25);
AddMessage(Format('Changed armor rating from %0.2f to %0.2f on %s', [armorRating, newArmorRating, Name(rec)]));
seev(rec, 'DNAM', FloatToStr(newArmorRating));
end;
// call PrintMXPFReport for a report on successes and failures
PrintMXPFReport;
// always call FinalizeMXPF when done
FinalizeMXPF;
end;
end.
Edit: I figured it out, I just need to run the game and see if its working
(You could also watch the vid.)
It's a Skyrim SE specific version of xEdit, an application to analyze ESM/ESP/ESL files and resolve conflicts between them. You'll also want to check out LOOT as it not only allows you to sort your mods intelligently, but shows you possible conflicts and dirty edits in multiple files.
As for what to do, see AstroGazer's post after you've installed it.
Really, thanks for everything.
// remove records that don't have the ArmorLight keyword
if not HasKeyword(rec, 'ArmorLight') then
RemoveRecord(i)
The script is supposed to buff heavy armors, but it removes everything but ArmorLight-keyworded items?