Jump to content

Text Replacement


Recommended Posts

Posted

Does anyone have much experience (or success) using the "Text Replacement Tagging" system in the CK for message forms?

I've been struggling with it and have pretty much given up now.

 

What I was trying to achieve doesn't seem to be possible unles I missed something daft.

 

The idea was to use ForceRefTo() on targetted actors which would then fill an alias in a quest. The alias has the "Stores Text" flag as instructed in the CK wiki.

This alias would be refered to from messages (the quest selected in the linked quest dropdown) with various tags: Alias.ShortName, Alias.PronounObj etc.

 

I did a debug trace to check that the alias was getting filled correctly using "MyRef.GetActorRef().GetLeveledActorBase().GetName()" and it returned the correct name every time.

However... when it comes to the messages, the text was displayed correctly but the tags always return [...]

 

Maybe I'm trying to use this system for something it was never designed to do?

 

Edit: I realise there are other way to do this and I use them myself but I liked the idea of the available tags to keep things nice and simple.

Posted

FWIW, I'd recommend jumping over to Nexus's mod authoring forum for answers. Not that there aren't capable people here... Of course there are, just that the forum in question is dedicated to that sort of pursuit, whereas this forum *tends more toward solving problems with mods rather than authoring.

 

https://forums.nexusmods.com/index.php?/forum/4070-skyrim-special-edition-creation-kit-and-modders/

 

fwiw... (again, no offense intended to anyone here at LL)

Posted

The [...] usually means that the .. thing the... actor the message is pointing to isnt valid

 

Did you make sure the Message is pointing to the right quest? That needs to be done to ensure that the message knows what alias youre pointing to exactly. There can be many Alias "A"s but theres only 1 Alias "A" in Quest "B"

Also make sure the name is typed correctly

Posted
10 minutes ago, anjenthedog said:

FWIW, I'd recommend jumping over to Nexus's mod authoring forum for answers. Not that there aren't capable people here... Of course there are, just that the forum in question is dedicated to that sort of pursuit, whereas this forum *tends more toward solving problems with mods rather than authoring.

 

https://forums.nexusmods.com/index.php?/forum/4070-skyrim-special-edition-creation-kit-and-modders/

 

fwiw... (again, no offense intended to anyone here at LL)

Thanks for the reply but with all due respect I'd rather drink my own piss than ask for help on the nexus forum and there are many talented mod authors here....

Posted
2 minutes ago, Scrab said:

The [...] usually means that the .. thing the... actor the message is pointing to isnt valid

 

Did you make sure the Message is pointing to the right quest? That needs to be done to ensure that the message knows what alias youre pointing to exactly. There can be many Alias "A"s but theres only 1 Alias "A" in Quest "B"

Also make sure the name is typed correctly

Yes to both, the message points at the correct quest and the AliasName is typed correctly too!

Posted
7 minutes ago, Scrab said:

The [...] usually means that the .. thing the... actor the message is pointing to isnt valid

 

Did you make sure the Message is pointing to the right quest? That needs to be done to ensure that the message knows what alias youre pointing to exactly. There can be many Alias "A"s but theres only 1 Alias "A" in Quest "B"

Also make sure the name is typed correctly

I wonder if it could be due to the alias being filled momentarily before the message is shown? Could this mean that the game didn't have time to store the requisite text?

Posted
Spoiler

image.png.b6b26521d5c15ffe46e40af00fc93f78.png

 

You answered too quickly, ah.

I double cover some things now

 

So

1) the Owned Quest needs to be set up corectly

2) the replacement needs to have the right name. The same as in the alias tab (Here "JoyFol")

3) The Alias needs to have "Stores Text" ticked

4) The Alias needs to be filled (And the quest running(?))

 

Everything "should" work fine then. Maybe you tick the wrong box in the Alias Tab?

Posted
6 minutes ago, Scrab said:

1) the Owned Quest needs to be set up corectly

2) the replacement needs to have the right name. The same as in the alias tab (Here "JoyFol")

3) The Alias needs to have "Stores Text" ticked

4) The Alias needs to be filled (And the quest running(?))

1 yes

2 yes

3 yes

4 yes

Could you send me your plugin where it is working? I wonder if the owned quest requires specific quest flags?

Posted

I had this problem myself and the solution is a bit cumbersome.

 

Basically, the texts are only correctly stored when the aliases are filled on Quest start. meaning It wont work when the Alias is filled mid-Quest via ForceRefTo().

One possible workaround is (i believe) to restart the Quest after you used ForceRefTo().

Obviously not an ideal Solution, but not an issue for Vanilla Quests, so Bethesda didn't bother with this eventuality.

Posted
14 minutes ago, Pamatronic said:

Basically, the texts are only correctly stored when the aliases are filled on Quest start. meaning It wont work when the Alias is filled mid-Quest via ForceRefTo().

One possible workaround is (i believe) to restart the Quest after you used ForceRefTo().

Obviously not an ideal Solution, but not an issue for Vanilla Quests, so Bethesda didn't bother with this eventuality.

I dont do that. I start the Core quest with game load and it stays open all the time. I use ForceRefTo to fill the JoyFol Alias and text replacement works like a charm. I also had no1 complaining that it doesnt thus far

 

I only reset the quest when I have to clear the JoyFol Alias

Posted
35 minutes ago, Yinkle said:

I wonder if it could be due to the alias being filled momentarily before the message is shown? Could this mean that the game didn't have time to store the requisite text?

ForceRefTo isnt latent, so yes. Its possible that the message line is fired before the alias is initialized properly

You can try using Utility.Wait(0.1)  

Posted
46 minutes ago, Yinkle said:

Thanks for the reply but with all due respect I'd rather drink my own piss than ask for help on the nexus forum and there are many talented mod authors here....

Wow... well I guess there are dicks everywhere. Sorry to have triggered you.

Posted
6 minutes ago, Scrab said:

I dont do that. I start the Core quest with game load and it stays open all the time. I use ForceRefTo to fill the JoyFol Alias and text replacement works like a charm. I also had no1 complaining that it doesnt thus far

Ah, sorry. didn't read properly. what i described applies to dialogue Text replacements. Messages seem to behave differently.

I might be missing something else, but the CK entries on Text Replacements suggest its like i described earlier.

Posted

God damnit the issue was so simple as usual. The owning quest is required to have a stage...

Edit: why didn't they add this to the CK wiki!!?

Posted

Thanks all for your help, issue resolved now.

 

Edit: If anyone else stumbles upon this thread there are a couple things to note that aren't touched on by the CK wiki notes:

1 the owning quest must have a stage (possibly a start up stage too but I'm not sure on this)

2 the alias must be flagged "Allow Reserved"

3 If you changed the owning quest then probably best to regenerate the seq file

  • 1 year later...
Posted
On 9/3/2020 at 9:14 PM, Yinkle said:

1 the owning quest must have a stage (possibly a start up stage too but I'm not sure on this)

I hate to necro a 2 year old thread, but i don't think this is true.
I have a quest with no stages at all, and the text replacement using name of reference assigned in the quest alias works perfectly fine.
(or maybe it depends on some other settings of the quest, or the alias)

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

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