Jump to content

The Skyrim Slavers' Guild


Recommended Posts

I have noticed 2 things though. As a female, once I start on trying the slave side, it always ends up being gagged and no way to interact with anyone else but Scaledick because the collar displaces the Dibella amulet, I think. Also, Cullein never sends me back, I have to use the coc console command.

Link to comment

I'm having the exact same issue as Calandryll with Secundas Watch. The girl is not tied down to the table an no animation plays, just fade to black and text.

 

The Slavers' Open day on the other hand works just fine, all the animations play with little to no issue (Scaledick has to be talked to for a while before he decides to let you go. I find it a good thing as he's the one in charge and I shouldn't be able to get out early) but Cullein doesn't send me back just like for calandryll.

 

I'm mostly looking forward for the guild to take off with the system to capture/train and keep or sell slaves.

Link to comment

That set... it reminds me SO MUCH of the "Bondage Witch project" "Bangle Cuffs"

Set of dancer bangles that double as lockable pose cuffs... Second Life thing. Approval here ^^

 

The redguard is wearing Gatti Slave Jewelry' date=' the lass in the foreground just the default bonds that appear whenever you use that idle.

 

That said, I do have plans for a set of Dwemer Slave Jewelry on the wiki somewhere that takes the bangle cuff idea about as far as it can go :)

 

 

I didn't know about the sexrim test. Ran it, FNIS now picks up Secunda's watch but still no animation for it. I get the animations in the Sexrim_test cell, but can't interact there for some reason. when I hit the 'E' button over them for talk like it says, they only greet me.

 

Figured out something. I put on Dibella amulet and now it seems to work for me.

 

That is really strange. I don't use anything from AP in the mod at the moment. Still, if it's working for you, that's great.

 

I have noticed 2 things though. As a female' date=' once I start on trying the slave side, it always ends up being gagged and no way to interact with anyone else but Scaledick because the collar displaces the Dibella amulet, I think. Also, Cullein never sends me back, I have to use the coc console command.

