Jump to content

Suzutsuki

  • entry
    1
  • comments
    3
  • views
    985

How to create a Consequence Quest for Battle Fuck!


Suzutsuki

4,730 views

To add a Consequence Quest to Battle Fuck, two quests are required.

 

Consequence Quest

Start after the player becomes unconscious in Battle Fuck.

 

Register Quest
Register Consequence Quest to Battle Fuck at the start of the game.

 

As an example, here are the steps to add Kidnapped by Rieklings as a Consequence.

 

 

 

Open CK, and click the folder button on the left side of the toolbar.
Check BattleFuck.esp and other required mods (in this case KidnappedByRieklings.esp) and press OK.
Press Yes for "You have not set a file as the activefile. Do you wish to continue?"

ss01.png.eb35d31916f5c6fa40373b00c9fd664b.png

 

 

 

After the esps are loaded, create a Consequence Quest.

In the Object Window, select Character->Quest in the tree view.
Right-click on the Quest list on the right side of the window, and then Click "New" from the pop-up menu.

 

When the Edit Quest screen opens, go to the Quest Data tab and enter the Quest ID in the ID field.
Uncheck the "Start Game Enabled" and "Run Once" boxes.
Click OK to close the window for once.

ss02.png.437bb9fd4607762cbfcaa890da67f223.png

 

 

 

Double-click on the newly created quest in the quest list to open the window again.

In the Scripts tab, click the Add button.

ss03.png.b1d0d4a0f1be2a517fcbb9024f5aad5e.png

 

 


In the window that comes up, select New Script and press OK.

ss04.png.327b3a727100ed2022dce6421d9a54a5.png

 

 


In the Add New Script window, input the following and click OK.

ss05.png.8bb80eff5c10b93c36776c4b8912ca1e.png

 

 

 

The quest editing window will look like this, so press OK to close the window.

ss06.png.966a975acb07552c89786d22849540a9.png

 

 

 

Open the _Sample_Consequence.psc file in the Data/scripts/source folder using a text editor.
Edit it as follows.

Scriptname _Sample_Consequence extends _bf_consequencebase

; Define the properties needed to process Consequence Quest.
Quest Property _KR_KidnapQuest Auto

Function Process()
	; Execute the Consequence Quest process.
	_KR_KidnapQuest.Start()
	Utility.Wait(2.0)

	; Notify Battle Fuck that the Consequence Quest has been successfully processed.
	_BF_BattleFuckQuest.ConsequenceHandled = true

	; Restores Max BP and dispels debuff spells.
	; If you want the player to remain defeated, don't do it.
	_BF_BattleFuckQuest.RestoreStatus()

	; You must Stop the Quest.
	Stop()
EndFunction

 

 

 

When you have finished editing, select Gameplay->Papyrus Script Manager from the menu bar on the CK window.

When the Papyrus Manager window opens, select _Sample_Consequence and right-click on it.

ss07.png.766d544dbe35467b1d370a962662152f.png

 

 


Select "Compile" from the pop-up menu to compile the script.
The compile window will appear and the compilation will be executed.
If there are no errors, the compile window will be closed automatically.

ss08.png.bf8f9651fac11f4224aa57f5d3f899b9.png

 

 

 

The next step is to set the properties of the script.

Open the edit window of Consequence Quest, select _Sample_Consequence from the script list in the Scripts tab, and click the Properties button.

ss09.png.ecae8e43e280cd48a937a656855f1809.png

 

 


The property setting window will appear.

Set the values as follows.

ss12.png.f6cf09bc9ec01d8fad7137976fc3ba93.png

 

 

 

Here, properties other than _KR_KidnapQuest that you added are inherited from _BF_ConsequenceBase.

Set each value as follows.

 

_BF_BattleFuckQuest

Set the _BF_BattleFuckQuest.

Click the Auto-Fill All button and it will be filled in automatically.

 

Chance
Input the chance that the Consequence will occur.

The user can change this value in the MCM.

 

DefaultChance

Input the default value of Chance.

This is used by MCM to restore the default value.

 

MCM

Setting _BF_MCMQuest

 

Name

Input the name of the Consequence.
The name you enter here will be displayed in the MCM.

 

RequiredBounty

If you input a value, the Consequence will be selected only if the player has a bounty larger than the input value.

Use this if the Consequence is the player being arrested by the guards.

 

RequiredFactionList

If you input a FormList, the Consequence will be selected only if there are NPCs in the Onlookers who are members of the Faction in the FormList.

If the Consequence is to be arrested by the guards, set _BF_CrimeFactionHasJailList.

 

In this case, we want the Consequence to be selected only when rieklings are present, so we will create a FormList with the riekling's faction and set it as follows.

