「TESV Skyrim」カテゴリーアーカイブ

CK64bitの.bsaパッキング メモ

CK起動、beth.netへサインインしてプラグイン作成。

ファイルが読み込まれるが、自動で読み込まれたこのファイルは
足りなかったりパスが違ったり等

信用できない

特にfacegenで造形するフォロワーMODはfacegen関連フォルダがまるごとなかったコトにされているためこのままUPするとBBAやJJIが出来上がる。

そのため、全選択して右上のRemoveで一度消す。
あとはMODを構成するファイル(フォルダではない)をこのリストの領域にドラッグしてゆく、とても面倒、面倒だがこれしか今のところ知らない。なお、MOD構成ファイルを別の場所に保存してドラッグすると失敗する、その時点のファイルパスを維持するためで、面倒加減に拍車をかける。

再度この作業をやるのもしんどいので、リストをエクスポートしておく。右上のExportListボタンで保存、.achlistというファイルが出来上がるが、中身はテキスト。

右下のPackfiles押下。
すでに同名の.bsaがあるとCKでロックしていて「上書きできないぞゴルァ」エラーが出る、その場合はやり直し。

パッキングできたらここで動作チェック。
圧縮していないルーズファイル(さっき放り込んだ素のファイル)を消す。面倒だが仕方がない。
消し終えたらSkyrim起動、MODが正常動作するか確かめる。

問題がなかったらbethesda.netにアップロードする。MODセレクターで既存MODをダブルクリックか、新規なら新規作成してMOD情報を入力。
右下のUpdateボタン押下、既存MODなら上書きするか聞いてくるのではいを選択したらアップロードされる。

その後bethesda.netのWEBにサインインしてVerのパッチノートを書いて出来上がり、新規MODの場合はPrivateからpublicに設定して、パブリッシュすれば公開される。

XB1

XBOX ONEは最初の生成時にXB1を選ぶだけで後の手順は同じ。.bsaファイルはPC版と区別され、生成するとXB1というフォルダがDataフォルダに出来上がり、その中に隔離される。

SkyrimSEのCKで起こるfacegen問題

bethesda.netでPCとxboxのMODを公開したんだけど、「facegen問題を修正してくれ」とフィードバックがあった。

特にXBOX1は実機が手元にないため、フィードバックだけが頼りなだけにこの報告はありがたいのだが、facegen問題と言われても全く意味不明なんだよなあと試行錯誤をする。

多分こんなことが起こってるんじゃないかと思った。

いわゆる顔紫現象。
テクスチャとかメッシュのパスが狂っていると起こるので、修正は容易。

だが実際は違っていたようで、調べてみるとCK64bit版のアーカイバはfacegenフォルダを含めない、無理やり含めてもファイルパスがおかしくなるバグを含んでおり、.bsaに纏めても出来損ないが出来上がるというクソ仕様だったみたい。

そんな状態でUPすれば、当然こうなると思われる。

JJIとBBA大量生産。

この状態でもUPしたMODは★3-4つをgetしているのが全くもって意味不明。俺なら迷わず★1つをつけるんだが。

Nexusのフォーラム
https://forums.nexusmods.com/index.php?/topic/4991860-how-to-pack-skyrim-se-mods/
ここで応用でbsaを作る方法が書いてあるが面倒すぎてやる気ゼロ。
修正を待つか、別の外部ツールでUPできる方法が見つかるまでbeth.net側のMODはお蔵入りとなりました。

やっぱ今までの方法でNexusを利用します。

Bethesda.netにMODをアップロードする方法

自分用メモ。

■事前準備
・bethesda.netでアカウントを作る。
・bethesda.net LauncherをDLしてCKの64bit版をセットアップする。
・SSEのdataフォルダにMODをぶっこむ。