[/quote']

 

Yeah. it's still a work in progress and still alpha software. I'm working on it at the moment and we might get another release out soon.

 

I'm having the exact same issue as Calandryll with Secundas Watch. The girl is not tied down to the table an no animation plays' date=' just fade to black and text.

[/quote']

 

Interesting. How about if you save and load? There's a nasty bug in 1.7 that messes up all sorts of things, especially conditions. it could be the

 

The Slavers' Open day on the other hand works just fine' date=' all the animations play with little to no issue (Scaledick has to be talked to for a while before he decides to let you go. I find it a good thing as he's the one in charge and I shouldn't be able to get out early) but Cullein doesn't send me back just like for calandryll.

[/quote']

 

Like I say, WIP. I put a bit of time into this over the weekend and hopefully I'll have something more or less complete by this time next week. Assuming I can solve a nasty animation problem I ran into last night, anyway.

Link to comment

Saved and Loaded multiple times to no effect whatsoever. I realize it's a very early version just wanted to make you aware of it :)

 

I'll wait for the next release and see if the problem persists.

 

Is it a long standing character? There are problems when a save has a lot of broken scripts fighting for execution time

 

From what I've just learned, it looks as though the threading process can disrupt the code that populates the animation lists. That might explain why saves with a lot of broken update loops tend not to work while new characters are fine.

 

Which is good news actually, since if I know the problem, I know how to go about fixing it :)

Link to comment

Well, not in the general case. I mean it doesn't seem to be hard: define the missing scripts, give them onUpdate handlers that de-register the for updates, and set any missing properties back to 0, None, "" or false. Then start the game, save unload the replacement mod and reload ... and the problem should be gone.

 

But I don't know anyway of doing it in a generic fashion.

 

On the other hand, I think I can make my initialisation function a bit more bulletproof. So that's the plan. This thing needs to work with other than new games in the long run, after all :)

Link to comment

run into any of the dawngaurd bug/glitches yet?... there is a fun one that seems to be a conflict with magick transform for vamp lord.

 

gonna mess around with mods and see if any are causing issues.

 

edit:

it was SkyUI lol...

if you become a vampire lord and try to use any magic related menu you get CTD.

 

and of course there isnt an update for SkyUI yet.

Link to comment

I'm sure you've seen this already' date=' maybe you should recruit the author for SSG?

 

http://www.loverslab.com/showthread.php?tid=10844&pid=221401#pid221401

[/quote']

 

xaz is more than welcome to join ... although I can't think what I'd ask him to do that he's not already doing right at the moment :)

 

Oh yeah' date=' it's a pretty long standing character with a bunch of other mods installed... which seem to be giving me some issues lately with random CTD at very specific points on the map.

[/quote']

 

Well, that's the likely cause then. Which doesn't absolve me of needing a more robust delivery method, of course.

 

I can't wait to try this mod:)

 

Yeah. I know what you mean :D

Link to comment

I just had a thought, sure it's a bit of a lenghty workaround but would reinstalling the game clear old scripts? I don't really have any mods (other than Secunda's Watch) that have to keep track of any progress and remember it, but I still would rather make sure reinstalling won't screw up my saves even if I get all the mods I use back before reloading last save.

Link to comment

It won't help I'm afraid. The broken scripts are baked into your save file.

 

It's a problem the modders weren't aware of for a long time.

 

What you need are scripts with the same name as the missing ones and with OnUpdate methods that deregister for updates and any complained-about properties set to 0/none/""/false. Then after you load with that script in place and save again you should be able to remove the script for real.

Link to comment

What you need are scripts with the same name as the missing ones and with OnUpdate methods that deregister for updates and any complained-about properties set to 0/none/""/false. Then after you load with that script in place and save again you should be able to remove the script for real.

What would be nice is some kind save-game exporter' date=' that took your skill-set, quests complete, and character stats and put them into a new/clean save game. To remove any incompatibilities with other mods/houses, the mod could add one chest where you place all the belongings you want transferred with you.

 

Based on my reading, it seems that even having to many current quests (which Skyrim dumps a shitload on you from the start) will cause issues, no mods even needed.

 

This gives me an idea. Even though I've completed the game, my old character (that I have loads of issues with concerning animations) still has a full page of main and side-quests. I think I'll try the "complete all quests" command and see if that helps with the animations. Couldn't hurt to try (especially since I already have all the quest related achievements). Probably won't do anything, but I always have time to burn.

Link to comment
Incidentally' date=' the link 404s for some reason. I'd quite like to look that over if possible.

[/quote']Weird. Works for me:

 

This may get a little technical but bear with me players, it will all make sense by the end and I'll try and make plain English comparisons as much as possible. It is a hard topic to explain in non technical terms I am afraid.

 

Papyrus Explained:

 

As you know Skyrim uses a new scripting system called Papyrus which completely replaces the older functional system with all its problems and bugs (which where many). It works by queuing events so nothing happens in real time anymore and any delays slow down the entire game now. Anything that requires real time information that gets delayed simply breaks most of the time.

 

Also the more scripts that run the slower the game gets because the queue gets longer and long scripts end up getting paused when they run out of "run time" assigned to them. Which why Skyrim has so many random quest problems.

 

The new scripting language does on paper sound like a good step forward and on paper it is a good idea. But the implementation of it sucks big time.

 

In practice, the bugs and run time issues mean its actually only good for controlling AI cut scene control and fire and forget events like kill the boss, get the gem style quests. Stuff that checks for 1 action basically.

 

Why Papyrus screws up so much.

 

The reason why asking papyrus to check for 2 or more actions like kill 2 guards, take 2 stones usually ends in a bugyg mess is that it has a nasty habbit of forgetting the first act once the second act occurs. Because it queues things, it does not always register the first action fast enough to acknowledge it has been done before the second action places it in the queue.

 

I would expect faster computers with better CPUs to handle this better than slower ones due to the need to process so many scripts.

 

So when a script says make the player King of Skyrim when 1 guard killed + 1 bandit killed = 2 NPCs killed. This papyrus language, gets the first +1, queues it, then gets the second +1 and queues it but forgets about the first so it ends up with a result of just 1. The quest never ends and the player nevers becomes King of Skyrim.

 

This happens when events happen too quickly with little gap between 1 event and the next. The queue system simply fails to deal with it.

 

A simple case of counting the dead bodies.

 

Death count scripts that ask the player to kill several bad guys fails because of this if you kill too many too quickly. You literally have to ask them to queue up in a nice neat line so you can kill them 1 at time and have a cup of tea after each kill whilst the queue is processed before moving on to the next one.

 

Last time I checked, the Bad guys where not that considerate.

 

That on its own with nothing else considered or take in to account is a pretty big screw up since counting is one of the most basic things all programs do and Skyrims papyrus cannot even do that accurately.

 

Complicated and Error Prone are good words for Papyrus.

 

The complicated, error prone nature of the new scripting language means human error is far more likely to happen, just declaring a variable is a hideous mess that takes 10 minutes to do for most scripts if you know what your doing instead of 5 seconds.

 

Then you have the fact the wiki that explains this new language is completely useless and badly written.

 

For example try using any of the wiki examples as written... you will find none of them work. They are ALL WRONG, every single one of them and reason why is this. There is a long long long list of conditions that must be satisfied before any of those examples work at all and not one of those wiki pages explains any of them.

 

So its like saying go and wait for bus, but failing to mention you have to wait at a bus stop and that bus stop has to be on top of a hill in a street called high street on a saturday afternoon providing its sunny and not raining and there has to be guy named bob there and he has the first in the queue. Providing all those things are true, you will be able to catch that bus.

 

Bethesda was moving away from scripts.

 

Bethesda games have been moving towards GUI based quest creation for years, abandoning scripting slowly in favour of a simpler system. Not a change I wanted to see being a scripter but one that most of you could have followed.

 

Suddenly we have a scripting language where the commands do not even work in the Quest window half the time. Only the wiki does not explain this or tell us which commands work from the quest window and which commands do not. Or what we need to do to make them work. Hence the example above about the busses.

 

The other thing is this, if your trying to read back a variable, as I said above its complicated and error prone, but depending on where you are when your doing it, the complicated error prone system changes in to another complicated error prone system and neither of them are explained on the wiki at all.

 

For example checking a var in a script attached to the current quest is very different from checking a var in a script attached to a different script and thats different from checking a var from within the same script. 3 different ways to do the same job and none of them as straight forward.

 

In fact I have yet to see a wiki example of any papyrus command actually work as written.

I have literally had to work it out as I went alone.

 

Bye by dialog control.

 

Also because most commands are designed to run from a script not a GUI, the older reliable methods of getting dialog to appear on time on NPCs is completely gone, replaced by a scripting language that does not even work with the quest window unless you use long winded declarations first. Even then you are left with half the control over dialog that we used to have and even then it is a buggy mess.

 

For example.

 

I used to use Getquestvar myvar = 1 then do something nice for the player. They changed the command but the new command no longer does that job, in fact its hard getting the new command to do anything at all so I have to have the dialog point at a function in a script and have the script do it. More CPU time wasted.

 

Doing simple tasks is now a major event.

 

For example I used to do a "player.removeitem bearskin 1" in oblivion in the result box of the topic the player clicked on. 1 line of code to do the job and it always worked 100% of the time. I tried the same command that should work in Skyrim only it failed to do anything every time I used it. No reason for it, it just did not work because I was trying to do it from a quest windows result box.

 

So I had to do this instead.

 

In the script I declare the bear skin and wowritualspellsquestscrip because if I do not, I cannot use them else where.

 

MiscObject Property BearPelt Auto

Quest Property WowRitualSpellsQuest Auto

 

Next I go to the properties and tell the editor that my Miscobject called Bearpelt is a Miscobject known as Bearpelt, if you use the objects actual name you can use the auto button to find and set this quickly, otherwise you have to scan through 1000s of items to find it and you have to do this for everything you want to use, its a massive pain and a source of many errors.

 

The same goes for the WowRitualSpellsQuest which needs to be declared because function removeitem is in that script.

 

Now in the quests window, in the result box, I have to tell the Quest what it's OWN SCRIPT is called. I do so like this.

 

(GetOwningQuest() as wowritualspellsquestscrip).removeitem1()

 

The wiki would have explained everybody above as "removeitem1()", it would have failed to mention all the other steps needed to get this far. Which is why its totally useless.

 

Once I have done that, I can add this to a script.

 

function removeitem1 ()

Game.GetPlayer().RemoveItem(BearPelt, 1)

endfunction

 

Now when I you click on a topic on an NPC, that takes the bearpelt off you, it runs removeitem1() like this

 

(GetOwningQuest() as wowritualspellsquestscrip).removeitem1()

 

That is how skyrim does what Oblivion Fallout 3 and Fallout NV would have done with this single line of text in a result box.

 

"player.removeitem bearskin 1"

 

So like I said, error prone, complicated and buggy.

 

Not only do the commands not work, because they are badly explained in the primary documentation most folk do not even know they are buggy because most folk have never gotten them to work anyway. Those who have like my self and have figured out how to make most things work have found out that the wiki explaining this might as well have been a new chapter for Lord of the rings because its got sod all to do with how these things work in the editor or the game.

 

Programmers never write good docs, that is a fact that is true in 95% of cases.

 

That was one example out of many.

 

Its easy to check 1 line of text for errors but try bug fixing the papyrus method when you have 10 more items to check for an have to do that for all 10 items not just the bearpelt. It would still be easy for Oblivion, but a complete nightmare for Skyrim.

 

Oblivion scripts vs Skyrim Scripts.

 

Oblivion scripting language was never that good, it could not tell the time but it could add up. Something Skyrims papyrus language cannot do half the time. Also where as I could have 500 lines of dialog controlled from a single quest window and a single script, in Skyrim every line of dialog that has anything typed in to the result box gets a script too.

 

That means if I had 500 lines of dialog removing bearpelts, Skyrim would need 500 scripts running in the background to handle it, plus 1 for the quest at least.

 

Oblivion could do that without any scripts at all because the commands work from the result box just fine in oblivion but do not work at all in many cases in skyrims result boxes.

 

Skyrims papyrus is a CPU eater.

 

For a system that slows down a lot when a script is too long or it tries to run too many scripts at once, having a system that needs a script for every topic with a command run from it just makes this whole performance issue even worse. The object orientated system is supposed to let you run mini APPs instead of the CIA main frames database checker. Its supposed to be fast efficent and only runs the code it needs to run.

 

But the reality is, it runs 1000s of extra scripts that the older system never even needed and each one of these scripts eats up your CPU time and slows down your game slightly.

 

When one goes wrong, your frame rates drop because the Papyrus queue system starts to lack out your game and it will go wrong a lot because papyrus is overly complicated and buggy and human error is practically unavoidable. Even if no human error takes place, the bugs in system will do a very good job of slowing down your computer and messing with your saved games.

 

So what can you do ?

 

We cannot just have a message pop up anymore about stuff because the commands that did that are also broken, debug code has to be used instead and its not meant to be used that way. So when the building blocks of a quest are none functional or buggy and break under certain situations.

 

quests have to be written to work around this and many side quests are not designed that way. Bethesda did fix most of the main quest and those pathetic guild quests so they dont fall foul of these issues (mostly, there as still issues with the guilds I found), but the side quests are still very much a risky business. The more you do, the more chance of problems you will have.

 

The safest quests in Skyrim due to their design or heavy testing is the main quest, most guild quests and most side quests that involve killing a single guy or retrieving a single item. Anything else is susceptible to the issues above and the problems the papyrus script system causes in game.

 

So will beth fix it ?

 

Nope, papyrus is the heart of Skyrim, it cannot be fixed or replaced without a major rebuild of the game and all the quests in it. So we are stuck with it now. Skyrims always going to have these issues, it will be the first game from Bethesda that gets to the GOTY state and still has problems because the very system it uses is the fault.

 

If this was a car, it would have left the factory with an unfixable fault and you would be stuck with it.

 

Us modders have to restrict our selves to basic quests that we know work or write complicated work arounds for simple tasks to ensure a quest works 100% of the time and the more complicated we make those workarounds, the higher the chance that the scripts will be too long and will break when they get queued.

 

So even our best shot at a stable game still falls down flat thanks to the papyrus system.

There you go. LONG Read BTW: Fair warning.

Link to comment
There you go. LONG Read BTW: Fair warning.

 

Thanks. That was interesting.

 

Mind, a lot of it is just wrong. There's noting to stop you declaring a property on a dialogue fragment, for instance, and using that to remove a bearskin from the player's inventory. And the wiki examples aren't anywhere near as bad he makes out, although that may be the result of editing. I know a few of them were basically unchanged from the FO3 GECK wiki which the obviously used as a starting point.

 

Still, he makes some good points. It's insane not to be able to share quest fragments among infos in a branch or a topic, even if you don't need to call a function attached the the quest.

 

And the counting problem sounds a lot like what breaks my animation framework when loading animations. So it's possible that it's running too fast and losing iterations. certainly i was seeing gaps in what should have been an ordered progression. OK, I could understand formlists might not iterate over their contents in the same order as they were added, but there were things absent entirely.

 

I'm tending increasingly to the idea of putting the framework stuff on hold until I get time to write some C++ and just hand-craft my animations and scenes.

 

I'll mke faster progress that way, if nothing else.

Link to comment
Mind' date=' a lot of it is just wrong.[/quote']Good to know. Thanks for the info. I've barely even looked at papyrus scripting. That said, I don't understand why there isn't a command to force-close all running scripts, then let the game automatically restart the ones that need to be there (such as those from the quest log, or those that run on equipment). Supposedly "tanim" is supposed to do something like this, but it doesn't.

 

I mean, the worst that could happen is your game would explode. That's what backups are for.

 

And the counting problem sounds a lot like what breaks my animation framework when loading animations.
This is very noticable in the "Crimson Nirnroot" quest in Blackreach. I got tired of it after about 10' date=' so I started adding the quest item to my inventory 1 at a time. It's like the game wanted to die trying to do X+1.

 

I'm tending increasingly to the idea of putting the framework stuff on hold until I get time to write some C++ and just hand-craft my animations and scenes.
May not be a bad idea. Personally for me, I like the framework stuff. I love looking over short mods like sexrim and that new playerslave one by xaz. The less I have to look at the more I can learn from it.

 

Really, it's the little things. There was a cool mod for Oblivion that made the character unkillable and would end up sticking them into a cell if they got to 1% HP (was buggy as all Hell). I thought a similar concept would work great for Skyrim. Guards knock you out: jail. Bandits: bandit camp. Necros: you get the point. There's so many little cages and other contaiment devices in the vanilla game, you wouldn't have to get crazy. Hell, there's even an animated grain mill you can use as forced work labor in the game. Obviously dragons and drauger would just kill you, but I liked the idea of "hey, you fucked up, get out somehow otherwise more bad shit is going to happen to you."

 

You could always try and break SSG into smaller mods until the whole thing comes together. Whatever you decide, I'll be there to download.

Link to comment
This gives me an idea. Even though I've completed the game' date=' my old character (that I have loads of issues with concerning animations) still has a full page of main and side-quests. I think I'll try the "complete all quests" command and see if that helps with the animations. Couldn't hurt to try (especially since I already have all the quest related achievements). Probably won't do anything, but I always have time to burn.[/quote']Oh, this did something all right. It just wasn't anything close to what I wanted it to be.
Link to comment

Suggestion to the Secunda's Watch Slavery quest. If player reaches point where she can't pass through gates, she would be completely submissive to bandits, right? Then, if by that time she has a wife and somehow ended up telling to bandits about her, they could order player to bring wife to them.

To prevent player just running for it once she goes through gates, teleport her to closet location (random house if player owns any, otherwise tavern) and force dialog with wife. Afterward teleport back to fort and here we go, round two with beloved wife as main actor.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use