Jump to content


Photo
- - - - -
testing

SkyTweak and other tools

mod

  • Please log in to reply
45 replies to this topic

#16 GrimyBunyip

GrimyBunyip

    Prisoner

  • Mod Authors
  • 17 posts

Posted 01 May 2013 - 09:18 AM

It is a great mod with a LOT of possibilities... maybe too much ^^
I'm wondering is there a way to properly uninstall the mod or changes stay in the save?

You should try it before you knock it just for having too many options.
Because what's inherently bad about too many options anyways?

As for uninstallation, a few options have magic effects. Like 4 of them.
All of them have checkboxes, so just uncheck them.
If you do that, you're dandy, just uncheck the mod from your load order.
That's it.
  • 0

#17 Redferne

Redferne

    Commander

  • Members
  • PipPipPipPip
  • 212 posts

Posted 01 May 2013 - 10:35 AM

Thx for the sarcasm... I really want to test it further now. From the rest of your post I assume that if you undo any modification made, you just have to save, uninstall the mod and restart and you are back to square one. But if you made so many modifiactions that you don't know how to revert back, what can you do? I guess that's the purpose of the reset section, am I right? You have to assume when you made a mod with so much possibilities to screw up that someone will eventually ask you how to undo everything and if their saves are dead or not, don't you? Edit: Don't get me wrong, I really like your mods but they lack of documentation.
  • 0

#18 GrimyBunyip

GrimyBunyip

    Prisoner

  • Mod Authors
  • 17 posts

Posted 01 May 2013 - 10:45 AM

Thx for the sarcasm... I really want to test it further now.

From the rest of your post I assume that if you undo any modification made, you just have to save, uninstall the mod and restart and you are back to square one.
But if you made so many modifiactions that you don't know how to revert back, what can you do? I guess that's the purpose of the reset section, am I right?
You have to assume when you made a mod with so much possibilities to screw up that someone will eventually ask you how to undo everything and if their saves are dead or not, don't you?

The vast majority of gamesettings edited by SkyTweak automatically revert when you exit the game.
Each time you load a save, SkyTweak needs to unrevert the settings.
The same goes for any other script based gamesetting mod out there.

There may be bugs where SkyTweak fails to unrevert a setting.
But there is no possibility of modifications not reverting back when SkyTweak is uninstalled.
That is one bug that is impossible.

There's a few settings that don't revert, but they're fairly obvious what they are.
Health, Magicka, Stamina, Carry weight, etc. Actor values tend not to revert automatically, with the exception of speed mult, unarmed damage, etc.

The purpose of the reset button is just for convenience.

Finally, "so much possibilities" is inaccurate. Like I said the mod is generated by compiler, and there's just shy of 10 different functions used in the compiler.
So there's less than 10 possible sources of bugs.

edit: probably worth noting that I keep the majority of my documentation in game.
All the options have information on highlight when you mouse over them.

If you don't feel like trying SkyTweak to access that you can use this instead:
This is the exact same sheet I use to create SkyTweak.
https://docs.google....S1E&usp=sharing
The compiler parses the leftmost column of on the "Menu" tab uses that to create SkyTweak's code.
  • 0

#19 Redferne

Redferne

    Commander

  • Members
  • PipPipPipPip
  • 212 posts

Posted 01 May 2013 - 12:41 PM

Thx for the google doc, it's very interesting (well at least for me). It's a great mod, I had a lot of fun playing with some magic and experience settings today :)
  • 0

#20 z929669

z929669

    Ixian Inventor

  • Administrators
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 9,258 posts

Posted 01 May 2013 - 03:36 PM

Compatibility Scans are performed during the 3 following events:
- The SkyTweak MCM menu is openned
- The System Menu is openned
- The System Menu is closed

OK, I'll jump in now. You have provided all of the answers, but some are implicit or contain double negatives ... my brain requires explicit terms :P