■MODをパッキングしてUP
・CKでMODを読み込む。
・各種修正など実施。
・日本語などが使われていると「建物名が四角になる!」ってコメントが付くので注意。
・Fileから「Login to beth.net」押下しログイン。
・「upload plugin and archive to beth.net」押下、PCとXB1それぞれでアップロードできる。
その場合はMOD名称に[PC]とか[XB1]とつけるとOK。
PS4は.espのみしかUP出来ないのでいらない子。
・初めてなら「ModSelect」ダイアログが出る。
左下の「CreateNewMOD」をクリックして情報を入力。Createボタンでbeth.net側にMODファイルと各種情報が設定される。
・あとはブラウザでbeth.netにアクセスして左上のMODをクリック。
その後「MYMOD」ボタンでUPした画面を確認できる。

■MODの更新
・UP時、既存の.bsaがある場合、以前のVerのままUPするか聞いてくる(Archive Exists)。nifとかテクスチャとかスクリプトとか修正していた場合は再パッキングするため「いいえ」を選択する。
・「ModSelect」ダイアログが出たら更新したいMOD名をダブルクリック。
・MOD情報画面が出たら右下の「Update」押下。
・ユーザーコンテンツを上書きするか?と聞いてくるので適宜選択。いわゆるDescなどの情報上書き確認なので「はい」でかまわないと思う。
・UP後WEBから確認、Ver2として設定できるため、好きなVer名をつけてパッチノートに更新履歴を書き加えて完了。

SkyrimWalkers FollowerSet V2.0.11B完成(SSE動作確認済み)

2016/12/4記事修正

●V2.0.11BとしてUPしました
bethesda.netとNexusで公開中、NexusSE版は自分の中ではbethesda.netと食い合っているので今のところ利用予定無し。

動画も作りました。

Youtube:https://youtu.be/ZZpWJMKeN2o

ニコ動:http://www.nicovideo.jp/watch/sm30077403

●フォロワー2名追加
おっさんとネーチャンを追加しました。
DLはこちらで→http://skyrim.2game.info/detail.php?id=56565

・召喚士の変人Raios
趣旨としては召喚の研究を探求するあまり肉片や動物の死骸に始まり、トラップやスイートロール等を召喚術に加えられないかと考え始めた頭のネジが飛んじゃった人。
それを実現させちゃった人という方向性で作りました。
使うスペルは

a)HiddenHorror
バスタードのアビちゃんが使用する「フォ・ビ・ドゥーン, 封獄死霊砲」がモデル。原作のようにでっかいものは作れなかったので、プチサイズでVanillaのリソースを組み合わせました。

流用したnifが特殊なので、どの方向から見ても同じ向き?になるためか、tfc1コマンドで止めて観察すると以外にキモい。
AI的にはこれを連発するのでFlamのBirdStrike以上に他のフォロワーと喧嘩率が高く、プレイヤーを巻き込むとかなり痛い。単騎運用向けか。

b)DeathTrap
トラップのActivatorを流用して12本くらいの槍を地面から召喚する。
注目すべきは1本3000ダメージというアホみたいな威力と命中率の低さ。移動速度が遅い敵か、止まっている敵ぐらいにしか当たらないのでネタ魔法として運用すべきでしょう。


havok神のいたずらで、命中してもダメ無しになることも。
カモになりそうなドラゴンは本魔法に対し耐性を持っているので更にネタさ加減が増すことに。あまりネタネタ言うと使いようがないので、槍の出方を時期Verでかえようかな。

ちなみにこの人、すで攻撃にボーナスを持っています。直接素手パンチを用いて変な召喚エネルギーを的に打ち込む的な妄想で設定。序盤しかお目にかかれませんが、カジートの2-3倍の威力があるため結構痛いかも。

・電気ピリピリの戦士AP
エーピーとよみます、変な名前。
電気使う戦士はMysticKnightSaraが有名なんですが、このSetの他のフォロワーがすでに火炎、氷を使っているので電気。
シールドを多様し、シールドバッシュに多少雷撃を付与してあります。

a)SABAKI
敵を裁く雷槌を落とします。

ただの電気魔法はつまらんかったので敵直上から「Por Ort Grav」的な感じでゴロピカと落ちます。20%の確率で落雷おかわりチャンスあり。
長射程高威力に仕上げた反面チャージ時間、消費マジカが高くて、屋根などの遮蔽物があると遮られたり、、屋内では無効となります。