ss11.png.0b4110a5fb1dc236047cbbc46f0ee284.png

 

RequiredTeleport

Set to True if you want the ConsequenceQuest process to move the player to a different location.

If set to True, the Consequence will not be selected if the player is in a Teleport-Prohibited location such as Sovngarde.

 

 

 

When you have finished inputting the properties, press OK to close the Property Settings window.
Press OK to close the Quest Settings window.

 

 

 

Next, create a Register Quest.

Open the Quest Editor in the same way as for the Consequence Quest,
Input the Quest ID and uncheck Run Once. (Leave Start Game Enabled checked).

Click OK to close the window.

ss13.png.ecf84cd528c979defc0498625859aae8.png

 

 

 

Open the Register Quest edit window again.

Right-click on the Alias list in the Quest Aliases tab, and select New Reference Alias from the pop-up menu.

When the Reference Alias window opens, input as follows, and then click OK to close the window.

ss15.png.bc131b0b2dd590ba6e6b14f017c72d52.png

 

 

 

Select PlayerRef in the Alias list and press Ctrl+Shift+R.
"Toggle Allow Reserved flag on the selected aliases?" dialog will appear, select Yes.

 

Double-click the PlayerRef to reopen the Reference Alias window.

Click the Add button in Papyrus Scripts.

ss16.png.b2934c05b545528701c225a5223bb7f5.png

 

 

 

Add the _BF_RegisterConsequencePlayerAlias.

ss17.png.91f3d35254cf681301ac6d51fb763d4c.png

 

 

 

Press the Properties button.

ss18.png.40c33f49870644698fdba537ad35e189.png

 

 

 

Set the values as follows.

ss19.png.8763bd7990cb341d16d86c007c6a137a.png

 

 

 

When you are done, close the Properties, ReferenceAlias, and Quest windows by clicking OK.

 

Then save the esp.
That's all you need to do in CK.

 

 

 

Activate the created esp and start Skyrim.
Open the Consequence page of the MCM in Battle Fuck and confirm that the Consequence you created is displayed.

If there are no problems, confirm that the Consequence works correctly after defeated in Battle Fuck.

ss20.jpg.26141b41a35deaa74852ed32dad76b10.jpg

 

 

 

Thank you for reading so far.

 

 

Edited by Suzutsuki

3 Comments


Recommended Comments

If anyone else has trouble getting ctrl-alt-r to work for toggling the "allow reserved" checkbox on the PlayerRef alias, try ctrl-shift-r instead. I'm guessing Suzutsuki has a different setup than me on their creation kit or maybe it's a typo. You also might have to extract the source scripts from the bsa's for BattleFuck! and the relevant mods for your addon to get your scripts to compile.

Link to comment
18 hours ago, Pliny The Elder said:

If anyone else has trouble getting ctrl-alt-r to work for toggling the "allow reserved" checkbox on the PlayerRef alias, try ctrl-shift-r instead. I'm guessing Suzutsuki has a different setup than me on their creation kit or maybe it's a typo. You also might have to extract the source scripts from the bsa's for BattleFuck! and the relevant mods for your addon to get your scripts to compile.

Thanks for pointing out the mistake.

I edited the text.

Link to comment

Hello Suzutsuki, I'm fans of your "Battle Fuck!" mod, thank you for create this mod, you make Skyrim’s battle more interesting, since I used your mod,  I haven't used defeated mod like "defeat" etc.
I want to through your teaching to create a consequence quest for "Battle Fuck!", but I get error, when I select new Script and input script name, input "_bf_consequencebase" on extends, I got the following error message :

Quote

Starting 1 compile threads for 1 files...
Compiling "_Kidnapped_Consequence"...
D:\Game\steamapps\common\Skyrim Special Edition\Data\Scripts\Source\_bf_battlefuck.psc(3283,2): variable bes_API is undefined
D:\Game\steamapps\common\Skyrim Special Edition\Data\Scripts\Source\_bf_battlefuck.psc(3283,10): none is not a known user-defined type
No output generated for _Kidnapped_Consequence, compilation failed.

Batch compile of 1 files finished. 0 succeeded, 1 failed.
Failed on _Kidnapped_Consequence
 

 

May you help me fix this error?

========================================================================================================

After I resolve multiple errors, my last error message is about "bes_api" , but I can not find  "bes_api.psc", even on google. Then I opened "_bf_battlefuck.psc" , I finally understand bes is "Breakable Equipment System", my mistake was to used version 1.8, there was no "bes.api"  at that time.

 

Your post is very helpful, I have not tried to modify or create MOD with CK before this, but you gave me a lot of motivation, thank you.

========================================================================================================

Edited by Califert
Link to comment
×
×
  • 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