According to this conversation, there are three mod types addressed that alter GMSTs:

  • Script-based mods that almost constantly edit GMSTs during gameplay (examples ?) | Potential problem & solution?
  • Script-based mods that periodicaly edit GMSTs during gameplay (e.g., Stealth Skills Rebalanced) | Potential problem & solution?
  • Script-base (or non-script-based) mods that alter GMSTs at game launch or by some explicit trigger like MCM (e.g., Trade & Barter) | Potential problem & solution?
  • Others?

For a mod like Stealth Skills Rebalanced' date=' that edits gamesettings several times during gameplay[/color'],
So all that needs to happen is the player needs to save the game without opening the System Menu.
IE it needs to be an autosave, a quicksave, or a console command save.

... for what to happen exactly ... or to prevent what?
 


But in the case of a mod like SSR' date=' this is a trivial problem since SSR edits gamesettings periodically.
So the disparity would only last for a few seconds right after the player loads his game.

SSR = Stealth Skills Rebalanced? If so, does it correspond to type #1 or #2 above, and is there a difference in SkyTweak behavior for #1 & #2?
 


For a mod like Trade and Barter, that edits gamesettings exclusively through an MCM menu and immediately after the game loads:
We can ignore the initial game load since SkyTweak will scan upon game load.

We can ignore with respect to what exactly? SkyTweak will pick up the T&B-modified GMST or it will not?
 


For the case of the MCM menu: the player must open Trade and barter
make a change then immediately save the game without exiting the System menu and without opening SkyTweak.

... to cause what exactly ... or prevent what?
 


The vast majority of gamesettings edited by SkyTweak automatically revert when you exit the game.
Each time you load a save, SkyTweak needs to unrevert the settings.
The same goes for any other script based gamesetting mod out there.

So Skytweak GMST modifications are not "sticky" within the save games? ... or SkyTweak actively reverts each of its GMST modifications upon exit? Does it use a diff? If so, how is this stored? (not looking for technical detail here)

Unrevert is confusing ... do you mean revert (i.e., unapply) its own changes after having already applied them?
 


There may be bugs where SkyTweak fails to unrevert a setting.
But there is no possibility of modifications not reverting back when SkyTweak is uninstalled.
That is one bug that is impossible.

Does this mean: 100% probability of reverting back?

TIA



#21 Departed_1

Departed_1

    Jarl

  • Mod Authors
  • PipPipPipPipPipPipPipPipPip
  • 738 posts

Posted 01 May 2013 - 04:16 PM

I can try to answer a couple of these.

SSR = Stealth Skills Rebalanced? If so, does it correspond to type #1 or #2 above, and is there a difference in SkyTweak behavior for #1 & #2?


Yes, Stealth Skills Rebalanced was the mod being referenced here. It would be #2 by your definitions, as it only changes the settings at certain points in the game, not constantly. Also, it might be worth pointing out that it only does this for one game setting: PickpocketMaxChance. Every other game setting that gets changed by Stealth Skills Rebalanced is done directly (i.e. values are edited in the CK and saved in the .esp...not with a script), so if it weren't for PickpocketMaxChance, SSR would correspond to #3.

Does this mean: 100% probability of reverting back?


Scripted changes to Game Settings are not saved, so a mod can either choose to 1) directly edit the game settings and save this in the .esp or 2) use a script plus a secondary maintenance script. This is how most mods deal with using a script to change a game setting... The mod will create a new Global Variable that will correspond to the Game Setting being changed. When the script changes the Game Setting, it will also change the Global Variable. When a player saves & exits the game, the Global Variable gets saved, but the Game Setting reverts back to whatever it was prior to the script change (either the vanilla value or the value as defined by another mod that is using an .esp to directly change that setting).

The mod using scripted changes will trigger it's maintenance script when the player reloads their game. That script will check what the last saved value for the Global Variable was and change the Game Setting to match. Because of the way this works, as soon as the mod is removed (thereby also removing the Global Variable and the maintenance script), there is nothing left behind to alter the Game Settings when the game is loaded. This is very reliable, so yes, any Game Settings would 100% revert back after the mod was uninstalled.

The changes that SkyTweak is adding through newly created perks would also revert to previous values cleanly, since the changes rely on perks added by the mod that would no longer exist in the game once the mod had been uninstalled.