●他にも微妙な修正
1)魔法メインになっていた本modのフォロワーの中、空気になっていた大剣戦士NOXさんの攻撃速度を1.5倍にしたところ、なんか片手剣ばりの速度ででっかい剣を振り回してかなり強くなりました。

まあ大概はBirdStrike、HiddenHorror、FrozenWallPressのような範囲魔法を食らって喧嘩し始めるんですが。

2)これまた他のフォロワーと比べて地味だったVesperさんの化粧ファイルが吹っ飛んでいたことを今頃気づいたため、それを付与。
よくわからん画像だけど、ちょっとは可愛くなったかしら?
プラス氷魔法のFrozenWallPressを付与。ゼビウスのモノリスみたいにくるくる回りながら敵に向かっていきます。
確実に敵が転倒する反面Projectileの速度は遅いため、使い所が難しいスペルに仕上げてあります。

3)BirdStrikeの吹っ飛び効果増大
本MOD最強魔法なのに爆発が地味だったのでかなり吹っ飛ぶようにしました、フィードバックをお待ちしております。

4)サルモール脱走兵が強い魔法を使うぞ
本MODのもう一つの空気「サルモール脱走兵」ですが、BirdStrike、FrozenWallPressを使う可能性を付与しました。
流石に即死しかねないSABAKIは外しましたが、忘れた頃に遭遇するとカイザーフェニックスが襲いかかるかもしれません。

5)Ramfisはハンターの友達2体を呼ぶようになった!
単純に前の召喚3匹セットが弱い&ASIS入れると蜘蛛が無限増殖してバグる不具合があったというのが正直なところです。
ハンターの友達は召喚ではなく、skyrimに設置したActorをmovetoで呼ぶ仕組みを採用。なので永続召喚的な扱いになります。
スペルで呼ぶとハンター君にはそれぞれ50本の矢が付与され、使い尽くすと近接に切り替えられます。50本打ち尽くす前にRamfis君が召喚しなおすので弾切れはまれなんですけどね。

●SSEについて
少なくとも動作はするという程度まで確認済みです。
FrozenWallのテクスチャが場所によって透明になる不具合がありましたが、テクスチャやnifの見直しで改善。
てか、動やったか覚えてないという残念さ加減。ま、いっか。

また、追加したNPCの顔が黒くなるのはFaceGenフォルダに対象NPCの顔データを突っ込んで改善。Facegen周りは自分のフォロワー分は読み取り専用にしておかないと保存する毎にVanillaキャラにされるので注意だ。

魔法着弾後に魔法の抜け殻?を残す

例えばFireballを唱え、着弾後にその燃えカスが敵の足元に落ちる等の演出をしたい場合に設定します。
特にスクリプトなどを使うことなく、CKの設定だけで作れます。

通常のようにspell、MagicEffect、Projectileを作り魔法のベースは完成させておきます。
燃えカスの設定には次の項目を使用します。

・Explosion(SpecialEffectツリーの下)
・Ammo(Itemツリーの下)

まずは燃えカスとなるオブジェクトを作ります、燃えカスは「Ammo」で設定します。
鉄の矢等、適当にDuplicateしてください。

tama02

上の図は「Cheese to die for – Daedra fanatic Follower」で作ったAmmoです。
スクリプト制御をしないのであれば、設定すべき箇所は「Projectile」と「Model」、あとは「Playble」のチェックを外すだけです。
Projectileは設定した魔法と同じものを選びます。
Modelは着弾後に残る残骸や燃えカスにあたるアイテムのメッシュ(nifファイル)を選択します。
念のためEditorID欄にある項目はDeleteキーで消しておくのがよいでしょう。
ID名をつけてあげて、OKを押します。

次はExplosionです。
適当なものをDuplicateします。
tama01
設定すべきは右下から3番目の「Placed Object」項目。
先ほどのAmmoの設定がうまくできていればここに出てきているのでそれを選択してOKを押します。
ここに設定したAmmoが着弾後に落ちる仕組みです。

