Page 1 of 1

Strife & Veteran Edition scripts ZSDF conversion

Posted: Fri Jan 29, 2021 12:16 am
by StroggVorbis
*Changelog at the bottom of this here post*

Have you ever wanted to make a map or mod for Strife: Quest for the Sigil,
but were put off by the hardcoded-ness and lacking information about what the dummy quest items do, which the storylines uses to keep track of your progress?

Fear no more, for I bring you this resource!

I converted all of Strife's binary dialogue scripts from their native format into ZSDF (ZDoom Strife Dialogue Format), yes even the extra ones from Veteran Edition.
Content wise, they are unchanged from their original counterparts, so they should behave more or less identically to them.
Should any discrepancies still pop up, which can't be ruled out, please report any and all bugs to me and I see what I can do.
They're already organized to be ready to use. Just load the PK3 as you would any other mod.
The DIALOGxx files can be viewed and modified in any text editor of your choice. The xx stands for the map they are used in, where 00 is a special case and applies to all maps, similar to a global ACS library.
I even included a text file with info courtesy of the ZDoom Wiki which describes all the QuestItem actors to better explain where and how they are used.

One thing of note, however. Over the course of the game, you accrue a number of stamina and accuracy upgrades. Normally, replacing them in Decorate or ZScript is fine.
But in GZDoom there's a few special cases where they are given to the player via ACS, and thus will ignore the replaces keyword.
For this reason, I lifted the source of the strfhelp lump verbatim from gzdoom.pk3, so mod makers can modify it accordingly so it respects their mods' classes.

Credits:
-The ZDoom community as a whole for having taken me in, accepting me as one of their own
-The devs and committers of ZDoom and compatible/derivative forks and source ports
-Accensus, without his ZSDFEdit, this would've still been possible, but a mammoth task, so his contribution took a great burden of my shoulders

If I have missed anyone, lemme know and I'll namedrop you too :3

This year marks Strife's 25th anniversary and I hope my contribution will help someone,
maybe sparking more interest in the game and maybe help set off an avalanche of mods as currently it's the black sheep of the Doom quadrilogy, which encompasses Doom, Heretic, Hexen and Strife itself.

Also, get HROT, it's great. The bastard child of Quake 1 and Chasm: The Rift: https://store.steampowered.com/app/824600/HROT/

EDIT: I forgot the actual link to the resource, so here it is: https://ufile.io/e6o2nl2u

CHANGELOG:
Spoiler:

Re: Strife & Veteran Edition scripts ZSDF conversion [SOON™]

Posted: Fri Jan 29, 2021 10:32 am
by wildweasel
Probably should have waited until it was ready, before you posted it. :shrug:

(edit) Alright, never mind, it's up fully now.

Re: Strife & Veteran Edition scripts ZSDF conversion [SOON™]

Posted: Fri Jan 29, 2021 10:46 am
by StroggVorbis
wildweasel wrote:Probably should have waited until it was ready, before you posted it. :shrug:
I just came home from grocery shopping and didn't have much time to plan ahead and write anything prior, so I just came up with this from scratch :(

You replied just during the time I was editing my post and thinking about what to say 😅

Re: Strife & Veteran Edition scripts ZSDF conversion

Posted: Sat Jan 30, 2021 1:22 am
by TiberiumSoul
you my friend have just saved my strife port of IR2 guns from death.

Re: Strife & Veteran Edition scripts ZSDF conversion

Posted: Sat Jan 30, 2021 2:21 am
by StroggVorbis
TiberiumSoul wrote:you my friend have just saved my strife port of IR2 guns from death.
Glad to be of service :)

Re: Strife & Veteran Edition scripts ZSDF conversion

Posted: Sat Jan 30, 2021 8:16 am
by Mikk-
A few things, a lot of dialogue choices flood the console with "_", is it necessary to specify a "YesMessage"? Also, talking to Rowan, he will immediately ask if you have the ring of the traitor after receiving the crossbow. The same happens with talking the Geoff in the town hall, the dialogue doesn't terminate after telling him the password, he tells you to "walk away boy", as if you've spoken to him again after opening the hidden door.

EDIT: So it seems there's a lot of missing CloseDialog = true; lines in some of these conversation scripts, for example in Rowan's & Geoff's. Also the "YesMessage = "_"; stuff is wholly superfluous

Re: Strife & Veteran Edition scripts ZSDF conversion

Posted: Sat Jan 30, 2021 11:51 am
by StroggVorbis
@Mikk-

Thanks for bringing this up!
As stated above, I was certain that this would happen.
I literally just fed the scripts through ZSDFEdit and then exported them, only adding escaping quotes where necessary.
With people giving me reports, I can add fixes by hand where needed.

I'll get to work and post an update when it's done :)

Truth be told, I should've worked on this sooner so I could've done some additional testing myself. That's what I get :P

EDIT: Good news, I found out how to fix the two above issues, now it's only a matter of time. Stay tuned, folks!

EDIT#2: MAP02 is fixed!

Re: Strife & Veteran Edition scripts ZSDF conversion

Posted: Sat Jan 30, 2021 3:05 pm
by StroggVorbis
Update 1.1 is live!

Changes:

-The cost for items sold at shops is now shown again.
-The console and HUDMessage printing "-" has been fixed.
-Rowan & Geoff in MAP02 now close their dialog after certain pages like they should.

There are probably a lot more NPCs that are missing their CloseDialog flags, so I'll have to do a whole playthrough to catch them all. I'd appreciate help with this undertaking, just lemme know if you find 'em before me and I'll rectify it.

There's still one known minor bug I don't how to correct. Entering MAP15: Fortress: Adminstration prints "Warning! Reference to non-existent reply-linked dialogue page name '2' in page 42!" to the console.

If anyone knows, tell me so I can fix it :)

I hope you enjoy the new update!

Re: Strife & Veteran Edition scripts ZSDF conversion

Posted: Sat Jan 30, 2021 4:56 pm
by Mikk-
To fix your error in map15, you need to open DIALOG15.txt & delete the line that says NextPage = "2";.