However, the Actor Values would remain changed even after uninstalling since these are changes that get saved in the game. I wonder if it would be possible for SkyTweak to track any changes made by the player to these values, and then offer a "Uninstall" or "Undo Actor Value Changes" button that would quickly and easily revert those changes back to what they were prior to using SkyTweak?
  • 0

#22 GrimyBunyip

GrimyBunyip

    Prisoner

  • Mod Authors
  • 17 posts

Posted 01 May 2013 - 04:33 PM

It's going to take me a while to answer all your questions, so I'm going to make some images to help clear things up.

This post will be to address the issue of what SkyTweak reverting stuff and uninstalling stuff.

SkyTweak has 225 buttons in total.
Each is generated by a function in my compiler.

There are 9 different functions being used in SkyTweak, they are distributed as follows:
Posted Image
What's colored in blue is what won't revert if SkyTweak is blindly uninstalled.

Here's the full list of what won't revert after a blind uninstall:


As you can see, with the exception of perk points, timescale, and decapitation chance, they're all actor values.
Personally I think it's fairly common sense which options will revert or not revert after an uninstall.

Everything else will revert upon the removal of SkyTweak, or are perks, that will be gone once SkyTweak is removed.
  • 0

#23 GrimyBunyip

GrimyBunyip

    Prisoner

  • Mod Authors
  • 17 posts

Posted 01 May 2013 - 04:53 PM

According to this conversation, there are three mod types addressed that alter GMSTs:

  • Script-based mods that almost constantly edit GMSTs during gameplay (examples ?) | Potential problem & solution?
  • Script-based mods that periodicaly edit GMSTs during gameplay (e.g., Stealth Skills Rebalanced) | Potential problem & solution?
  • Script-base (or non-script-based) mods that alter GMSTs at game launch or by some explicit trigger like MCM (e.g., Trade & Barter) | Potential problem & solution?
  • Others?

The Mod Conflict Problem
The mod conflict problem is the same for all the issues you mentioned.

If SkyTweak fails to catch any edits before a save is performed, the edit's wont be factored into the next game load.
Basically the user will experience a "rollback" in their gamesettings. So lets call it a Rollback from now on.

1. Constantly Editing Mods
I am not aware of any examples of mod type #1 at this moment
But in theory this one would be most likely to miss a GMST scan.
But at the same time, since it edits constantly, it will essentially override SkyTweak constantly.

The "problem" interval will be equal to the register for update time.
So if this mod is registered to update every 30 seconds:
The player loads a "bad" save with rolledback settings.
He plays with rolledback settings for the first 1-30 seconds.
Then gameplay will proceed as expected.

2. Periodically Editing Mods
From my understanding SSR updates on game load and every time a perk is added.
So in order for a rolledback save to occur, the player must add a perk, then must save without triggering a GMST check.
Remember that GMST checks happen on console/system menu open/close events.

So the save must be a quicksave or autosave.

The solution is to open you console or system menu after adding a perk or at any point before saving.
If the solution does occur, the fix is simply to correct the setting in SkyTweak.

3. MCM Menu Mods
There is one loophole that can cause a rollback save with MCM menu mods.
To exploit this loophole he must following the following steps:

The user must edit the setting in this mod.
He must NOT exit the system menu
He may not access the console at any point
He may not access SkyTweak at any point

Basically he needs to immediately exit the MCM menu and save the game without doing anything else to produce a rolledback save.

4 - Hardcoded edits
there should be no issues here, I had bugs during the first week after release but not since then. Only 5 functions are relevant to hardcoded changes and they should be bug free now.

Anyways a possible issue with hardcoded edits is they don't get recorded as "defaults" each time the game is loaded.
  • 0

#24 z929669

z929669

    Ixian Inventor

  • Administrators
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 9,258 posts

Posted 01 May 2013 - 11:16 PM

Ahhhh ... thank you for that explanation. It is all clear now to those of us less versed in the art of scripting/savegame behavior ... i.e., 'me'. (thanks to kryptopyre as well for the background).