なお、Explosionの項目は爆発を制御しています、爆発させたくない場合はArtFile欄に「Effects\FXEmptyObject.nif」と入力、sound欄や他の項目も適宜noneに設定します。
これは透明な爆発を表示させるメッシュと考えてください。例を見たい場合はCKの検索欄に「fake」と打ち込むとこれを使っている項目が出てきます。

最後に、MagicEffectを開いて、Explosionの欄に今作ったExplosionを当てはめて出来上がりです。ゲーム内で動作をチェックします。

チーズMODが動画デビューしたよー

あのシェオ爺が喜びそうなチーズジャンキー必携MODである「Cheese to die for」がネタとして動画に使われました。
こんな完成度で良いのでしょうか。とにかくmodを使っていただいたchibaさんにはお礼を申し上げます。

予想外なのは、

「もっとカオスになるようにしてほしい」

という要望があったこと。

たしかに、狂乱のデイドラの王子が喜ぶ仕様にするには、現バージョンの魔法はいささかパンチが足らない(他の魔法であるCheeseBooster、CheeseNapalmはPressureに比べると地味さがはんぱない)と言わざるをえないと、改めて考えさせられた。

今回modを採用していただいた「chiba さん」の要望は次のとおりだ。

1:もっと爆発範囲を広く!

続きを読む

Cheese to die for – Daedra fanatic Follower v0.1b公開

62058-1-1422346673

 

チーズをテーマに作成していたMODが完成しました。
Nexusにあげてあります

Youtubeニコ動にも動画を載せました。

MODデータベースにも記事を書いてくれた方がいらっしゃいました、ありがとうございます。あなたにはきっと近日中にシェオゴラスが何かしらのちょっかいを出してくれることでしょうw。

フォロワーMODという位置づけになっていますが、正直このMODは魔法MODの側面が強く出ています。フォロワーとして作った猫Lokirさんには申し訳ないけれど、あなたはお寿司のガリで、メインの寿司の立ち位置は「魔法」!いやだってさ、Lokirで且つもみあげがもじゃもじゃの声がカジートで、チーズがないと攻撃できないフォロワーって好んで使う人はマジで狂気ですよ?…とまあ、今回ネタMODになってしまいましたが、「アイテム消費型魔法」のスクリプトを作ることが出来たので、今後このような消費系のアイディアが出た際に重宝しそうです。自分が知らないだけだと思いますが、アイテム消費系魔法ってあんまり見たこと無いんですよね。実際管理が面倒なので実用的ではないし、無駄にアイテムを作る必要があるので無いだけなのかな?

早速ニコ動にコメントを頂いていまして、TES4のシェオゴラスクエにあった「オルロイチーズ」を何とかできなかという意見があります。
パパっと思いつく限りだと、ゲームにならない効果が期待できるアイテムか魔法になると思います。
使った瞬間に半径5000以内の生物は嗚咽とともに三日間麻痺するとか。もう少し意見を集めたいところです、しばらく様子を見てゆっくり考えていきたいですね。

…実は、デイドラをテーマにしたこれ系のMODのアイディアがもう一つあったりします。題材となるデイドラは「ペライト」。
なぜかって、あの毒々しい液体の素材がわんさかとあるので、新しくオブジェクトを作る必要性が無いんですよ。Actorに対してもゲロ攻撃というネタ要素に使えるアビリティも持っています、作ってくださいと言わんばかりです。
時間があるときに少しづつ作りますかね。

Sheogorath様の狂気、チーズをふんだんに使ったMOD作成中

2015-01-21_00009▲西の監視塔をチーズで制圧。

狂気のMOD「Cheese Booster(仮称)」を作成中です。
先日Youtubeでシェオゴラス様セリフ集を見ていて、ふとチーズがあれば死んでもいいと思い作成を決意。

■コンセプトは、、、狂気?
フォロワーMOD及びスペル追加MODとして作成しようと考えました。
ストーリーラインはやはり狂気に満ちていないといけない。例えばこんなのはどうか。

