主にPS4向けModをつくる際、色々と使えそうなScriptをメモしてみました。全部試したわけではないので、実際使えるかどうかは不明。随時更新するつもりです。
「DialogueFollower」まわりのScriptは
こちら。
※USSEPが既存Scriptをいくつか修正変更しています。以下に紹介するScriptもいくつかはUSSEPの変更と競合し、全く使えないものもあるのでPC版やXbox版にModを移植する際は要注意です。もちろん、USSEP以外でも既存Scriptを変更するものはいくつかあります。
SetPlayerTeammate関連
■VoiceCharmFactionScript -
ActiveMagicEffect
特定Factionに加入・Teammate(true, false)(Teammate化は有効無効を選べる)
Factionから脱退・Teammate解除
※効果開始時CasterとTargetがStopCombat()される
■DLC2VoiceBendWillEffectScript -
ActiveMagicEffect
Teammate(true, false)・TargetにStopCombat()
Teammate解除
■DLC1_TIF__01002B3F -
TopicInfo
Serana.GetActorRef().SetPlayerTeammate(false)
※Fragment_0:Alias:Serana指定してTeammate解除できる。GetOwningQuest().SetStage(35)つき。
■TIF__00021D2B - TopicInfo
akSpeaker.SetPlayerTeammate(true, false)
※Fragment_0:モーリス・ジョンドレレさん関係の会話、Teammate有効
■TIF__00021D2F - TopicInfo
akSpeaker.SetPlayerTeammate(false, false)
※Fragment_0:上のと対になっている、Teammate解除
■TIF__00037A02 - TopicInfo
AKSpeaker.SetPlayerTeammate()
※Fragment_1:闇の一党新人男用の雇用会話。Teammateは命令も有効化。ついでに指定したGlobalValueを「1」に設定できる。USSEPで変更有。でも多分問題ない。
■TIF__0003AA79 - TopicInfo
AKSpeaker.SetPlayerTeammate(False)
※Fragment_0:闇の一党新人男用の解雇会話。Teammate解除。ついでに指定したGlobalValueを「0」に設定できる。USSEP導入下では使用不可。
■TIF__00086832 - TopicInfo
akSpeaker.SetPlayerTeammate(true)
※Fragment_0:エンモンがついて来る時の会話。Factionにも加入させられる。対になる解雇Scriptが見当たらないのが残念かも。
OpenInventory
■DLC1_TIF__01003210 - TopicInfo
akspeaker.OpenInventory(true)
※Fragment_0:Teammateでなくても強制的にインベントリ開ける。
RemoveAllItems
■TIF__0002CCC5 - TopicInfo
akspeaker.RemoveAllItems(akTransferTo = Game.GetPlayer(), abKeepOwnership = false, abRemoveQuestItems = true)
※Fragment_0:話者の所持品をすべてプレイヤーに差し出す。
Faction操作
■DLC2_TIF__020398D2 - TopicInfo
※Fragment_0:akSpeakerを任意のFactionに加入させるだけのシンプルなScript
■TIF__0007143E - TopicInfo
※Fragment_0:akSpeakerを任意のファクションから外すだけのシンプルなScript
ForceRefTo・ClearのAlias操作
■DLC2_TIF__02038A70 - TopicInfo
※Fragment_0:話者を任意のAliasに入れるだけのシンプルなScript。
■TIF__000CDA0A - TopicInfo
※Fragment_1:話者をAliasに入れる。ついでにAddtoFactionと同QuestをSetStage(20)する。
■TIF__000217E3 - TopicInfo
※Fragment_0:任意のObjectReferenceを任意のAliasに入れる。ついでに同QuestをSetStage(20)する。
■TIF__000A3E72 - TopicInfo
※Fragment_0:任意のAliasをClear()するだけのシンプルなScript。
SetValue
Global Valueを変更するScript。TopicInfoでは大半が整数「0」~「2」に変更する処理。ソウルケルンの商人モルウェンとの会話で使われているらしいScriptでは「4」とか「6」とかもありました。
■DLC1_TIF__01003984 - TopicInfo
※Fragment_0:「0」にセットするだけの内容。
■DLC1_TIF__01003C19 - TopicInfo
※Fragment_0:「1」にセットするだけの内容。
■DLC1_TIF__01002B3A - TopicInfo
※Fragment_0:「2」にセットするだけの内容。
Enable・Disable
■TIF__0009DD68 - TopicInfo
※Fragment_1:任意のObjectReference1個をDisableするだけのシンプルなScript。
■TIF__000C6E15 - TopicInfo
任意のObjectReference1個をEnableする。ホワイトランのプレイヤー自宅を改装する会話に添付されているものの一つ。USSEP導入下では使用不可。
※Fragment_0:その他、プレイヤーから任意のMiscアイテムをGlobal Value個分取り払う処理もついています。
■TIF__000C6E12 - TopicInfo
任意のObjectReferenceをEnableし、もう一つのObjectReferenceをDisableする。これも自宅改装用。USSEP導入下では使用不可。
※Fragment_0:その他、プレイヤーから任意のMiscアイテムをGlobal Value個分取り払う処理もついています。
AddItem・RemoveItem
■TIF__000C6447 - TopicInfo
※Fragment_0:任意のアイテム1個をプレイヤーに追加。
AddSpell・Cast
■TIF__00021A6C - TopicInfo
※Fragment_0:任意の魔法をプレイヤーにAddSpellするだけのシンプルな内容。
■DLC1_TIF__0100F898 - TopicInfo
※Fragment _1:任意の魔法をプレイヤーからRemoveSpellする内容。「DLC1_TIF__0101907A」もほぼ同じ内容がFragment_1に。
■BYOH_TIF__01007B33 - TopicInfo
※Fragment_0:任意の魔法をプレイヤーにCastする。またMessageを表示できる。
■TIF__000CC9C0 - TopicInfo
※Fragment_0:任意の魔法をプレイヤーにCastするだけのシンプルなScript。USSEP導入下ではCasterがプレイヤーからakSpeakerに変更されている。
SetOutfit
■PF_MQEtienneReturnToRiften_000E40DA - Package
※Fragment_0, Fragment_1:二つとも同じ内容。akActorにSetOutfitするだけ。
■TIF__0008CBE9 - TopicInfo
闇の一党で廃屋に拉致られた時、誘拐された三名の誰かを助ける際の会話用Script。このScriptによって頭の布袋なしのOutfitに変更している。特定のAliasに対してSetOutfitする。最後に同AliasのActorに対してSetRestrained(False)も行われるので注意。
※Fragment_1:余計な処理がついているが、Topic系Scriptではこれくらいしかないです。
OnLocationChange
■DLC2TelMithrynPlayerScript - ReferenceAlias
新しいロケーション=指定したLocation、かつ指定したActorがTeammateでない時、指定したFactionに加入させる。
■DLC1RadiantPlayerLeaveScript - ReferenceAlias
LocationAliasを指定し、AliasがLocationAliasにいなければGetOwningQuest().Stop()。余分な処理がついてないので使いやすそう。
Objectiveの表示非表示
会話から表示をオンオフできるObjectiveは「1」だけっぽい。なお会話からObjective「1」を完了(Complete)できるScriptはないようです。
■TIF__0003A6A5 - TopicInfo
dunSouthFringeQST.setObjectiveDisplayed(1)
※Fragment_1:Propertyでクエスト指定してObjectiveを表示できる。
■TIF__0002166E - TopicInfo
GetOwningQuest().SetObjectiveDisplayed(1)
※Fragment_0:同クエスト内の会話から使用。ついでにSetStage(40)される。
■TIF__000D55EB - TopicInfo
GetOwningQuest().SetObjectiveDisplayed(1, 0)
※Fragment_0:Objectiveの非表示。ついでにSetStage(205)される。
Aliasに入れたり外したり
■DLC2_TIF__02038A70 -
TopicInfo
※Fragment_0:話者を任意のAliasに入れるだけのシンプルなScript。
■TIF__000A3E72 -
TopicInfo
※Fragment_0:任意のAliasをClear()するだけのシンプルなScript。
Start・Stop
■TIF__0002953E -
TopicInfo
※Fragment_0:SceneのStart。
■DLC1_TIF__01005042 -
TopicInfo
※Fragment_0:任意のQuestのStart。
■TIF__0006C1DC -
TopicInfo
※Fragment_1:SceneのStop。
■TIF__000ABC94 -
TopicInfo
※Fragment_0:GetOwningQuest().Stop()。
結婚関連Quest
■RelationshipMarriageSpouseHouseScript -
Quest
最大9つまでのAliasを交互に付け替えられるQuest Script。このScriptはDLC: Hearthfireで大幅変更されているので、ベースゲームのみのバージョン
(Conditional無し)と取り違えないよう注意です。
USSEPが参照用のBool型変数を1個追加していますが、処理には影響を与えません。
■BYOH_TIF__01003DFC -
TopicInfo
Fragment_0:MoveSpouse()で上記ScriptからAlias付け替えの処理を呼び出します。
OnTrigger関連
■DefaultCastAtLinkOnTriggerSCRIPT
OnTriggerEnterで、トリガーに侵入した本人に特定の魔法をLinkedRefからCastする。連続Castしないよう待機時間も設定できる。待機中は他のActorがトリガーに侵入しても反応しない。
ObjectReference関連
■ToggleLinkedRefOnOpenClose
OpenとClosed二つの状態を持つオブジェクトに使う。自分が開け閉めされる度、LinkedRefをEnable、Disableする。1回だけ行うか何度でも行うか決められる。
■defaultActivateToggleLinkedRef
アクティベートされる度、LinkedRefのEnableとDisableを入れ替える。回数は無制限。
■defaultToggleSelfOnActivate
アクティベートされると、自分自身のEnable、Disableを入れ替える。
■defaultActivateDelayedToggleLinkedRef
自分がアクティベートされる度、LinkedRefのEnableとDisableを遅延時間後に入れ替える。EnableとDisableで個別に遅延時間を設定可能。Fadeするかどうか決められる。遅延時間中に再アクティベート可能なので注意がいるかも。
■DLC2QALearnSpells
アクティベートされた時、Formlistに入れた魔法を全てプレイヤーに覚えさせる。Qasmokeにある、DLC2テスト用のドゥーマースタイルのボタンに使われています。
■DLC2QALearnShouts
上記Scriptのシャウト版。FormlistにはWordofPowerを登録します。一つ言葉を覚えるごとにアンロックも行われます。
前へ |
次へ