For persons like me, this tool would almost never suffer a "rollback" savegame with SkyTweak (I like that term, BTW ... it would seem that this should be formally coined in terms of script-based GMSTs). Meaning, I never use quicksave and navigate the menu often.

So to clarify one last important point explicitly (and correct me if I am wrong):
SkyTweak GMSTs travel with the save games, and only actor-related GMSTs will fail the rollback within a savegame upon SkyTweak uninstallation and subsequent save. These can be manually rolled back using some other method as yet undeveloped.


I think that this tool is great for STEP Packs and standardization of gameplay Packs. We'll need some presets or suggested settings from the experts for various scenarios before that though.

#25 GrimyBunyip

GrimyBunyip

    Prisoner

  • Mod Authors
  • 17 posts

Posted 01 May 2013 - 11:49 PM

Ahhhh ... thank you for that explanation. It is all clear now to those of us less versed in the art of scripting/savegame behavior ... i.e., 'me'. (thanks to kryptopyre as well for the background).

For persons like me, this tool would almost never suffer a "rollback" savegame with SkyTweak (I like that term, BTW ... it would seem that this should be formally coined in terms of script-based GMSTs). Meaning, I never use quicksave and navigate the menu often.

So to clarify one last important point explicitly (and correct me if I am wrong):
SkyTweak GMSTs travel with the save games, and only actor-related GMSTs will fail the rollback within a savegame upon SkyTweak uninstallation and subsequent save. These can be manually rolled back using some other method as yet undeveloped.


I think that this tool is great for STEP Packs and standardization of gameplay Packs. We'll need some presets or suggested settings from the experts for various scenarios before that though.

lets answer these last few questions

SkyTweak GMST's travel with the save game yes, the data is stored in SkyTweak though so if SkyTweak is removed, those GMST's revert to normal.

As for actor related GMST's, they aren't really meant to be rolled back.
The explanation is a bit longwinded so I'll stick it in some spoiler tags.


Finally, on the topic of presets:
Spoiler tags again, because it's going to get longwinded. Again. lol

  • 0

#26 z929669

z929669

    Ixian Inventor

  • Administrators
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 9,258 posts

Posted 02 May 2013 - 12:14 AM

lets answer these last few questions

SkyTweak GMST's travel with the save game yes, the data is stored in SkyTweak though so if SkyTweak is removed, those GMST's revert to normal.

As for actor related GMST's, they aren't really meant to be rolled back.
The explanation is a bit longwinded so I'll stick it in some spoiler tags.

OK, this sounds reasonable. As long as one can in some way flag the 'sticky' changes for manual rollback, this is not an issue IMO.

Finally, on the topic of presets:
Spoiler tags again, because it's going to get longwinded. Again. lol

so ... upon loading your game for the first time after installing SkyTweak, we see the message:

"SkyTweak has imported your settings"

... and after subsequent game launches, we see the message:

"SkyTweak has loaded"

What you seem to be saying is that any mods that only use plugins to statically alter GMSTs and make no other changes can be added to one's load order and essentially merge them into the SkyTweak plugin as in a sort of manual Bashed Patch (assuming in the appropriate position and SkyTweak honers load order of plugin-supplied GMST changes)? Then one simply removes those plugins from the load and rests assured that said plugin changes now reside in SkyTweak plugin until the next import?

This can be invoked via a config file or the console or the MCM interface?

#27 GrimyBunyip

GrimyBunyip

    Prisoner

  • Mod Authors
  • 17 posts

Posted 02 May 2013 - 01:34 AM

OK, this sounds reasonable. As long as one can in some way flag the 'sticky' changes for manual rollback, this is not an issue IMO.

I'm still not sure what you mean by manual rollback.
The user can use either SkyTweak or console commands to set actor values back to whatever they were.
So long as he remembers or can figure out what they should be rolled back to.

so ... upon loading your game for the first time after installing SkyTweak, we see the message:

"SkyTweak has imported your settings"

... and after subsequent game launches, we see the message:

"SkyTweak has loaded"