ヘルゲン近郊で定命の者「Lokir」の遺体を発見した狂乱のデイドラの王子。とても退屈していた彼はその遺体を蘇生させるため、たまたま所持していた猫の魂をLokirに封入した。
蘇生されたLokirの体を持つ猫、思いの外新たな人生を満喫するのに前向きであり、狂乱の王子は特別なチーズを猫に与えて余生を楽しむよう言った。Lokirの体を持つ猫は、スクーマよりもチーズを狂おしく愛するようになり、その様子を狂乱の王子はしばらく楽しむことにしたのである。

前作の「燃えた犬が降ってくる」ほどの狂気ではないけれど、Questをガチガチに作るわけではないため、道筋としてはこれくらいでよいだろう。LokirのモデルをDuplicateしてもみあげを追加。声はカジートである。ちなみにLokirはEditorIDで探すと「MQ101Prisoner」という名前になっているので探すときはNameでソートするとよいです。

■魔法はどうする?
次の条件を満たしたい。

1)かなり強力なバランスブレイク魔法にしたい。
2)アイテム消費型魔法
3)ネタ要素満載

ストーリーラインにあった「特別なチーズ」を所持すると魔法を追加するようにし、チーズがなくなると魔法を忘れるようにスクリプトを組みたい。
Questを作ってOnUpdateでQuestScriptにすればいいかな。
猫Lokirとプレイヤーをエイリアスに設定してそこにスクリプトをつけてチーズ消費の監視をさせる。
チーズをProjectileにする魔法です、身内にSSを見せたら「なんだこれは」と良い反応をもらったので完成が楽しみ。

■公開は近日中
今日中にできるかもしれないけれど、もうすぐです。その後他のMODの不具合修正にとりかかります。

■とっても悩んだスクリプト
猫Lokirを複製したActorをCellに設置し、次のスクリプトを書いてQuestスクリプトに放り込んだ。このスクリプトは何かというと、チーズ所有を監視し、魔法の追加や削除、使用可否をリアルタイムで制御する役目を担っている。なお、チーズ魔法はPlayerと猫Lokir以外の使用を想定していない。

Scriptname _BoosterCheezeMonitor extends Quest

Event OnInit()
debug.notification(“Sheogorath know.”)
RegisterForSingleUpdate(1)

EndEvent

Event OnUpdate()
;実際の処理はここ

CheezeCount = Game.GetPlayer().GetItemCount(Items1)

; Debug.notification(“Monitaring now”)

;playerのスペル処理
if Game.GetPlayer().GetItemCount(Items1) <= 0 && Game.GetPlayer().HasSpell(ChoiceSpells1) == 1 ;チーズを持っておらず、スペルを所持している場合は呪文を外す

; debug.notification(“Cheeze.” + Items1)

PlayerSetting.RemoveSpell(ChoiceSpells1)
PlayerSetting.RemoveSpell(ChoiceSpells2)
PlayerSetting.RemoveSpell(ChoiceSpells4)
debug.notification(“You lost Sheogorath Power Spells.[Q]”)

elseif Game.GetPlayer().GetItemCount(Items1) > 0 && !(Game.GetPlayer().HasSpell(ChoiceSpells1)) ;チーズを持っていてスペルを所持していない場合は呪文を加える

if !(Game.GetPlayer().HasSpell(ChoiceSpells1))
playerSetting.AddSpell(ChoiceSpells1, 1)
playerSetting.AddSpell(ChoiceSpells2, 1)

if !playerSetting.IsIninterior()
playerSetting.AddSpell(ChoiceSpells4, 1) ;屋外なら呪文を加える
debug.notification(“okugai”)

endif

debug.notification(“You get Sheogorath Power Spells.”)
endif

if playerSetting.IsIninterior() && Game.GetPlayer().HasSpell(ChoiceSpells4) ;屋内でチーズプレッシャースペルを持っている場合は外す

PlayerSetting.RemoveSpell(ChoiceSpells4)
; debug.notification(“okunai + cheese”)

endif

if !playerSetting.IsIninterior() && Game.GetPlayer().GetItemCount(Items1) > 0 && Game.GetPlayer().HasSpell(ChoiceSpells4) ;屋外でチーズを持っていて、チーズプレッシャースペルを持っていない場合は加える

PlayerSetting.addSpell(ChoiceSpells4)
; debug.notification(“okugaii + spell”)

endif

endif

if Game.GetPlayer().GetItemCount(Items1) > 0 && playerSetting.IsIninterior() && Game.GetPlayer().HasSpell(ChoiceSpells4) ;チーズを持っていてチーズプレッシャースペルを所持しながら屋内に来た場合スペルを外す。

PlayerSetting.RemoveSpell(ChoiceSpells4)

elseif Game.GetPlayer().GetItemCount(Items1) > 0 && !playerSetting.IsIninterior() && !Game.GetPlayer().HasSpell(ChoiceSpells4) ;チーズを持っていてチーズプレッシャースペルを所持せず屋外に来た場合スペルを加える。

PlayerSetting.addSpell(ChoiceSpells4)

endif
;フォロワー側スペル処理

CheezeCount = PlayerLokir.GetItemCount(Items1)

if !PlayerLokir.IsDead() ;ロキールが死んでいないかチェック。

if PlayerLokir.GetItemCount(Items1) <= 0 && !PlayerLokir.HasSpell(MagickaDownAb);チーズ不足で、チーズスペルを使えなくする処理

;debug.notification(“Cheeze.” + Items1)

; PlayerLokir.RemoveSpell(ChoiceSpells1)
; PlayerLokir.RemoveSpell(ChoiceSpells2)
PlayerLokir.addspell(MagickaDownAb)
debug.notification(“Lokir lost Sheogorath Power Spells.(Q)”+ PlayerLokir + “/” + cheezecount)

elseif PlayerLokir.GetItemCount(Items1) > 0 && PlayerLokir.HasSpell(MagickaDownAb) ;チーズがあるのでチーズスペルを使えるようにする処理

; PlayerLokir.AddSpell(ChoiceSpells1, 1)
; PlayerLokir.AddSpell(ChoiceSpells2, 1)
PlayerLokir.removespell(MagickaDownAb);
debug.notification(“Lokir get Sheogorath Power Spells.”)

endif
endif

RegisterForSingleUpdate(2) ;2秒後OnUpdate開始。

EndEvent

Potion Property Items1 Auto

Spell Property ChoiceSpells1 Auto
Spell Property ChoiceSpells2 Auto
SPELL Property ChoiceSpells4 Auto

Spell property MagickaDownAb Auto

int CheezeCount

Actor property PlayerSetting Auto ;プレイヤー用
Actor property PlayerLokir auto ;ロキール用

「チーズプレッシャー」というスペルだけは屋外専用なので、個別判定を設けています。
また、CKの仕様で「Actorに初期設定したスペルのRemoveSpellができない」らしい。そのため、猫Lokirに関しては所持チーズがなくなった場合はMagicka総量と回復レートをマイナス値にするアビリティを付与し、魔法を使えない状態を表現した。

さて、ここで問題が発生。「Actor property PlayerLokir auto ;ロキール用」と宣言してCellに設置した猫Lokirをプロパティ値にぶち込んであるはずが、ゲーム内では「NONE」を返してしまい、処理が出来ない。
プロパティを設定しなおしても、変数を作りなおしても、新規ゲームをしてもダメ。いろいろ調べてみてもそんな現象を報告している日本語サイト、英語サイトは探した感じ見当たらない。
猫LokirのRefIDはプロパティ値とGame内では同じなので、いいはずなのだが・・・。

MODお蔵入り!?

そう思っていたんですが、3日悩んだ結果、何とかなりました。Cellに設置した猫LokirのリファレンスにあるEditorIDに任意の値をつけることで、めでたくスクリプトが稼働しました。
こんな単純だったとは・・・。

refdiag
▲一番上のフィールドに値を入れてズバっと快傑。

テストや細かいオブジェクトを配置して、やっと公開出来そうですね。

■この記事
読み返したらすんげー読みづらい。でも修正はめんどいのでしない。・・・おいらもシェオ爺の狂気に支配されているかもしれん。