What you seem to be saying is that any mods that only use plugins to statically alter GMSTs and make no other changes can be added to one's load order and essentially merge them into the SkyTweak plugin as in a sort of manual Bashed Patch (assuming in the appropriate position and SkyTweak honers load order of plugin-supplied GMST changes)? Then one simply removes those plugins from the load and rests assured that said plugin changes now reside in SkyTweak plugin until the next import?

This can be invoked via a config file or the console or the MCM interface?

Correct in regards to the message order

In regards to the "manual Bashed Patch" thing.
Yes, although SkyTweak will only remember GMST's that SkyTweak itself edits.

so if a plugin is used that edits settings not found in SkyTweak, the settings that aren't found won't be remembered.

And it's invoked by the "Full Reset" button in the MCM interface.
  • 0

#28 Departed_1

Departed_1

    Jarl

  • Mod Authors
  • PipPipPipPipPipPipPipPipPip
  • 738 posts

Posted 02 May 2013 - 07:31 AM

I'll add something in Version 3.5 so that all the sticky settings are labeled as such when highlighted.

I like this idea. I know you say these should be obvious (and I agree that most of them are); however, call me lazy, but I do prefer to have the 'sticky' settings laid out clearly for me so I don't have to second guess myself... and I'm sure there are many others who wouldn't find it nearly as obvious.

Another suggestion to do with what you will... Perhaps you could include in the rollover description the vanilla value for that particular setting? That way, when I install SkyTweak (you've now fully convinced me to give it a try), I can look at the values and if the slider values match the Vanilla value given in the text description then I know this setting hasn't been altered by another mod. If it's different, then I know that I have some mod that it already changing that setting.

If I've managed to follow all of this, then my understanding is that SkyTweak doesn't make ANY changes to the current game setting values, doesn't add any of the new stacker perks, and doesn't change actor values until the player actively decides to change something. So upon loading SkyTweak, I can have it active in my game, and even open and look over the menus, and SkyTweak won't change anything in my game until I manually make a change to one of the options in the SkyTweak MCM interface. Is this correct?

I think that this tool is great for STEP Packs and standardization of gameplay Packs. We'll need some presets or suggested settings from the experts for various scenarios before that though.

I think any suggestions or presets will need to be made with consideration for the other mods that will be included in the gameplay pack(s), since some of the mods included will probably already be making changes to various settings. I agree that SkyTweak seems like a great tool to add to, enhance, and perhaps improve compatibility (in a gameplay sense) between the different mods that will be included in a gameplay pack.  I'm looking forward to trying it out in my own game.  I can report back on which settings I end up using and why.
  • 0

#29 z929669

z929669

    Ixian Inventor

  • Administrators
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 9,258 posts

Posted 02 May 2013 - 10:55 AM

 

OK this sounds reasonable. As long as one can in some way flag the 'sticky' changes for manual rollback, this is not an issue IMO.

I'm still not sure what you mean by manual rollback.
The user can use either SkyTweak or console commands to set actor values back to whatever they were.
So long as he remembers or can figure out what they should be rolled back to.

 


By "manual rollback," I mean that one needs to use the console to manually roll back any sticky changes not automatically rolled back upon uninstalling SkyTweak. It seems that if a user uninstalls SkyTweak, then any changes that user made via SkyTweak will automatically be rolled back if it is ever uninstalled ... accept for those that are 'sticky', shich will need to be manually rolled back via console.

One concern is that any STEP mod can be cleanly uninstalled, and thus, it is not *dangerous* to use.

I also like the idea of flagging the 'sticky' settings as well as any changes from vanilla GMSTs. For that matter, it would be optimal to flag SkyTweak settings differently than other non-vanilla settings.

The attractiveness of this tool is that it could apply to any Pack against any flavor of STEP. We would just need to define presets for each context. It would also allow us to force otherwise GMST-incompatible mods to coexist within the same setup.



#30 EssArrBee

EssArrBee

    Incompatibilism Manager

  • STEP Staff
  • PipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPipPip
  • 7,721 posts

Posted 02 May 2013 - 11:04 AM

Maybe something like a built in Unistall or Reset to Default option int the MCM menu would go a long way toward customization and ease of updating/uninstalling.



Also tagged with one or more of these keywords: testing, mod

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users