OBLIVION MOD作成支援/相談スレPart9

このエントリーをはてなブックマークに追加
1名無しさんの野望
OblivionのMOD作成におけるスクリプトやモデリングの相談や質問、
自己解決の独り言などを書き込んでいくスレです。

スレ人口が少ないため、やりとりは遅くなりがちです。
返答がなかなか無くてもくよくよしないでください。

応える方は既出or初歩的に過ぎると思われる相談や質問でも
MOD作成者の裾野を広げるつもりで鷹揚にお願い致します。

前スレ OBLIVION MOD作成支援/相談スレPart8
http://yuzuru.2ch.net/test/read.cgi/game/1297684804/

■Construction Set 日本語 help
http://shy.jsphr.net/upload/img/ups05912.zip
2名無しさんの野望:2011/07/26(火) 15:48:07.57 ID:+eYt6HIb
前スレがいつの間にか埋まってたので。
このスレでSkyrimまで持つかなー。
3名無しさんの野望:2011/07/26(火) 15:55:08.73 ID:OOYUcTq7
埋まったっていうかDAT落ちしたな
それはともかく>>1
4名無しさんの野望:2011/07/26(火) 18:52:33.45 ID:9e34pksO
>>1さんお疲れ様です

このたびCSの使い方がそれなりに分かってきた?ので
自分用のバランシングmodを作ろうと思います

・特定効果の魔法の自作不可
・特定魔法効果の消滅&自作不可
・羽毛化エンチャント(SM)の落下ダメージ無効の条件を変更

といったところを考えているのですが……
5名無しさんの野望:2011/07/26(火) 21:11:57.60 ID:ex2SNR75
>>4
魔法自作不可とかは普通にMagic Effectで簡単にできるよ
落下ダメージのほうはスクリプトだろうね。すごく難しそうに見える。ってかできるんだろうか?
6名無しさんの野望:2011/07/27(水) 18:36:59.71 ID:d/TLRBDa
ResetFallDamageTimerを常時走らせておけばシェオ爺のおしおきだろうと、余裕の生還
7名無しさんの野望:2011/07/27(水) 23:25:32.39 ID:YtBh0MXd
派閥ごとPCと敵対させたい場合どうやったらいいんでしょうか?
STARTCOMBATだと一人しか無理ですよね
8名無しさんの野望:2011/07/28(木) 00:00:55.65 ID:YApagseZ
Playerが所属してるFactionと友好度をめちゃくちゃ下げればいい。
そうすればFaction毎の喧嘩になる。
9名無しさんの野望:2011/07/28(木) 00:16:51.53 ID:vNzeCiUw
>>8
おぉすばやい回答ありがとうございます
やってみます
10名無しさんの野望:2011/07/28(木) 03:04:23.20 ID:DdV68KwC
クリーチャー作成用に新しくskeleton.nifを作成、もしくは改変をしたいんだが、解説しているサイトや過去レスであればそれを教えてもらえないだろうか
11名無しさんの野望:2011/07/28(木) 10:00:17.79 ID:KgYozwmd
>>10
とりあえず基本的な大筋は本家CSWikiで「Creature」を検索で。
断片的な細かい話ならここの過去スレにも多分色々あるとは思いますけど、
それぞれ状況が特殊だったりでどれを紹介していいかちょっと分からないです。

どのぐらいの背景知識があってどんなモノを目的にしてるかを教えてもらえると
多分話が早い気が。
12名無しさんの野望:2011/07/28(木) 11:26:30.87 ID:/lPbwNtA
>>6
あれはgodモードでも死ぬ。
たぶんscriptでkillしてる。
13名無しさんの野望:2011/07/29(金) 02:23:06.60 ID:TxNwIHMy
>>11
レスthx

【目的】新規クリーチャー、例えば蛇のような簡単なものから人馬一体のデュラハンのようなもののためのskeleton.nifの作成
【知識】新規武器および防具の作成、新規モーションの作成等の経験有 なのでBlenderはひと通り使用可能

やりたいことと知識としてはこんな感じ
バニラのskeleton.nifを使いまわせればそれに越したことはないんだけど

CS wikiの英文をざっと読んだけど、nifskopeで子のボーンを追加していくのかな?
それだと追加のExtraDataをどうやって追加していけばいいのかがよくわからん状態

Blenderでも出来るなら、慣れ親しんでるツールなので自分としてはやりやすいところ

こんな感じだけど、レスもらえると有り難い
14名無しさんの野望:2011/07/29(金) 11:01:12.09 ID:FGuJ7nxv
>>13
状況大体了解です。

まず、skeleton.nifはBlenderだけでもNifSkopeだけでも作れます。併せ技でも。
NifSkopeでしか指定出来ない細部のパラメータとかはありますが。

メッシュが既にあってSkeletonだけを新規に作るのならそのCSWiki記事の
「Adding the Armature (skeleton)」、「Rigging」、「Creating the skeleton.nif」
辺りを。っても記事の大部分ですけど。

手順の概要的にはBlenderでまずそのメッシュにArmatureを適切に仕込む→
必要なArmatureの個所にコリジョン用オブジェを作ってParentBone指定→
コリジョン同士にRigidBodyJointのConstraintを付けて→その他必要なオブジェを
追加して→メッシュを消して所定の指定でExport、みたいなかんじに。

手順自体はCSWikiのその記事を元にキーワードや細部をBlenderサイトなんかで
個別に調べる、みたいにするといいのかもです。
Blender上での概念/機能/名称とnifでのそれは微妙に違ってたりするのでその辺も。

個別の手順的な話ではなくて、Skeletonの基本的な仕組みとか全体の概念みたいな
話はそれはそれで長くなりそうなので必要でしたらまた。
15名無しさんの野望:2011/07/29(金) 11:05:58.60 ID:FGuJ7nxv
続き)
で、初めてでいきなりゼロからSkeletonを作るのはやはり大変かもなので、
一度有り物の適当なskeleton.nifをBlenderでImport→Exportして再度ゲームで動作
させてみたりして、Blender上で何がどう見えてnifにどう出力されれば正解なのか、
Exportの制限等の確認をまず最初にしといた方がいいかもです。

その他、コリジョンやHavokのConstraint関係の情報はこの辺を。

http://niftools.sourceforge.net/wiki/Blender/Collision
http://niftools.sourceforge.net/wiki/Oblivion/Oblivion_Bhk_Constraints

ついでに以前このスレPart5/112でUPした剣型クリーチャー例です。ご参考にでも。
そのskeleton.nifをBlenderにImport/Exportする話は124以降に。

http://shy.jsphr.net/upload/img/ups29174.jpg SS
http://shy.jsphr.net/upload/img/ups06442.zip
http://shy.jsphr.net/upload/img/ups06646.jpg SkeletonのImport/Export指定例
16名無しさんの野望:2011/07/29(金) 21:08:31.79 ID:dtIseJW6
少々伺いたいのですが、

shortやfloat値をそのままゲーム内に(たとえばMessageBoxみたいな感じで)出力する方法ってありますか?

何がしたいかというと、
set A to 100
を代入しておき、
ゲーム内で A の100という数字をなんらかの形で表示したいのですが


よろしくおねがいします


17名無しさんの野望:2011/07/29(金) 21:50:53.01 ID:tXAmCbZx
>>16
float A
set A to 100
print tostring A

のこと?
左上にってんなら
message "%3.0f" , A

こんな感じだった気がする
てかTESCS WIKI見ればいいよ
18名無しさんの野望:2011/07/29(金) 22:33:33.78 ID:RiMXYu4D
OBSEでMassageboxExを使えばいい
19名無しさんの野望:2011/07/29(金) 22:46:49.25 ID:dtIseJW6
>>17>>18
レスありがとうございます
.>MessageBoxEx
OBSEにあったのですね。
ぱっとwikiでみてきたところまさにピタリでした。

Messageでも確かに可能ですがこちらのほうが目的にぴったりですので、
こちらで遊ばせていただこうとおもいます。
ありがとうございました。
20名無しさんの野望:2011/07/30(土) 05:27:26.28 ID:Fs1CDxFY
>>14-15
丁寧にありがとう
参考にしながら地道にやってみるよ

ちなみに、特にてこずったり面倒だった部分がもしあったら簡単に教えてもらえるだろうか
何度も聞いてしまって申し訳ない
21名無しさんの野望:2011/07/30(土) 09:43:25.46 ID:9Hple1ce
>>20
うーん、どうなんでしょうね。
Blenderの操作がOKなら特に作業上の問題は無い気も。

Armatureを仕込んだりコリジョンオブジェやConstraint指定なんかは特にOb専用の
機能ではなくてBlenderに元からある機能操作の話ですし。
Blender独自の分かり難さはあるとは思いますが。

NifSkopeでHavok等の細かなパラメータ類を追い込んだりするならそれなりに時間は
かかるかもです。

それ以外で何か問題が起きるとしたら、単に手順的な凡ミスか、または概念的に何かを
取り違えて全く見当違いな事をやっていた、みたいな事な気も。

とりあえずはやってみるのが早いと思います。

あと、作ったSkeletonの動作の確認はkfを全種類作らなくてもIdle.kfだけあれば
OKです。
22名無しさんの野望:2011/07/30(土) 15:17:46.31 ID:Fs1CDxFY
>>21
何度もありがとう
頑張ってみるよ

問題は時間か…
23名無しさんの野望:2011/08/02(火) 12:16:16.58 ID:WZLB5joT
あるmod(仮にAと呼びます)に特定の状況でランダムに出てくる敵Bを倒した時
イベントが発生するクエストmodを作ろうとしました
ところがAは環境と好みに応じてA1.esp〜A4.espの中からひとつを選んで導入するタイプのmodでした
(共通のesmは無し、敵のIDは共通だがインベントリは微妙に違うようです)
こういう場合マスター指定のしようがない感じなのですがどうしたものでしょうか
やはり討伐対象の敵のspawnから自分で管理するしかないのでしょうか
24名無しさんの野望:2011/08/02(火) 18:55:52.11 ID:ZYNyX++M
>>23
敵Bの「Name」はユニークでA1〜A4で同じなんですかね。
もしそうならOBSEのEventHandlerのOnDeathで名前で判定、みたいな方法も。
25名無しさんの野望:2011/08/02(火) 19:34:51.04 ID:n73vqxBx
エスパーの上におせっかいスマソ。

>>23
その元MODってdungeonbossやStrBanditみたいな
ランダムNPC追加MOD?
だとしたら普通にMODのほうで
敵を用意して湧かせたほうがいいと思う。
居場所はおろか今湧いてるかどうか
わからないような相手を討伐しにいくのはちとしんどい。
あるいは候補者全員を対象にするほうがいいかなと思う。
26名無しさんの野望:2011/08/02(火) 20:03:12.46 ID:qAtOMXKp
・espの名前が同じ
・どのespでもIDは変わらない
ならば何も考えることはないんじゃない?

espの名前が違うなら、それは元の数だけ作るしかないな…。
Bash前提ならばmerge専用プラグインでどうにかなるかもしれないが詳しくは知らない。
27名無しさんの野望:2011/08/02(火) 21:00:58.46 ID:WZLB5joT
返答ありがとうございます
プログラム的にもゲーム的にも確かに茨の道っぽいですね
おとなしくmodの敵を出すようにしたいと思います


顔は使いまわしでいいですよね
28名無しさんの野望:2011/08/02(火) 21:15:24.07 ID:1USZZGBr
>>27
それはGetFormFromModでそのFormID引っ張ってくれば、マスター指定しなくても普通に出来ると思いますよ。
29名無しさんの野望:2011/08/02(火) 23:06:56.94 ID:BOwzN2WF
>>23
もう諦めちゃってるかもしれないけど一応。
OBSE使うなら、倒したMobのrefからGetSourceModIndex、GetNthModNameで
そのFormが所属するModのファイル名(A1.espとか)を取得、sv_compareなりsv_findなりで判定って
出来るので、プログラム的には>>23は別段茨の道ってわけではないです
多分コード自体は数行ぐらいしかかからない
30名無しさんの野望:2011/08/03(水) 08:28:01.64 ID:1Le+pnWs
もういいんですかね。

>>23の文面を見る限りでは目的はその敵BのゲームでのIDを知る事ではなく、
多分敵Bを倒したタイミングを知る事な気がしたのですが。

いずれにしろその条件だと概念や使う関数が少しややこしくなりそうなので確かに
取っ付き難いかもです。
でも関係する関数は用意されてるので特に茨の道ではないですし、スクリプト自体
は恐らく少量で済むと思います。

という事で気が変わりましたらまた。
31名無しさんの野望:2011/08/03(水) 22:35:59.25 ID:bwmjfpQW
「ULC」を入れているのですが
CSで家を配置してゲームをすると木などが家を突き抜けてしまいます
MODの順番も「ULC」より下にしています

「ULC」もCSで開いてフィールド上の邪魔になる木を削除してその上に家を配置したのですが駄目でした・・・
なんか良い方法は無いでしょうか?
32名無しさんの野望:2011/08/05(金) 07:50:14.64 ID:3y2cPtNS
自分用のMMMとでも言うべきものを作ろうと思っているのですが
既存のダンジョンに一括して湧きポイントを増やすような方法はないものでしょうか
ダンジョンひとつひとつ開いて敵を追加していくのが非常に大変なのですが……
33名無しさんの野望:2011/08/05(金) 09:24:20.54 ID:3BfaY7h8
>>32
湧きポイントを増やすじゃなくて一度に湧く数を増やすじゃ駄目かな?
それなら特定のLeveledCreatureを増やせばなんとかなるんだけど・・・
34名無しさんの野望:2011/08/05(金) 09:26:20.29 ID:3BfaY7h8
というか湧きポイントを増やす人は少ないので
結構期待してる。完成したらうpしてほしいな
35名無しさんの野望:2011/08/05(金) 13:00:43.89 ID:3cdskJOn
湧きポイントを万遍なく増やすのは面倒だからね……
俺も>>32に期待してる
36名無しさんの野望:2011/08/05(金) 14:52:34.39 ID:iZh7DTfz
>>31
ULC持ってことはマスターファイルとしてULCがあるってことでいいんですよね?
その場合削除してもULC自体にその木の情報があるので無理です。

で、修正方法はどれか。
・ULC自体からその木をなくす。
・別の場所に移動させる。じゃまにならない位置とか。あるいははるか地中(Y座標を-10000とか)に埋めてしまうのもあり

あと試してはいませんがその木(オブジェクト)をDisableでも行けるかもしれません。
37名無しさんの野望:2011/08/05(金) 23:49:53.18 ID:VFOSjDQF
いっそ勝手に敵を配置するscriptを考えたほうがいいかもな。
地形やレベルドリストを参照する事はできなさそうだから相当泥臭い仕様になりそうだがw
38名無しさんの野望:2011/08/06(土) 12:00:22.11 ID:wpBPqYlx
それって充分いけるんじゃないですかね。

既に配置してあるLeveledCreatureを知る事は自体は出来そうな気が。
でも同じListで再度生成すると同じ顔の敵が増殖するかも。

なので自前で各系統のそれっぽいLeveledListを用意、敵アクターのFactionかなんかを
見て同系列のListを選んでそこから生成、みたいにしたり。

アクターを出すのはPlaceAtMeで。
特に地形の事は考えずに元アクターの側なり適当に距離を離すなりして出現させれば
そこに地面オブジェが無くてもシステムが自動的に近場のPathGrid上に移動してくれる
と思います。多分。

実際にどんなかんじになるかはやってみないとなんともですが。
39名無しさんの野望:2011/08/07(日) 08:36:00.97 ID:AFHYxCsT
Staff以外の武器にLuck依存のクリティカル効果を、
ScriptEffectのMagicScriptで実装中です。
DLCのメエルーンズレイザーについていたScriptをヒント•骨子に、
•対象はNPCもしくはCreatureか
•死亡していないか
という判定を追加し、成功時には
•MagicEffectShaderを相手に載せる
•SpellSoundを鳴らす
という処理を追加し、ここまでは期待通り動作はしています。

目下の望みは、
•クリティカル効果をSneakeAttack成功時のダメージボーナス効果にしたい
•SpellSoundをSoulTrapのものにしたい、という点です。
そこでお尋ねしたいのは、
•一体どこに「Sneakスキルによって変化するダメージ増加効果」がVanillaで実装されているのか
•「どうやってその機能を呼び出すのか」
•SoulTrapのSpellSoundはどこで定義されているのか
(見当たらないのでMysticismのそれにしています)
•矢が跳ね返るような構造物などに当たった際の火花(?)Effectも載せられるか
という点です。

VanillaのSneakAttack処理に拘るのは、
GameSettingsからSneakAttackの倍率を変更している方もいらっしゃるはずで、
かつ最近はDemolishSystemさんが攻防時に様々な
独自ダメージ計算を行っていらっしゃるので、
そうした環境下でも安定して効果を発揮し、
何より「元からある機能を用いてシンプルに作りたい」という意図があります。
現状はメエルーンズレイザーを骨子に作っていますが、
上記目的が果たせるならば、抜本的に作り変える事は全くこだわりません。
ぜひご意見、ご提案、よろしくお願いします。
40名無しさんの野望:2011/08/07(日) 10:53:27.82 ID:VZhUccrB
>>39
DLCのメエルーンズレイザーというのが分からないので、
答えられる範囲だけで


>一体どこに「Sneakスキルによって変化するダメージ増加効果」がVanillaで実装されているのか
これは「Game Setting」にあります。
ちなみにこれは、Sneakのスキル値によって変化するものではなく、Sneakの熟練度がNoviceであるかMasterであるかの倍率になっているのに注意してください。

定義名はここを参照してください
ttp://cs.elderscrolls.com/constwiki/index.php/FPerkSneakAttackXXMult

>「どうやってその機能を呼び出すのか」
スクリプト上でしたら、OBSEのGetGameSettingで呼び出せます。

>SoulTrapのSpellSoundはどこで定義されているのか(見当たらないのでMysticismのそれにしています)
「Magic Effect」の「Soul Trap(EditorIDはSTRP)」の項目を見ると、サウンドを定義する項目があります。
ちなみに、SoulTrapの効果音はMysticismで合ってると思います。ただ、Cast・Travel・Hitと3種類のサウンドがあるので、どれを指しているのかわからないのでお任せします。


あとは分かりません、ごめんなさい。
41名無しさんの野望:2011/08/07(日) 13:04:00.41 ID:AFHYxCsT
>>40
早速ありがとうございます。
>DLCのメエルーンズレイザーというのが分からないので、
仰る通りですね、長くなってしまったので省いてしまいました。

[Magic Effect Script]
short sRandom
float fLuck
Ref rTgt
begin ScriptEffectStart
set rTgt to GetSelf
 if ( rTgt.IsActor == 1 ) || ( rTgt.GetIsCreature == 1 )
  if ( rTgt.GetDead == 0 )
   if GetIsReference player == 0 && GetInFaction PlayerFaction == 0
    set sRandom to getRandomPercent
    set fLuck to player.getAV Luck
    set fLuck to fLuck * 0.35
   if fLuck < 1
    set fLuck to 1
   endif
   if sRandom <= fLuck
    PlaySound SPLMysticismHit
    rTgt.PlayMagicShaderVisuals effectSoulTrap 5
    rTgt.PlayMagicEffectVisuals STRP 5
    rTgt.Kill
    Message "会心の一撃!相手を即死させた。"
   endif(省略)
end
・Sneak熟練度によって変化するダメージ増加効果
GetGameSettingで取得した値を元に、やはりScript上で改めてダメージ量計算するしかないのでしょうか。
・「Magic Effect」の「Soul Trap(EditorIDはSTRP)」
すみません、これは後続のModがSoulTrapを書き換えて(Mysticism以外)いたようです、凡ミスでした。
42名無しさんの野望:2011/08/07(日) 14:53:59.92 ID:VZhUccrB
>>41
ダメージの決定は[武器の攻撃力×Fagitue×敵のArmorRating…等]という風になっているので、
これをScriptで反映させようとすると、やはりその値を読み込んで、基本ダメージ値を算出して、そこからSneak Attackの倍率を乗算する方法しかないのではないかと思います。
43名無しさんの野望:2011/08/07(日) 15:12:31.99 ID:AFHYxCsT
>>42
度々どうもです。
Killみたいな一発Functionとしてあれば〜、というのは甘い考えでしたね。
Sneak Attackの倍率効果は、その方式でいっちょこさえてみます。
44名無しさんの野望:2011/08/07(日) 15:30:47.61 ID:kwv6el0k
アミュレットや指輪の装備数制限を解除するやつがあるじゃないですか。
それを重なってもいいから表示されるようになんとかならないもんですかね?

装備スロットを増やすのはたぶん無理なので表示さえしてくれれば・・・

帽子かぶって眼鏡かけてピアスつけてアミュレットかけてマントしてベルトつけ
て・・・なんてことをやってみたいな〜と。現状だと尻尾かアミュレットの2箇所
で我慢するか、全部nifでくっつけてまとめるかしかありませんがそれだと組み
合わせが自由に出来ないし・・・

今まで不可能だったものが続々とクリアーされてるので、自分では多分無理
な状況に作ってくれるかもしれない期待を込めて・・・
45名無しさんの野望:2011/08/08(月) 09:27:29.16 ID:URrZha+b
>>43
少し細かい話ですが。
EnchantのScriptはダメージが適用された後に起動されるので、Sneakクリティカルの
倍率をそこで変更してもその回の攻撃には反映されないです。

でも倍率を変更した後に戻さないなら次回攻撃に反映されるので、最初の一回だけ
何も変化が無くて次回以降に適用が次々持ち越され、結局正常に動作している
のと同じ事になるかもですが。

ランダムな効果ならそれで特に問題無いと思います。
でもその攻撃回にその変更の適用が厳密に必要な場合は恐らく別な方法が必要に。
46名無しさんの野望:2011/08/09(火) 19:28:24.75 ID:rQHs3YZo
質問させてください
ボーン一体型で全身装備作ったのですがファーストパーソンで手が見えません
どうやったら見えるようになるかわかりますか?
47名無しさんの野望:2011/08/09(火) 19:40:03.87 ID:UXn6ogS9
マテリアルのvalue名がskin以外でNiTriShapeとかNiTriStripsのvalue名が〜bodyになてると非表示になったような気がする(upperbodyとかね)
48名無しさんの野望:2011/08/10(水) 15:47:36.19 ID:TB4/oThv
>>47
ありがとうございます
うーん名前変えてみても表示されない…
49名無しさんの野望:2011/08/10(水) 20:57:55.47 ID:N/N5O2Dm
>>48
一/三人称の表示/非表示だけならNiTriStripes/Shape→Nameの先頭に「UpperBody」の
文字列があるかどうかで決定されますけど。

どんなメッシュの分割構成でどの部分をなんて名前にしたんですか?
50名無しさんの野望:2011/08/10(水) 23:23:45.27 ID:TB4/oThv
>>49
返信有難うございます
上下手足頭全部入ったボーンで
NiTriStripsはupperbodyとかじゃない適当な名前にしてあります
CSカバー部位はHead upperbody lowerbody hand footになってます
51名無しさんの野望:2011/08/10(水) 23:53:29.14 ID:N/N5O2Dm
>>50
CSでの装着部位指定に「Head」が含まれているからかも。
一度Headの指定だけをはずして確認を。
52名無しさんの野望:2011/08/11(木) 12:21:41.03 ID:omgL5rgL
>>51
おぉ出ました
頭含めると隠れちゃうんですね…
53名無しさんの野望:2011/08/12(金) 17:23:57.44 ID:w0ywoZIX
>>45
43です、確認遅れてお返事もせず、すみませんでした。

Enchantの効果適用順序の件、ご指摘ありがとうございました。
これは全くもって認知していませんでした。

重箱の隅を突つくのが好きなので(?)、これは視野に入れて練ってみますね。
どうもありがとうございました。
54名無しさんの野望:2011/08/14(日) 20:51:35.93 ID:5W1vtmLZ
闇鴉やダスクファングみたいに斬ると成長する刀系で、ゼノブレイドのモナドを作りたいと思っています。
刀の見た目は魔法で切り替えられる感じで、つまりモナドUまで成長してるならいつでもTに戻せるように。
そんでそのとき装備してるモナドによってエンチャや追加される魔法が変わるっていう風な…
もっとできるなら装備してるモナドごとにパワーアタックのモーションが変わるとかもできたらいい
なーと考えていますが初心者にはさすがに無理ですかね。
55名無しさんの野望:2011/08/14(日) 21:32:01.55 ID:2IR+gqfw
最初はみな初心者なんだから
根気よく頑張って人のスクリプトを真似ていけば、いずれはできるようになるよ

ただ最後のパワーアタックのみ、ゲームの仕様で
あまり自由に変更できない

MAOやCCAO等が変更を実装していると思うけれど、
パワーアタック以外のモーションも一括して別フォルダから参照するようになって
作る側にとっても、使う側にとってもかなりハードルは高いはず

装備だけで使うespの他に
CCAOアドオン的なespのverも出せば比較的簡単にいけるかもしれない
その辺がOKかは作者様に相談してみないとダメだろうけれど

もしくはdestructionAttakや
nkiriのサマーソルトのように、専用アクションによる
専用モーションの技をつけるか、かな
56名無しさんの野望:2011/08/14(日) 22:42:17.09 ID:5W1vtmLZ
やっぱり装備中だけのモーション変更は難しいんですね
skyrim日本語modが出る頃までに基本的な使い方覚えられればいいなあ
>>55さん、ありがとうございます
57名無しさんの野望:2011/08/14(日) 23:10:13.42 ID:2IR+gqfw
このスレに来る人には基本、自分の発言など釈迦に説法なんでナンですが
本当の初心者さんで一助になるなら

やり方は色々あると思うけれど、自分的な一例
weapon、エンチャント、spellなどをいじることになるけれど
基本的にそれらほぼ全部にスクリプトを持たせることになるかと

・武器のスクリプトのOnADDかOnEquipブロックで
○○.addspellNSで必要な魔法を付与
○○をplayerにすればplayerのみ、
魔法に他の援護効果も付与して、スクリプトも
「ref me
set me to getcontainer」
で書いていけばNPCも魔法を使ってくれるかもしれない

・武器変更spellを使用した際には魔法のスクリプト効果で
set.enchantmentし、エンチャントを変更し
更に技魔法を付与したり、できるならモーションを変更したりする

*もしその武器が、初期状態ではプレイヤーが自由にエンチャントできる状態で
もしその情報を保存しておかないといけないなら、また別に処理が必要

・武器本体については
SetModelPath "フォルダ\ファイル名" 武器名
で武器の見た目を変える

*もしくはエンチャントごと、別の武器を使ってしまう手もある
元の武器を別のコンテナに移すなどし
代わりの武器をadditemns、Equipitemnsして装備させる
ただし既に武器を構えていた場合には、装備付け替えにより再抜刀モーションが発生する
58名無しさんの野望:2011/08/14(日) 23:10:56.92 ID:2IR+gqfw
とはいえ見た目を変える場合でも
ダミーアイテムをadd、equip、removeする等しないと
ゲーム中では一度装備を変更しないと見た目は変わらないはず
*obse19〜のupdate3Dを使えば平気かも?

必要なら持ち主にトークンアイテムを与えたり、武器を元に戻す魔法を加える


・ここから他の魔法を使うまで制限無しで変化したままでもいいけれど一例としては
トークンアイテムのスクリプトで
OnGamemodeブロックtimerの時間経過で終了処理
(もしくはhasmagiceffect判定や、魔法のScriptEffectFinishブロックでもいいかもしれない)

・武器のOnUnequipブロック等でremovespellするならしておく

・武器の見た目を複数段階に変化させるのは
持ち主をダミーファクションに入れて、そのランクなどで管理するなど

rank<=0のときに使ったらrankを2にして、見た目を2段階目
2の時に使ったらrankを3にし、見た目も3段階目
3のときに使ったらrankを-1して、見た目も初期に戻る、など

*SetModelPathだと、ゲームを再起動したときに見た目が元に戻ってしまって
見た目とプレイヤーランクの間にずれが出てしまうやもしれないので
初期化処理も気にしないと駄目かもしれない

Onload時にrankを見て自動的にpath変更すれば大丈夫かな?
59名無しさんの野望:2011/08/14(日) 23:31:39.73 ID:2IR+gqfw
>>56氏の希望とは少しずれるけれど
自分用に作った魔法があったので、その流れを書いてみますた

構文自体は、完全に自分環境用に組み込んでて、単体で取り出すのが厄介なのと
人様のリソース使いまくりのため、公開はしていなくて
動画紹介も自粛しているので……

とはいえ、これぐらいなら慣れればすぐだと思うし
モデルさえ作れる方なら、もう勝ったも同然かと
自分はそっちの技術がなくて、人様のリソースを利用させていただくだけなので

あとはエロ関係になるけれど段階的に見た目が変化する装備な
curesedarmorやBU系のスクリプトはとても参考になるかと
自分も大いに勉強させてもらったので

頑張って下さい
60名無しさんの野望:2011/08/15(月) 10:21:02.63 ID:KrKjqZLs
>>56
面倒なのはパワーアタックだけで他のモーションはそこまで大変じゃないです
パワーアタックは出来なくないけど凄く面倒になるのでMOD作り初めてだと避けた方が無難って感じです
61名無しさんの野望:2011/08/15(月) 12:08:02.95 ID:wMASBGLX
皆さんありがとうございます。
今はまだ何をおっしゃっているのかわからない部分もあるので取りあえず皆さんのレスを保存しました。
勉強しつつ滑らかに理解できるようになったら、またお世話になりたいと思います。
62名無しさんの野望:2011/08/19(金) 02:03:09.13 ID:NhtwSox/
DR5.0で首切りモーション発動と同時にクエスト更新の窓がポップアップしてくると、ほぼ全てのキー入力が利かなくなるんだが、既知のバグかな?
Hermaeus Moraのクエストで、討伐対象NPCを相手に上の条件が発生すると100%再現する。なんとか治せないもんかな…
63名無しさんの野望:2011/08/19(金) 10:54:59.94 ID:54MKqgEO
>>62
DR入れてないので勘だけど、多分キー制御をOBSEでオフにした状態にMenumodeに入ってしまっているのでは。
一時的な対処でよければ、事象が起きたタイミングでコンソールを開いて
EnableControl 4

EnablePlayerControls
を叩けば直る気がする。
というか自分のMODの場合ほぼ同じ事象が出てこの対処を入れた。
64名無しさんの野望:2011/08/19(金) 13:47:09.76 ID:NhtwSox/
>>63
情報ありがとうございます
Hermaeus Moraのクエで再現し確認したところ、EscキーでPAUSEメニューを出しマウスのポインタを動かせる状態にした後にEnableControl 4で治りました
なお、同クエストでは、一人目の討伐では本不具合は発生せず、二人目以降で100%発生しました。クエスト側のポップアップの出し方にも問題があるかもしれません
ちなみに本不具合の再現にはDR5.0のCritical thrustのモーションを発動させてます
取り急ぎの情報まで
65名無しさんの野望:2011/08/19(金) 23:41:49.80 ID:CNFDrkYz
Tonaさんのチュートリアルを参考にTシャツをBlenderで作成、nifで装備として登録してみたのですが、
nifscopeで見た場合にはキチンと全て表示されるのですが、ゲーム上ではTシャツ部分のみが表示されないという状態です。(名札のようなものは表示されています。)
このような状況になった理由として、どのようなものが考えられますか?
ttp://shy.jsphr.net/upload/img/ups29764.jpg
66名無しさんの野望:2011/08/20(土) 00:36:27.53 ID:aGmT8+MA
>>65
Tシャツのノーマルマップを作ってないか、作ってあってもファイル名が違うとかでは?
(テクスチャ名_n.ddsになるはず)
あとはメッシュの向きが表裏逆になっているとかありませんか?
67名無しさんの野望:2011/08/20(土) 00:53:35.65 ID:zR52epZ3
>>66
ご指摘の通り、ノーマルマップが原因でした・・・。

ところで、オレンジ色の名札っぽいものとTシャツ部分は同じテクスチャを使用していたのですが、
なぜノーマルマップが不良状態でも名札部分は表示されて、服部分は表示されなかったのでしょうか?
68名無しさんの野望:2011/08/20(土) 06:30:54.49 ID:1DejHPq5
このMOD作成するにはどうすればできるんです?
オブリ買えば作れるんすか?
69名無しさんの野望:2011/08/20(土) 06:54:01.49 ID:9D2Eekgh
クリーンインストール君の新パターンか
70名無しさんの野望:2011/08/20(土) 21:14:43.84 ID:IA+HQVrn
低レベルな質問ですがお願いします。
魔法を唱えるモーションが無いspellを作りたいのですが、
どのようにすれば作成できますでしょうか?

わかりにくいですよね。。。
通常、spellを作ると魔法を唱えるモーションと共に発動しますよね?
ですが、やりたいのはスクリプト内でtargetにXXの効果を与えたいだけなので、
targetにcastするモーションはいりません。

他のMODでは当然のようにやっているのですが。。。
71名無しさんの野望:2011/08/20(土) 23:32:21.95 ID:pfrRymhQ
>>70
そのXXの効果が何かによりますが、既存の魔法(例えばファイアーボール)をモーションなしで撃つというものなら
ActorじゃなくActivatorから撃つというのがよくある手かと思います。
こちらにその例があります。
http://cs.elderscrolls.com/constwiki/index.php/Casting_Spells_From_An_Activator
72名無しさんの野望:2011/08/21(日) 00:34:07.88 ID:+ua5OK06
>>71
なるほど、そういうやり方が普通だったんですか。。。

今回やりたいXXXは、一定時間ステータスを状態異常にすることだけです。
ステータス異常の効果はspell効果を使おうとしています。
なので、別Actorとか無しで出来るのかな。。。

あれからいろいろ調べたところ、
spellのscripttypeをAbility
+target.AddSpellNS spellnameで発動したところ詠唱はありませんでした。

ところが、spellに設定したdurationを経過しても効果が消えません。
ということは、AddSpellNSを使った魔法付与は、durationが効かなくて、
itemかなにか持たせて時間計ってRemoveSpellするしかない?
…なんかめんどくさくなってきたけど、考え方はあってますでしょうか?
73名無しさんの野望:2011/08/21(日) 01:26:34.08 ID:syn8N7AH
durationの設定が使われないのは、AddSpellNSだからではなくてAbilityだからです
キャスト無し&Spell効果だけなら多分Activator手法でやるのが一番簡単じゃないかな
74名無しさんの野望:2011/08/21(日) 02:44:49.54 ID:+ua5OK06
>>73
レスありがとうございます。
なんと、Abilityはduration無視ですか。。。
abilityを選択した時はdurationの入力を無効にしてくれれば気づいたのに。
とりあえずActivator方法でやってみます。
75名無しさんの野望:2011/08/21(日) 07:39:42.40 ID:fY7X2bhI
横からですけど。
そういう用途でしたら簡便にXMarkerでもいけますよ。
XMarkerを適当なCellに初期配置、好きなTouchのSpellを作って、

XMarkerのRef.Moveto 相手ActorのRef 0 0 50 (地面にCastしない様にzを少し上に)
XMarkerのRef.Cast 作ったSpell 相手ActorのRef

とすればOKだと思います。
76名無しさんの野望:2011/08/21(日) 09:00:20.13 ID:OlBOaTq+
全力で答えるスレから誘導されたので、ここでBlenderでの顔メッシュ変更について質問させてください

TES NEXUSのBlender2.49bセットに入っていた
Blender 2.49b
python 2.6.6
PyFFI 2.1.5
blender nif scripts 2.5.5
nifskope 1.0.22
を入れています

ttp://vagueanswers.blog46.fc2.com/blog-entry-14.html
↑のとな氏のFaceMesh改変チュートリアルを参考にしました

Ren_Head001.nifをBlender内では一切いじらずインポート後、即エクスポートで作業したのですが
ゲーム内で↓の画像のように顔がぐちゃぐちゃになってしまいます

顔壊れてるSSなのでグロ注意!
ttp://shy.jsphr.net/upload/img/ups29795.jpg

Oblivion - Meshes.bsa内のheadhuman.nifでやってもぐちゃぐちゃになってしまって…

何が原因か分かりますでしょうか?
77名無しさんの野望:2011/08/21(日) 09:30:50.95 ID:IM+7M0mH
>>76
esmは作った?
78名無しさんの野望:2011/08/21(日) 11:15:55.02 ID:fY7X2bhI
そのMODの頭nifは分かりませんが、バニラのheadhuman.nifならImport/Export以外
一切何もしない(NifSkopeでも)なら最近のVerは正常に出ると思うのですが。

試しに一度バニラのheadhuman.nifをNifSkopeを使わずBlenderで何もせず
単にデフォ指定でImport/Exportだけして確認を。

それでダメならExportの「StripifyGeometries」をOFFして同様に確認を。

それでもダメならPyFFIを2.1.6以降にしてImport/Exportをデフォ指定で確認を。
79名無しさんの野望:2011/08/21(日) 17:58:06.92 ID:OlBOaTq+
>>77
MBP++に入ってるHuman(t)を試しに弄っているのでesmとかはまだやってないです

>>78
Human(t)なので Meshes\Characters\tanuki\Head の中の tanuki.nif です。

Oblivion - Meshees.bsa内の headhuman.nif やいじった後のNIFを ここに置いて tanuki.nif に名前変更して確認してる状態です。

で、 Restore Default Settings で Blender に Import/Export してゲーム内で確認したら正常でした。

同じように Ren_Head001.nif を Import/Export してゲーム内で確認したら壊れてグロい状態に…。

もしかしてバニラ種族以外は改変できないんでしょうか
バニラ種族より先達の頭を改修させてもらった方が楽かなと思ってたのですが…。
80名無しさんの野望:2011/08/21(日) 20:45:45.64 ID:HE/4sxoh
新たに作ったワールドの遠景表示(地表)についてヘルプお願いします
CSwikiの通りにメッシュとテクスチャを作成しこのespのみを有効にしたテストでは表示されるのですが
他のModのespを有効にすると表示されずうまくいきません
他の方が作成された遠景を使用しているModを試すと他のModと共存しているので何か間違えてるようなのですが
81名無しさんの野望:2011/08/21(日) 20:55:34.72 ID:fY7X2bhI
>>79
一度Import/Exportしたバニラheadhuman.nifに対してもう一度同じ事をすると
やはりおかしくなると思います。
多分そのMODの頭nifも内部的に同じ状態な気も。

でも人様のMODなので実際のところはちょっと分からないです。

で、そういう場合の解決法の一つがそのNifSkopeでNiSkinInstanceを移植する方法
だと思うのですが、それでどうしてもダメだとなるとなんか別な方法に。

例えばそのMOD頭nifとバニラheadhuman.nifの両方をNifSkopeで同時に開き、
MOD頭のNiTriShapeDataを右クリ→Block→Copyしてバニラ頭nifのNiTriShapeDataを
右クリ→Block→PasteOverすれば、メッシュはMOD頭でImport→変更→Exportしても
崩れない頭nifになると思います。

方法は他にもあるかもですがとりあえずそれで確認を。
82名無しさんの野望:2011/08/21(日) 21:14:43.52 ID:fY7X2bhI
>>80
ここ見てやってます?

http://cs.elderscrolls.com/constwiki/index.php/Landscape_LOD_Tutorial

そこの「Additional Notes」にあるTES4Geckoの"MoveWorldspaces"は実行しました?
83名無しさんの野望:2011/08/21(日) 22:01:36.10 ID:HE/4sxoh
デキタ-!
>>82
ありがとうございます、そのページを見て進めていたのに見落としていました
84名無しさんの野望:2011/08/21(日) 22:43:07.85 ID:OlBOaTq+
>>81
Ren_Head001.nif の NiTriShapeData をBlock→Copy
Headhuman.nif のNiTriShapeData に Block→PasteOver

このときNifVersion Differとか出ます
Ren~の方が20.0.0.5でHuman~の方が20.0.0.4と

Continueでそのまま移して保存
このnifファイルをゲーム内で読み込んだら正常でした。

しかし、このnifファイルをBlenderでImport/Exportした後
ゲーム内で読み込んだら顔が壊れてました。

Export時にStripifyGeometriesをオフでやっても同じく壊れたまま

バニラのHeadHuman.nif をBlenderでImport/Exportやった後、Nifskopeで開こうとすると
NifVerDifferとか出ますがゲーム内では正常になってます。

20.0.0.5とか言われるNifVerではNiBinaryExtraData と NiSpecularPropaerty が増えているようです。
85名無しさんの野望:2011/08/21(日) 23:20:15.05 ID:fY7X2bhI
>>84
そのheadhuman.nifがバニラなのは確実なんでしょうか。
86名無しさんの野望:2011/08/21(日) 23:55:06.78 ID:OlBOaTq+
>>85
OBMMのutilities→BSAbrowserでOblivion - Meshes.bsaを開いた後、folder nameでソートして
mwshes\characters\imperial\headhuman.nif
てのをextractしたものです
87名無しさんの野望:2011/08/22(月) 01:19:41.10 ID:GCiaB7jN
>>86
うーん、なんでしょね。
うちのheadhuman.nifは20.0.0.5でPasteOverで問題なく行けるのですが。
>>84最後の件のブロックが増えるのも謎ですし。

SIとかパッチとかそういう話なんでしょかね。
またPyFFIはやっぱ2.1.6以降にした方がいいかもです。

あと特定MOD個別の話になるのでアレなのですが、うちの環境だとその
Ren_Head001.nifを直接Blenderで変更→Exportでなぜか行けちゃいますし。

その辺の状況をまずはっきりしないと先に進めない気もしますが、
とりあえず次に出来そうな事は、そのMOD頭nifをBlenderで少し変更してExport、
そのNiTriShapeDataを元nifのそれにPasteOverするとどうなるか、みたいな
かんじでしょうか。

申し訳無いですけどもう寝ます。また明日以降。
88名無しさんの野望:2011/08/22(月) 01:39:00.12 ID:GCiaB7jN
ちょっと今気付いたのですが、そのnifを入れ替えてテストしている種族のフォルダに
オリジナルなegmやtriがあると変な動作になるかもです。
なのでバニラのImperialかなんかのフォルダでテストした方がいいかもです。
89名無しさんの野望:2011/08/22(月) 01:55:15.54 ID:snqVVXdu
>>88
ありがとうございます

ゲームの方やりながら顔改修も色々試してみます
90名無しさんの野望:2011/08/22(月) 15:59:10.40 ID:wuwlcuqr
すみません
現在装備している武具の最大耐久度を取得するにはどうすればいいのでしょう?

if (GetEquippedCurrentHealth 2 < 最大耐久度 / 3)

のような感じで、その部位の耐久度が3割をきったら検出
みたいなことがしたいのですが。
91名無しさんの野望:2011/08/22(月) 18:52:45.40 ID:VF9rK/QX
GetObjectHealth
92名無しさんの野望:2011/08/22(月) 19:44:34.79 ID:wuwlcuqr
>>91
レスありがとうございます

現在装備してる特定部位のGetObjectHealthで抽出することは可能なのでしょうか?
主体になるIDが必要となるようなのですが
93名無しさんの野望:2011/08/22(月) 20:11:57.93 ID:VF9rK/QX
>>92
構文はこうなってます

(health:long) reference.GetObjectHealth objectID:ref

言われているように、GetObjectHealthはObjectIDの耐久値だけを割り出すようなので、
装備している特定部位の最大耐久値を出したければ、別途装備している箇所のObjectIDが必要となると思います

その際は、GetEquippedObjectで装備箇所のIDを取得してからGetObjectHealthという形でいけると思います

もっとスマートなやり方があるかもしれませんが、私はこれ以上知りませんので
他の方達にお任せ致します

参考
ttp://cs.elderscrolls.com/constwiki/index.php/GetObjectHealth
94名無しさんの野望:2011/08/22(月) 20:40:05.92 ID:wuwlcuqr
>>93
即レス感謝

やはり簡単に取得するのは困難そうですね。
そうなると、常時各部位IDの取得をはさまねばならず、
負荷が高そうですね。
うーん、諦めたほうがよさそうなきがしてきました。
95名無しさんの野望:2011/08/23(火) 00:12:28.45 ID:1UQ84y2d
>>94
?特に困難では無いように思いますし、負荷も当初想定とそう変わらないのでは?
投稿を見る限りもともと常時ある特定の部位の耐久度を見られる想定だったように見えますので
そこに関しては条件は変わっていないと思います。
あとは装備のIDですが、これは正直毎ターン監視しても負荷はたいしたことは無いと思うものの
もし気になるならOnEquip/Unequipなどのイベントハンドラで着脱したときだけ
取得しなおすなどの手もあり、実現方法は複数考えられます。
あるいは、毎ターン監視が気になるなら i % n のような一定ターンに一度監視するなど負荷低減の方法もやりかたは様々です。
諦めるきっかけとしては中途半端な気もするので一回作ってしまってから考えるくらいでいいかもですよ。
96名無しさんの野望:2011/08/23(火) 00:24:08.38 ID:1UQ84y2d
すみません、言葉が抜けてました。

×諦めるきっかけとしては中途半端な気もするので一回作ってしまってから考えるくらいでいいかもですよ。

○諦めるきっかけとしては処理負荷は中途半端な気もするので一回作ってしまってから考えるくらいでいいかもですよ。
97名無しさんの野望:2011/08/23(火) 01:22:39.90 ID:KNYDZD35
戦闘中のみ特定のAbilityがつくようにしたくて

-------------------------------------
Begin OnStartCombat player
Player.AddSpell [AbilityのID]
End

Begin OnCombatEnd player
Player.RemoveSpell [AbilityのID]
End
--------------------------------------

と書いてるんだけど保存しようとすると
>Begin OnCombatEnd player
の行でImvalid block type in "begin" command.
と怒られる。

これはどうしたらいいんだろうか
そもそもググったら「OnCombatEnd」ってのはよく見るけど
ヘルプやWiki見ても載ってないんだけれど使えるものなの・・かな?
98名無しさんの野望:2011/08/23(火) 01:38:31.53 ID:1UQ84y2d
>>97
Oblivionで使えるBlocktypeは
http://cs.elderscrolls.com/constwiki/index.php/Category:Blocktypes
にあるのとBegin Functionあたり。

そのOnCombatEndはFallout3のGECKで使うものじゃない?
http://geck.bethsoft.com/index.php/Category:Blocktypes
99名無しさんの野望:2011/08/23(火) 01:42:08.49 ID:p/+iyras
すみません、今製作中のミニゲーム的なクエストの景品として
装備を提供出来たらと思ったのですが
どなたかmodder向けのメッシュだけ装備の情報とかご存知の方はいらっしゃいませんか?
100名無しさんの野望:2011/08/23(火) 10:24:24.53 ID:LM68Qeha
>>89
やっぱnifのVerなのかツールの問題なのか何か別な事なのか少し気になるので、
お暇な時にでも以下を確認してもらえると有り難いです。ご面倒でしたら結構です。

a) このnifを「headhuman.nif」に名前を変えてMeshes\Characters\imperialに入れ、
ゲームでImperialが凹凸の無いツルンとした顔になって表情も大体正常に動くか
(微グロ注意かも。目や口細部の潰れは不問で)
http://shy.jsphr.net/upload/img/ups29874.zip

b) PyFFIを2.1.6以降にし、a)のnifをBlenderでImport→Exportだけすると
ゲームでどうなるか

c) NifSkopeでa)のnifのNiTriShapeDataにRen_Head001.nifのそれを正常に
PasteOver出来るか、またゲームでどうなるか

d) c)のnifをBlenderでImport→Exportだけするとゲームでどうなるか

うちでは特に問題無いです。
他の方もお暇がありましたら確認してもらえると有り難いです。
101名無しさんの野望:2011/08/23(火) 10:37:55.11 ID:LM68Qeha
>>99
ネタにするメッシュそのものの事ならバニラとか改変再配布可のユーザーMODとか
リソース用モデルとかTESN等を探せば色々あるんじゃないですかね。

装備作りのチュートリアルの事なら「oblivion 装備 作成」で見つかる気が。
102名無しさんの野望:2011/08/23(火) 11:13:54.38 ID:62SwUU98
装備品は作ったらほぼModとして完成するのでリソースだけって見たことないなー
改変可の装備をリテクスチャーしたりするのが一番手っ取り早いと思う
103名無しさんの野望:2011/08/23(火) 12:26:58.49 ID:fF8KK/c4
老婆心ながらプレイヤーの性別や体型が特定できないから
esm管理にでもして各自でmeshだけ差し替えられるようにしつつ
vanilla外見で出すのが一番いいと思う
パーツ単位で景品にするなら余計に
10497:2011/08/23(火) 18:56:56.94 ID:KNYDZD35
>>98
Follout3のものだったのね・・・
回答ありがとう
105名無しさんの野望:2011/08/23(火) 21:10:45.69 ID:Sn6amD9v
>>100
わざわざ色々とありがとうございます。

アップデートしてみようと
pyFFI2.1.9
blender nif scripts2.5.7
にしてみました

で、Oblivion - Meshes.bsaにあったheadhuman.nifをBlenderにImportして
色々いじくった後、ExportしたNIFは正常に弄った状態でゲームに出ました

ご指摘のあった実験ですが

a) 顔のツルツルのおっさんでした
b) 顔が所々デコボコになったおっさんでした
c) 顔が縦というかスダレ状態というかぐちゃぐちゃのおっさん?でした

d) Exportしようとすると以下のメッセージが出てExportできませんでした
Export Error: cannot export mesh with unweighted vertices.
The unweighted vertices have been selected in the mesh so they can easily be identified.

何か全然違いますね…
106名無しさんの野望:2011/08/23(火) 21:41:03.49 ID:zTA2fe91
>>95
遅くなりましたが、レスありがとうございます。

負荷は自分が思っているほどではなさそうということですので、
ひとまず試してはみたいと思います。

107名無しさんの野望:2011/08/24(水) 00:36:58.64 ID:ECt9X+LW
>>105
確認どうもです。
申し訳無い、b)に関してはうちでも変になってたかもです。
ツールのVerを色々変えたので再現条件を勘違いしたかも。

ただ、c)とd)は明らかに妙なので現状で怪しいのはNifSkopeの可能性が。

UPしたheadhumanX.nifはバニラheadhuman.nifに形を変えたメッシュをPasteOverした
だけなので、普通のRen頭なら通常は同様に問題無くPasetOver出来ると思います。
NifSkopeを再インストールとかして動作の確認がさらに必要かもです。

あと、バニラheadhuman.nifのBlenderでの変更はとりあえずOKという事なので、
Ren頭nifも普通にBlenderでImport→Export出来る様になっているかもです。
108sage:2011/08/26(金) 13:45:06.76 ID:yDzoJ8/l
保守
109名無しさんの野望:2011/08/26(金) 15:59:50.57 ID:/RlhAKur
復活!
110名無しさんの野望:2011/08/29(月) 16:16:25.76 ID:FUy/Hfd0
モンスター追加のMODを使ってまして、
紹介SSやCS上には存在するのに一度も出会えないモンスがいます。

関連スクリプト上に
set me to SE13.bossRef
  if GetRandomPercent <=30
という2行があり、上がそのモンスの出現ポイント、
下が出現確率とあたりをつけ、確率を元の30から100に増やしました。

ただ、上の行の意味するところがわかりません。
どこかにとばされるのか、なんらかのファイルの指示にしたがえという意味なのか・・・
これの意味するところを教えていただけないでしょうか、お願いいたします。
111名無しさんの野望:2011/08/29(月) 17:15:05.51 ID:qWxpJ+xl
HUDを変えたくて
zelda_snes_elementsというMODを
ダウンロードしたのですが
このwzeファイルってどんなソフトで開いたり
作成したり出来るんでしょうか?
112名無しさんの野望:2011/08/29(月) 17:57:23.71 ID:21lw35rO
>>110
QuestのSE13で保持しているbossRefをmeに代入する。
113名無しさんの野望:2011/08/29(月) 18:18:34.98 ID:Fy8IOOr3
>>110
その2行だけでは、そのスクリプトの意図は分かりません

分かることだけ
1行目 meという変数に、クエストSE13のbossRefをセット これSIクエストの誰かさんですね
     meと同じ場所を出現ポイントにするのかどうか、meをどう使うのかは後の処理を見ないと分からない

2行目 30%の確率でそのif以降が実行される
114名無しさんの野望:2011/08/29(月) 22:38:34.70 ID:FUy/Hfd0
>>112,113
お二方のおかげで、どの時点で出現するモンスなのかの見当がつきました。ありがとうございます。
このMODを入れてからSIをプレーしたかどうか記憶が定かでないので、早速SIを始めてみました。
しかし出現率が100%でないと確認できないので、100%にする記述法があれば、ご教示願いたいです。
関連するスクリプトは2つありますので、このスレではご迷惑かもしれませんが掲示させてください。

その1
scn aaDahakaScript

ref me

Begin OnHit Player
set me to SE13.bossRef
if GetRandomPercent <=100
me.pushActorAway Player 15
endif
End
115名無しさんの野望:2011/08/29(月) 22:40:48.00 ID:FUy/Hfd0
その2
scn aaDahakaLpSummonAnubisScript

Begin ScriptEffectStart
aaDahakaSkeletonKnightRef05.resurrect
aaDahakaSkeletonKnightRef06.resurrect
aaDahakaSkeletonKnightRef07.resurrect
aaDahakaSkeletonKnightRef08.resurrect
aaDahakaSkeletonKnightRef05.moveto Player 0 100 0
aaDahakaSkeletonKnightRef06.moveto Player 100 0 0
aaDahakaSkeletonKnightRef07.moveto Player -100 0 0
aaDahakaSkeletonKnightRef08.moveto Player -100 0 0
aaDahakaSkeletonKnightRef05.startcombat Player
aaDahakaSkeletonKnightRef06.startcombat Player
aaDahakaSkeletonKnightRef07.startcombat Player
aaDahakaSkeletonKnightRef08.startcombat Player
End

Begin ScriptEffectFinish
aaDahakaSkeletonKnightRef05.kill
aaDahakaSkeletonKnightRef06.kill
aaDahakaSkeletonKnightRef07.kill
aaDahakaSkeletonKnightRef08.kill
aaDahakaSkeletonKnightRef05.moveto XMarkerRef 0 0 0
aaDahakaSkeletonKnightRef06.moveto XMarkerRef 0 0 0
aaDahakaSkeletonKnightRef07.moveto XMarkerRef 0 0 0
aaDahakaSkeletonKnightRef08.moveto XMarkerRef 0 0 0
End
116名無しさんの野望:2011/08/29(月) 23:25:30.99 ID:21lw35rO
>>114
そこ全く関係ないです
失礼だけど、ちょっとウケたw

その1は、
ただ30%の確率でプレイヤーを吹き飛ばす攻撃ってだけで
出現率と全く関係ないです
100にすると、100%吹き飛ばされますw

その2は、
DahakaSkeletonKnightを召喚する魔法かな?
出現率とは関係なさそうなので、他を見た方がいいかもしれないですね


そのモンスターがどこで記述されているかは、
そのモンスターを右クリック→Use Infoで該当箇所を当たっていくといいと思います
117名無しさんの野望:2011/08/29(月) 23:25:47.48 ID:Fy8IOOr3
>>114
aaDahakaって奴が目的のモンスターでしょうか?

その1は、モンスター出現は関係ないですね
プレイヤーから攻撃受けたら、確率的にプレイヤーが吹っ飛ばされる、みたいなスクリプトですね
というわけで、SIで出現するかどうかは分かりません

その2も、多分違うかと思います
aaDhakaSkeletonKnightってのを召還してプレイヤを攻撃させる魔法ぽいですね

CS上で目的のモンスターを右クリック→Use Infoすると、そいつがどう扱われているのか、参照されている所が表示されます
そこに何が表示されるかで、どう対処するかは変わるでしょうね
実はLeveledCreatureに入れられてるけど、他Modで上書きされちゃって出ないだけかもしれません

面倒なら、ID番号調べてコンソールでplaceatmeすると目の前に出てきます 味気ないですが
118名無しさんの野望:2011/08/29(月) 23:42:32.13 ID:FUy/Hfd0
>>116,117
またまたのお二方、ほんとうにありがとうございます。
早速Use Infoしてみますね。
発見があったら報告入れますので(今夜とは限りません)、よろしくお願いします。
119名無しさんの野望:2011/08/29(月) 23:53:07.48 ID:FUy/Hfd0
>>116,117
Use Infoしてみた結果、なんと、Dahakaはまったく使用されていませんでしたw
DahakaSkeletonKnightはそれ自体存在しないので、計画されたものの・・・ということかもしれません。
とりあえず疑問解決したので、これでよしとしたいです。
素人相手に丁寧にありがとうございました。
120名無しさんの野望:2011/08/30(火) 03:08:56.07 ID:suuqJMaM
攻撃モーション作成に挑戦しています
粗方完成しつつあるのですが、パワ−アタックモーション終了→何故か一瞬(顔or首だけ)左を向く→武器構えという謎の現象に悩まされています

Blender等見直しても原因が解りません、どなたか心当たりのある方いらっしゃいませんでしょうか

http://shy.jsphr.net/upload/img/ups30194.7z
↑こちらが作成したkfファイル、blenderファイル、nifskope参考用kfファイル、普段使用している武器構え(DMC片手)です
121名無しさんの野望:2011/08/30(火) 08:51:41.01 ID:X7Or/2pO
>>120
それってBip01NonAccumの方向がIdleとAttackで大きく違っているのが原因です。
解決はIdleとAttackのNonAccumのRotZの値を大体同じにすれば多分。

具体的にはそのonehandskill1attackpower.kfのNonAccumのRotZをそのonehandidleと
同じ90ぐらいにし、Pelvisを回して全体を元の向きに戻します。
そのkfの場合はNonAccumのRotZをIPO Curveでまとめて直し、Pelvisはキー個別に
手で回すのが楽かもです。

これ試しに修正したkfです。

http://shy.jsphr.net/upload/img/ups30199.zip

なんでNonAccumの方向が違うとそういう動作になるかはNonAccumとHeadの関係と
kfの繋がり時のease in/outの兼ね合いが理由です。
詳細は長くなるので必要でしたらまた。
頭向きやease in/outの話は過去スレにいくつかあると思います。
122名無しさんの野望:2011/08/30(火) 12:58:36.44 ID:qYNJmzxN
帝都の特定のNPCと会話するとフラグが立って
ブルーマ前にボスキャラが出現
というイベントを作ろうと思っているのですがどうやれば作れますか
123名無しさんの野望:2011/08/30(火) 18:28:44.26 ID:X9dcNNtM
質問です
oblivion.esm以外のesmで
セル情報をいじると良くないという話がありますが
既存のマーカーにREFを付けるのでも、不具合は起きるでしょうか?

>>122
どうやれば、というのが曖昧でわからないのですが
一番簡単で整合性も気にしないなら
そのNPC用のTOPICを作って
会話の結果のスクリプトで、setstageすれば良いのでは
124名無しさんの野望:2011/08/30(火) 18:33:44.65 ID:ukqQbdRB
>>122
まず、そのボスをdisableにチェックを入れ、
配置&参照用エディターIDをつけておく、例:BossRef

で、該当会話のresult scriptに
BossRef.Enable

これが最短かな
125名無しさんの野望:2011/08/30(火) 18:51:09.64 ID:qYNJmzxN
>>123-124
分かりやすく教えて頂きありがとうございます
早速試してみたいと思います
126名無しさんの野望:2011/08/30(火) 19:52:55.40 ID:X9dcNNtM
あれ?>>124からすると私の誤読ですか?
てっきり、メインクエスト終盤のdagonの帝都襲撃を
早期に起こしたいって話かと思ってた

もし違うボスのことなら>>123だと駄目です
127名無しさんの野望:2011/08/30(火) 21:19:51.39 ID:jf9fBnPX
>>123
既存のマーカーにREFを付けるというのがよくわからないですけど、
基本的にUse Infoで、そのマーカーがどういう使われ方をしているのかを見るのが確実と思います。
128名無しさんの野望:2011/08/30(火) 21:22:37.93 ID:hlRkiVAs
あるMODを改変しようと思いました
そのMODはゲームの得点の金額をNPCからもらえるのですが
それを二倍にしようと思います
そこで
player.addItem Gold001 aaaTokuten
というのを

player.addItem Gold001 ( aaaTokuten * 2 )
に改変してみたのですがエラーが出てしまいます
何か簡単な改変のしかたでもっとうまい方法は無いものでしょうか
129名無しさんの野望:2011/08/30(火) 21:31:23.44 ID:jf9fBnPX
>>128
AddItemの関数上では、増やす数量を定義する所に式を入れることができません=エラーになる

なので、

set aaaTokuten to aaaTokuten * 2
player.addItem Gold001 aaaTokuten

で、いけると思います。
130名無しさんの野望:2011/08/30(火) 21:45:52.86 ID:hlRkiVAs
>>129
ありがとうございます!
131名無しさんの野望:2011/08/30(火) 22:51:04.91 ID:X9dcNNtM
>>127
ご教示ありがとうございます

ただ自分の説明不足だったのですが、処理の競合というより
単純にespではなくesmでセルをいじると
地面がなくなって大穴が開いたりするみたいなので
マーカーにREFをふるだけでも
どこかでその手の不具合がでてきやしないか、という方面の心配だったりします
ともかく、そuserinfoも試してみますね
132名無しさんの野望:2011/08/30(火) 23:08:26.81 ID:ukqQbdRB
ちょっと質問なんですが、
発見済みのマップマーカーをプレイヤーの地図上から消す(未発見の状態にする)にはどうすればいいのでしょう?

一応CSで色々検索はしてみたのですが、それっぽいのが見つかりませぬ
133名無しさんの野望:2011/08/30(火) 23:13:13.14 ID:ukqQbdRB
>>131
そのマーカーのとなりに新しいマーカーおいちゃえば置くのはだめなのですかの
134名無しさんの野望:2011/08/30(火) 23:36:28.98 ID:X9dcNNtM
>>133
レスありがとうございます。
ただ元々が、

>単純にespではなくesmでセルをいじると
>地面がなくなって大穴が開いたりするみたいなので

という理由で、REFをつけるだけならこの不具合が起きないかな?という話なので
マーカーを新たに置くと、おそらく不具合の原因になってしまうと思われます。

色々なespから参照するので、できればesmでいきたいのですが
135名無しさんの野望:2011/08/30(火) 23:42:02.13 ID:TDsGBz0C
>>131
マーカーにID名を付けるっていう意味でしたら、
何も名前がない状態でしたら、おそらく大丈夫だと思います。
主にScript等で使用されていない状態でしたら、まず大丈夫でしょう。

ただ>>133さんの言うとおり、
既存マーカーを弄ることによる不具合が心配なようでしたら、確かにマーカーくらい作ってしまえばいいと思います。
その方が安全と思います。
136名無しさんの野望:2011/08/30(火) 23:59:43.49 ID:X9dcNNtM
>>135
ご教示ありがとうございました

>既存マーカーを弄ることによる不具合が心配なようでしたら、確かにマーカーくらい作ってしまえばいいと思います。

うむむむ
例えばespではなく、esmでバニラのセルに何か宝箱置いたとすると
地面消失バグなんかの原因になることがあると思うのですが
(もしくはロード順がシビアになる)
この心配の前提が間違っているのでしょうか??

この前提で、新たにマーカーを置くのではなく
既存のマーカーにREFをつけるだけなら、不具合が起こらないですかね?という相談なのですが、、、
137名無しさんの野望:2011/08/31(水) 00:05:19.84 ID:NUbFeTKq
以前にも、複数の人が後述のやりとりをしていて
この問題が起きないようにしつつ、esmでREFマーカーの情報を扱えないかな、と思い
相談をさせていただきました次第でして

ご回答を下さった諸氏への、説明不足、大変申し訳ありませんでした。

http://logsoku.com/thread/yuzuru.2ch.net/game/1285535604/

100 : 名無しさんの野望 : 2010/09/28(火) 06:46:26 ID:OX1yqLyX [1回発言]
今更だけど>>75の現象はesmがセルを弄ってると起こる
何故かesmでセルを弄るとそのセルが破壊される謎現象


102 : 名無しさんの野望 : 2010/09/28(火) 07:35:53 ID:b1iWkpkg [1回発言]
esmってそもそもesm同士で変更点被ったらダメなんじゃないの?
esmはVanillaに存在しない新規のIDを大量追加するようなMOD用だと思ってた
だからVanillaに存在するセルを弄るとぶっ壊れるんじゃないかって


108 : 名無しさんの野望 : 2010/09/28(火) 10:25:31 ID:0Y1wzz1j [1回発言]
>>79
esmの中にcell弄ってるデータが混じってるとそうなるよ
138名無しさんの野望:2011/08/31(水) 00:18:35.89 ID:+q/sXJ/c
>>137
もしoblivion.esmのPersistentでRef名が無いRefをスクリプトから参照するのが
目的なら「"1234"」みたいにそのRefのFormIDをそのまま書けばOKですよ。
ここを。

http://cs.elderscrolls.com/constwiki/index.php/Reference_functions
139名無しさんの野望:2011/08/31(水) 00:42:41.42 ID:NUbFeTKq
要領を得ない説明につきあっていただき
ご教示を、ありがとうございます
それで解決できそうです、参考にさせていただきます
140120:2011/08/31(水) 02:53:58.16 ID:MRCAdVoF
>>121
返信遅くなりました、申し訳ありません、&見事解決しました
具体的な解決策に留まらず修正サンプルまで頂いて非常に判り易かったです、本当にありがとうございました!
141名無しさんの野望:2011/08/31(水) 05:18:28.33 ID:oC4tejQx
スクリプトの質問です。
GetFirstRef 69 で取得したアクターを倒したのがコンパニオンであることを判定する方法はないでしょうか?
これがプレイヤーであれば、敵が死亡する前後の撃破数を比較することで判定出来るのですが…。
簡単なアドバイスでもあれば是非お願い致します。
142名無しさんの野望:2011/08/31(水) 08:36:12.81 ID:Oau8fuXv
>>141
humatouchNPCかMCS Extenderだったか?のどちらかに
そういった機能があったはずなので、参考にしてみては?
143名無しさんの野望:2011/08/31(水) 12:30:57.39 ID:+q/sXJ/c
そのMODは知らないのですが、例えばOBSEのEventHandlerの「OnDeath」とか。

相手は特定なのか不特定なのか、コンパニオンのRefは既知なのか、複数いたら
どうするのか、等々の条件次第で考え方は変わってくるとは思いますが。

その辺もう少し細かく判ればもっと具体的な話になるかもです。
144名無しさんの野望:2011/08/31(水) 12:39:02.70 ID:st1k124T
別のmodに入ってるアイテムの所持数を参照するイベントを作ることはできますか
アイテム産出元のmodが三つぐらいありマスター指定で全ての組み合わせに対処しようとすると
espを8パターンとか配布しなければならなくなるので出来ればマスター指定はしたくないのですが
145名無しさんの野望:2011/08/31(水) 13:41:04.90 ID:+q/sXJ/c
>>144
「イベント」ってどこまでの処理の範囲を指すのか少し分からないのですが、
要素的には、そのMODのファイル名とそのオブジェのCSでのBaseIDが分かっているなら
OBSEの「GetFormFromMod」でゲーム実行時のBaseIDを知ることは出来ます。
146名無しさんの野望:2011/08/31(水) 14:29:27.48 ID:oC4tejQx
>>142
>>143
返信ありがとうございます。
紹介して貰ったmodのespを覗いてみます。
OnDeathは使い方がイマイチ分からなかったので断念していました…。
改めて使い方を調べてみます。
147名無しさんの野望:2011/08/31(水) 17:00:57.58 ID:+q/sXJ/c
>>146
EventHandlerって最初ぱっと見書式とかがややこしいんで取っ付き難いかもですね。
でもこれ非常に強力で応用範囲が広いんでやってみても損は無いと思います。

で、今気が付いたんですけどドキュメントのOnDeathのところに

OnDeath target:ref killer:form

てありますが、これ「killer:form」じゃなくて「killer:ref」の間違いかもですね。
なのでもし仮にPCがタマネギを殺った時だけイベントを発生させるなら

SetEventHandler "OnDeath" ユーザ定義関数名 ref::ArenaFan1Ref object::PlayerRef

とするのが正解だと思います。
あと、フィルタ付きの書式でSaveする時に「Unquoted argument 'ref'〜」みたいな
Warningが出ると思うのですが、構わずOKすれば大丈夫です。
148名無しさんの野望:2011/08/31(水) 20:57:53.09 ID:/0/e6vYq
すみません、質問があります。
MapMarkerが指している先のCellのReferenceをOBSEありのスクリプトで取得する方法とか分かりますでしょうか?
とりあえず地図画面(Menumodeの1023)上でMapMarkerのRefを拾うところまでは今出来ているのですが
それが指すCellのRefeneceを取得する方法がよく分からなくて。
やりたいことはそのCellのRefを取得して内に何があるかGetFirstRefInCellでスキャンしたいというものになります。
仮にMapMarkerのRefがmmRef、取りたいCellのRefがcRefだったとして、
set cRef to mmRef.GetParentCell
とかじゃあないですよね(00000000ばかり取れる)
なんかとても基本的なことのような気がするのですが…どなたか教えて下さい!
149名無しさんの野望:2011/08/31(水) 22:33:37.99 ID:+q/sXJ/c
>>148
うーん、GetParentCellってそのオブジェのあるCellをロードしないと親CellのIDは
返って来ないかもです。MapMarkerに限らず。

仮にCellIDが取れたとして、GetFirstRefInCellも同様にそのCellをロードしないと
恐らくごく一部のPersistentなRefしか取得できないかもです。

そのCellの何をスキャンするのが目的なんでしょう。
その辺によってはひょっとすると構造的に実現が難しい場合も。
150名無しさんの野望:2011/09/01(木) 00:31:14.95 ID:3aMDUxra
>>149
回答ありがとうございます

ああ、そういうことですか!言われてみるとそんな気もしますね
GetFirstRefInCellの説明も読み飛ばしてましたが確かにロード前はPersistentなRefだけとありますね。

スキャンする対象は出来るだけ多くのActorでした
試しでID既知のセルでロード前とロード後でGetFirstRefInCell試してみましたが
対象IDによりますが、まあ、ほとんど意味無い感じでした
自分の目的に対しては別の手段を考えてみます
151名無しさんの野望:2011/09/01(木) 16:37:43.49 ID:ZxTe4PCF
モーション関係の相談などはここで大丈夫ですか?
152名無しさんの野望:2011/09/01(木) 19:40:35.91 ID:g43O2Is+
>>151
どうぞ
153名無しさんの野望:2011/09/01(木) 20:04:33.10 ID:ZxTe4PCF
>>151です。
相談というか、助けて〜、っていう内容なんですが、あと初歩的な質問かもです
blenderのエクスポートを使ってkfとして出力しnifskopeで編集したものを、もう一度blenderで開きたいのですが、どうすれば開けますか?
インポートでkfファイルを選択しても無理でした。

編集して、エクスポートした後、blendファイルとして保存する前に強制終了してしまったので、私の一日分の努力が詰まったモーションはkfファイルにしか存在しないんです。
なんとしてでも、おねがいします!!
154名無しさんの野望:2011/09/01(木) 20:08:44.12 ID:3aMDUxra
NifにSkeleton.nifを指定してkfに作成したkfファイルを指定してインポートすれば大丈夫かと思います。
あとそれ、運がよければBlenderのメニューのFileの上から4番目のRecover Last Sessionに残ってたりしないですかね?
155名無しさんの野望:2011/09/01(木) 20:38:02.01 ID:ZxTe4PCF
>>154
Recover ~には残ってなかったですが、インポートできました!!!ちょっとした勘違いで、インポートできなかったようです。
本当にありがとうございます!私の努力と汗と涙の結晶がまたこの手に戻ってきました!!
156名無しさんの野望:2011/09/01(木) 20:48:01.95 ID:3aMDUxra
おめでとうございます!一生懸命作ったモーションが消えると発狂しそうになりますからね。
157名無しさんの野望:2011/09/01(木) 20:48:33.71 ID:ZxTe4PCF
もうひとつ質問してよろしいでしょうか?
モーションをいじっていたら、剣や盾が手からはみ出るようになりました。
剣の方はBone:Weaponってやつをいじったらなおったんですが、盾の方はよくわかりません。
最初はBone:Torchかと思ったんですが、いじってみても変わりませんでした。
どうすれば、盾の向きを修正できるのでしょうか?
158名無しさんの野望:2011/09/01(木) 20:53:08.64 ID:3aMDUxra
盾はBip01 ForearmTwist.L、つまり左腕の前腕ですかね。
159名無しさんの野望:2011/09/01(木) 21:06:25.75 ID:ZxTe4PCF
>>158
疑いつつも、少しいじってみたところ、若干変わってる気がします。
ありがとうございました。なんで、盾も剣とかとおんなじようになってないんだろう・・・?
面倒だなぁ・・・。
もう少し、いじってみます。直らないようならば、また助言をお願いしに来ると思います。
160名無しさんの野望:2011/09/01(木) 21:17:00.90 ID:3aMDUxra
もし違ったら教えて下さい。自分も盾だけいつも不便だなぁと思いながら作ってます。
変えられるなら弄りたいところです。
161名無しさんの野望:2011/09/01(木) 22:03:09.82 ID:LoD10l0l
疑いつつも、は余計だと思うんだw
162名無しさんの野望:2011/09/01(木) 22:16:54.41 ID:PFaBba0k
>>161
すみません、でも他のはweaponとか分かりやすい名前なのに盾だけ腕って、疑わずにはいられませんでしたw

>>160
色々弄ってみましたが、全然変わらないですorz
やっぱり、腕をネジって調節するしかないんでしょうか……
163名無しさんの野望:2011/09/01(木) 22:18:16.73 ID:PFaBba0k
あ、>>158です
携帯からなんで、id変わってるの忘れてた
164名無しさんの野望:2011/09/01(木) 22:27:07.39 ID:3aMDUxra
>>162
わたしは愚直に左腕をねじってます。
左手を上目に構えたりすると盾が顔面にめり込むので…

間違ってるかもと思って今NifskopeでVanillaの盾のNif見てみましたが
NiStringExtraDataがBip01 L ForearmTwistになってるので
やっぱりここをグリグリねじるしかないような気がしますね。
165名無しさんの野望:2011/09/02(金) 08:35:02.22 ID:nCDWIyDI
それでいいんじゃないですかね。左Forearmを肘−手首軸を中心に回転で。
少し変えるだけならForearmTwistでもいいと思いますけど、把手と手の位置関係が
あるので同時にHandも動かさないと破綻するかもです。

あとこれ以前UPしたアニメを作る時に各装備の位置を見る為のnifです。
盾も入ってます。ご参考にでも。

http://shy.jsphr.net/upload/img/ups04445.zip
166名無しさんの野望:2011/09/02(金) 11:57:09.19 ID:7uLUyrjY
>>165
まぁ、なんて便利なものを・・・、ありがたく頂きますm(_ _)m
167チャンバラビリオン:2011/09/02(金) 14:44:53.04 ID:7uLUyrjY
OnehandIdleとSneakOnehandIdleを作成しました。
ここが悪いなどがあれば、アドバイスお願いします。
正直Idleモーションなんで、アドバイスしづらいとは思いますが、よろしくお願いします。
http://shy.jsphr.net/upload/img/ups30308.7z
168名無しさんの野望:2011/09/02(金) 21:28:56.61 ID:iXYGBnkk
リテクスチャーしようと思って
ddsファイル開いて調整してセーブしようとしたらサイズが合いませんってなるので、
サイズみたら1023*512でした
多分本来1024 なのでしょうがどうすれば適応できますか?

単純に解像度1024に伸ばしてもテクスチャが正しく張れなくなっちゃいます。
また、1023なのに修正前は使えているのはなぜなんでしょう?
よろしくおねがいします
169名無しさんの野望:2011/09/02(金) 22:00:21.01 ID:nCDWIyDI
どのddsですか?
170168:2011/09/03(土) 00:00:55.16 ID:QFNDqPSr
>>169
レスありがとうございます
ヴァニラのmob他多数そんな感じでした
171名無しさんの野望:2011/09/03(土) 00:36:36.47 ID:3y383U+7
具体的なファイル名を。一つでいいんで。
ツールの問題ぽい雰囲気もしますが。
172168:2011/09/03(土) 00:54:23.01 ID:QFNDqPSr
daedricmace.ddsやimp.ddsなど今抽出しなおしてチェックしましたが、
GIMPとフォトショで開いてみたのですが、どれを開いても同じでした。
以前はできていたのですが・・・
どうしてもサイズみると1023になっていて
4の倍数じゃないとセーブできないになってしまいます。
173名無しさんの野望:2011/09/03(土) 01:29:59.81 ID:3y383U+7
>>172
そのddsはうちでは両方512x512でした。
ゲームは問題無く動いていてテクスチャのbsaもバニラなんですよね?
だとするとツールを疑った方がいいかも。

その画像編集ツールで例えば他の展開済みのMODのddsは正常に扱えるかとか。
bsaの解凍ツールに別なのを試してみたり。
別なツールでサイズを確認したり。
dds形式の確認はここの「WTV」が簡単確実です。サイズも下に出ます。

http://cs.elderscrolls.com/constwiki/index.php/DDS_Tools_Listing
174名無しさんの野望:2011/09/03(土) 01:40:57.90 ID:QFNDqPSr
>>173
すみません何か勘違いしていました。
確かにツールで見るとサイズはちゃんと512*512で
GIMPもそうなってました。
ただ、やはりセーブしようとするとサイズが違うエラーが。
うーん、以前はできていましたので何かどこかで設定がおかしくなっているのかもしれません。
レスアリガトウございました。もうちょっといじってみます
175名無しさんの野望:2011/09/03(土) 01:46:39.64 ID:lTWgCObD
>>174
保存するときにファイルタイプの選択(dds)はしてる?
圧縮方法の指定とmipmap作成のチェックをいれないといけなかったような
176名無しさんの野望:2011/09/03(土) 01:50:20.62 ID:QFNDqPSr
>>175
ありがとうございます。
とりあえずGenerate mipmapにチェック入れて出力で正常に保存できたみたいです。

エラーメッセージは相変わらず出るのですが、これを気にしなければ問題なさそうです。
お騒がせしました。
177名無しさんの野望:2011/09/03(土) 11:40:33.75 ID:3y383U+7
なんかエラーが出る、てのはやっぱ何かが正常じゃない雰囲気もしますが。

ddsって多少形式とか違っていてもゲームでは動いたりしますが、微妙なところで
後々トラブルの元になったりするので、可能ならその辺クリアにしといた方が
良さそうかもです。
178名無しさんの野望:2011/09/03(土) 12:21:30.75 ID:Eoq4MbGx
最近、フィールドでちらほらとFPS20以下の状態も目立ってきたので
PCのバージョンアップしようと思うのですが
1万円の予算がある場合
メモリを3G→4Gにするのと
グラボをGeforce9600(512MB)から何か1Gのものにするのと
SSDを導入するのと、どれが一番効果があるでしょうか
179名無しさんの野望:2011/09/03(土) 12:57:57.92 ID:Eoq4MbGx
わ、全力スレと誤爆しました
すみません、あちらでもう一度質問してまいります
申し訳ありませんが>>178は見なかったことにしてください
180チャンバラビリオン:2011/09/04(日) 08:19:48.06 ID:pey5JDxD
モーションを作成しているのですが、体の左側に右手をのばした際に、右腕が胸にめり込むのは回避できますか?
http://shy.jsphr.net/upload/img/ups30360.png
181名無しさんの野望:2011/09/04(日) 08:53:09.02 ID:1eKXQwQG
>>180
BBB対応のボーンで胸をよせるしかないんじゃない
182名無しさんの野望:2011/09/04(日) 10:24:39.34 ID:l01dzvTl
CSでスクリプト編集しようと思ったら編集してない部分でエラーがでた・・・・。問題なく動いてるのになぜエラーが出るんだろう
 Unknown command 'iskeypressed2' 見たいなエラーが出る
アンノーンってことはCS側で何か間違ってるのだろうか?
183名無しさんの野望:2011/09/04(日) 10:41:20.10 ID:trXOkfxL
>>182
IsKeyPressed2はOBSEの関数ですね、OBSE経由で起動して編集するとエラーにならないとです
184名無しさんの野望:2011/09/04(日) 12:04:39.75 ID:l01dzvTl
>>183
OBSEから起動できるのは知らなかった。ありがとう

でもスクリプト編集しても上書き保存できないのはなぜ?
新規に保存してマージしてもうまく反映されない(´・ω・`)
185名無しさんの野望:2011/09/04(日) 12:35:38.83 ID:NXdIDBUQ
>>184
espの上書き保存ができないということ?
ならば、espをactiveにして開いてから編集 "Set as Active file" ボタンね

それともスクリプトの上書き保存ができない、という状況ですかね?
186名無しさんの野望:2011/09/04(日) 13:39:12.91 ID:l01dzvTl
>>185
espの上書きができなくて悩んでました。読み込むときにアクティブにしてなかっただけなのね・・・・orz
初歩的なことばかりで申し訳ない。無事解決しました
187名無しさんの野望:2011/09/04(日) 14:04:18.10 ID:w8aDTGQO
>>180
左のものを右手で取る、的な動作の場合は普通は上体も回せばOKだと思うのですが。
こんなかんじで。

http://shy.jsphr.net/upload/img/ups30364.jpg

動きを腕だけに限定しないといけない様な何か特殊な場合の話でしょうか。
188名無しさんの野望:2011/09/04(日) 18:53:37.40 ID:uBZljhJG
mod作ったことないしPCすら初心者だけど
Akatosh Mountのポケモン版を作ろうと思い立ってみた!ラティアスに乗りたいんだよ俺は!

だけどポケモンて二次創作に厳しいんだよね
もちろん一からメッシュテクスチャ作るつもりだけどアウトかな?
18997:2011/09/04(日) 19:07:31.96 ID:l3OaariZ
商用配布しなければいんでね?
心配ならメーカーに聞けばいい
190名無しさんの野望:2011/09/04(日) 19:08:35.39 ID:l3OaariZ
名前欄ミス
191チャンバラビリオン:2011/09/04(日) 19:45:03.20 ID:pey5JDxD
>>187
これは盲点でしたorz
たぶん、上体を回しても違和感はないと思うのでそれで大丈夫だと思います。
画像の方も参考にさせていただきます!
ありがとうございましたm(_ _)m
192名無しさんの野望:2011/09/04(日) 19:49:11.30 ID:u0w5RbS5
ポケモンもディズニーもただのファンアートや二次創作はスルーだろ
金とって商用利用しなきゃ問題ないだろうしルギア希望
193名無しさんの野望:2011/09/04(日) 19:53:34.24 ID:uBZljhJG
意外と見てる人多いのね。二人ともありがd
ホウオウ、ルギア、ラティオス、ラティアス、スイクンあたり作りたいんだ
あとルカリオの着ぐるみ装備も作りたい

またお世話になりますよろしくね
194名無しさんの野望:2011/09/05(月) 07:58:53.43 ID:d6Y0gZak
質問です。足音のことなんですが、装備の種類ごとに軽鎧なら軽い音、重鎧なら金属音のように
音を変えることはできるのでしょうか?
195チャンバラビリオン:2011/09/05(月) 17:52:28.97 ID:c97kFgQ+
質問させていただきます。
現在、Onehandforward.kfの作成をしているのですが、ゲーム内で確認してみようとすると、プレイヤーが傾いて、片足が地面に埋まってしまったりします。
最初は普通に歩けるのですが、何があったのか気がつくと、傾き、地面にめり込みます。
めり込む前は、向いてる方向と違う方向に進んだりしました。(←作り直したら、直った。
体の傾きを変え始めてから、こうなるようになった気がします。
もしかして、Boneのなかに、いじるのに注意が必要なものとかってありますか?このBoneの向きでプレイヤーの進む向きが変わる。とか・・・。
もしそうなのならば、いじるのに注意が必要なBoneを教えてください。
196名無しさんの野望:2011/09/05(月) 21:42:28.39 ID:GqY5LRdf
>>195
経験からだとBip01とBip01 Nonaccumあたりが要注意な気がします。
Blender上で編集しているなら、上記の2つのボーンにうっかり意図せずに入れてしまったキーが無いか
ActionEditor上で見てみるのがよいかと思います。
勘だと、おそらく最終フレームに上記ボーンのキーが全く打たれて無い、
或いは部分的に打たれてなかったりするんじゃないでしょうか。
例えば、Bip01が最終フレームでLocでだけキーを打ってRotが打たれてないとか、
その手のがあるとそんな感じになりがちな気がします。
または、TX:Animで指定したフレーム数とタイムライン上で指定した最終フレームがずれてるとか。
いずれにしても(自分の経験では、ですが)その手の動きは、最終フレームの動きが未定義になっているときによく起きる感じです。
197チャンバラビリオン:2011/09/05(月) 23:16:29.56 ID:jqrRCHN+
>>196
Bip01とBip01 Nonaccumは基本的にさわらない方が良いってことですか?
最終フレーム(End)は多分、大丈夫でした。
キーをうつっていうのは、VisualLocRotであってますか?
TX:Animは知りませんでしたorz
テキストエディターで編集して見ましたが、あまり効果はなかったように思えます。

Blenderの使い方は、ほとんど自己流ですので、どこか間違った編集の仕方をしているのかもしれません(汗

長文失礼しました…
198名無しさんの野望:2011/09/06(火) 00:01:02.02 ID:fCNZr4ml
>>197
いや、Forward等移動のモーションだとBip01にはキーを打たざるを得ないので、触るべきではないという話ではないです。
ただ、身体全体が傾くとか向きが変わるという話で関連があるのはこの2つかな、というところと
個人的にこの2つは影響の大きさ+手足等他の部位ほど意識しないためキーを打ち忘れたりすることが多いので挙げました。

キーは初回ならば、IKを使っているボーンならVisualLocRotで、そうでないなら普通のLocRotを使う感じですかね。
2回目以降はAvailableを使うのが安全かと思います。

TX:Animは効果の有る無しというより、その設定でNifのNiTextKeyExtraDataが作られるので
ここが間違っていると意図した動きにならないことがあります。
キーが正しく打たれているなら、あとはBlender上のStart/EndのフレームとTX:Anim上のStart/End(特にEnd)の不一致かなという気がします。

あとはここのスレッドなら、Blendファイルをアップしたら誤りを検出してくれる方がいるかもしれないですね。
私もBlenderはそこまで詳しくは無いので、追加のコメントはどなたかベテランの方に期待します。
199チャンバラビリオン:2011/09/06(火) 07:55:01.27 ID:V6SD4Wt/
>>198
ためになります。
もう少し弄ってみて、どうしても無理そうなら、Blendファイルをうpしてみることにします。
回答ありがとうございましたm(_ _)m
200名無しさんの野望:2011/09/06(火) 10:08:50.32 ID:WkpAnkm5
>>194
Armorって元々CSでのLigit/Heavy指定に応じて装備音等が変わります。
Bootsならその指定で足音も変化します。

バニラ足音を別なのに入れ替える、という意味なら、
CSのSound→FootSoundHeavy/LightArmorの指定を変えるか、
sound\fx\fst\armorheavy/rightのwavを直接入れ替えたり。
201チャンバラビリオン:2011/09/06(火) 10:16:08.48 ID:V6SD4Wt/
何度もすみません。
他の方が作成されたモーションを参考にしていたら、
onehandforward.kfのTX:Animに"Enum:Right"や"m:R"などの記述がありました。
これらの記述に意味はあるのでしょうか?他にもTX:Animなどを扱う上で必要なテキストキー(?)はありますか?
202名無しさんの野望:2011/09/06(火) 10:41:07.18 ID:WkpAnkm5
>>199
横からですが。
キーの不整合やStopTimeとTextKeyのendの不一致でないなら、あとはBip01を回転
させて体の傾きを変えてたりするとそうなるかもです。

Bip01は移動kf等でカメラやコリジョン込みで体全体を移動する時に使うボーンで、
通常はRotX,Y,Z:0,0,-90のまま前後左右に動かします。

Bip01とBip01 NonAccumの話は少しややこしいので詳細が必要でしたらまた。

>>201
意味あります。
それって足音を出したり等のシステムが必要とするタイミング指定です。
ここで全部網羅はきびしいので「oblivion textkey」とかで検索を。
203チャンバラビリオン:2011/09/06(火) 11:02:28.71 ID:V6SD4Wt/
>>202
多分、それが原因ですねorz
Bip01を回転させた気がします・・・。次からは回転させないように、しようと思います。
お騒がせいたしました。

oblivion textkeyでググってみたのですが、英語でよくわからなかったですorz
一応、翻訳ソフトを駆使し、ある程度の意味はつかめた気がします。
実際に使ってみて、どこかおかしかったら、聞きに来させていただきます。
質問に答えてくださった方、ありがとうございました。
204名無しさんの野望:2011/09/06(火) 17:09:21.19 ID:ksbfyPfy
>>200
ありがとうございます。もともとそういう仕様だったのですね・・・
あんまり変わった気がしなかったので同じものと思ってました。
歩くとぽよんぽよんいう靴を作りたかったんですが、さすがに装備ごとに
音の指定は出来ませんよね?う〜ん・・・
205名無しさんの野望:2011/09/06(火) 19:04:54.25 ID:AD8D+0KT
>>204
専用kfをつけて、textkeyで音を鳴らすのがオーソドックスなやり方では
その辺の足音関係は、バイクMODの人が研究していたので
過去ログを参照されては?
206名無しさんの野望:2011/09/07(水) 09:51:10.22 ID:fBT3H2Bt
「専用kfをつける」というのはToggleSpecialAnimの事でしょうか。
その場合一人称kfの切り替えが難しそうな気がするのですが。

あと足音って地面が土とか草とかによってシステムが音を変えるので、TextKeyで
特定のSoundを指定すると変化が無くなって少し寂しくなるかもです。

>>204
例えば装備して歩くと実際に音が鳴るピコピコサンダルのようなものが作れるか、
という事ですよね。

足音を入れ替えるのではなく、装備すると今の足音はそのままでそこにピコピコ音が
追加される、という事でOKならとりあえずはスクリプトでGetSoundPlayingと
PlaySound3Dで行けると思います。
スクリプトの具体例等必要でしたらまた。
207名無しさんの野望:2011/09/09(金) 10:31:43.04 ID:C9pil2A1
すみません>>92あたりで防具の耐久度の求め方で質問したものなんですが、
その際のアドバイスを元に色々試しているのですが、どうしても上手くいきません。

目的:”テストNPC”というキャラの武器の耐久度が半分を切ったら、"武器5割" という変数に 1 を代入する

ref 武器A

set "武器A" to "テストNPC".GetEquippedObject 16

set "5割" to (("武器A".GetObjectHealth) / 2)

 if ("武器A".GetObjectHealth <= 5割)
  Set "武器5割" to 1
 endif

どこがいけないのか?
そもそも全く検討違いなのか?
アドバイスをいただけないえしょうか。よろしくおねがいします。
208名無しさんの野望:2011/09/09(金) 11:38:04.40 ID:WS8m0DJq
武器5割は数値なんでないの
武器に代入自体してないのでは


Set hoge to test.GetEquippedObject 16 ;testさんのスロット16のRefを変数hogeに代入
Set max to hoge.GetObjectHealth ;武器Aのbaseの耐久度を取得
Set half to hoge.GetObjectHealth / 2 ;武器Aの耐久度の5割を取得

Set now to test.GetEquippedCurrentHealth 16 ;武器Aの現在の耐久度を取得

if now <= half ;現在の耐久度が5割を切ったら
 test.SetEquippedCurrentHealth max 16 ;耐久度を最大値にセット
endif

こんなん
nowは現在の値なので毎フレームか、何秒かに一度か、適当にクッション置くとして
判定前に取得し直す必要がある
それ以外は一度取ればいい罠
209名無しさんの野望:2011/09/09(金) 17:15:15.77 ID:zJqpRUVB
>>207,208
Set hoge to test.GetEquippedObject 16はリファレンスじゃなくformidを返すから
hoge.GetObjectHealthなどの書き方は出来ないのでは?
そこはGetObjectHealth hogeになるような。
210名無しさんの野望:2011/09/09(金) 18:19:09.64 ID:C9pil2A1
>>208>>208
レスが遅くなりすみません。
お二方のアドバイスを合わせて試行したところ、
下記のような組み合わせで想定どおりの結果を得ることができました。
アドバイスありがとうございました!
ただ、処理が多いのが少し心配ですが、多分最低限の構成っぽいので、これで色々動かしてみたいと思います。

 set 武器 to test.GetEquippedObject 16
 set max to (GetObjectHealth 武器)
 set half to max / 2
 set now to test.GetEquippedCurrentHealth 16


 if (Wnow < Whalf)
  set ○○ to 1
 endif
211名無しさんの野望:2011/09/09(金) 22:15:42.24 ID:WS8m0DJq
>>209
そかー
そらで書いたら適当だったね、訂正アリガトン
>>210
ゴメンニョ!
212名無しさんの野望:2011/09/09(金) 22:32:02.18 ID:C9pil2A1
>>211
いえいえありがとございます
>>207時点で肝心な処理も抜けてましたので助かりました
213名無しさんの野望:2011/09/09(金) 22:44:58.92 ID:R7g7bxyx
>>211,212
役に立ったようでよかったです。
私もよくオブジェクトだったのをうっかり忘れてobj.callみたいなことやります。
コンパイルエラーにならないし紛らわしいですよね。
214名無しさんの野望:2011/09/10(土) 09:22:51.69 ID:J6X5jDtj
クエストダイアログをいじって勉強してたところ、
わけのわからない現象が何度も発生したので質問させてください。

新しいクエストID(一番左のクエストEdiorID)を追加し、
TOPICを追加すると、
GetIsIDを指定しているにもかかわらず、指定外のNPCも全て、
そのダイアログをしゃべってしまう状態?になることがあるのですが、
これは何が原因なんでしょう?
一度これが発生すると、
GetIsIDでそれぞれに作った会話を全員がしゃべって全く成立しません。

クエストを削除から作り直すと直ったり、一向に原因がわかりませんでした。

上手く伝わるかわからないのですがお願いします。

215名無しさんの野望:2011/09/10(土) 10:07:04.21 ID:hGZFkgn6
本当に一人一人をピンポイントでその会話をさせたい場合は、
GetIsReferenceでそのNPCを指定してしまう方が確実です

GetIsIDだと、そのObjectIDだと誰でも話せる可能性が残っています

例えば、タマネギを5人配置してGetIsIDで指定すると、
5人のタマネギは、それぞれがそのTopicを話すことができます

それでも原因不明の場合は、
一度プラグイン上げて頂いて、中身を確認してもらった方がいいと思います
216名無しさんの野望:2011/09/10(土) 10:23:59.88 ID:J6X5jDtj
>>215
お早いレスありがとうございます。
同じIDのNPCを複数配置した際の処理については、当然同じ会話になるのは理解はしてます。
違うIDのNPCを作成しておいても共通の会話を話してしまうのでおかしいなと。
やはり普通はありえない現象の可能性のようですね。

GetIsReferenceなどという便利なものがあったの知りませんでした。

裏でよくわからない現象が起きているのは気になりますが、
とりあえずこっちを使えば間違いもなさそうですのでこちらで色々試してみます。

espをあげるようなものでもありませんので、お気持ちばかりで。
ありがとうございます。

217216:2011/09/10(土) 10:25:54.06 ID:J6X5jDtj
>>215
連投ですみません。

>そのObjectIDだと誰でも話せる可能性が残っています

理解したつもりだったのですが、こちらの表現が気になりました。
もしよろしければ簡単にでかまいませんので、
この場合のObjectIDの意味について、どういう意味かご教示いただけませんか?

218名無しさんの野望:2011/09/10(土) 10:36:17.60 ID:J6X5jDtj
GetIsReferenceで指定してみても、
やはり、そのクエストIDの中にあるTopicsを全員しゃべってしまいました。
が、同じ内容でクエストを新規で作り直し同じことをしたらなぜか正常化、うーん。
219名無しさんの野望:2011/09/10(土) 10:40:27.25 ID:sArB19fB
既にaddtopicされちゃった後なら
saveは覚えてるべ
220名無しさんの野望:2011/09/10(土) 11:36:23.66 ID:Ktx1vINt
>>218
GREETINGを追加変更していてかつ「AddTopics」でTopicをAddしていて、
ロード順が別のこれもGREETINGを変更している他のespの前だったりします?
221名無しさんの野望:2011/09/10(土) 15:54:58.03 ID:J6X5jDtj
>>219>>220
AddTopicは使ったことないです。
GREETINGのみで試行しているだけの段階なので。

最後読みこみですがやっぱりだめでした。
うーん、自分だけですか。

そこそこ頻繁に発生するのでもうちょっとありがちな不具合なのかと思ってたのですが。

レスありがとうございます。
つまったら他のクエストID追加してダイアログ全部移動で解決はできるみたいなので、とりあえずいいのですが
222名無しさんの野望:2011/09/10(土) 18:49:46.90 ID:l8ALhsNH
TheKillingMoonを改変して超必殺技を作ろうと思いました

1:使用に際してプレイヤーのHPが残り1になるという要素を付け足そうとしたのですが
player.SetCurrentHealth 1
と入力してもHPが減りません
ひょっとしてこれでは何かいけないのでしょうか

2:両手武器を使っているときと使っていないときとで
ダメージの計算式を変えようとしたのですが
両手武器を使っている場合と使っていない場合はIF式の上でどのように分ければいいのでしょうか?
223名無しさんの野望:2011/09/10(土) 19:01:20.56 ID:IJkEBF6q
>>217
もう話過ぎてますが
イメージとしてこんな感じです

タマネギを5人配置した場合


○  ○  ○  ○  ○ - ObjectID
↑  ↑  ↑  ↑  ↑
Ref. Ref. Ref. Ref. Ref

GetIsID == TamanegiID とするとこの配置した5人のタマネギは全員そのTopicを話すことができます
5人とも、同じObjectIDだからです

ですが、ReferenceIDは個々に振られるので、


○  ☆  □  ◇  △ - ObjectID
↑  ↑  ↑  ↑  ↑
Ref. Ref. Ref. Ref. Ref

GetIsReference == ○Ref と指定すると、そのTopicは○Refしか話すことしかできません



こんな感じです。
224名無しさんの野望:2011/09/10(土) 19:12:57.98 ID:IJkEBF6q
>>222
GetCurrentHealthを見ると、どうも武器のHealthを取る関数っぽいです
一度、GetCurrentHealthでどういう動作をするかゲーム上で確認してみてはいかがでしょうか

2に関してはGetWeaponTypeあたりを使って作れるのではないかと思います
225名無しさんの野望:2011/09/10(土) 19:18:17.54 ID:lWC1GsED
>>221
そういう場合って、MODを一旦外してセーブして、再度入れてます?
MODを入れたままで修正すると、修正したのに反映されない部分があるみたいです。
特に>>218で正常化したんなら、MOD入れ直しと同じ効果になったんじゃないかと
いう気がします
226名無しさんの野望:2011/09/10(土) 19:46:26.97 ID:l8ALhsNH
>>224
ありがとうございます
確かに
player.SetEquippedCurrentHealth 0 16
(プレイヤーの武器の耐久度をゼロにする)からとってきたので
命令としておかしいのかもしれませんね
プレイヤーのHPを1にするという命令は他にあるのかな……

2について、ありがとうございます
227名無しさんの野望:2011/09/10(土) 19:47:04.88 ID:C1/FYu+e
>>223
とても丁寧にわかりやすい解説ありがとうございます。
やはり認識は大丈夫みたいです。お手数かけましてすみません。

>>225
なるほど。
うまく反映されないこともあるのですね。、
次おかしくなったらクリーンインストールで試してみます。ありがとうございます。
228名無しさんの野望:2011/09/10(土) 20:06:21.06 ID:Ns1Y5psI
>>226
現在のヘルス量-1だけ引けばいいので、次で1になる

float fvar

set fvar to 1 - (player.GetAV health)
player.ModAV2 health fvar ;通常の回復手段で回復できるようにModAV2

1命令で出来る方法があるかもしれないけど、わからん
229名無しさんの野望:2011/09/10(土) 21:13:25.28 ID:l8ALhsNH
>>228
ありがとうございます
これで予定通りHPもマジカもスタミナも武器耐久力も
全てを消費して放つ大技が作れます

ふと素手でいいよねこれと思ってしまったので
>>224さんを参考にGetWeaponTypeかGetWeaponAnimTypeで解決してみようと思います
GetWeaponAnimTypeなら

GetWeaponAnimType player > 2でいいのですよね?
(実際にはこの値を代入した変数を用いることになりますが)
230名無しさんの野望:2011/09/10(土) 21:42:05.21 ID:wL64RQ7t
spell動作について教えて下さい。

spellに添付したMagicEffect script内で、
spellをcastした人のrefはどのようにすれば取得出来ますでしょうか?
GetActionRefで取得出来るか試したのですが無理でした。

castされた側はGetSelfで取得出来るのですが。
231名無しさんの野望:2011/09/10(土) 22:15:03.15 ID:/J7iv5i+
>>229
ちょっと違います。
player.GetWeaponAnimType
になります。
また、GetWeaponAnimTypeとGetWeaponTypeは
似て非なるもので、戻り値の体系も違うのでよく確認した方がいいでしょう。

コマンドはリファレンス上で動くものとオブジェクトを対象にとるものとがあり、
GetWeaponAnimTypeはリファレンス上で動くものになります。
リファレンス上で動くものは、
  reference.コマンド (例えばGetWeaponAnimType)
オブジェクトIDを対象にとるものは
  コマンド ObjectID (例えばGetWeaponType)
で使います。どちらもいけるコマンドは、上記いずれかの書き方を適宜使い分けます。

また、コマンドは個々に訊ねるときりがないので、以下いずれかのコマンドリファレンスを見ることをお勧めします。
前者は通常のCS+OBSE等の、後者はOBSE特化のコマンドリファレンスです。

http://cs.elderscrolls.com/constwiki/index.php/Category:Functions
http://obse.silverlock.org/obse_command_doc.html

GetWeaponAnimTypの例
http://cs.elderscrolls.com/constwiki/index.php/GetWeaponAnimType
232名無しさんの野望:2011/09/10(土) 22:28:38.34 ID:/J7iv5i+
>>230
S氏がSpellのCasterを取得するサンプルを提供しておられたと思います。
過去ログのPart6 792がそうです。

http://oblivion.z49.org/logs/dev/1269312819.html.gz#R792
233名無しさんの野望:2011/09/10(土) 22:30:51.56 ID:l8ALhsNH
>>231
丁寧な指導ありがとうございました
ほとんどスクリプトをいじるのは初めてだったのでそのサイトで勉強してきます
234名無しさんの野望:2011/09/10(土) 22:48:42.85 ID:/J7iv5i+
>>233
であれば、下記がスクリプト系の入り口なので、ここから入って行くのがいいかと思います。
私は英語がかなり苦手なのですが、それでもここの記事は役に立つことが多いです。
特に、下のほうに並んでいる「Standard Solutions」というカテゴリの記事はためになります。

http://cs.elderscrolls.com/constwiki/index.php/Portal:Scripting
235名無しさんの野望:2011/09/10(土) 23:14:30.38 ID:wL64RQ7t
>>232
やっぱり普通には取得出来ないのですね。
サンプルコードを元に組み込んだところ、何の問題も無く実現出来ました!

聞いたことのない関数を駆使したコードは本当に頭が下がります。
自力では絶対に無理だったので、S氏と232氏には感謝します。
236名無しさんの野望:2011/09/10(土) 23:58:38.49 ID:/J7iv5i+
すみません、私も質問があります。
ゲーム内、或いはあるMOD内にいるすべてのNPCのリファレンスを取得する方法はあるでしょうか?
「すべてのNPC」にはまだロードしてないNPCも含みます
(というより、用があるのはそのロード前のNPCたち)。

過去にNPC StatusというMODがあり、このMODはOblivion.esmに含まれる
大半のNPCのリファレンスを持っていましたが、
実現方法はそれらNPCへのリファレンスをスクリプトにハードコーディングというものだったと記憶しています。
他に考えうる実現手段はあるでしょうか?
(スクリプト上で何かをキーに全リファレンスを走査するような手段)
237名無しさんの野望:2011/09/11(日) 20:22:31.01 ID:UO04bpd1
>>236
うーん、難しいかもです。
そういう機能はOBSEにも無いですし、代替する方法も現状無さそうな気が。
またDynamicなRefについては予め知ること自体原理的に不可能な予感も。

自前でOBSE新関数を作るか、または別な考え方としてesm/espから「ACHR」レコードを
抽出する様な外部ツールを用意、事前に結果をファイルにしてからゲーム実行時に
それを読む、みたいな方法はあるかもですが。
238名無しさんの野望:2011/09/11(日) 21:05:48.95 ID:NDNOG0ab
>>237
了解です。自分としても手段が思い当たらなかったのでこの方向は諦めます。
もし仮にやるとすると後者の外部ツールで抜き出し⇒iniファイル化あたりはPyFFIで実現可能な範囲ですね。
他の側面から解決手段を考えてみます。
ありがとうございました。
239名無しさんの野望:2011/09/11(日) 21:52:37.99 ID:S4nEAqgS
blender難しすぎわろた…

MOD制作者ってすごいなほんと
240名無しさんの野望:2011/09/12(月) 14:00:47.90 ID:o9GPV0c5
blenderわけ分からないからMAXでモデリングした後アウトプット用だけに使ってる
241名無しさんの野望:2011/09/12(月) 19:25:21.78 ID:AjpsfioO
そこで初心者にもお勧めメタセコイア
242名無しさんの野望:2011/09/12(月) 20:14:28.06 ID:qOjoWoUi
メタセコってblender形式で吐けるの?
というかメタセコ>blenderできるなら解説サイトとかあるならkwsk
243名無しさんの野望:2011/09/12(月) 20:18:33.43 ID:AjpsfioO
blenderがメタセコのファイルをインポート可、じゃなかったかな確か

とりあえずググって一番上に出てきたサイト
http://www.illustswitch.com/blog/web/20091205-1618.html
244名無しさんの野望:2011/09/12(月) 20:28:05.71 ID:qOjoWoUi
なるほど一応試してみるか
245名無しさんの野望:2011/09/18(日) 06:58:10.82 ID:EqRn6hfy
質問させてください

NPCの装備一式をリスポーン毎に変わるようにしたいのですが
変えたい装備が、部位単位で分かれている物だとLeveleditemに入れるとバラバラになります

うまく説明出来ないですが、手 足 胴の赤い装備と、青い装備があったとして
Leveleditemに入れると、手だけが青い装備になったりして揃わない可能性が出てきますよね
Leveleditemにキーアイテムを入れて、インベントリに入った時に走るscriptがあれば
additemで一式渡せるかと思ったのですが、うまく行きません

begin OnAdd はフィールド上から拾った時のみの動作でしょうか
そうだった場合、Leveleditemからインベントリに入った時に走らせるbegin○○はありますか?
無い場合、装備自体をニコイチする以外で、別の方法はありますか?
246名無しさんの野望:2011/09/18(日) 07:39:01.17 ID:ASYmkt3j
onequipじゃ駄目なん?
247名無しさんの野望:2011/09/18(日) 08:40:56.13 ID:C8jqk3Om
>>245

まず、装備を1つずつ、別々にleveled itemに登録します。纏めてはいけません。1つずつです。
それぞれに以下の設定

Chance None を 0 にする(何も選ばれない確立)
Calculate for each item in count のチェックを外す
count は 1(抽選結果のアイテムを獲得する個数)

次に新しくLeveled itemを作りその中に先ほど作った1つずつのLeveled itemを一式(青なら青全部。
赤は混ぜない)放り込みます。これも同じように

Chance None を 0 にする
Calculate for each item in count のチェックを外す
count は 1

つづきます
248名無しさんの野望:2011/09/18(日) 08:59:06.29 ID:C8jqk3Om
つづき

と、思ったけどだめだったごめん・・・
前に必ず一式もらえるようにして出来てたようなきがするんだけど
espどっかいっちゃった('A`)
もう少し調べてみる。
249名無しさんの野望:2011/09/18(日) 09:09:56.15 ID:+qkdqnXE
それって各装備個別のLeveledItemを作ってNPCのインベントリかコンテナに入れた
時の話じゃないでしょか。
コンテナの場合はきっちり各Listから一つずつ生成されると思います。
でも各ListをまたLeveledItemに入れるとランダムになる気が。
250名無しさんの野望:2011/09/18(日) 09:40:28.98 ID:+qkdqnXE
>>245
恐らく装備をLeveledItemで指定管理してそれをAddして装備一式をセットアイテム的に
きっちり切り替えたい、て事ですよね。

OnAddについては、LeveledItemとしてAddした場合もその生成されたアイテムにOnAdd
ブロックがあれば実行されると思います。

でもLeveledItemって同Lvlのアイテムが複数ある場合はどう指定しても確実に
各アイテム一つずつ、みたいな動作にはならないです。多分。
あとAddしてしまった後に不特定な結果の辻褄を合わせようとすると処理が非常に
煩雑になりそうな予感も。
なのでなんか別な方向で考えた方が良いかもです。

OBSEを使ってOKならそのLeveledItemの内容を自前で解釈してAddしたり。
各アイテムのLvlをセット毎に同じにしておけばセットの識別は出来ると思います。
while文、GetNumLevitems、 GetNthLevItemLevel、 GetNthLevItemで10行程度で多分。
具体例が必要でしたらまた。
251名無しさんの野望:2011/09/18(日) 09:58:04.97 ID:3qQfFWe5
>>245
>>250
今ざくっと試してみたのですが、OnAddブロックは走らないみたいです
OnAddブロックを付けたアイテムをLeveledItemに登録、このLeveledItemをNPCのインベントリにいれておいた、という状況で試しました
最初から持ってる場合はOnAddは動かない、ということですかね

GameModeブロックで処理、処理後removemeでスクリプトアイテムを取り除く、というのでどうでしょう
そうすれば、インベントリに入った時に処理され、処理後無駄にスクリプトが走ることもないかと
252名無しさんの野望:2011/09/18(日) 11:11:00.26 ID:+qkdqnXE
CSで最初からインベントリに入れた場合はOnAddは動かないです。
OnAddの話は少し置いといた方がいいかもですね。

まず、そのセット装備切り替えをどのNPCに実現したいのかかその辺の条件を明確に
した方がいいかもです。

そのNPCは新規なのか、バニラNPCなのか、他のMODのNPCなのか、また「リスポーン」
てのは雑魚敵みたいにLeveledCreatureで出現するNPCの事なのか、ガードみたいな
Respawn指定のNPCの事なのか、それら全員なのか、その中の特定の何人かなのか、
とか。

その辺の条件次第ではセット装備を与える事自体より、一体どうやってそれが必要な
NPCを特定するかがむしろややこしくなりそうな気が。
253名無しさんの野望:2011/09/18(日) 11:26:11.57 ID:kbpQLN4w
251さんのアイデアがシンプルでよさげなんじゃないですかね。
251さんのってこういう感じですよね?
 ・LeveledItemに種となるScript付きアイテムを追加(指輪とかそんな感じの)
 ・そのScriptはGamemodeで動作するので持ち主がGamemode走行圏内に入ったら動作開始
 ・Scriptアイテムは自分が受け持つアイテムを与えて、着せ替えて、場合によっては今着てる装備は取り上げる
 ・用事が済んだらScript付きアイテムは自分を削除する
254名無しさんの野望:2011/09/18(日) 12:04:17.84 ID:7Hk05B3D
blenderで装備の編集をしたいのですが、skeletonを右クリックで
選択できず困ってます。

以前XPでは問題なく選択できたのですが、windows7 64bitに対応している
ヴァージョンはまだないのでしょうか・・・・

blenderは24.9b、nifscript等はNexusでまとめてあるのをそのまま
導入してます。
255245:2011/09/18(日) 18:12:31.00 ID:EqRn6hfy
たくさんレスありがとうございます

対象NPCは特に決めてないです、バニラも、MODのNPCも含みます
今試しにやっているのは、Crowded Roads Advancedです
スクリプトで武器を渡してるようで、そのせいかとも考えましたが、OnAddはダメなんですね
今からGameModeを試してみます
256名無しさんの野望:2011/09/18(日) 21:35:42.34 ID:+qkdqnXE
>>255
少し混乱させてしまったかもで申し訳なかったです。
>>250ではLeveledItemで装備一式切り替えをする部分の方法と、その処理自体を
どうやって起動するかを取り違えて少し謎な事を言ってたかもです。

とりあえずは他の方が仰る様にCSでアイテムを各NPCのインベントリに入れてその
スクリプトのGameModeでやってみるのが良さそうな気が。

で、NPCの種類ですが、三日経つと消失→再生成されるLeveledCreature指定のNPCなら
恐らくそれで問題ないと思うのですが、同じリスポーンでもNPC指定で「Respawn」を
チェックされたNPC(タマネギとかギルドの手下とか)は死亡しなくても普通に連れて
歩くだけでインベントリの初期化が頻繁に起きたりします。

なので場合によっては思わぬ時に着替えが起きたりする可能性が。
もしその辺が問題になる様でしたらまた。

また、特に対象NPCを決めずにどんなNPCでもいいかんじに着替える様にする、
という事だとまた少し違う考え方になるのでその場合も必要でしたらまた。
257255:2011/09/18(日) 22:33:42.11 ID:EqRn6hfy
あれからやってみましたが、うまく行きません

Leveleditemに指輪を入れてその指輪につけたスクリプトに
additem LegionCuirass 1 と入れてやってみましたが
確認するとLegionCuirassは持ってませんでした
この場合ってNPCのID要らないですよね? 一応
ref me
Begin GameMode
set me to getself
Me.additem LegionCuirass 1
も やってみましたが結果は同じでした
最初から所持させてる状態のアイテムだと、additemは通らないのかな
根本的に、何か勘違いしてたら すいません

リスポーン毎に着替えるのは問題ありません
周りのNPCにMOD装備を着せたい、着替えさせたいというのが目的です
258名無しさんの野望:2011/09/18(日) 22:52:07.98 ID:kbpQLN4w
>>257
そこはGetSelfでなはくGetContainerになるんじゃないですかね。
Set me to GetContainer
とデバッグ用にその後ろの行に
PrintC "Me=%n(%i)" me me
あたりを付けておくと異常が見つけやすいかも。
259名無しさんの野望:2011/09/18(日) 23:30:16.81 ID:EqRn6hfy
>>258
GetContainerに直してPrintC "Me=%n(%i)" me me を付け足しました
ログには 名前(ff000837) と出ました
removeme外すとこのログが流れ続けますが、NPCインベントリ内には
入りませんでした、なにが行けないんだろう
260名無しさんの野望:2011/09/18(日) 23:56:34.89 ID:kbpQLN4w
>>259
リファレンスが取れているのでそう間違ってはいないと思いますよ。
一つ一つデバッグメッセージを付けて確かめていけばゴールは近いと思います。
261名無しさんの野望:2011/09/19(月) 01:18:22.05 ID:Hm0BDgIy
>>259
NPCはaddItemしただけだと装備しませんので、見た目では判断できませんが、そこは大丈夫でしょうか
equipItemするなり、殺してインベントリを覗くなりして、確かめてください

あと、現状の問題とは関係ないですが、removemeについて
これは実行後すぐに取り除かれるわけではないみたいで、removemeしても何回かはGameModeが走ってしまうようです
例えば次のように、確実に1回だけ実行するように書くといいです

ref me
short doonce

begin GameMode
if(doonce==1)
return
endif
set me to getContainer
me.addItem LegionCuirass 1
set doonce to 1
removeme
end
262259:2011/09/19(月) 01:45:06.27 ID:Uc5WO1AZ
結果から言うと出来ました >>261さんの言うように確認が不十分でした
インベントリを覗く為に、Formid_Finderと言うMODを使っていたのですが
これは装備している物のみ表示みたいで、倒して確認したらLegionCuirassを2000個くらい持ってました・・・
EquipItemを足して着せる事も出来ました removemeの補足も参考にさせて頂きます
レスをくれたすべての方、ありがとうございました
263名無しさんの野望:2011/09/19(月) 12:11:56.44 ID:zwffYdKs
ttp://shy.jsphr.net/upload/img/ups22200.jpg
このSSみたいにするにはどれだけmodをいれればいいですか?
264名無しさんの野望:2011/09/19(月) 12:18:03.76 ID:LWUERQ8T
>>263
全力いけ
265名無しさんの野望:2011/09/19(月) 15:30:23.32 ID:KxmFb7fJ
mod作成と何の関係があるんだw
266名無しさんの野望:2011/09/19(月) 19:44:18.01 ID:VVSAQV/1
HTSとHTSCについて質問です。
HTSCの更新が止まってから、派生元の本家HTCのバージョンが上がり、
今でも更新され続けているので、
同じファイル名を使っている
HTSCからCの部分だけを抜き取って
HTSとCとを別々のMODとして扱って、最新版HTS+Cで運用したいのですが
HTSCからCだけを抜き取ったものってありますか?
またはCだけを抜き取る方法はありませんか?
267名無しさんの野望:2011/09/19(月) 20:27:47.55 ID:TBy9RWpX
全カいけ
268名無しさんの野望:2011/09/20(火) 07:07:36.20 ID:wBmr+hh6
>>267
全力だとMOD改造の質問は受け付けてなかったはず
(いわく初心者レベルじゃないということらしい)
上級者質問スレじゃね?
269名無しさんの野望:2011/09/20(火) 12:21:17.54 ID:YwDMV3vV
>>267
HTSC自体日本語環境だとcraftybitsとHTSCL(今だとplus)に別れてる
たぶん上記2modを入れて(HTSCL側の空腹機能を切って)HTSと併用するのが一番早い
HTSCLで追加された料理が食べ物として認識されない点はあるだろうが
そこはCSで各自対応するしかない
(あるいはシュルテム氏のサイトにある改変環境を用いるか)
現在も更新されてるとい&食材が自由に追加できるという点ではHTSCL+を普通に導入したほうが早いと思う
270名無しさんの野望:2011/09/20(火) 16:31:29.09 ID:FWGIj8DJ
上の装備替えの話の続きでアレなのですが。

今少し試したのですが、CSで予めInventoryに入れたアイテムをRemoveMeすると
死亡時にまたスクリプトが動いたりの謎挙動が起きません?

例えば装備を一つしかAddItemしていないのに死亡するとなぜか同じものを二つ
持ってる、みたいな場合はこの関係かもです。
でもこれって目的の本質とは関係無いシステム挙動の話で少しややこしいんで、
現状で問題無いなら別にいいのですが。
271名無しさんの野望:2011/09/20(火) 19:44:24.68 ID:Q74BUoUt
>>270
ああ、その謎挙動で悩んだことがあります
CSで、スクリプト付きアイテムをLeveledItemではなく、直接Inventoryに入れている時ですね
LeveledItemを介して所持させたり、ゲーム内でAddした場合は大丈夫ぽいのですが

処理が終わったら、処理終了を示すtokenをAddItemしておく
スクリプトの方は、そのtokenがあれば処理しない、という感じで謎動作に対処したりしてます
272名無しさんの野望:2011/09/20(火) 20:48:23.17 ID:+oYELISU
装備品の作成について質問なのですが、Blenderでモデル作成後nifにて出力し、
それをnifscopeでモデル部分のみ移植して装備を作成しようとしています。
出力したものを移植した時点ではゲーム上で装備可能ですし、CS上でも問題ありません。

しかし、Tonaさんのチュートリアルを参考にNiTexturingPropertyとNiMaterialPropertyを削除し、
それぞれの部分にに既存のものからコピペで貼り付けるなどした場合、CSやゲーム上では表示した時点で強制終了されてしまいます。

少し前前からいくつか同様の方法と手順で装備を作成しており、そのときには強制終了などはなく、上記の手順で無事作成することができました。
このような状態になってしまう原因などには、どのようなことが考えられるでしょうか?

exportしてnifに貼り付けた時点のもの(表示可)と作業後(表示不可)のものを以下に固めてみました。
ttp://shy.jsphr.net/upload/img/ups30981.zip
273名無しさんの野望:2011/09/20(火) 22:56:59.88 ID:FWGIj8DJ
ちょっと細かい話で長くなるのですが。

>>271
それってアイテムを直接Invedntoryに入れてもLeveledItem経由でも起き、また両者で
症状が微妙に違うみたいです。

・前者だとNPC死亡時にそのアイテムのGetItemCountが0なのにスクリプトだけが起動
して以降動き続け、RemoveMe/RemoveItemが無効でスクリプトを停止出来ない

・後者だとNPC死亡時にそのアイテムのGetItemCountが1になってスクリプトが起動、
アイテムはインベントリ内には見えないがRemoveMe/RemoveItemするとスクリプトは
止まる(前者と同じになって止まらない場合も)

てなかんじで。
また死亡時に限らず、NPCの再ロードが起きてInventoryの再評価かなにかが起きた
時にも同様になる場合が。
再ロード時の挙動はLeveledCreatureやRespawn指定に関係が。

あとそれとは別に、直接Inventoryに入れた場合ゲーム起動と同時にロードされて
いないNPCでもスクリプトが一回だけ動く、という挙動もあるみたいです。
274名無しさんの野望:2011/09/20(火) 23:00:37.11 ID:FWGIj8DJ
続き)
という事で色々ややこしいので、例えば>>262さんの様な場合の無難な解決策としては
以下みたいなかんじでもいいんじゃないでしょか。

ref Me
begin GameMode
if ( Me ) ;----持ち主のRef取得を「一回だけ実行」のフラグ代わりに
return
endif
set Me to GetContainer ;----ここで持ち主のRef取得
;----以降にAddItem等一回だけやりたい事を
end

逆に超単純ですが。
このスクリプトを付けたアイテムをLeveledItemに入れてそれをCSでInventoryに
入れれば大体期待した通りの動作になる思います。多分。

RemoveMeしないと二回目以降常時Returnで負荷が、みたいに思えるかもですが、
RemoveMeしてしまうとどうやってもスクリプトが停止しない状態になる可能性はある
みたいなので、そういったシステム的に恐らくイリーガルな状態になるよりは
この程度の負荷で済むならその方が安全な気が。
275名無しさんの野望:2011/09/20(火) 23:07:19.24 ID:wwjjpgqK
>>272
んー
BlenderにImportし直して吐き出すと問題ないけど、そのままだとダメだね
変わった構成してるからその辺が原因なのかなぁ…
276名無しさんの野望:2011/09/20(火) 23:41:22.49 ID:wBmr+hh6
すみません、本スレから参りました
病気治療魔法を弱体化というかスクリプトを改変しようと思うのですが
バニラのものとなるべく互換性を残しておきたいので
なるべくバニラの魔法エフェクトを直接いじる形で改変しようと考えています

魔法の効果を管理しているスクリプトとはどれなのか教えて頂ければ、と思います
277名無しさんの野望:2011/09/21(水) 00:31:58.38 ID:y7MWFlkA
>>276
一般的なバニラ魔法ってスクリプトじゃないですよ。
魔法の各効果自体の定義はGamePlay→MagicEffectsに、強さはSpell→Effects欄の
該当する効果→Magnitudeで指定されてます。

でも病気治療の例えば「StandardCureDiseaseJourneyman」→Effectsの
「CureDisease」にはMagnitudeは無いです。単に病気が消えるだけで。

またバニラのSpellやMagicEffect定義を直接弄ると逆に互換が無くなるので、
その手の事をする場合は大抵新魔法を追加して自前でスクリプトを書いたりします。
その場合はここを。

http://cs.elderscrolls.com/constwiki/index.php/Scripting_Tutorial:_My_First_Spell

病気治療を「弱体化」というのが具体的にどんな見た目の動作になればいいのかを
教えてもらえるともう少し具体的な話になるかもです。
278名無しさんの野望:2011/09/21(水) 00:58:29.35 ID:1lFmQSjT
>>277
ありがとうございます
既存の病気治療の効果(を決定するナニモノか)を
そのまま上書きできればと考えていました
そうでないと呪文作成で作った病気治療魔法などに
改変が及ばなくなってしまうので、です
MODを入れた時点でその呪文を忘却させ
お金を返すような仕組みが作れるならいいのですが難しいでしょうし……
(scriptの新魔法は自作魔法に登録できませんよね?)

弱体化の内容ですが
例えば30%の確率でしか効かなくしたり
かけた後一日経過しないと効かなくしたりといったものを考えていました

既存の病気治癒は各種の病気強化MODorマンドレイク対策MODを
導入した環境だとあまりにも"強すぎる"(100%有効であるため)と思ったゆえの変更です
279名無しさんの野望:2011/09/21(水) 01:37:09.45 ID:Amxqq/UP
>MODを入れた時点でその呪文を忘却させ
>お金を返すような仕組みが作れるならいいのですが難しいでしょうし……
これは割と簡単で
ポーズModとかで入れて始めるとポーズ用アイテムや魔法を手に入れますよね
あれをCure系を削除にすればおkです。

確率変動は…
MasicEffectHitのイベントハンドラを作って、
Cure系受けた際に70%で再度病気をAddとか
PCの受けているEffectを取得しとかないとAdd出来ないんで常時監視系でしょうか
1日経過ならGetSecondsPassedでTimer作るかグローバル変数から日時チェックする感じで
280名無しさんの野望:2011/09/21(水) 01:51:59.96 ID:Dj1nF+El
>>279
なるほど、常時監視となると重くなりそうですね…
他の制限をつけるかもしくは自作魔法対応できないのは
諦めたほうがよさそうですね
(もしくは既存の病気治療効果はコストが極端に高く
 マジカ装備でもしていなければ打てないという条件で残すか)
281名無しさんの野望:2011/09/21(水) 01:57:49.81 ID:Amxqq/UP
いや、監視と言っても毒とかそんな頻繁にはならないので
監視間隔を多目にとってもいいんじゃないかなぁと思います。
監視=重いではないので、その辺は工夫次第かな、と。

上のはぱっと考えただけなんで、他の方のアイデアにもっと良いのがあると思いますですよん
282名無しさんの野望:2011/09/21(水) 02:05:09.57 ID:1s87NspT
いっそ逆の考えかたをするのはどうだろう
既存の病気に回復魔法が使えなくなるような症状を追加する
沈黙になったり回復魔法スキルが突然大幅に低下したりするような病気は魔法じゃ治せないよね?
283名無しさんの野望:2011/09/21(水) 02:12:41.02 ID:1lFmQSjT
>>281
なるほど、それなら工夫次第でうまくできそうですね
祭壇や薬による治癒と魔法による治癒をうまく区別できれば
それで良さそうな気がします

>>262
その発想はなかったwwww
確かにそれならJjiinx Enhanced Diseasesをマスター指定して
それに症状を追加する版とVanilla版を作れば大体満たせそうですけど…w
284名無しさんの野望:2011/09/21(水) 04:38:26.74 ID:W9Ni5LXx
>>274
この方法は、負荷に関しては問題ないと思いますが(近くに居るNPC以外ほとんど低レベルプロセスですし)、
湧きNPCの数だけスクリプト添付アイテムがずっと残ることになるのが、非常にまずいと思います。

スクリプト添付アイテムが全体で500〜1000個以上(環境依存)存在すると、セーブ/ロード時や、セル移動時等、
何かの切っ掛けでCTDするようになってしまうので。

特に雑魚敵増加系MODが入ってると危ないと思います。
285名無しさんの野望:2011/09/21(水) 07:45:49.14 ID:Cq+ZxRy1
>>275
ご指摘の通り、一度IMportしなおすと大丈夫でした。
今後はImportしなおしたものを使用したいと思います。ありがとうございました。
286名無しさんの野望:2011/09/21(水) 08:20:27.45 ID:y7MWFlkA
>>284
これを最終形として全NPCに適用する訳では無いですよ。だと思うんですけど。
今は成り行きでこの方法になってますが。
>>262さんの用途にとりあえずの手っ取り早い方法として提供しているだけで。

不特定のMODや大量に適用するなら>>256にも書きましたが他の考え方の方がいいと
思います。

またこの場合起動方法だけでなく多分セット装備の選択や着せ替え等の色々な要素が
あって、それらを最初から完成形で一気に作るのは状況的に難しそうな気も。
というか具体的にどういう事を目指しているのかまだ謎ですし。

なのでこの先の話は実際にやってみて何か問題が出たらまた追々、ということで
とりあえず一番簡単そうなところから始めてるのだと思います。
287名無しさんの野望:2011/09/21(水) 09:02:37.11 ID:y7MWFlkA
>>283
普通のDiseaseならやっぱ>>279さん仰る様にOBSEのEventHandlerの「OnMagicEffectHit」
がいいんじゃないですかね。
このイベントは効果が実際に適用される前に発生するみたいなので常時監視は多分
必要無いです。なので例えば、

・SetEventHandlerで、OnMagicEffect、ユーザー関数、ref::PlayerRef object::"CUDI"
を指定
・ユーザー関数ではPCをGetSpellsしてどこかの配列に現在のSpellのリストを保存、
スクリプト付きの適当なアイテムでも持たせる
・そのスクリプトで数フレーム待ってSpell効果の適用が終ったらその配列から
GetSpellTypeが「1」のSpell(Disease)を探し、ある確率で再度PCにAddSpell

みたいにすれば多分。
時間が経ったら治癒するならタイマーでもGameDaysPassedとGameHourとかでも。
あと、このイベントはPotionやScroll使用でも発生すると思います。
自作Spellでも多分。

ただ、問題はその病気MODが本当にDiseaseだけで病気を実現しているかどうかな気が。
もしなんか独自の方法で病気を実現しているならそのMOD対応のまた別な方法になる
と思います。
288名無しさんの野望:2011/09/21(水) 09:25:09.28 ID:ZvyfTdXs
>>286
>>255に「対象NPCは特に決めてないです、バニラも、MODのNPCも含みます」とあるよ
なんにせよこのスレに情報が残ることで、他の人も参考にしたりハマる可能性もあるから、
いつも思うんだが、追々にと言って中身のない補足ばかり長々書いてもしょうがないし、
1行あれば書ける程度の注意点は事前に書いた方がいいんじゃないかなぁ

特に今回の>>284みたいな情報は今回みたいなタイミングで知るのでもなければ、
後で自力で気付いたり知ったりするのはかなり厳しいだろうし、実際自分も知らなかったから有り難い情報だった
289名無しさんの野望:2011/09/21(水) 09:41:47.92 ID:1uRs7X/I
結果としてこのスレの情報がのちの人の役に立つのであって
それを前提にって難しくないかな?
まあ、自分は聞くだけの人間だけど、いっぺんに詰め込まれると頭パンクするw
290名無しさんの野望:2011/09/21(水) 09:48:47.28 ID:GZBj4tCx
それ自体短く済んだとしても
細かい注意点やシステム上の癖なんて
多すぎて、いちいち全部羅列してあげってもキリがないわけでね

アドバイスをくれる人が
取捨選択し当面必要と思う情報をあげているわけでしょ
それで足りないなら>>288のような人が
Tipsとしてまとめを作ればいいんじゃない?
291名無しさんの野望:2011/09/21(水) 09:54:29.88 ID:ZvyfTdXs
うん、だから、1行で書ける、しかも今回みたいにほぼ必ず関係してきて重要な注意点は、
あえて省略する必要はないよね(むしろ事前に書くべきだよね)っていう話だよ
292名無しさんの野望:2011/09/21(水) 10:18:13.52 ID:y7MWFlkA
あれ、なんかごめんなさい。
293名無しさんの野望:2011/09/21(水) 10:26:41.80 ID:IgKca9FO
おまえらいつものあの人が>>284の問題を予め知ってたという前提で書いてるけど、
普通に単に知らなかったから事前には書けなかっただけだと思うぞw

ただ、あの人って先生キャラなせいか、自分以外の人から指摘や情報提供を受けると、
突然どうでもいい自己正当化を長文で展開しだすのがよくわからんところだな

100%完璧を期待してるわけじゃないんだからもっと気楽に応対すればいいのにな
294名無しさんの野望:2011/09/21(水) 10:43:10.12 ID:1uRs7X/I
まあ、スレチでしたな。以降スルーで
295名無しさんの野望:2011/09/21(水) 12:59:59.14 ID:Cjkp6xI7
blenderでヘルムを作成し装備はできたのですが
なぜかゲーム中で装備するとヘルムが90度傾き、横になってしまいます
ヘルムそのものはblenderやnifskope上ではきちんと真っ直ぐに表示できます
しかし他のnifにこの作成したヘルムを貼り付けると90度傾いて貼り付けされます
何が原因か教えていただきたいです
296295:2011/09/21(水) 16:22:05.20 ID:Cjkp6xI7
ボーンの設定がおかしかった様で新しいボーンでやり直したら上手くいきました
お騒がせいたしました
297262:2011/09/21(水) 20:03:01.25 ID:9Jmflxqe
たくさんレスありがとうございます
あれから、試行錯誤繰り返してますが、難しいですね

上の方と同じ様なことしか言ってないので、>>298まで読み飛ばした方が言いかもですが一応報告です

インベントリに直接入れると、スクリプトが止まらない
GetItemCountで一回だけの動作にして、removemeで取り除いても
スクリプトが止まらず動き続けてます、監視用tokenアイテムをスリ取ると、再び装備されます

インベントリにTokenアイテムを入れたLeveledItemを入れると
removeme後すぐに止まっているようですが、頻繁にCTDしました
今テストに使ってるNPCが500人ほどなので
>>284さんが言ってる事に該当してるみたいですね (先にここ見てれば良かった・・・)
298297:2011/09/21(水) 20:03:41.54 ID:9Jmflxqe
そこで、LeveledItemにスクリプト無しのToken一個を入れて
クエストスクリプトで持っているNPCサーチして、持っていれば装備をadditem、equipして
Tokenをremoveさせてみようと思います、出来たらまた報告します

後、スクリプトで着せたNPCを倒して、奪った装備を着ようと思うと一度地面に置かないと
着れないのですが、これはこちらだけの不具合でしょうか?
299名無しさんの野望:2011/09/21(水) 20:52:35.30 ID:tFRjEuph
ダメージをスタミナやマジカで肩代わりする魔法を作ろうと思ってます。

特定ヘルスを切るようなダメージを受けたときは
1.ダメージ全部肩代わりさせる。
2.特定ヘルス分を残して、残りを肩代わりさせる。
3.特定ヘルス分を残すが、元々のダメージ全部肩代わりさせる。

もしくは特定のヘルス以下のときにダメージを受けたら
ダメージを全部肩代わりさせる。

このどれかの仕様で作りたいのですが、そもそも可能なのでしょうか。
理想を言えば肩代わりするほど残ってなくて軽減不可能な場合は
そのままヘルスにダメージ、とか出来ればベストですが流石に難しそうで…。
300名無しさんの野望:2011/09/21(水) 21:16:04.58 ID:cKMthZOI
>>299
OnHealthDamageがダメージ受ける前に判定させることができたら
死なずに肩代わりダメージで受け流すことは可能でしょうね

その辺りは、イベントハンドラに詳しい人の降臨待ちで…

ダメージ判定を無効にするのが無理だとしても、
OnHealthDamageである程度の妥協スクリプトは打てそうな気がします

ただ、死ぬほどのダメージを受けた時ですら肩代わりできるかできないかの差ですけどね

パッとの思い付きじゃ、自分ではこれが限界です(´д`)
301名無しさんの野望:2011/09/21(水) 21:36:30.96 ID:52fGYZT9
>>298
>後、スクリプトで着せたNPCを倒して、奪った装備を着ようと思うと一度地面に置かないと
>着れないのですが、これはこちらだけの不具合でしょうか?

me.equipItem ARMOR 1 のように、装備をはずすことを禁止するフラグを1にしてませんか?
この場合、その状態になるみたい
特に理由がない場合、me.equipItem ARMOR として、そのフラグを立てない方が安全です
302298:2011/09/22(木) 22:36:28.61 ID:mxZMrzXs
>>301
なるほど、勝手に使用する数だと思い込んでました 修正して普通に着れるようになりました
ありがとうございました

自分の思う動作にはなったのですが、疑問が残っているのでお願いします
set me to GetFirstRef 35 0
while ( me )
if ( me.GetDistance Player < 30000 ) ※1
if ( me.GetItemCount ArmorSetToken == 1 )
me.AddItem ArmorSetToken 1
set Random to GetRandomPercent
If Random <= 10
me.AddItem testarmor 1
me.EquipItem testarmor
set me to GetNextRef
continue
(〜elseis等省略〜)
loop
303302:2011/09/22(木) 22:37:52.76 ID:mxZMrzXs
続き
※1の下に set Me to GetContainer が必要な気がするのですが、最初の動作以外IDが拾えなくなるのですが
GetNextRefで拾ったIDは使えないのでしょうか、以下のGetItemCount等は無くても動いてます、このままで大丈夫でしょうか?

もう一つ、GetNextRefは次のIDが当てはめられるんですよね?
なぜかNPC一人に2〜3度実行されます、それを防ぐためにTokenの数を増やしてますが
どこかおかしくて2〜3度されているのでしょうか?
304名無しさんの野望:2011/09/22(木) 23:10:16.78 ID:DKKsJbtR
Crowded Roads Advanced http://www.tesnexus.com/downloads/file.php?id=18251
を美人化&改造しているものです。
美人化は終了したのですが、わからない事があるので質問します。
MadCompanionshipSpellsでCrowded Roads Advancedの旅人や山賊等をコンパニオン化します。
そして、街に入るとに街に入らずなぜかそのまま消えていなくなってしまいます。
これを改善するにはどうすればいいですか?
別のスレで聞いた時、intが低いと扉を潜らないと聞いたのですがどうでしょうか?
もしそうならCSでintをいじれば改善するでしょうか?
EnemyFace3に追加される虎の家という家には消えずにに中までついてきてくれます。
305名無しさんの野望:2011/09/22(木) 23:31:38.19 ID:yUyqsdw8
>>303
ループとGetNextRefのやり方が正しければ、meにNPCのIDが取れますから、それに対するAddItemやEquipItemで問題ありません
GetContainerはインベントリアイテムのスクリプトで使用し、これを所持しているNPCやコンテナのIDを取るものです
クエストスクリプト(ですよね?)で使うと何が取れるか分かりませんし、今回は不要です

2つ目について
距離が30000未満かつ、token数が1かつ、10%の場合だけset me to GetNextRefしてるように見えますが、
それ以外の場合、省略されたところでも、ちゃんとGetNextRefしてますかね?
してないと、同じ人が何度も処理されることになりますし、なんか無限ループしそうな感じがします

省略してる部分で正しくGetNextRefしたとしても、このスクリプトがクエストスクリプトで何度も走るのならば、
同じ人が何度も処理されることにはなってしまいます
既に実装されているように、token等で二重に処理されるのを防ぐのはNPCサーチするときの常套手段かと
306名無しさんの野望:2011/09/23(金) 00:13:29.02 ID:Hesnl/bD
>>304
MCSを入れてないので何とも言えないのですけど

とりあえず、コンソールでMovAV IntelligenceをしてみてNPCのIntをあげて動作を確認してみてはどうでしょうか?
それで上手く動作するようでしたら、次のステップでIntを上げる作業だけで解決しそうな気がします

ちなみにコンパニオンMODは、結構扉と通ったりするテレポート関係に関して結構弄っている所があるので
そのあたりを解明すると、一番解決に繋がったりします。

とりあえず、デバッグするなら
そのNPCがどこへ消えてるか、など探ってみるのもありかもしれません

コンソールでそのNPCのFormIDを取得して
消えた場合、MoveToで移動してみると、案外消える謎を解明できたりします。
307名無しさんの野望:2011/09/23(金) 00:53:55.36 ID:KuNkmz0P
片手武器の装備アニメ(OnehandEquip)を改造していて気付いたんですが、抜刀途中・納刀途中に
剣がちゃんと鞘に収まっていません。vanillaのkfでも同じ状態だったので仕様のようで、そこは自力
で待機状態からの抜刀・納刀なら完全に納まるように位置・角度合わせまではなんとか出来ました。

しかし、当たり前なんですが歩行中や走行中、またはトラッキングによる頭・上半身の回転の影響下
だとそれに伴い、途中でずれて剣が鞘からはみ出てしまいます。

抜刀・納刀時の鞘と剣を同期させつつ、トラッキングによる上半身の回転や軸の傾きなどの影響を
受けないようにするなにか良いる固定方法は無いものでしょうか?
308名無しさんの野望:2011/09/23(金) 02:14:09.35 ID:qiDQ/WlU
>>305
そうですクエストスクリプトで使ってます、GetContainerも少し誤って覚えていたようです、すっきりしました

省いてしまうと、どうなってるか分からないですね、すいません
txtファイルにして上げました、時間がある時で良いので見てもらえると助かります
http://shy.jsphr.net/upload/img/ups31092.zip

今はTokenを増やすことで二重処理を防いでいますが
これを↓に変えて、token無くすことで対処したいのですが
if ( me.GetItemCount ArmorSetToken > 0 )
me.removeItem ArmorSetToken 1
GetNextRefで同じidが瞬時に2〜3度出てきてremoveitemが間に合わず(?)
装備も同じ回数だけ配布されてしまいます
309名無しさんの野望:2011/09/23(金) 11:00:45.23 ID:4hcZn3aA
>>306
Intelligenceを100まで増やしてみましたが変わらず、消えた後もMovetoしてみましたが移動できませんでした。
↓はMovetoした時のコンソールログ
http://shy.jsphr.net/upload/img/ups31102.jpg
うーん、新しく仲間にする為のスクリプトを構築するしかないのでしょうか?
でもスクリプトはできないし・・・
まったくの初心者がスクリプトを習得するには結構かかりますか?
310名無しさんの野望:2011/09/23(金) 11:15:42.58 ID:MdUJI1EA
>>308
アップされているスクリプトを拝見したのですが、みたところでは
一瞬で同じIDが出るというのは挙動としてちょっと考えにくいので
デバッグ文を差し込んで挙動を確かめるのがよいように思います

挙動確認用のスクリプトをアップしてみました
http://shy.jsphr.net/upload/img/ups31107.zip
TravellerArmor.txtの末尾にデバッグ文の意味を記載しています
またスクリプト内に冗長な箇所(たぶん今後の拡張用?)がありデバッグ挙動の確認がしにくいかと思ったため
IF文まわりを少しまとめさせていただいてます
よかったら差し替えて挙動確認してみて下さい
311名無しさんの野望:2011/09/23(金) 12:07:14.72 ID:heA0q3Rg
>>299
イベントハンドラのOnHealthDamage中に、引数Damage分をModAV2で加算して
その分をMagickaかFatigueをModAV2で差し引けばいいと思うデスよ

攻撃のダメージも、罠も落下ダメージも、全部魔法で受け止められる仕様にするなら、
ダメージが何の理由で受けたかを調べるなくてもいいので、そこそこ楽に実装できると思うです
312名無しさんの野望:2011/09/23(金) 12:45:00.20 ID:e0tXDf16
>>300 >>311
色々弄ってましたがどうやらOnHealthDamageが実ダメージ前に判定できそうな感じですね。
自分のMod技術も鑑みて、
特定ヘルス以下で発動し、100%全部受け止めれないなら軽減0で直撃
って方向で考えていこうと思います。
レスありがとうございました。
313名無しさんの野望:2011/09/23(金) 13:57:27.13 ID:AXn7/3SO
>>304
その旅人や山賊をMadCompanionshipSpellsでコンパニオン化した際に
メッセージで「Temporal Actor」と表示されていませんか?
もしそう表示されている場合、そのアクターは雑魚性アクターなので
Persistent性アクターとは異なり完全な制御が不可能である為、
プレイヤーの移動(街の外→街の中)に付いて来なかったり消えたりします。
「雑魚アクターをテレポートさせると落ちる」というキーワードでググると情報が見つかると思います。
314名無しさんの野望:2011/09/23(金) 15:55:55.36 ID:4hcZn3aA
>>313
あっ・・・確かに出てますね・・・
という事は、Persistent性アクターとか言うのに変えれば大丈夫なのでしょうか?
315名無しさんの野望:2011/09/23(金) 17:37:15.56 ID:MdUJI1EA
>>314
Persistentかどうかは変えられないはず
なのでCellやWorldspaceが変わったら自分のいる場所に動かして連れてくるなど独自ロジックを組まないとだめなような
それをクリアできてもnon-persistentなNPCをコンパニオンとしてずっと連れまわすと他の状況でも問題は出てくるでしょう
316名無しさんの野望:2011/09/23(金) 17:45:29.94 ID:MdUJI1EA
あ、そのNPCをRespawnするその他大勢NPCでなく
固定のNPCとして存在させたいという話なら別です
上の「変えられない」というのは既にnon-persistentでゲーム中に存在しているNPCを
スクリプトなどで変えることは出来ないでしょう、という話です
317名無しさんの野望:2011/09/23(金) 20:37:37.04 ID:4hcZn3aA
>>315
>>316
そこまでくると上級者でないと改造できないような気がしますw
スクリプトをまったく知らない私でもできるのでしょうか?

とりあえず美人化だけしたものをUPしました。
http://shy.jsphr.net/upload/img/ups31135.7z

質問に答えてくださった方々に感謝の言葉を・・・

     ありがとうございます。
318名無しさんの野望:2011/09/23(金) 21:52:04.98 ID:cE8g4jKD
全力スレで質問したのですがこちらに移動しました。

就寝モーションのdynamicidle_sleep.kfを変更したく、適当なダウンモーションを
リネームして置き換えましたところベットの下に潜ってしまいました。

この二つをskelton.nifにアタッチしてnifscopeで見ると、dynamicidle_sleep.kfは
ベットの高さくらい浮いており、ダウンモーションはフロア位置にあります。
またBlenderで見ると二つともフロア位置になりました。
ダウンモーションのどこを修正すればベットの高さになるでしょうか?

よろしくお願いします。
319名無しさんの野望:2011/09/23(金) 23:18:16.98 ID:qiDQ/WlU
>>310
GetNextRef 、Continueが多いのは、何度か実行されることがあるので
どこか抜けてLoopまで行ってるんじゃないかと思い、すべて埋めてましたが
原因とは関係ないみたいなので、削除しました

TokenのAddItemをRemoveItemに戻し、if条件を >0にし
upしてもらった確認用スクリプトを加えて確認させてもらいました

結果はGetNextRefは正常に動作していて、クエストスクリプト二週目で再度実行されていました
Remove後の反映が間に合っていないようです、出来ればクエストスクリプトの再実行は今の半分以下にしたい位なので
Tokenを増やすことで対応することにします デバック用スクリプト助かりました

レスくれた方々、ありがとうございました
320名無しさんの野望:2011/09/24(土) 14:37:16.39 ID:DJpK7Q0m
自分用にGameSettingを外部から操作できるini(+esp)を
作ろうと思っているのですが
iniはどのように読み込めばいいのでしょうか


具体的に何をしようとしているのかというと
SupremeMAgickaから(重いスクリプトを伴う)変更と
(LAMEに一本化するために)追加魔法を取り除き
SupremeMAgickaのGameSettingに関わる部分だけ
抜き取って使おうと考えているのです

ただ、CSで直接やろうとすると変更箇所が多すぎて
対処できないため、iniの使える部分だけでもコピペできないものかと考えました
321名無しさんの野望:2011/09/25(日) 07:10:48.79 ID:2aP2OLos
モーションに合わせ表情も付けたんだけど上手くいかず、どなたか教えて下さい。

目閉じA(clanp)→目閉じB(loop)で、A,B共に1フレームで目が開いてしまいます。
Aはゆっくり目を閉じていき、Bでパッと開いてそれから閉じていきループでまたパッと
開くいう感じです。
322名無しさんの野望:2011/09/25(日) 08:32:40.32 ID:V4uxr8E2
>>321
瞼に関してはまばたきを止めないとそれによって目が閉じてしまいます。
通常は1.5〜4秒に1回まばたきして目が閉じます。
この間隔はfBlinkDelayMinとfBlinkDelayMaxという値で変更可能ですが、
この設定はNPC全員に効いてしまうので、あるNPC狙い撃ちにしたい場合は
そのNPCにSetUnconscious 1、SetUnconscious 0を打って、一回無意識状態にして戻すとまばたき等しなくなります。

表情制御を詳しく書いた方のブログがあるのでそちらを参考にするといいかと思います。
「Oblivionでの表情の作り方」をキーに検索して
「ゲーム内の視線制御」と「なかなか目を閉じてくれない時は」を見てみてください。
323名無しさんの野望:2011/09/25(日) 14:30:09.16 ID:AdZLLQ6G
入門レベルで恐縮ですが御願いします

バニラ等の既にパッケージを持った既存NPCに対し
会話終了時・スクリプトなどで
あるマーカーまで歩かせ待機させるAパッケージをADDしているのですが
travel、find、wanderのいずれも言うことを聞いてくれず
本来の目標地点まで歩こうとしてしまいます

mustcompleteをつけると、一応移動はしてくれることもあるのですが
onece per dayを付けていないのに、一回だけ通過すると
すぐに元の目標の方へ行ってしまうようです

addの仕方やフラグの付け方などに何かコツがあるのでしょうか?
類似MODを拝見しても、すんなりできているようで、いまいち理由が掴めません。

またスクリプト・会話gooby時共に
mustcompleteフラグをonにしたfollowパッケージや
followに対するwaitであれば正常に動作します
324名無しさんの野望:2011/09/25(日) 14:32:21.02 ID:AdZLLQ6G
本来というのは、addする前に持っていた元々のパッケージのことです
NPCはとりあえずリスポン、nolowlevel、エッセンシャルなどがついていない
一般NPCでタメしております
325名無しさんの野望:2011/09/25(日) 16:26:36.27 ID:jgq/8Hsb
>>320
まさに、iniでGameSettingを変えるINI_GameSettingsというMODを作ってる者です

>>320さんの目的に沿うかどうか分からないですけど、こういうの作ってます
ttp://www.mediafire.com/?te49wg6lech5gxc


このMODの一例では、

if FileExists "Data\IGSini\IGS_ActorsAllowedToFollow.ini" == 1
 RunBatchScript "Data\IGSini\IGS_ActorsAllowedToFollow.ini"
 SetNumericGameSetting iNumberActorsAllowedToFollowPlayer iNumberActorsAllowedToFollowPlayer
Endif

という感じでIGSiniフォルダ下のIGS_ActorsAllowedToFollow.iniというiniファイルの読込を行っています。

まずは、FileExistsでiniファイルの有無の確認をし、
iniファイルがあれば、RunBatchScriptでiniファイル内の変数定義の読込を行うという感じです。

そして、SetNumericGameSettingでGameSetting値の変更です。
326321:2011/09/25(日) 19:00:22.63 ID:2aP2OLos
>>322さんありがとう。
教えられたサイト見てると思うのですが、必要ないのかTimeについて書かれてません。

目をギュっと閉じた苦悶(sad)から少し弛緩(fear)する。というのをやりたいのです。
目閉じA(clanp)はおいておいて、目閉じB(loop)なのですがこのようになってます。

Stop Timeは1.9600です。
□Text Key key<string>
  Time  float    0.0000
  Value  string    ENUME: Face sad 1.0 0.0 0.0 0.0  (ギュっと閉じている)
□Text Key key<string>
  Time  float    0.9600
  Value  string    ENUME: Face Fear 1.0 0.7 0.3 0.0  (弛緩)
参考にしたkfではTimeは同じなのに表情が変化してましたが、上手くいかずfearを0.96
にしてみました。
どこがまちがっているのでしょうか?
327名無しさんの野望:2011/09/25(日) 19:59:14.15 ID:V4uxr8E2
>>326
情報が断片的かつ幾つか誤解されているようなのでこれが解になるか分かりませんが、

・Enumの書式の理解に誤りがあるようです
 −ENUMEでなはくENUMです

 −Enum: Face <Expression_name> <Slider_percentage> <Buildup_time> <Hold_time> <Fadeout_time>
  のそれぞれのパラメータの意味が同サイトに記載があるので見て下さい
  最初のEnum: Face sad 1.0 0.0 0.0 0.0 は(ENUMEをENUMに直したとして)
  BuildupTime,HoldTime,FadeoutTimeが全て0なのでSadの表情が再生されることはないでしょう

 −Fearが弛緩かどうかは別として、Fearを少しだけ(例えば30%)、2秒間程度させたいなら
  Enum: Face sad 0.3 0.0 2.0 0.0
  などになります

まずはコンソールで意図する表情の指定が出来ているかを確認することをお勧めします。
AFANというコマンドがそれにあたるので、
コンソールを開いて適当なNPCをクリックし
例えば、AFAN "BigAah 0.5 2.5 5.0 2.5" と入れると口がBigAahの形に50%開きます
2.5秒かけて徐々に開き、5秒の状態を保持し、また2.5秒かけて閉じる、という感じです。

冒頭のTimeについては表情に限らずkfファイルにおける一般的なタイムフレームの話なので上記の表情の保持時間とは別の話です。
TextkeyのTimeで0を指定すると、kf開始直後(0秒)からその動作を始める、という意味になります。
あなたのしたいことが、0秒でSadを開始、0.96秒後にFearを開始したいなら(誤記を正せば)その指定で正しいです。
328326:2011/09/25(日) 21:01:31.68 ID:2aP2OLos
>>327さんありがとう。
ENUMEは投稿時の書きミスです。すみません。

AFANは何度かやったのですが、AFAN "BigAah 1.0 9.0 1.0 9.0"
とやったとすると開くのに9秒も要さずでした。長すぎだったのかな?

BuildupTime,HoldTime,FadeoutTimeが全て0だと再生されないとの
事ですが、326ので再生されるようです。

以下の想定で試しています。
sad
・BuildupTime:0.0  0にしないとループ最初に一瞬デフォ顔?に戻ってしまう。(確定)
・HoldTime:0.0    fearまで変化する事はなく、またfearに影響するかも。で0に。
・FadeoutTime:0.0  そもそも元に戻すの元が分からず。デフォ顔の事?直前の表情?
              どちらにしても戻って欲しくないので0に。
fear
・BuildupTime:0.7  sadから緩やかに変わって欲しく。  
・HoldTime:0.3    0だとfearじゃなくなった為。。
・FadeoutTime:0.0 もうどうすればいいのか・・・。

やりたいのは苦悶(sad)-弛緩(fear)のモーフサイクルなのです。説明べたですみません。
329名無しさんの野望:2011/09/25(日) 21:41:43.81 ID:V4uxr8E2
>>328
えーと、独自の解釈をせずに定義に従ってちゃんと値を入れることを勧めます
FeadoutTimeはその効果が0になるまでの秒数を指します
その効果とはSadのことです
表情制御は素の表情にSadやFear等のMorph情報を時間制限付きで重ね書きしていくイメージで捉えると良いです

何秒からSadを開始して何秒までそれを保持するのか、
FearはSadと同時に進行させるのか、Sadの効果が切れたあとから開始させるのかなど、
0〜1.96のタイムラインに対して、いつEnumを発行するかグラフにして書くなど整理したら
後はそれをkfに書くだけです

細かい話をすると、SadのHoldTimeなどが0秒でも実行されるように見えるのは
表情制御は同じ系統の指示で上書きしなければ前の指示を維持する挙動があるためです
ただ、これはたまたま次の指示(例えばFear)が発行されないからそれが続いているというもので
SadにFearをフェードインさせるような表情を作りたければ正しく秒数を指定しなくてはいけません
理解して行っている分にはいいのですが、最初は定義通りに数値を埋めるのが混乱もなくよいと思います

表情制御は細かい例外のような振る舞いがあります
それらについてはこのスレッドの過去ログを「表情」などで参照するといいでしょう
例えば、
http://oblivion.z49.org/logs/dev/1236491950.html.gz#R867
http://oblivion.z49.org/logs/dev/1236491950.html.gz#R882
330名無しさんの野望:2011/09/25(日) 22:08:06.92 ID:51pwO9h7
なんか混乱してるようだけど、参考にエロMODのkfファイルのTextkey見てきたら?
あれで勉強したおかげでずっと目閉じたままもウインクも自在に出来るようになった
331328:2011/09/25(日) 22:08:52.36 ID:2aP2OLos
>>329さんわざわざ過去ログまで用意して下さりありがとうございます。<(_ _)>

独自解釈したいわけではないのですが、わからないのです。
そして今また混乱しています。
>FeadoutTimeはその効果が0になるまでの秒数を指します

効果が切れて(HoldTime)から元に戻るまでの時間だと思ってました。
説明の通りならHoldTimeって何?って感じで…。
332名無しさんの野望:2011/09/25(日) 22:18:28.51 ID:2aP2OLos
>>330
目が開くのはBuildupTime 0.0で開かなくはなりましたが、あってるのかもう分からず。
EstrusのSpecialIdle_AfterUT1x1.kfを参考にしているのですが、御覧の有様です…。
333名無しさんの野望:2011/09/25(日) 22:37:59.86 ID:V4uxr8E2
>>331
図で表したほうが分かりやすいかも、多分こういう感じです
http://shy.jsphr.net/upload/img/ups31273.jpg

あと、まぶたについては特殊で、それは過去ログのこっちか
http://oblivion.z49.org/logs/dev/1288333470.html.gz#R841
こっちをみてください
http://oblivion.z49.org/logs/dev/1288333470.html.gz#R846
334名無しさんの野望:2011/09/25(日) 22:39:43.14 ID:V4uxr8E2
まちがえた
画像で右側のEnumもSadって書いてあるんですけど
あれはFearの間違いです
335331:2011/09/25(日) 22:49:49.58 ID:2aP2OLos
>>333さん (ちょっと笑う
おお、図まで用意して下さるとは。感謝。<(_ _)>
落ち着いて拝見いたします。
336名無しさんの野望:2011/09/25(日) 23:02:21.33 ID:51pwO9h7
ややこしいけどがんばって!
337名無しさんの野望:2011/09/26(月) 08:07:58.70 ID:lwskI6eR
激遅レス超連投しますがご勘弁を。台風でえらい事になってたので。いやマジで。

>>307
視線のトラッキングによる上体の回転で刀と鞘の位置関係がその都度不規則にずれる
のならBip01HeadのPriorityを「95」とか大きな値に。

またHeadのPriorityは高いのに常時意図しない方向に上体が捩れて刀と鞘の位置関係
が常に同じかんじにずれるならHeadとNonAccumの方向の不一致の可能性が。

視線トラッキングやHead-NonAccum不一致での上体の捩れは無いのに歩く/走る時に変に
なるのならSideWeaponを含む上半身各部のPriorityが歩く/走るのそれより高くなって
いるかバニラと比べて確認を。
338名無しさんの野望:2011/09/26(月) 08:11:15.24 ID:lwskI6eR
>>318
ダウンモーションというのが例えばhandtohandgetupfaceup.kf等の事なら
Bip01NonAccumのLocZを「4.956」にすれば腰位置がベッドの高さに。

dynamicidle_sleep.kfをBlenderで見ると地面位置になるのはそれとはまた別の微妙な
問題で、NifSkopeとBlenderでのNiTransformInterpolatorの扱いが違うのが原因です。
この場合NifSkopeの方がゲームと同じになるので正解だと思います。
339名無しさんの野望:2011/09/26(月) 08:14:25.26 ID:lwskI6eR
>>320
RunBatchScriptでお手軽にGMSTを変更するならそのtxtに例えば

SetGS GMSTの名前A 値A
SetGS GMSTの名前B 値B
SetGS GMSTの名前C 値C


みたいに直接コンソールコマンドを連続して書いてもOKです。
340名無しさんの野望:2011/09/26(月) 08:57:22.91 ID:lwskI6eR
>>323
>一回だけ通過するとすぐに元の目標の方へ行ってしまう

TravelとFindは目的を達するとパッケージが終了して次のパッケに切り替わります。
既存アクターにAddScriptPackageした場合は動作が完了したらAddしたパッケは消えて
元々あるパッケが起動、元の場所に帰って行ったりします。
なのでTravelとFindはそういう用途には恐らく向かないです。

でもWanderはLocationをNearReferenceでそのマーカーにしてRadiusを100とか適当に
指定、「MustComplete」をチェックすればいけると思うのですが。

FollowはそんなかんじだでOKだと思うのですが、Wanderがダメなのは少し謎な気が。
上の指定のWanderをコンソールで直接Addして挙動を確かめてみたり。

またMustComplete指定さえすれば絶対大丈夫という訳では無く、例えばそのアクターを
Disable/EnableしたりするとAddしたパッケが消える事もあるのでその辺の確認も。
341名無しさんの野望:2011/09/26(月) 10:46:50.12 ID:OUnE/Nuo
Headメッシュをすこしいじっているのですが、ゲーム画面だと鼻の下に

http://shy.jsphr.net/upload/img/ups31316.jpg

のように光るスジがはいってしまいます。
NifScopeで
Spell → Batch → UpDate All Tangent Spaces
をやってもこの部分だけがゲーム内だとこうなってしまいます。

NifScope、Blenderのどちらで表示させてもこういう風には表示されず、
鼻周りは特にいじってないので何がどうおかしいのか特定できません。
影に入ると少しましになるのでOblivionの光源の反射かなにかだとは思
うのですが・・・なにか解決策はありますでしょうか?

元メッシュはRenHeadです。
342名無しさんの野望:2011/09/26(月) 11:22:26.38 ID:lwskI6eR
>>312
もう解決してるかもですが。
OnHealthDamageで減ったHealthを元に戻したりMagicka等でダメ代替をさせる際に
多分問題になりそうなのは、ダメージの計算がシステム内部では実数なのにModAv2で
指定出来るのは整数、てとこかもです。

例えば毒リンゴで-0.3とかの小数点以下のダメが累積する場合とか。

この場合ModAv Health 0.3としてもHealthは回復せず、ModAV Magicka -0.3としても
Magickaは減らないので、例えば元の値と増減分の小数部だけを予め計算して
桁上がり/下がりを検出してModAv2の値を±1補正したり。近似的ですが。

小数部の値は例えば「その実数値 - Floor その実数値」とすれば求められます。
負数の場合はCeilで。
またGetAVの方は実数値を返します。
343名無しさんの野望:2011/09/26(月) 13:00:22.86 ID:qMGe6W3Q
横から失礼します。
Crowded citiesのNPC達に生活感を与えようと思い
Eatパッケージを組み込んだのですが作動しません。
AI欄に入れるだけではダメなのでしょうか?
344名無しさんの野望:2011/09/26(月) 13:02:02.48 ID:SQT+ZUu7
>>341
「oblivion ミラー 反射」でググると似たような症状の解決法の記事が出てくるかも
後、前スレ721から当たりにも問題画像が削除されちゃってるけど
反射回避の仕方について書いてあるよ
345名無しさんの野望:2011/09/26(月) 13:03:45.52 ID:OUnE/Nuo
>>344
ありがとうございます。見てきます!
346名無しさんの野望:2011/09/26(月) 13:13:01.78 ID:OUnE/Nuo
顔のUV展開はミラーじゃないので原因は他にあるようでした('A`)
347名無しさんの野望:2011/09/26(月) 18:22:10.13 ID:V2KnItLU
>>342
あー、なんか時々機能してなかったのってそれのせいでしたか。
OnHealthDamageだと捕まえれないダメージ判定があるのかと探してました。
ピンポイントでありがたい指摘助かります。
348318:2011/09/26(月) 21:03:42.80 ID:K7aBBDpz
>>338
レスありがとう。

初っぱな特殊なkf見ちゃったのか。
dynamicidle_sleep.kfと同じ様に作りたかったのですがBlenderでdynamicidle_sleep.kfを
読み込み何もせず書き出すとゲームじゃフロアに落ちちゃいました。
Blenderじゃポジションデータが見つからないけど本当は持っているって事なのかな?

とりあえず普通にポジションセットしてベッドで寝るようになりました。
349名無しさんの野望:2011/09/26(月) 22:18:15.00 ID:lwskI6eR
>>348
kfの各キーってオフセットになるNiTransformInterpolatorとキーの実データを格納
したNiTransformDataの二つで構成されてるですよ。

dynamicidle_sleep.kfの場合、Bip01NonAccumはNiTransformInterpolatorのZに
「49.566(Blenderでは1/10)」が入っているだけで、Translationのキーは存在
しないです。

この場合実ゲームやNifSkopeではオフセットだけあればそれが反映されるのに対し、
Blenderの方はキーが無いのでどこにも反映されずに結果0になるみたいです。

そういうkfは他にもあるので、その場合はそのボーンのNiTransformInterpolatorを
見てその値をBlenderではキーとして打てば結局同じ事になるのでそれで多分OKだと
思います。
350名無しさんの野望:2011/09/26(月) 23:03:29.84 ID:lwskI6eR
あと>>304さんの件に関連してアクターのドア使用とFollow、LowLevelProcessing、
Persistentのメモ的な細かい話です。

単にアクターがドアを使う条件、という事なら、NPCは必ずドアを使い、Creatureは
Intelligenceが高ければ(多分30以上。要確認)ドアを使うみたいです。
でもPCにどこまでFollowするかはドアだけでなく他の要素も関係してます。

例えば屋外から街の中みたいなWorldSpace間でFollowするかは、ドア使用の可否に
加えてそのアクターの「LowLevelProcessing」の指定によります。

さらにそのアクターが「Persistent」かどうかで、FTすると一緒についてくるか、
非ロードの状態でもスクリプトで常に参照出来るか(RefがGlobalで永続的か)が
決まります。

参考までにバニラの各指定の使い分けはこんなかんじです。

名前が付いてる普通のNPC→LowLevelProcessingがONでPersistent、
アリーナの対戦相手→OFF/Persistent、
LeveledCreatureで動的に生成される雑魚敵→OFF/非Persistent、
あとBanditHighwayman01等はRefが直接配置してあってもOFF/非Persistentです。
またON/非Persistentなアクターは存在しないです。

ということでなんか逆にややこしくなってしまったかもですが。
また台風の後始末にしばらく戻ります。
351名無しさんの野望:2011/09/26(月) 23:23:53.63 ID:7FQXRJUp
>>341
多分UVを見るとこうなっているはずだからBlenderで左右対称に直せばいいよ
ttp://blog-imgs-30.fc2.com/k/u/m/kumakumakokuma/SS2113.jpg
なぜかここの部分だけポイントがつながってないみたいです
352名無しさんの野望:2011/09/27(火) 00:41:34.46 ID:eB3AOvff
>>351
ありがとうございます!なるほど、そういうことだったのですね。

しかし、なぜか一回エクスポートしたheadメッシュをもう一度インポートしてまたエクスポートすると
くしゃくしゃになってしまうんです・・・もう一回やり直しか・・・('A`)
353348:2011/09/27(火) 18:59:58.42 ID:XildSeGw
>>349
教えてくれてありがとう。

NiTransformInterpolatorに値を設定したところ、Blenderで弄らずとも
ベッドで寝るようになりました。
ただ不思議なことにBlender上でも浮いた状態になりました。
オブリもBlenderも読み込みもっと早ければいろいろ検証できるのになぁ。
354335:2011/09/27(火) 22:19:15.60 ID:iZGTG7u2
以下のようにしましたらループの始め、表情の切り替わり時に起きていた、
パッっと変わるという事がなくなりました。
結局自己解釈になってしまいましたが、どうしても教えられた方法じゃ
できませんでした…orz。

元の顔に戻るで戻されないようにベースとなる希望の表情をセット。
□Text Key key<string>
  Time  float    0.0000
  Value  string    ENUME: Face Fear 1.0 0.0 1.96 0.0
  Value  string    ENUME: Face sad 0.3 0.0 1.96 0.0
  Value  string    ENUME: Face BlinkRight 0.9 0.0 1.96 0.0
  Value  string    ENUME: Face BlinkLeftt 0.9 0.0 1.96 0.0
ベースからもう少し苦しげな感じに。
□Text Key key<string>
  Time  float    0.0010
  Value  string    ENUME: Face sad 0.6 1.0 0.0 0.86
  Value  string    BrowInRight 0.7 1.0 0.1 0.86
  Value  string    BrowInLeft 0.7 1.0 0.1 0.86

教えて下さった方々ありがとうございました。<(_ _)>
355名無しさんの野望:2011/09/29(木) 10:03:41.18 ID:OP90Fmzr
すごく初歩的な質問で申し訳ないのですが、もうお手上げなので・・・・・
一週間かけてここまではできたのですが、NifSkopeでは四角の面が実際のゲームでは尖ったり変形したりしてしまいます。
これは何が原因なのでしょうか?

http://shy.jsphr.net/upload/img/ups31456.jpg
356名無しさんの野望:2011/09/29(木) 11:36:44.70 ID:4bjFGUvA
>>355
ボーンが影響していて、キャラクターのポーズが変わるとそれに引っ張られている。

tona氏が装備のチュートリアルを詳しく解説してくれているので、
こちらからダウンロードして、解説を読みながらまずはTシャツから
作ってみてください。
完成までいけばおおまかな仕組みが理解できるはずです。

oblivion装備mod作成チュートリアル
http://vagueanswers.blog46.fc2.com/blog-entry-13.html
357名無しさんの野望:2011/09/29(木) 12:05:28.25 ID:OP90Fmzr
>>356
レスありがとうございます。
実はそのチュートリアルを参考にしてどうにかTシャツまではいけたのです。(Tシャツっぽい物ですが)
コピーを母体にした場合は普通にできたのですが、新規に板を貼り付けると静止状態でも変形しているのです。
でも、やっぱりボーンの影響ですよね
もう少しがんばってみます。

初歩的な質問にご丁寧に回答ありがとうございました。<m(__)m>
358名無しさんの野望:2011/09/30(金) 21:14:40.16 ID:YzIyFDIk
ゲームでkfが適応されない事で質問させて下さい。

ロダでRigMotionTool 0.1(ups19751)というのを見つけ早速導入したのですが
Exportしたkfがゲームで適応されません。
いろいろ試したところ以下のような結果になりました。

・BlenderのImportでSkeleton.nifを指定しオプションのImport Animationでkfを
指定しImport-Exportしたkfはゲームで適応される。
・Skeleton.nifのみImportしアニメーションは手付け、もしくはライブラリ読み込み
したものは適応されずIdle,kfが再生される。
(mpcにモーション取らせてるんですが、アクティベートできず)

NifScopeではちゃんとアニメーションするのですがどうすれば適応されるデータに
なるでしょうか?
359名無しさんの野望:2011/09/30(金) 23:58:04.26 ID:yjdwPQJL
条件をつけて(例えばstatusが、1の時のみ1時間実行)AddScriptPackage(EatPackage)をしても
効果がないようですが仕様ですか?
360名無しさんの野望:2011/09/30(金) 23:59:50.86 ID:yjdwPQJL
>>359
すいません、補足。
条件をつけたのは、AddしたEatPackageにです。
( statusが、1の時のみ1時間食事するという条件)

1じゃなくてもAddした瞬間食事しちゃいます
361名無しさんの野望:2011/10/01(土) 00:00:41.39 ID:3l+a8BnL
modを作ろうと考えているのですが、敵がたおれている、敵の大きさが〜以下のとき、などの条件指定はできますか?
また、条件指定などについて詳しくのっている説明書的なものはありますか?
362名無しさんの野望:2011/10/01(土) 00:04:27.29 ID:LH/wg3VJ
説明書
■Construction Set 日本語 help
http://shy.jsphr.net/upload/img/ups05912.zip
■The Elder Scrolls Construction Set Wiki
http://cs.elderscrolls.com/constwiki/index.php/Main_Page

OBSE使うならOBSE付属のCommand Documentationを
Script使うMod作ってる人なら基本的に読んでる

あとは内容次第で相談に乗ってくれるさー
363名無しさんの野望:2011/10/01(土) 14:44:05.91 ID:OSm8g+Iw
>>340
遅れましたが、アドバイスありがとうございました
とりあえずwanderの持続時間を延ばしてみたら
居着いてくれるようにはなったので、とりあえずこれでいこうかと思います。
364名無しさんの野望:2011/10/01(土) 18:44:25.29 ID:h6fj+w/P
すいません、質問させて下さい。<(_ _)>
ドレモラ・ヴァルキナズ(Dremora Valkynaz)の山羊のような角を
アミュレットにして好きな髪形で装備できるように作っているんですが、
どうしてもテクスチャがうまく張れず、紫の角になってしまいます。
(こんな感じです→http://shy.jsphr.net/upload/img/ups31565.jpg
ブレンダーを使ってVanillaの小物をアクセサリーにしたり、ある程度まで
弄れるようになったのですが、髪型から角だけ切り取ったものだけは
テクスチャが上手く貼れません。ちなみにNifSkopeで見るとこんな風に
http://shy.jsphr.net/upload/img/ups31566.jpgちゃんと張られています
どなたか原因が分かる方いませんか?
365名無しさんの野望:2011/10/01(土) 19:07:44.40 ID:+kne79FR
意味がよくわからんのだけど

既存のメッシュをアミュレットにするだけなら
テクスチャをいじる必要なんてないんでは
366297:2011/10/01(土) 21:37:16.24 ID:JD65FtFI
>>365
レスありがとうございます! ;;
テクスチャは元々の物を弄らずそのまま利用してますが、こんな状態で
うまくテクスチャが貼られていない状態になってます。

角の模様はちゃんと入ってるからテクスチャは認識されてると思うんですが、
ひょっとしたら透過されて紫になってるのかな…。
髪のメッシュってやっぱりちょっと特殊なんでしょうか?
一つのヘアスタイルに[nif]だけじゃなく、[tri]とか[egm]なんて拡張子の
ファイルがあるし。

バニラの花を加工して髪飾りにしたときは、自分のやった方法でまったく
問題なく作れたので、今回も同じように加工したんですがダメでした。
他にもバニラのアイテムから色々と小物を作ってみましたが上手くいき、
髪を弄ったこの角だけが、なんだか上手くいきません;;
どれだけ馬鹿なのかと笑われるかもしれませんが、一年くらい挑戦してます。
ついに力尽きて、誰かの助け欲しさに質問してしまいました。(´・ω・`)
皆さま、分かる方いらしたら宜しくお願いします。
367名無しさんの野望:2011/10/01(土) 22:08:18.68 ID:LH/wg3VJ
>>366
これはTexture貼れてると思いますよ
元のドレモラの角は髪の毛の一部なので、
頂点カラーが設定してあります
おそらくその辺が作用して、デフォルトのものだと紫に見えるんではないかと

Blenderに取り込んで頂点カラー削除してエクスポートとか
もしくはTexを色味に合わせて弄ると良いんでないでしょうか
368名無しさんの野望:2011/10/01(土) 22:12:54.07 ID:4Xz0hURx
・あまり関係ないかもしれないけど、それバニラの装備なのかな?
  バニラのファイルにそんなパスあったっけ??
 違うならバニラのメッシュやテクスチャでやり直してみては??

・そもそも参照しているBSAの中?のテクスチャは黒いの?

・そのSSのパレットみたいなアイコンのmaterialをクリックすると
詳細情報欄に色反射のカラーのようなものがでてくるけど
それが紫になっていない?

・髪は確かに特殊だけど、materialがhairやskinになっていなければ
勝手に色は変わらないとは思う
triとかegmはアミュレットとして別装備にするなら、使わなくていいと思う
369名無しさんの野望:2011/10/01(土) 22:15:29.55 ID:4Xz0hURx
>>367さんが的確なのかな?

あとは一度nifskopeでobjにしてからやり直すとか
(ただウェイトも消えるので、他のアミュレット装備と同じnifにして
ウェイトコピーしないとゲームで表示されなくなっちゃう)
370297:2011/10/02(日) 00:40:18.48 ID:tCBXBu7e
>>367
レスありがとうございます!
切り貼りにブレンダーを使ってますが、頂点カラーなんて物があるんですね。
UV展開とか、テクスチャ関係はブレンダーを使って変えたことがないので
聞いて今初めて知りました。><
頂点カラーを削除する方法も教えて貰えると有り難いです。

>>368
レスありがとうございます!!
テクスチャのパスは、分かりやすい位置に自分のフォルダを作って格納しているので
違いますが、テクスチャ自身はバニラのBSAから抜き出してそのままリネームしたものです。

>・そのSSのパレットみたいなアイコンのmaterialをクリックすると…
↑この情報とてもありがたかったです、一歩前進しました!
言われたとおりNiMaterialPropertyを開いて、4つの丸のうち下の二つ
[Specular Color]と[Emissive Color]が両方とも黒になっていたので
白の方にスライダーを動かしたら角が紫色じゃなくなりました。^^
でも「出来た!」と思ってゲーム内で確認すると、まだ紫のままでした;
(慌てず、ちゃんと「save as...」で保存したもので確認しましたが…)
教えてもらったことをよく調べて、もう一度頑張ります。><
371名無しさんの野望:2011/10/02(日) 01:00:54.22 ID:w6QWH+IK
>>370
http://shy.jsphr.net/upload/img/ups31577.jpg

頂点カラーはMesh自体に色味を付ける手法です
コレが無いとキャラメイクの際に髪色を変化できなくなります
他、装備品とかClutterとかStatsでも、のっぺりとしたTextureに陰影をつけたりとか
使い道は色々です
372297:2011/10/02(日) 02:53:12.27 ID:tMkethdM
>>371
わぁ〜〜ん!!!わざわざこんな事やらせてしまってすいませんっ!!
ありがとうございます!!でも、やってみたらこんな事になっちゃいました。
http://shy.jsphr.net/upload/img/ups31585.jpg
http://shy.jsphr.net/upload/img/ups31586.jpg
テクスチャが面の一つひとつに貼られてこうなってしまってるので、どこかで
一作業し忘れているんだと思うんですが、ちょっと、もう少し調べて何とか
やってみたいと思います。自分が、あまりに不甲斐なくて泣けてきます('A`);
でも、助けてくれてありがとうございます!(>д<)
373名無しさんの野望:2011/10/02(日) 11:13:32.98 ID:TDjegAZR
現在二刀流な装備を作成しようとしているのですが、右手(剣)と左手(盾扱いの剣)のモデルを、それぞれ抜刀/納刀の状態で切り替えたいのです。
右手に装備する剣については、TonaさんのGradriels Armorの剣のスクリプト(抜刀/納刀=剣状態/妖精状態)をお借りすることで実現できました。
しかし、盾の場合に関してはこのスクリプトでは上手くいきませんでした。
左手に装備する盾を抜刀/納刀状態でモデルを切り替えるには、どのようなスクリプトが必要になるのでしょうか?
374名無しさんの野望:2011/10/02(日) 11:33:45.52 ID:w6QWH+IK
>>372
一個上のUV設定も消してるからかな、下の×が頂点カラー削除の×です
まるがちとでかかった

>>373
盾装備をIsWeaponOutで切り替えればおkと思います
上手くいかなかったScriptを貼ると、分かる人が教えてくれるんじゃないカナ
375名無しさんの野望:2011/10/02(日) 14:09:41.49 ID:TDjegAZR
武器の場合はIsWeaponOutで問題ないようでした。
それで盾も同様でいけるかと思ったのですが、同じスクリプトでは無理なようでした。

一応以下のScriptで右手剣の抜刀/納刀は問題ありませんでした。
長くなるのでロダにテキストで。
http://loda.jp/tamanegiii/?id=615
376名無しさんの野望:2011/10/02(日) 14:27:36.47 ID:qM5VtT44
tesnにそういう武器盾セットがあったと思うよ
377名無しさんの野望:2011/10/02(日) 14:48:40.08 ID:0A+GT3O9
CSスクリプトの編集で困っています。
以前、BoSSYojimbo氏のYojinbo gear内にあるヘルメットスクリプト(暗視,生命探知,ステルス機能)を
機能縮小・改変して自分用の別modアイテムに移行していました。

今回これを機能拡張・改変させようと思ったのですが
スクリプトを弄ってもセーブ時にinvalid begin/End block structureのエラーが出ます(エラーが出たのはElseif文のライン)
エラー指定されたライン付近は何も弄ってはいないのですが・・・・
確認のため改変元のmod(Yojinbo gear)のスクリプトを開いてセーブしてみても同様のエラーが出ました。(invalid begin/End block structure on line 21)
長いことスクリプト弄ってなかったので、なにか見落としているかもしれませんが
CSも最新版のOBSEから起動してますし原因がよくわかりません。

改変元はこちら
http://www.tesnexus.com/downloads/file.php?id=14291
スクリプト文を載せたほうが良いでしょうか。
378名無しさんの野望:2011/10/02(日) 15:18:26.70 ID:UcgXnQdM
>>377
ノーマルのCSは構文チェックが甘いからエラーになるべきものがならない場合ががる。
OBSEのは構文チェックが堅いからエラーになる。
ノーマルのCSでコンパイルするか、該当箇所を直す必要がある。
すぐに直せるレベルだろうから該当箇所を直すのを勧めます。
379名無しさんの野望:2011/10/02(日) 20:42:56.36 ID:dQOScfMN
装備MOD制作チュートリアルを読みながら他の方々が作った武器を試しに配置してみたのですが
Jounks Polearmsの様に、店頭で買える、NPCが使用してくる、ランダムでエンチャントが付加されるようにするにはどのようにすれば良いのでしょうか
380名無しさんの野望:2011/10/02(日) 21:45:19.39 ID:KBbRk6rg
>>379
以下ページに、自作アイテムを売らせる方法について書かれています
簡単に言えば、箱に入れて商人と結びつける
http://cs.elderscrolls.com/constwiki/index.php/How_To_Add_Objects_For_Sale

NPCに持たせるのは、多分敵が使ってくるようにしたいと思うのだけど、LeveledItemに追加しておく
Jounks PolearmsがどのLeveledItemに入れてるのかを確認して、真似すればいいと思う

エンチャントについては、予め何パターンかのエンチャント付きの武器を作っておくのが普通かと
381297:2011/10/02(日) 22:15:55.61 ID:+GSZl5RB
>>374
ありがとうございます!とうとう立派なアイテムが作れました♪

>まるがちとでかかった
はい、ちょっと(笑)でも、頂点削除だけ試したらできました!!^^
本当にありがとうございました。>>371番で頂いた画像は宝物として大切に
保管しようと思います。笑
382名無しさんの野望:2011/10/03(月) 04:04:57.16 ID:VgP+ZbUu
>>380
ありがとうございます
大変分かりやすく助かりました
383名無しさんの野望:2011/10/03(月) 06:44:42.83 ID:f0SgJ+iA
パイプスモーキングMODで喫煙中になる喫煙状態のステータスに能力値の上昇やデメリットを付与したいのですが
CSで付属のESPファイルを弄れば可能でしょうか?
また、可能であればどの辺りを弄ればステータスを編集できるのでしょうか?
384名無しさんの野望:2011/10/03(月) 08:11:42.49 ID:ZEnj+nzp
スクリプトについて質問なのですが
今までaddallitemを使って所持品を一括で移動していた部分を
所持している装備品だけ移動するように変更したいんですが
そういうスクリプトはどう書けばいいでしょうか?
385名無しさんの野望:2011/10/03(月) 12:06:03.51 ID:OnzKoFEJ
>>383
パイプスモーキングModがどんなModかは知らないけど
パイプを使うと専用モーションが出るModなのかな?
その前提なら、そのモーション開始を書いてるscriptの部分に何かのフラグを立てておいて
フラグがONになったらPCにMagicEffectをAddspellすればいいんでね

>>384
OBSEの配列を使うのが楽かな…
GetItemで装備を指定して持っている装備品を取得
loopさせてそれぞれについてで移動処理でいいんじゃない
386名無しさんの野望:2011/10/03(月) 16:34:24.54 ID:t25fzVxB
各都市の衛兵を種族変更&女性化したいのですがうまくいきません。
Femaleにチェックを入れても声も体も男のままです。ニューゲームでもだめでした。
変更先の種族の声は男女ともImperialですし、ガードの会話音声は女性分もbsaに入っていますよね…
女性ガードは存在するのにどうして変更が反映されないのでしょうか?
387名無しさんの野望:2011/10/03(月) 18:53:14.76 ID:ZDUEBv6i
>>386
新しく始めても反映されないのは妙ですね
確認ですが作ったMODをOBMM等で読み込むようにチェック入れてますか?
他のMODで上書きしてる場合もあるので、ロード順を上のほうに変えていたら
一番下にして確認してみて下さい
388名無しさんの野望:2011/10/03(月) 23:06:42.89 ID:1oiFSymO
ガードは特殊な属性でimperial以外はダメじゃなかったか。
ほかの種族で作っても、おそらく逮捕することができないと思う。
それとOOOなどにみられる女ガードは逮捕の声などはあるけど(たぶんDBのクエストで使ってるから)
道案内とか雑談に近い会話の声は収録されてない。
OOOは出来るだけそういう選択肢は選べないように改変してるが、それでも一部無音になる。
389名無しさんの野望:2011/10/03(月) 23:11:27.44 ID:U5J0X0I5
>>387
下水からはじめていました。牢屋からはじめたら反映されました。
基本的なことで申し訳ないです…ありがとうございます。

>>388
おっしゃるとおり、殴っても逮捕されませんでした。
スタップボイスを反映させるにはどうすればよいのでしょうか。
ドラコニス末娘のボイスを指定していけばいいのですかね?
390名無しさんの野望:2011/10/03(月) 23:50:32.39 ID:U5J0X0I5
Quest:Crimeの、ガードのGREETINGの中のスタップダイアログの条件に
GetsRace=追加種族 を加えていけばよい?ですかね
あるいは追加種族をImperial扱いにするか…

どなたか知恵を貸してくださいませんか
391名無しさんの野望:2011/10/04(火) 01:41:45.72 ID:0Ym1P0MU
>>378
なるほど
Elseif文自体は問題ないと思っていたのですが
その前にif/Endif文が完結してあったのでElseが認識されなかったようですね。
ありがとうございます。

その他に、召喚装備魔法(Bound)/ミシックドーンの変身魔法形式で
任意の武具を装備する魔法(時限式)を作りたいのですが
これは装備/時限のScriptを自分で作成するしかないのでしょうか(game play-magiceffects内を編集すればいいのかも
しれませんが、既存effectを弄るとブラックアウトするし、どう編集すればよいのやら....)
試しに以下の構造でスクリプトを編集してみたのですが
時限カウントの部分がよくわからず、うまく機能しません
Scriptname HenshinScript
ref Me
float Timer ; そもそも時間の経過を図るのはTimerでよいのだろうか
Begin ScriptEffectStart
player.addItem ElvenCuirass 1 ;テスト用にElvenCuirassを指定しています
player.equipItem ElvenCuirass 1 ;ここまではうまくいくのですが,,,

set Timer to Timer + GetSecondsPassed ;count開始(?)

If (Timer > 10) ;テスト用に10秒に設定、実際は一分にする
Set Me to GetSelf
If ( Me.IsSpellTarget aHenshin02 == 0 )
Me.AddSpell aHenshin02 ;Spell aHenshin02装備解除で(unequipとremoveitem)+timerリセットを行い終了します
message "run";この文が表示されないためおそらく set Timer to Timer + GetSecondsPassed以降がおかしい?
Endif
Endif
End

Script以外の方法でも可能なのでしょうか?
392名無しさんの野望:2011/10/04(火) 01:48:38.29 ID:kMl1faPS
>>391
Begin ScriptEffectStartは、スクリプトエフェクトが追加された時に一度しか走らないので、
Begin ScriptEffectUpdateで効果が有効である間繰り返し実行され続けるブロックに入れる必要があります。
393名無しさんの野望:2011/10/04(火) 05:28:46.81 ID:rtYX8HSV
>>390
GetIsRaceで種族を追加していく形でokです
ボイスに関しては弄ったこと無いので未確認ですが、まずCrimeがキチンと動作するようにした上で
種族の声をimperialにすればいける気がする (音声ファイル自体が用意されてない物は無理ですが)
394名無しさんの野望:2011/10/04(火) 14:14:35.02 ID:Od+6pmUY
>>393
スタップ成功しました。声もちゃんと再生されました。ありがとうございます!
GetIsRaceのImperialと追加種族をORにしたらいけました。

本当にありがとうございます!
395名無しさんの野望:2011/10/05(水) 22:35:58.80 ID:UekxbKfH
質問なのですが、SetName や CopyName でアイテムの名前を変更した場合、
ゲームをロードしたり、ゲームを終了すると名前が戻ってしまうのでしょうか?

SS/MOD晒しスレでテレポート魔法をアップロードしたものなのですが、
テレポート地点登録の際に GetParentCell で地名を取得して、適当なダミー
アイテムにref変数を割り当てて、SetNameEX や CopyName などでアイテム名を
変更して地名を表示させています。

しかし、データをロードしたりゲームを終了して再起動すると、アイテム名が
CSで最初に設定したものに戻っています。これは仕様でしょうか??

何かわかる方がいらっしゃいましたらよろしくお願いいたします。
396名無しさんの野望:2011/10/05(水) 22:49:20.63 ID:mC8CjySE
>>395
仕様ですね
対策として思いつくのは2つ

1つは、GetGameLoadedやGetGameRestartedを使って、再起動時に名前を設定し直す

もう1つは、これは多分ですけど、CloneFormで作ったクローンアイテムはセーブデータに情報が保持されるので、
再起動時に名前が元に戻ったりはしないと思う
ということで、ダミーアイテムとして、クローンアイテムを使う
無限にクローンアイテムを生成することがないよう気を付ければ、こちらが楽ですかね
397名無しさんの野望:2011/10/05(水) 22:52:30.40 ID:5zUwzf/g
>>395
> 質問なのですが、SetName や CopyName でアイテムの名前を変更した場合、
> ゲームをロードしたり、ゲームを終了すると名前が戻ってしまうのでしょうか?
いいえ

> SS/MOD晒しスレでテレポート魔法をアップロードしたものなのですが、
> テレポート地点登録の際に GetParentCell で地名を取得して、適当なダミー
> アイテムにref変数を割り当てて、SetNameEX や CopyName などでアイテム名を
> 変更して地名を表示させています。
>
> しかし、データをロードしたりゲームを終了して再起動すると、アイテム名が
> CSで最初に設定したものに戻っています。これは仕様でしょうか??
仕様。

とりあえずSetNameとSetNameExの違いを調べるといいと思う。
398名無しさんの野望:2011/10/05(水) 23:09:59.74 ID:UekxbKfH
ありがとうございます。

>>396
再起動時に名前を設定し直すにも、その文字列をどこかに保存しなくてはならない
のですが、それに困っています。まだ試していませんが、アクターの名前とかでも
やはり保存されないのでしょうか…。

クローンアイテムは使えそうです。クローンアイテムにスクリプトを添付して
GameModeでRemoveMeとかすれば、いくら作っても不要なものはプレイヤーの近くに
MoveToすれば消えて自分で完結してくれそうですね。試してみます。

>>397
SetNameなら名前を保持するというニュアンスを含んでいるように見えますが、
探し方が悪いのかCS Wikiの関数のページでは該当箇所を見つけられませんでした。

…OBSEって「string_var」で文字列の変数使えたんですね…勉強不足でした。
これも試してみたいと思います。
399名無しさんの野望:2011/10/06(木) 07:48:24.02 ID:zXPAtS7O
>>392
返信が遅れました
ご回答ありがとうございます。
前回のスクリプト文の
...
player.equipItem ElvenCuirass 1
以降にBegin ScriptEffectUpdateを加え、テスト用に以下の修正を行いました。

begin scripteffectupdate
set timer to timer - getsecondspassed
if timer < 0

player.unequipItem ElvenHelmet 1

 message "成功"
 endif
 end
この条件下では動作確認できました。
しかし、 - getsecondspassedを+getsecondpassedへと変更し
if timer > 5に設定して再度テストしたところ、begin scripteffectupdate以下の動作が見られませんでした。
- getsecondとif timer < -5でも試しましたが同様です。
なぜカウントが行われないor認識されないのでしょうか?
またtimer-getsecondspassed文のカウントとは秒数カウントではなく別の数値カウントを使用するのでしょうか
400名無しさんの野望:2011/10/06(木) 08:01:48.12 ID:orNgBfD1
>>399
ループさせる必要があるんじゃないかな
その状態だと時間が来る前にset timer to timer + getsecondspassed
してしまうはず
401名無しさんの野望:2011/10/06(木) 09:41:46.07 ID:4USmCTa9
>>384
遅レスですが。
お手軽にはOBSEのforeachでインベントリ内容を順次判定してRemoveMeIRでも。
RemoveMe/RemoveMeIRってRemoveAllItems同様アイテムの状態を保ったままコンテナ間
の移動が出来ます。
foreachはOBSEのCommandDocumentationにサンプルが。
402名無しさんの野望:2011/10/06(木) 10:08:25.55 ID:4USmCTa9
>>399
横からですが。
そのSpellのScriptEffect→Durationにはこの場合5(秒)より大きな値が入ってます?
そこが例えば0だと時間が来る前にスクリプトが即終了してしまうと思います。

で、Spellの時限動作だけに限るなら、より簡便にはそのDurationに好きな秒数を
指定してScriptEffectFinishブロックで終了の処理、で良さそうな気が。

あと、召還武具って時間以外の色々な要素、例えばに脱ぐ/捨てようとした時、
クエや監獄で持ち物が全部無くなる時、何かでSpellが消えた時等の手当てが恐らく
必要になるので、Spellの時間以外の仕組みも恐らく必要に。
403名無しさんの野望:2011/10/06(木) 10:48:17.85 ID:4USmCTa9
>>398
これも横からですし実際のMODはまだ拝見してないのでなんか見当違いかもですが。

アクターのNameについては「SetActorFullName "新しい名前"」で変更は保存されます。
でもこれ引数に変数は使えないと思いますが。
またCreateFullActorCopyしたアクターに対してはSetName/SetNameExは保存されます。
多分。
CloneFormはそれと恐らく内部的に同じ事な気が。

あと、Create〜したアクターのRefはPersistentなので遠くからMoveTo可です。
なのでもしマーカー用オブジェを色々移動して位置に応じてそのNameを変える、的な
事ならCreate〜したアクターでいけるかもです。

単に文字列の保存だけでOK、という事ならstring_varそのままでOKだと思います。
404名無しさんの野望:2011/10/06(木) 12:45:58.67 ID:DccI/pbf
プレイヤー周辺のアクターのIDを取得する方法はありますか?
または、戦闘中のアクターのIDを取得する方法でもいいです。
ご教授お願いいたします
405名無しさんの野望:2011/10/06(木) 13:08:12.81 ID:/Rb6zqIJ
406名無しさんの野望:2011/10/06(木) 13:45:51.19 ID:DTxCWorI
http://shy.jsphr.net/upload/img/ups31738.jpg
CSで地形に時々しかこんなかんじの陰影がつかないのですが普通は常についてるものでしょうか
407名無しさんの野望:2011/10/06(木) 19:00:30.73 ID:DccI/pbf
>>405
返信ありがとーです。
早速試してみます。
408398=398:2011/10/06(木) 21:21:02.65 ID:bcpCRufq
いつも本当にありがとうございます。ご助言、いつも非常に的確です。

結局、文字列を扱う変数のstring_varを使って解決してしまいました。Copyされた
アクターの挙動の詳細な説明、ありがとうございました。今後に活かしたいと思います。

テレポート地点のマーカーとしてコピーしたアクターを使えば、セル名もいつでも
取得できるし便利なのですが、今回はプレイヤーが任意でマーカー名を変更できる
ためにこの利点がなくなり、マーカー登録時だけ取得すればよかったため文字列変数
を使うことにしました。初めて使いましたが、とても便利でびっくりです。

バグは解決したのですが、新機能を追加してからアップしたいと思います。
ありがとうございました。
409名無しさんの野望:2011/10/06(木) 23:47:00.00 ID:oJaTJKEF
すみません、初歩的なつまづきなんですが手がかりだけでも得られればと思い。
CSを使って既存MODのクエストスクリプトに新しく変数を追加したのですが、ゲーム内で反映されず困っています。
追加したのはshort変数で、CSではエラーも無く保存出来るのですが、ゲーム内のコンソールで確認しても(SQV クエスト名)
クエストは開始しているのですが追加した変数は見当たらず。コンソールからのクエストの停止・開始、MODのクリーンインストールも
試して見ましたが効果無しでした。
自分では可能性が思いつかず、ご指摘アドバイスが頂けたらと……
410名無しさんの野望:2011/10/07(金) 00:00:45.53 ID:2l3p8IVo
>>409
その状態でゲーム内コンソールから

  show クエスト名.変数名 ;←クエスト名と変数名の間はドット(ピリオド)を置く

と入力しても出ないなら、どこか根本的に間違えてるんじゃないかと思います…

・QuestScriptを作り
・自作Questに貼り付け
・クエストが走っている
などを確認してみてください…

411名無しさんの野望:2011/10/07(金) 00:32:10.57 ID:GpFfNkyS
>>410
ありがとうございますー
コンソールからコマンドを打ち込んで見ましたが、やはりそんな変数も関数もねえよ!と言われてしまいました。
変数設置するだけの話なので、自分の中に何かとんでもない思い違いがあるんだと思います。
少し気を落ち着かせて取り組んでみます……
412名無しさんの野望:2011/10/08(土) 20:00:00.02 ID:YbCZBYM6
>>400
>>402
返信ありがとうございます。
あの手この手試してみましたが中々うまくいかず・・・

時限式ではなくスイッチ切り替え式に変更しようと思います
ご助言ありがとうございました。
413名無しさんの野望:2011/10/10(月) 08:35:32.60 ID:2XX4cfJ/
もういいのかもですが。
この場合時限式は多分アイテム側で処理すれば単純で済むと思うですよ。

例えばSpellでは装備をAdd→Equipするだけにして、装備側のGameModeで
GetSecondsPassedで経過時間を見てRemoveMe、みたいなかんじで。
同時にGetEquippedの判定もすれば脱ぐ/アイテム移動の対策にも。
またDrop対策はお手軽にはその装備をQuestItemに。

厳密ではないですがそれで実用上は多分いけると思います。
あと視覚効果や音を出したり武器を自動で構えたりするならまた別な手当てが必要に。
414名無しさんの野望:2011/10/13(木) 05:10:41.66 ID:7igkKAQA
Alecu aka Cold BloodさんのHGEC Elegant Dressみたいに頂点数が多いものをblenderでエクスポートするにはどうすればいいですか?
自分でやろうとするとエラーでてできないので・・・
415名無しさんの野望:2011/10/13(木) 20:21:16.93 ID:jARxumRg
クエスト作成のときで例えば「Queststage20に更新してからから一日経った時点でこのGreetingが出る」
みたいなスクリプトはどう書けばいいのでしょうか。

csでパラノイアクエストを見た限り「set ms38lastContact to ms38.contact + 1」
がそれっぽい気がしたのですが、どなたか御教示願います。

後CShelpに「set myVar to GameDaysPassed」という式があったのですがこれの意味も御教えいただけると幸いです
416名無しさんの野望:2011/10/13(木) 22:40:42.80 ID:zdGPKcrk
>>415
GameDaysPassedはニューゲーム開始してからの経過日数

1日経ったらstage30にして、stage30を会話の条件にしてはどうかな
会話の条件設定はできる?として、1日経つのをチェックしてstage30にする方法を書きます

まず、MyQuestのクエストスクリプトを以下のように
short startDay

begin GameMode
  if(GetStage MyQuest == 20 && startDay + 1 <= GameDaysPassed)
    SetStage MyQuest 30
  endif
end

あとは、stage20のResultScriptを、set MyQuest.startDay to GameDaysPassed としておく

これ厳密には、日付が1回変わったら、という条件なので真夜中近くでstage20になったら、すぐに30になります
厳密に24時間をチェックしたければ、GameHour(現在時間)も使う
1日以上とアバウトでいいなら 、startDat+ 2 <= GameDaysPassed かな
417名無しさんの野望:2011/10/13(木) 23:29:39.99 ID:jARxumRg
>>416
ありがとうございました。試してみます
418名無しさんの野望:2011/10/14(金) 00:49:14.57 ID:0D/8TbTd
質問です。
本スレ>>124を見て自分もMazo-gaの美化を試みました。
美味くキャラクターの美化は出来たのですが、
どうしてか、Mazo-gaをアクティベートしても一切の会話がなくなります。


改変の手順としては、次の手順で行ったのですが、どこに問題があるのでしょうか?
・CSでOrc種族のコピーを作成、meshなどを変更。
・CSのNPCのOrcの一覧にあるMazo-gaを作成したコピー種族に。
・saveしてesp化。
以上です、よろしくお願いします。
419名無しさんの野望:2011/10/14(金) 00:58:16.92 ID:iGa4U1Iq
種族変えて会話が無くなるなら、
会話TOPICの条件に種族Orcを指定してるとこでもあるんでね
420名無しさんの野望:2011/10/14(金) 01:43:03.05 ID:ahzMvu8q
コピー種族がplayableじゃない場合、おかしくなることがあるな
421名無しさんの野望:2011/10/14(金) 08:33:43.11 ID:rYDWAnsF
>>414
そのモデル個別の事は分かりませんが、頂点数の問題ならStripifyGeometriesを
OFFしてみたり。
それかObjectが複数あるならObject単位でExportしてNifSkopeで一つにしたり。
目的のObjectとボーンだけを残して後は全部DelしてExport、NifSkopeでそのnifの
NiTriShape/StripsをCopyBranch、まとめる先のnifのSceneRootにPasteBranchで多分。
422名無しさんの野望:2011/10/14(金) 08:52:37.65 ID:rYDWAnsF
>>418
手順的にはそれで。
Mazoga関係のクエ自体は本人のRaceとは関係無く動きます。多分。

もしActivateで「I HAVE NO GREETING」て出るならRace→TextDataのPlayableをONに。
またRace→GeneralData→FemaleVoiceが「Nord」以外だとMazoga特有のセリフの音声は
出ないです。字幕がONなら文字は出ます。

あとMazogaって元々関連クエが全部終ると同じGREETINGを返すだけで会話は
一切出来なくなります。
423418:2011/10/14(金) 17:49:51.72 ID:0X1UV2qj
>>419-422
ありがとうございます。

CS内を色々見てみたのですが、
スクリプトはまだよく理解出来てないので、他の方法を探しました。

過去スレにやり方が書いてあった
beauty mazo-ga.espを触ったら目的の物が完成しました。
424297:2011/10/15(土) 02:29:24.91 ID:SZ5cYVh7
今NPCの仕草に音をつけようとしているんですが上手くいきません。
 具体的には、座り中のNPCがたまにIdleでアクビしてたりするのに
「ふぁ〜〜あ…」的なボイスをつけるとか、FO3(知らない方ごめん)
みたいに、就寝中のNPCがいびきをかいたり。そうゆうのをやってます。
 NPCがパッケージのEAT時に「もぐもぐ…ゴックン」の音がするから
(EAT音はOblivionのバニラのデータSound/FXのどっかにwavで入ってます)
たぶんアクビに音つけるのも出来るんじゃないかと思うんですが、
思い当たるところを全てチェックしてもどこで音声が添付されてるのか
わかりません。ご存知の方いたら教えて下さい。
425名無しさんの野望:2011/10/15(土) 11:34:23.72 ID:x8a39mh3
>>424
方法1:
kfファイルのNiTextKeyExtraDataにあるText Keysでタイムラインに合わせて指定します。
書式は
  Sound: 音のリファレンス

方法2:
Scriptで適当にタイミングを見計らって
  NPCのリファレンス.playsound3d 音のリファレンス
で鳴らします
426名無しさんの野望:2011/10/15(土) 12:03:34.93 ID:WM6A9f3e
>>424
あれ297? それはともかくモーション自身に音付けれなかったっけ
どこかで見た気がするだけなので、外してたらゴメン

私からも質問なのですが、ロード画面の検出ってどうすれば出来ますか?
GetObjectTypeのLoad Screenがそれっぽいですが
refをどうやってもってくるのか分からず詰まってます
427名無しさんの野望:2011/10/15(土) 12:08:11.80 ID:xcvV8lnI
Begin MenuMode 1038
428名無しさんの野望:2011/10/15(土) 12:09:51.65 ID:xcvV8lnI
各Load画面ならIDそのまま引っ張ればおkなんでね
何に使うのかよくわからんけど…
429名無しさんの野望:2011/10/15(土) 12:33:12.90 ID:x8a39mh3
>>426
ロード画面が出たかどうかの検出?
であれば>>427
Begin menumodeブロック内で
if ( GetActiveMenuMode == 1038 )
をチェック

何が出ているかをチェックするなら
set hoge to GetActiveMenuObject 1038
if ( hoge )
;;;取得成功
Endif
set hoge to GetActiveMenuRef 1038
if ( hoge )
;;;取得成功
Endif

みたいなことを試してリファレンスが取れるか試験したらいいんじゃないかな
(上記はコンパイルしてないので動くかどうかは不明)
430426:2011/10/15(土) 12:42:57.25 ID:WM6A9f3e
すいません リロードしてませんでした

>>428
クエストスクリプトでループ処理させてて
ロード画面が出たらループを抜けるようにしたいのですが
ロード画面のrefって拾えるのかなと疑問に思ったので
Begin MenuMode 1038だとループ途中で挟めないですよね?

>>429
ありがとうございます 時間が出来次第試してみます
431名無しさんの野望:2011/10/15(土) 15:42:51.69 ID:f/YXUQwC
LandScapeEditingで地面のテクスチャを塗りなおしていたのですが
とある場所を境にこのように
http://shy.jsphr.net/upload/img/ups32042.jpg
くっきりと芝生のテクスチャが塗れなくなってしまいました
地面テクスチャはある程度塗ってしまうと塗りなおせなくなってしまうのでしょうか?
432名無しさんの野望:2011/10/15(土) 16:12:58.86 ID:0PiEAjbQ
>>431
一つのセルに使えるテクスチャの数が決まってるんじゃなかったっけ
だから窓から選択するより地面からスポイトして塗るのが推奨されてたような
433名無しさんの野望:2011/10/15(土) 17:41:40.23 ID:f/YXUQwC
>>432
ご回答ありがとうございます
なるほど使用できるテクスチャの数が決まっているんですね
スポイトと共にその辺りも詳しく調べてみます
434名無しさんの野望:2011/10/15(土) 23:56:02.05 ID:DGAcNWK+
「Load画面」てEsc→Loadの選択画面なのか、NowLoadingの「LoadScreen」の事なのか
どっちなんでしょね。

でもいずれにしろGameMode中に直接「今どのMenu画面が出ているか?」みたいな判定は
構造的に元々出来ないので、MenuModeブロックを作ってその中に必要な処理を書くか、
それかフラグ変数にでも値を入れてそれをGameModeで常時監視するか、
みたいな方法になる気が。
435名無しさんの野望:2011/10/16(日) 00:05:08.49 ID:1t5mErJm
あとちょうどMenuModeに関連して超細かなメモ的な話ですが。

関数の「MenuMode」って例えば「if(MenuMode 1002)」とした時に今が1002でもMenuを
終了する時に一度偽になるみたいです。

以前出たスクリプトで召還武具を作る話が少し気になって実際に細かいとこまで
作ってみて気付いたのですが。
これ状況によっては嵌まるかもですし、逆に便利に使えるかもです。
細かい話ですが。
436297:2011/10/16(日) 00:26:22.40 ID:AJb54yeA
>>425
遅レスすいません、kfファイルに直接音をつけられるんですか!
CSを開いて結構隈なく見たんですけども分からなくって…
kfファイルは動きのデータだけだと思い込んでたのでびっくり。
教えて頂いてありがとうございました!

>>424
以前297で質問した者です、別の話なのに紛らわしくてすいません!

>モーション自身に音付けれなかったっけ
どうやら付けられそうです!教えて下さってありがとう!
ちなみにロード画面の検出の質問、、、考えたけどお役に立てなくて;
教えてもらうばかりで来てしまってすいません。
私も、もう少し人の役に立ちたいなぁ;
437436:2011/10/16(日) 00:33:20.06 ID:AJb54yeA
連投すいません、番号間違えました!
>>424 ×
>>426 ◎
426さんへのレスです。424は自分でした;
438414:2011/10/16(日) 04:43:10.14 ID:yuzW6mmr
>>421
StripifyGeometriesのオフでエスポートいけました
ありがとうございます
439名無しさんの野望:2011/10/17(月) 20:28:30.62 ID:cz5UHGJ1
髪テクスチャ等のddsファイルを
irfanview等のビューワで覗いた場合と比較して
GIMPで開くと、髪のテクスチャが全てではなく
一部分の房だけしか表示されないものがあります

「RenHair01_hl」なんかがそうかとも思います

レイヤーというものかとも思うのですが
レイヤー窓にはミニマップしか表示されません

Gimpで、初期状態では表示されない部分も含めて
全ての部分をいじるにはどうすればいいのでしょうか?
440名無しさんの野望:2011/10/19(水) 10:56:04.52 ID:WBh+8kr0
スクリプト弄り始めの初心者です。

scn scnname
array_var ar
Begin Function

の"ar"を、初回初期化して、次回以降呼ばれたときには初期化された値を
使いたいのですが、"array_var ar" をStatic属性にすることは出来るのでしょうか。
"Invalid array access - the array was not initialized" のエラーが出ていて。。
宜しくお願いします。

(質問の意味が不明な場合、申し訳ありません。
言語はDOSの頃のC言語くらいだからマルチタスク?
は理解に苦しんで・・・)

441名無しさんの野望:2011/10/19(水) 13:12:39.06 ID:eQC1giCr
>>440
Quest用スクリプト内で宣言してある変数はStatic扱いになるよ
442名無しさんの野望:2011/10/19(水) 15:54:21.81 ID:CNpzs49L
先駆者のみなさん
頼むスクリプトの解説サイト作って!
443名無しさんの野望:2011/10/19(水) 16:39:03.47 ID:wHbJsB3V
CSwikiがあるだろうに
444名無しさんの野望:2011/10/19(水) 16:52:30.28 ID:6z/grnNf
正直その程度のやるきだとどうせ続かない
445名無しさんの野望:2011/10/19(水) 17:49:47.64 ID:ZxtKuMS3
CSwiki辿りつけなかった時点で、永遠にPC閉じてた方がいいレベル
446名無しさんの野望:2011/10/19(水) 18:53:39.30 ID:WBh+8kr0
>>441
ありがとう御座います。 やってみたんですが、ていうか未だに解らない部分で、、、
他のScriptを見よう見まねで以下のようにしたら

scn questscript
array_var ar
ref aar
Begin GameMode
 set aar to ar
 ・・・・・・・・・
end
----------------------
scn scnname
ref aar
Begin Function
 let aar[0] := me
 ・・・・・・・・・
end

のようにしたら、"Invalid operands for operator [" とエラーが出ます。
お手数ですが、refの使い方をご教授ください。
447名無しさんの野望:2011/10/19(水) 19:00:18.52 ID:WBh+8kr0
なにをやりたいかというと、特定の場面で一定範囲内のNPCを登録しておき
順次処理していくというものです。

let r := GetParentCell
let r := GetFirstRefInCell r 69 2
while r

 let aar[?] := r
 let r := GetNextRef
loop

で有効なNPCを選択し登録していきます。
宜しくお願いします。
448名無しさんの野望:2011/10/19(水) 19:08:09.26 ID:FMA+1gvn
>>446
arrayは初期化(メモリ割り当て)が必要です
例: let ar := ar_Construct Array

あと、ref変数には配列への参照を代入することは出来ません。
array_var自体が配列用のポインタみたいなものなので、
同じ配列データへの参照を別の変数に代入するならそっちもarray_varで宣言します。

まずはOBSEに付属のobse_command_doc.htmlに目を通すことをお勧めします。
構文等のリファレンス、基本的な使い方やサンプル等が載っています。
449名無しさんの野望:2011/10/19(水) 19:14:35.06 ID:WBh+8kr0
>>448
ありがとう御座います。
obse_command_doc.html は良いですね。
CS Wikiは探し物に到達できなくてorz
本当に助かりました。
450名無しさんの野望:2011/10/21(金) 20:09:50.58 ID:oZXbAYhz
雑談なんですが。

Skyrimが出た際には既存のOblivionのMODがどこまで使えるか気になります。
もちろんそのまま使うことはできないしょうが、例えば世界に配置している
(従ってSkyrimでは存在しえない)アクター・オブジェクトを除いたりなど、
Skyrimで仕様が変更された要素だけを取り除き、それ以外は流用できたり
すればコンバートが楽になりそうです。

どこまで仕様変更されるかわからず、自分は多分スクリプト丸ごと、または
その一部の切り貼りだけになるような気がします。アクターは構成パラメータ
が変わるかもしれませんし、クエストも要素の追加とかありそうです。

OblivionとSkyrimで同じ仕様の部分があるなら、そこだけを残して後は自動
削除するようなツールがあれば助かりそうですね。でもスクリプトくらい…?
Oblivionにしか存在していないものが指定されている場合、Skyrimでの
デフォルトのものに指定し直してくれる…とか?
451名無しさんの野望:2011/10/21(金) 20:20:23.28 ID:zaOcpbLv
ツールからしてまるっきり変りそうで怖い。
Oblivionで手間の元だった
スクリプト動作や変数処理とかが、より確実で安定していればいいんだが
452名無しさんの野望:2011/10/21(金) 22:55:34.06 ID:AyY4WOUA
Fallout3のCS(?)がどんな感じなのか、でSkyrimもそう変わらないツールが出されるんじゃないかと思う
FO3はやったことないので全然分からないけど

ObliとFO3のCSが似たような感じの関数しかなければ、
OBSEのSkyrim版が出なければ大したMODは作れないだろうなぁ
453名無しさんの野望:2011/10/21(金) 23:09:50.89 ID:6lMLLnjh
というか、スクリプトの使い回しはほとんど意味ない気がしますよ
自分はスクリプト中心のMOD作りしてますが
複雑なのはOBSE無しじゃ始まらないし
OBSE抜きにしても既存のものもオブリの仕様に依存した変わった実装多いですしね
そして簡単な短いのはリファレンスをハードゴーディングしたクエストスクリプトみたいなのばかりだったり

Skyrimの書き方に合わせてゼロから書く方がシンプルになるんじゃないかな
454名無しさんの野望:2011/10/21(金) 23:12:27.25 ID:6lMLLnjh
ゴーディングってなんだ
スマホ打ちにくい
455名無しさんの野望:2011/10/21(金) 23:13:47.10 ID:JEMUVu5S
エンジン変わるからかなり変わってもおかしくないというか、むしろ変わってないと困る
3Dモデルは変換すればどうとでもなるだろうけど、ボーンの構造が変わってたりするかもしれないし、分かってる範囲では装備の上下が一体化した仕様になってる
ボーンの構造が変わってたらポーズとかモーションの変換も手間取るかも
アクターとかスクリプトは無理だろうな
というか、変にこれまでのものと互換性をとろうとするより、新しいエンジンに最適なシステムにしてほしい
456名無しさんの野望:2011/10/21(金) 23:50:10.94 ID:zgLKj4Eq
俺、スクリプトを弄ったの作った事ろくに無く装備やテクスチャ描く位しか弄った事無いけど
スカイリム出たら本気出すんだ(キリッ
457名無しさんの野望:2011/10/22(土) 00:10:52.58 ID:vBP1g8Z/
むしろテクスチャ描けるほうが凄いと思ってしまう俺ガイル
458名無しさんの野望:2011/10/22(土) 00:35:59.08 ID:UoKSMbPk
NPRさんtonaさんみたいに綺麗なテクスチャ描ける人は才能じゃね
459名無しさんの野望:2011/10/22(土) 00:39:36.55 ID:j6lpRcPe
しかし、スカイリムはオブリの非じゃないほど繊細な描写になってるっぽいからなー
460名無しさんの野望:2011/10/22(土) 01:20:27.51 ID:ffico1O0
来年から美術専門行くことにしたぜ。モデリングとテクスチャの描き方習ってくる
留学した奴もいたしほんとオブリの力は偉大だ。人生が変わった
いつかMODといえばこの人と言われるくらいになりたい。TESZくらいになりそうだが
461名無しさんの野望:2011/10/22(土) 01:35:40.32 ID:+WaXheT6
>>460
モデリングもテクスチャも大元はアナログのデッサン力。
すごい綺麗なキャラ作れたりできる人は多分絵もそこそこ以上は描ける。

その手の専門学校、1年間しかないやつとかはやめた方がいい。
半年でアナログデッサンとソフトの基本操作、後の半年は自習(作品づくり)。さすがに半年やそこらで
いいもの出来るわけがないので結局最初から基本バッチリな人か才能ある人しかものにならないよ。
462名無しさんの野望:2011/10/22(土) 01:54:45.03 ID:ffico1O0
>>461
声優とデザイン専門はニート養成校とはよく言ったもんだ。安心しろ4年制の美大だ
ていうかずっとアナログ洋画やってたからそろそろ3Dに手を出したいってだけなんだ
参考になったよthx
463名無しさんの野望:2011/10/22(土) 01:59:50.73 ID:+WaXheT6
>>462
お〜がんばって。景色や人がポリゴンフレームで見えるようになれば一人前w
464名無しさんの野望:2011/10/22(土) 05:27:17.56 ID:j6lpRcPe
ちょっと質問。
フィールド自体は全くいじらず
フィールドにオブジェとか配置していただけなのに、
TES4editでみたら、緑に反転してたり、
Temporary-Landscape って項目ができて黄色に反転したりしました。
どうみても何もいじっていない(間違っても触れようがないレベル)ので、
試しにTes4Editのremoveしたところ、とくに問題もおきてはいませんでした。

うまく説明できないのですが、
いじっていなくてもそのフロアが触られたみたいな認識でいいのでしょうか?
465名無しさんの野望:2011/10/22(土) 07:13:15.02 ID:Dew82tSn
>>464
Temporary-Landscape というのが全くわかりませんが、一般論としてオブジェクト
を配置する際に、左クリックでオブジェクトなどを掴んじゃったりすると変更
したことになることがありますが、そういうことではないんですよね?
466名無しさんの野望:2011/10/22(土) 14:52:53.84 ID:h5C72vw9
すみません、装備の制御について質問させて下さい。

特定の状態の場合にユーザーによる装備変更を禁止させたい、
のですが、
装備の変更を禁止する(vanilaにもある装備すると一定時間装備を変更出来ない)方法がわかりません。
また、特定の装備ではなく、現在装備しているものに対して適用したいと思っています。

このようなことは可能でしょうか?
また、どの辺のドキュメントを見れば、関連する関数がわかりますでしょうか?

よろしくお願いします。
467名無しさんの野望:2011/10/22(土) 15:22:14.88 ID:j6lpRcPe
>>465
返答ありがとう。
つかんで戻したら履歴残るのはよくわかってるのですが、
どう考えてもいじってないところが反転したりしていて気になりました。
468名無しさんの野望:2011/10/22(土) 16:57:23.14 ID:Khd+0Wuu
>>466
>vanilaにもある装備すると一定時間装備を変更出来ない
この装備のスクリプトなりを見るのが一番手っ取り早いと思います
右クリックのUse Infoでスクリプト等を追ってみてください

どの装備のことかちょっと分からないので。


ちなみに関数はEquipItem 1の「1」をつけることで装備を外させなくすることはできます
装備中のものにその関数を用いても効果がでないようでしたら、一度着脱処理をしてみてください。
469名無しさんの野望:2011/10/22(土) 18:51:09.80 ID:h5C72vw9
>>468
返答ありがとうございます。
そうですね。確かに元の装備を見ればわかりそうですね。
その装備の処理を見てみます。

で、でも、どこにある装備だったかなぁ。
外のどこかの石像を調べると手に入る、「呪いのマスク」みたいなやつだったんだけど・・・。
また探してみます。
470名無しさんの野望:2011/10/23(日) 01:16:20.15 ID:jaNsTRLP
oblivionの,というよりblenderに関する質問なのでスレ違いなのかもしれんけど

オブジェクトを選択してからボーンを選択するために,右クリしてオブジェクト選択,shift+右クリしてボーンを追加選択と今までやってきたんだが,急にshift+右クリの追加選択が反応しなくなってしまったんだが,対処方法わかる人いるだろうか
キーボードとマウスの問題ではなかったし,blenderを再インスコしたりとハードとソフトで問題がないか確認したんだが,改善できず

どうやら,オブジェクトを選択するとボーンが,ボーンを選択するとオブジェクトがその次に選択できなくなるようで,もし何か情報持ってる人いたら教えて下さい
471名無しさんの野望:2011/10/23(日) 08:03:24.52 ID:6R5fc48H
「EquipItem XXX 1」ってRemoveAllItemsでゲームがフリーズしたり召還武具Spellが
妙な事になったりするんで使い所を選ぶかもですよ。

制限や挙動は色々で書き切れないんで、いつどんな状況で装備変更不可にするかを
教えてもらえると具体的な対策や代替案の話が早いかもです。
あとEquipItem 1はMQ15、MS05で使われてた気が。
472名無しさんの野望:2011/10/23(日) 08:05:57.53 ID:LaEbU6yS
強制装備中に、他の装備をつけようとしたりしてもCTDしたりするよね
NPCのインベントリを覗くMODなんかも
原理的にはRemoveAllItemsを使っていて
強制装備中のNPCに使うとCTDした気がする
473名無しさんの野望:2011/10/26(水) 00:42:59.52 ID:Vk87HQwb
質問させてください。
Dance Synchronizator用のダンスモーションKfファイルを作成しています。
BGMに合わせてBlenderのanim textを編集して口パクを付けました。
(NifSkopeより編集が簡単なのでこちらを使っています。)
実際にゲームで走らせてみると途中で口パクしなくなるので、試行錯誤を重ねた結果、
どうやらKfファイルのText Keyが255を超えると、動作しなくなるように見えます。
Text Keyを間引くことも考えたのですが、むしろこれからまばたきや表情を加えて
いきたい所なので、Text Keyを255に抑えるのは悲しい…。
対処法をご存じの方、おられましたら是非よろしくお願いします。
474名無しさんの野望:2011/10/26(水) 09:26:08.15 ID:X08hjYmH
>>473
TextKeyって多分そういう用途には元々向かない気がするですよ。
システム的には口パクは.lipでするのが筋かもです。
詳しくはCSWikiを「Lipsync」で検索を。

SpecialIdleと「Say」は同時に動かせると思います。
でもそのMOD自体の改造になるかもなんでそれがダメならどうしましょ。
475名無しさんの野望:2011/10/26(水) 12:30:47.61 ID:DPWF5Wg1
>>473
意地でもkfファイルでというならファイル分割するくらいしか無いんでは。
なんかもともと無理があるやり方な気がしますが。
>>474 の回答のように会話的な実装にするか
ざっくり表情つけるだけならスクリプト同時に走らせてそっちから表情つけるとかですかね。
476473:2011/10/26(水) 21:19:50.90 ID:Vk87HQwb
>>474
>>475
早速のご回答ありがとうございます。
やはりlipファイルを作るべきなんでしょうね。
教えていただいたWikiを見て使いやすい方法を考えてみます。
ありがとうございました。

477名無しさんの野望:2011/10/27(木) 13:02:36.44 ID:hx9JVLa3
Apachii Wigのかつらを普通の髪型として使えるようにすることは可能?
CSでNIFとDDS流用してHair新しく作っただけでは
スキンヘッドになってしまう…
478名無しさんの野望:2011/10/27(木) 13:45:37.07 ID:gR/ECyJ4
>>477
ウィッグは髪のボーンにウェイト指定してある(普通の髪はウェイト無指定)から、
その辺削除しないとダメなんじゃね
.egmとか_hl・_hhテクスチャも作らないといけないから、それなりに手間が掛かると思う
479名無しさんの野望:2011/10/27(木) 13:50:38.95 ID:zetJlqVN
>>450
Oblivionに対応している一部のMODがNefrimに対応しているように
Oblivion.esmに依存していないMODがSkyrimに対応していたら嬉しいなと期待している。
対応させるようにアダプターをかますツールが出るかもしれないね。

Skyrimではスクリプトをコンパイルして最適化できれば嬉しい。
関数も自作できて型、クラスも自作できて名前空間も利用できて、
配列、動的配列、連想配列も使えてオブジェクト指向プログラミングできれば嬉しい。
480名無しさんの野望:2011/10/27(木) 15:43:10.87 ID:hx9JVLa3
ただ流用するだけじゃ無理なのか
どうもありがとう
481名無しさんの野望:2011/10/27(木) 21:15:49.44 ID:/UWsvD1V
>>480
。の人の解説記事見てきな
482名無しさんの野望:2011/10/28(金) 00:43:06.33 ID:r8TLufmj
。の人って誰よ?ggっても引っかからないんだが
483名無しさんの野望:2011/10/28(金) 09:57:54.53 ID:GGDaB4e8
http://www.capcom.co.jp/DD/character03.html

こういう装備を初心者が一から作ると
どれくらい時間かかりますか?
484名無しさんの野望:2011/10/28(金) 12:08:32.49 ID:Nd6f07aa
半年続ければそこそこのものは作れるかと
Textureとか続けるほどに上達するからプロレベルなら数年かな
485名無しさんの野望:2011/10/28(金) 13:34:12.90 ID:U4jV6aom
非常に初歩的なことなのですが、Blender Nif ScriptsはBlender2.60aでは使えないのでしょうか?
486名無しさんの野望:2011/10/28(金) 16:25:27.19 ID:OmeNFTQR
それ私も知りたいです…blender2.5系でうまく認識されず
結局2.4系でインストールしたんですが、OSが7の64bitなのは関係しているんでしょうか?
487名無しさんの野望:2011/10/28(金) 17:24:04.19 ID:VbTa1by5
>>485
使えないけど2.60aで作成したBlendファイルを2.49bで読み込めるんでそれでNifScriptで出力が出来ますよ
488名無しさんの野望:2011/11/02(水) 08:55:41.10 ID:YwYhAd4K
Dialogueをちょこちょこ弄ってみたんだ
各都市の住民の台詞(NQDAnvilとかNQDImperialCityみたいな)みたいに専用の台詞用クエストを作って何個か増やした
そしたら追加分のGREETINGとGOODBYEはきちんと表示されるんだけど、GREETING以外のTopicの追加分はどうしても出てこないんだ
台詞クエストのPriorityはとりあえず100 Quest ConditionsはGetIsPlayableRace == 1とRunOnTergetのGetIsID Player == 1
各TopicのConditionsはGetIsID == 1で各NPCに割り振ってある

他に何か見なきゃいけないところがある? 宜しければ解決のヒントをお願いします
489名無しさんの野望:2011/11/02(水) 09:20:55.77 ID:C39oiIv8
topicはaddtopicしないと出てこない
greetingでaddするかクエストスクリプトを使用すること
490名無しさんの野望:2011/11/02(水) 10:14:21.40 ID:YwYhAd4K
>>489
あー、他のはStartupってとこでやってたのか!
ありがとう
491名無しさんの野望:2011/11/02(水) 20:28:23.47 ID:wMqmGsBa
初心者の質問:

コロルに店を開くMODのScriptを弄ってるのですが、
Begin Gamemode がたくさんあります。

一つのMODの中にBegin Gamemodeがたくさんあるというのは
高付加という認識になるのでしょうか?

492名無しさんの野望:2011/11/02(水) 20:36:02.41 ID:x8V112so
ものによる
addしてすぐremoveするような役割のアイテムが多数あっても負担は一時的だけど
gamemodeをもった配置済みNPCが多数居着いていれば負担になるんじゃないか

同じgamemodeでも、すぐ終わるものと、周囲をサーチするものとでは負担が全然違うし
クエストスクリプトならデフォルトでは
5秒に一回チェックだからgamemodeでも、普通はそこまでの負担にならない
493名無しさんの野望:2011/11/02(水) 20:42:24.47 ID:x8V112so
あと、仮にスクリプトが一つだけだったとしても
そのスクリプトを持ったアイテムが沢山でれば
(各NPCに持たせていったり)
当然負荷も大きいわけで、使い方次第としか
494名無しさんの野望:2011/11/02(水) 20:44:54.39 ID:wMqmGsBa
>>492
ご回答ありがとう御座いました。
よく調べたら本をActivateしたときのみ、そのスクリプト内のBegin Gamemodeが
有効になるようでした。
ゲーム中ずっとかと思って唖然としてしまいました。
495名無しさんの野望:2011/11/02(水) 20:48:04.04 ID:TjK35o2K
>>491
物による
オブジェクトとかに付加された奴なんかだと、そのオブジェクトと同じセル(読み込んでる状態)でしか動かなかったりするはず
なので、クエストスクリプト+ゲームモード=常時起動、が一番重かったと思う
496名無しさんの野望:2011/11/03(木) 00:02:33.51 ID:wMqmGsBa
>>495
勉強になりました。
497名無しさんの野望:2011/11/03(木) 03:27:56.37 ID:y+008WT/
CSHelpに重いと書かれてるせいで誤解してる人も多いが、あれは言葉の選択が間違っていて、
一般的なニュアンスの「重い」という意味ではGamemodeだからどうこう、という差は一切無いので、
単純にスクリプトを走らせたいタイミングや期間等に見合った特性の方式を使い分けるのが正解
498名無しさんの野望:2011/11/03(木) 23:58:43.21 ID:/FuWqW+j
対象NPCの持ち物を開くスクリプトって何でしたっけ?
499名無しさんの野望:2011/11/04(金) 00:18:58.75 ID:L18k5aAi
生きてるNPCの持ち物を直接見ることはできないから、
対象NPCのアイテムを

> 見たいNPCのレファレンス.RemoveAllItems 仮置きコンテナレファレンス
> 仮置きコンテナレファレンス.Activate Player

って風に仮置きコンテナに一旦移動し、そのコンテナをPlayerに開かせるのが常套だよ
で、「持ち物を開く状態」になったよーって状態検知をどこかで変数使ってオンにしておいて、
GameModeに戻ったらすぐに今の仮置きコンテナから、
こんどは

> 仮置きコンテナレファレンス.RemoveAllItems 見たいNPCのレファレンス

でアイテムを戻すって感じです
500名無しさんの野望:2011/11/04(金) 00:20:18.86 ID:hyrqDibm
>>499
おお、詳しく教えて頂き
ありがとうございます!!
501名無しさんの野望:2011/11/04(金) 17:42:27.79 ID:i0D7Aw4H
どのスレで質問させていこうと迷った挙句、ここに辿り着きました。
若干スレ違いかもしれませんが、まずご容赦を・・・。

OWCNDにて、scriptで"setscale"を使った毒性のポーションがあります。
このポーションを塗ったと思われる攻撃を敵NPCから受けて以来、そのままセーブデータを引き継いで使用していたところ、
使用キャラのサイズに不具合が発生するようになってしました。

具体的には、scaleが0.88に設定されたRaceのキャラが、ゲームを立ち上げた開始直後は指定どおりのサイズでスタートするものの、
一度死ぬなどしてセーブデータを再ロードすると、指定の0.88よりもぐっと縮んで表示されるようになってしまいます。
(ちなみに、正常な状態でも縮んだ状態でも、"getscale"でキャラのサイズ値を取得すると、ともに「0.88」と表示されます。)

色々試しながら確認したところ、どうもセーブデータを2回目以降再ロードすると、初期指定の0.88に更に0.88を乗じて、0.88x0.88=0.7744
のサイズで表示されてしまっているようなのです。

#すみません。長いので、いったん切ります。(↓つづく)
502501:2011/11/04(金) 17:46:12.85 ID:i0D7Aw4H
OWCNDの当該ポーションのスクリプトを開くと次のような記述になってます。

[Scriptname OWCUnbekanntePhiole03Script]

short DoOnce

Begin ScriptEffectStart

setScale 0.5
if DoOnce == 0
set DoOnce to 1
triggerHitShader 4
PlaySound3D OWCPhioleScaleDown
endif

end

Begin ScriptEffectFinish

setScale 1.0
if DoOnce == 1
set DoOnce to 2
triggerHitShader 4
endif

End

(スクリプト終わり)

#更に、続きます・・・。長文すみませぬ。(↓続く)
503501:2011/11/04(金) 17:54:37.21 ID:i0D7Aw4H
上のscriptで問題らしき箇所は、Begin ScriptEffectFinish 以降の"setScale 1.0"のようで、
予めサイズを変更している種族(MBP系の多く)では、setscaleを1.0で指定してコマンドを打つと
その後のキャラ表示がどうも旨くいかなくなる感じを受けました。

(試しに、scale=0.88で指定されている新規キャラにコンソールで"setScale 1.0"を指定した後に
セーブしたデータで、同じような不具合が再現することを確認しました。)

と、ここまで検証を進めてきましたが・・・
setscale自体、どうやらとても「癖」のあるコマンドみたいで、なかなか挙動を把握して解決方法を
見つけることができない状態になります。

セーブデータをそのまま生かして、例えば追加の魔法を作るなどして、何とか不具合を解消する方法が
ないかと探し続けているのですが・・・setscaleの癖を把握するのにやや力不足で行き詰りました。。

どなたか、解決のヒントになる情報でも頂けたら幸いです。
どうぞ宜しくお願い致します。

#長文失礼いたしました!
504名無しさんの野望:2011/11/04(金) 19:18:14.07 ID:M8eT3vMd
>>501
容赦しません
去りなさい
505名無しさんの野望:2011/11/04(金) 21:43:06.24 ID:qhlNG15K
コロルに店MODのスクリプト

Begin Gamemode
set Personality to AAProEdgarRef2.GetAv Personality
set Mercantile to AAProEdgarRef2.GetAv Mercantile
set speechcraft to AAProEdgarRef2.Getav speechcraft
set random to GetRandomPercent
set gold to AAProShopkeeperChest.getitemcount gold001
set GoldGained to ((Gold/3)+(Personality/2)+(Mercantile)+(Speechcraft/2)+((random/100)*gold))
If (DoOnce == 1 && Gamehour > 1 && Gamehour < 15)
set DoOnce to 0
endif
If (Gamehour >= 15 && Gamehour <= 24 && DoOnce == 0)
AAProShopkeeperChest.additem gold001 GoldGained
set Gold to Gold + GoldGained
set AAProShopQuest.Earnings to (AAProShopQuest.Earnings + GoldGained)
set DoOnce to 1
endif
end

これはShopkeeperに日給を支払うスクリプトですが、
ゲーム中ずっとBegin Gamemode直下のset文の6行が繰り返されているという
認識で良いでしょうか。
506名無しさんの野望:2011/11/04(金) 22:14:06.82 ID:g5fv3T8A
良くない

全文見てる
507名無しさんの野望:2011/11/04(金) 23:23:24.80 ID:33uYUb/5
>>505>>506
>ゲーム中ずっとBegin Gamemode直下のset文の6行が繰り返されているという
この6行「だけ」が実行されてるって意味じゃなくて、
「GameModeでSET文が繰り返されてるけど無駄じゃね?」って言いたいんじゃねーの

んで、他からその変数が参照されて無いなら無駄だと思う
下のIFの中に突っ込みたいな
508名無しさんの野望:2011/11/04(金) 23:48:38.45 ID:g5fv3T8A
ぶっちゃけ、何をどうしたいのか分からないので。

質問文憶測される前に、わかりやすい質問をして欲しいですハイ
509名無しさんの野望:2011/11/05(土) 06:11:52.85 ID:C2FyqJAs
>>507
> 「GameModeでSET文が繰り返されてるけど無駄じゃね?」って言いたいんじゃねーの
正解です! 他からの参照は無いと考えられるのでIF文に突っ込もう。

>>506,508
言葉足らずですみませんでした。
510名無しさんの野望:2011/11/05(土) 06:54:45.61 ID:puZwxoHS
setってなんだかわからないけど
冒頭でやっておかないと上手く動かないことがある気がする
timerなんかだと特に

てか別にこんぐらいなら、そんな神経質になって
時間かけてまでやる必要もないと思うけどなぁ

これをきっかけにスクリプトを学びたいというならいいのだけど
軽くしたいということなら、わかるほど変わらない気がする

>>506さんが言っているように
いつもの詳しい人の解説によれば、どうせif内の全文も見ていて
負荷を少しでも減らしたいなら
なるべく早いうちに反条件でreturnを入れたり
フレーム間引きを行わないと意味なさげらしいし
511名無しさんの野望:2011/11/05(土) 09:28:22.02 ID:C2FyqJAs
>>510
そうなんですか、勉強になります。
反条件returnありきで改良してみます。
512名無しさんの野望:2011/11/05(土) 21:39:13.65 ID:C2FyqJAs
お蔭様で店内がカククカクしなくなりました。
で、スクリプト間での変数の引渡しで上手くいかず困っています。

scn AScript
short A
Begin Gamemode
call BScript A
end

scn BScript
ref A
Begin Function { A }
・・・・・・・・・・
end

BScript上のAの変更値をAScript上のA変数に反映させたい。
C言語のつもりで記述したらダメで、他のスクリプトを真似てAScriptの変数を
refに変更したりしてみたけどダメでした。
どういう引渡しが正常なのでしょう。
スクリプトの行数制限に引っ掛かって、幾多のGamemodeの中身を引越ししないと
改造が続けられません。 宜しくお願いします。
513名無しさんの野望:2011/11/05(土) 22:19:10.95 ID:T2vfz0eI
>>512
質問が、
AScriptからShort:Aを引数にBScriptを呼び出して戻り値で再度Short:Aを受け取りたい
なら

たとえば
AScript側は
let A := Call BScript A
にして戻り値をAで受け取る、
BScript側は「…」が終わったら
SetFunctionValue A
return
で終わらせて戻り値をAScriptに渡す

Aの参照渡しみたいなことをしたいなら配列を使ってください
あと、C言語のつもりで記述する前にOBSEのドキュメントに書いてあるのでそれ見ましょう
514名無しさんの野望:2011/11/06(日) 08:37:49.59 ID:Zid326aM
>>513
ありがとう御座います。
正直、SetとLetの違いも良く分かっていません。
ref変数の参照先をセットするのが"Set"かと思いきや普通の変数への代入もOK。
ならLetの存在意義は?な状態です。
OBSEのドキュメント見てますが、英検4級にはチト難解で。。。
515名無しさんの野望:2011/11/06(日) 09:50:33.51 ID:BCsgwgxd
>>514
Setは標準のCSで提供されている変数代入コマンドで
LetはOBSEで拡張された変数代入コマンドです
OBSEで提供される配列やユーザー定義関数の戻り値などはSetでは代入出来ずLetを使う必要があります。

というかLetの説明はそのドキュメントに書いてありますし、3行程度の英文なのでそれみて下さい
516名無しさんの野望:2011/11/06(日) 10:31:45.63 ID:Zid326aM
>>515
OH,Really!! 村人がそんなことになっているとは。

ではSetでダメならLet試してみれば良いですね。
ていうか、どの機能がOBSEか全部把握してれば良いですが。
先は長いなぁ。でもだいぶ出来上がってます。
ありがとう御座いました。
517名無しさんの野望:2011/11/06(日) 14:01:43.99 ID:Zid326aM
コロルショップで質問。

届いた商品メールをゲットし、開いたときに商品がインベントリに追加されるのですが、
そのときに開いた商品メールをRemoveしたいです。

Begin OnEquip
 If ( doonce == 0 )
  player.additem Weapon 5
  player.additem PackageMailX 1     ←開いたことが分かるアイテム
  player.removeitem PackageMail 1   ←これがやりたい
  set doonce to 1
 endif
end

上記を実行するとObliが落ちます。何か手はないてしょうか。
Begin OnDropにしてメールを手放すという手が使えるようですが、
最後の手段にしようと思います。
宜しくお願いします。
518名無しさんの野望:2011/11/06(日) 14:30:01.58 ID:HGZJG06C
ずらせばいいんでね
OnEquipでフラグ立てて
GameModeでアイテムからRemoveMeとか…
開いてる最中のアイテムremoveしたらあんまよくなさげ
519名無しさんの野望:2011/11/06(日) 17:34:52.82 ID:Zid326aM
>>518
ありがとう御座います。
今やってるんですが、、、Player.AddItem はさくっと出来るのですが、
Containerへのアイテム追加はどうするのでしょうか。

ContainerEditorID.AddItem するとエラーになります。

結局方法として、パッケージメールを商品陳列コンテナに入れて閉じると、
アイテム追加、メールを開封済みへ置換えという様にしたいです。
お知恵をお借りしたく。
520名無しさんの野望:2011/11/06(日) 17:55:44.42 ID:Zid326aM
>>518
行けた、行けました。
やっと意味が分かった。
ありがとう御座いました。
521名無しさんの野望:2011/11/06(日) 20:47:51.11 ID:Zid326aM
>>518
一つ作って動作が上手くいったから全部作ったのに落ちるようになってしまいました。

SCN AScript
Short Doonce
Begin OnEquip
 If ( doonce == 0 )
  player.additem SE30AmberArrow1 200
  set doonce to 1
 endif
end
Begin GameMode
 if doonce
  Player.AddItem PackageArrow200X 1
  RemoveMe      ← PackageArrow200
 endif
end

パッケージメールを開いてアイテムをゲットし、インベントリを閉じたらObliが落ちます。
なのでDoOnceは効いている。RemoveMeの下にreturnとか置いてみたけどダメでした。
何か手立てあるでしょうか。
522名無しさんの野望:2011/11/06(日) 20:54:18.62 ID:MtBAsdgg
自分で試行錯誤してみることも
大事だと思うよん
523名無しさんの野望:2011/11/06(日) 21:01:23.93 ID:Zid326aM
Player.AddItem PackageArrow200X 1
をOnEquipにっ移動したらOKでした。
歯磨きしてリフレッシュしたらチッとは頭回るな。
524名無しさんの野望:2011/11/06(日) 21:28:30.17 ID:BCsgwgxd
>>522
だね、id:Zid326aMはすぐに訊きすぎ
あともう少し質問の要点を絞って聞くべき
525名無しさんの野望:2011/11/06(日) 22:04:35.95 ID:N5np5x3S
解決の履歴を残してくれれば別に独り言でもなんでも全然OKだと思いますよ。
itemのAddとRemoveのタイミングって微妙にデリケートで地味に嵌まりやすいですし。

ていうかどのMODの話をしてるんですか?○○'s BusinessMODですかね。
526名無しさんの野望:2011/11/06(日) 23:07:10.68 ID:Zid326aM
>>524
以後注意します。

>>525
今はコロルショップに集中してます。
ていうか、スクリプト弄ってばかりで、ゲームしてない我に気付いた。
何のためのゲームだろう。。
527名無しさんの野望:2011/11/07(月) 00:05:11.74 ID:cuvyD2G5
>>526
その内、プレイするよりMOD製作、特にスクリプトいじりのほうが遥かに面白いと
気づきますよ。そして配布して感想をいただく喜びときたら…
528名無しさんの野望:2011/11/09(水) 09:35:54.85 ID:bNMg8A8i
チェストにAddItem出来なくて困っています。
それで、そもそも論で確認したいのですが、別セルのチェストに対して
スクリプトでAddItem出来るのでしょうか?

よくよく考えたら別セルということは、そのチェストの情報はアクティブじゃないので
情報の変更は不可能じゃないかと考えました。
この認識は正しいでしょうか。別セルObjectへの変更の可否は?
529名無しさんの野望:2011/11/09(水) 10:24:25.91 ID:o6UAlcBY
>別セルのチェストに対してスクリプトでAddItem出来るのでしょうか?
出来るよ
530名無しさんの野望:2011/11/09(水) 10:56:04.37 ID:bNMg8A8i
>>529
スクリプトの骨格とか、或いはサンプルなどご紹介ください。
531名無しさんの野望:2011/11/09(水) 11:50:46.51 ID:o6UAlcBY
配置したチェストにscriptから参照可能にチェックして、ref名つけて参照してAddするだけでおk
532名無しさんの野望:2011/11/09(水) 12:17:43.59 ID:bNMg8A8i
>>531
RenderWindowやObjectWindowから「scriptから参照可能にチェック」を
探してるんですが見付かりません。どこにあるのでしょうか。
533名無しさんの野望:2011/11/09(水) 12:24:05.44 ID:bNMg8A8i
>>531
Persistent Referenceですね。
534名無しさんの野望:2011/11/09(水) 17:34:40.40 ID:bNMg8A8i
チョッとお聞きしたいですが、While loopの中にWhile loop入れてもOKですか?
これが原因で落ちてるような・・・
535名無しさんの野望:2011/11/09(水) 18:00:04.76 ID:aPG/UmCm
ループのネストが使えなかったらろくなプログラミングはできないと思うが。
二重ループには問題ない。考えられる問題として永久ループに陥っている可能性を疑ってみる。
536名無しさんの野望:2011/11/09(水) 18:21:02.02 ID:VbIgwc0N
コンソールをファイルに書き出すobseプラグイン、ConScribeはクラッシュの原因探しに便利
コンソールメッセージを出しまくるmodがあると、ログファイルが爆発するが
537名無しさんの野望:2011/11/09(水) 18:23:40.98 ID:bNMg8A8i
>>535
そうですか、原因調査してみます。
538名無しさんの野望:2011/11/09(水) 18:29:36.16 ID:bNMg8A8i
>>536
ConScribeいれてます。
あぁ、ループしてたらログがガーっと出ると。
やってみるかな。
539名無しさんの野望:2011/11/09(水) 18:31:11.24 ID:PbBS4pVF
すみません、CSの事でお聞きしたいのですが
プレビュー画面で浮かんでいる地面(タイル?)を消す事は出来ますか?
建物や小物など確認するとき邪魔で仕方がないので・・・
540名無しさんの野望:2011/11/09(水) 19:07:46.26 ID:bNMg8A8i
ガーっと出たw
会席に入ります。。
541名無しさんの野望:2011/11/09(水) 19:54:48.25 ID:DiHHjTXD
コロルショップの人だろうけど
質問を重ねる前にお礼ぐらい言おうぜ
542名無しさんの野望:2011/11/09(水) 22:15:22.59 ID:d9Flz4qZ
blenderでAT2 02-Shiki Armor SetのKISARAGI装備を覗こうとするとエラーが出るのですが、何か解決方法はありませんか?
バージョンは2.49bで、他のMODの装備などはいじる事は可能です
543名無しさんの野望:2011/11/09(水) 22:34:19.31 ID:bNMg8A8i
>>536
ConScribeのお蔭で早期に原因究明できました。
ありがとう御座いました。

>>541
チョッと熱くなってました。失礼しました。
544名無しさんの野望:2011/11/09(水) 22:41:26.20 ID:0TeHfuej
>>542
覗くだけなnifskopeでオブジェクト出力してオブジェクトでインポートしてみたら?
あるいはnifskopeで不要なプロパティを削って保存すれば読み込めるかも。
エラーメッセージをよく見るとヒントがある場合もありますよ
545名無しさんの野望:2011/11/09(水) 22:55:59.42 ID:bNMg8A8i
一点分かったこと

コンテナ内のアイテムの種類数を返す"GetNumItems"は1〜 ですが、

コンテナ内のアイテムを指定する"GetInventoryObject "は0〜 のようです。

注意点と思います。ご報告まで。
546名無しさんの野望:2011/11/10(木) 00:39:01.66 ID:A1olwi49
GetNumItemsは中身が空なら「0」を返しますよ。

「0(ゼロ)オリジン」とかそういう話だとすると、それって関数によって違う、のでは
なくて、その値が「数(個数)」なのか「何番目」なのかという意味によります。

0/1オリジンの意味概念って慣れてないと配列の添え字やループのカウンタ値なんかで
嵌まりやすいんでそれはそれで意味を確実にしといた方が。
特にObに限らないプログラミング一般の話です。
547名無しさんの野望:2011/11/10(木) 00:40:10.87 ID:A1olwi49
>>539
出来ます。「G」キーで。詳しくはここを。
http://cs.elderscrolls.com/constwiki/index.php/Preview_Window
548名無しさんの野望:2011/11/10(木) 00:43:58.98 ID:A2WGDzws
>>546
そうですね、中身が空ならゼロ返すんだった。
"GetInventoryObject "は引数ゼロで最初のアイテムを返しているようです。
549名無しさんの野望:2011/11/10(木) 00:45:19.75 ID:A1olwi49
>>542
「SkinInstance」とかじゃないですかね。多分。
Import出来る同じ様なnifのそれと比べて足りない所を直せば恐らく。
550名無しさんの野望:2011/11/10(木) 01:41:29.29 ID:KdKTEDK/
>>544
>>549
おお、レスありがとうございます。試してみます
551名無しさんの野望:2011/11/10(木) 06:46:05.05 ID:1PfvJpUf
>>547
ありがとうございます!助かりました。
552名無しさんの野望:2011/11/10(木) 19:33:46.45 ID:r7Gd+tUP
>>537
というか、ソースコードをここに貼りつけてみてはどうだろう?
そのほうが第三者による原因究明もしやすい。
553名無しさんの野望:2011/11/11(金) 21:56:48.60 ID:e527fqCx
うぉ、BethesdaのForumみてたらSkyrimのスクリプトエンジンは相当凄いことになってるみたい
OBSEの基本機能はほぼネイティブで持っててクラスもあるとか

あと、コンソールコマンドが早くも公開されてる
554名無しさんの野望:2011/11/12(土) 00:02:31.62 ID:hsCBqY0e
それは色々と捗るな
いっそRubyかPythonあたりベースにしてくれると既存のIDEやライブラリ流用出来ていいんだけどな
555名無しさんの野望:2011/11/12(土) 09:04:38.70 ID:1uMYqOaQ
バニラの状態でゲームとしてはオブリより面白いけど
MODはオブリほどの勢いはでないんじゃないかって気がする
556名無しさんの野望:2011/11/12(土) 10:08:40.73 ID:NczhXBKP
バニラの画質が半端ないから装備追加系はちょっと尻込みするな…。
オブリでもたいしたもん作ったわけじゃないけどさ。
557名無しさんの野望:2011/11/12(土) 11:42:43.07 ID:K+A7L9Nd
>>553
クラスですか。余計なもの追加してまたバグ(ry
558名無しさんの野望:2011/11/13(日) 02:45:36.26 ID:rN38W0dl
肌のテクスチャを変えたいな
559名無しさんの野望:2011/11/13(日) 13:38:18.02 ID:8gRcXRz8
>>553
ついにTESで夢のオブジェクト指向プログラミングが実現できるのか!!!
我輩は感激したぞ!

デザインパターン時代の到来だ!!!!!
Skyrimでデザインパターンを実践できる時代がやってくるとは!!!!!!

開放/閉鎖原則とリスコフの置換原則に徹底的に従ったMODがこれから増える!!!!!!!!!!!!!
http://ja.wikipedia.org/wiki/%E9%96%8B%E6%94%BE/%E9%96%89%E9%8E%96%E5%8E%9F%E5%89%87

リスコフの置換原則
http://ja.wikipedia.org/wiki/%E3%83%AA%E3%82%B9%E3%82%B3%E3%83%95%E3%81%AE%E7%BD%AE%E6%8F%9B%E5%8E%9F%E5%89%87

StrategyパターンとBridgeパターンを多用したMODが量産されて
MOD間どうしの互換性が強化されるぞ!!!!!!!!!!!!!

Strategyパターン
http://ja.wikipedia.org/wiki/Strategy_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3
Bridgeパターン
http://ja.wikipedia.org/wiki/Bridge_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3

>>557
いや、クラスが使えるということはむしろバグが減り易くなる。
デザインパターンを徹底的に駆使すればバグも減りMOD間の互換性も高まり
MODの拡張が容易になる。
560名無しさんの野望:2011/11/13(日) 13:42:52.48 ID:fNTnvi7F
良くわからないけど、LoversとかBUとか
「他の複数のMODから呼び出されて利用される前提のライブラリとしてのMOD」が組みやすくなると考えて良さそうかな
561Novice:2011/11/13(日) 16:19:35.24 ID:VLS9u6R6
MessageBoxとGetButtonPressedのタイミングについて教えてください。
もう自分で考えてもわけわかめです。

・MessageBoxが開いているときはゲーム処理自体停止していますか。
 スクリプトはそのフレームの最後まで実行してしまいますか。

・GetButtonPressedは次のフレームになると-1を返しているようですが、
 スクリプトの先頭の方に一つしか記述が無いのに正常動作していたりします。
  set Button to GetButtonPressed
 記述の下にMessageBoxがあるのに。

・ひとつのスクリプトファイルに複数のBegin GameMode があり、それぞれが
処理されても、returnされない限り文末まで実行されるでしょうか。


ConScribe Logs追跡する毎に解らなくなって来る。。。
562名無しさんの野望:2011/11/13(日) 17:27:56.98 ID:DNhAOZA7
>>561
GameModeからMessageBoxを開くとしたら次のようなタイミングになります

MessageBoxが実行される、即メッセージボックスは開かずに、そのフレームは最後まで実行されます

→次の1フレーム(複数フレームかも)も開きません 
 GameModeが走り、この時にGetButtonPressedが実行されると、-1が返されます

→実際にメッセージボックスが開く GameModeは走りません MenuModeは走るでしょう

→ボタンが押されると閉じて、GameModeが走る GetButtonPressedは押したボタンに応じた値を返す

普通、こんな感じで使うんじゃないでしょうか?
if(flag==0)
set flag to 1
MessageBox "hogehoge??" "Yes" "No"
elseif(flag==1)
set button to GetButtonPressed ;-1の時は何もせず0以上になるのを待つように
if(button >= 0)
;ボタンが押された時の処理
endif
endif
563名無しさんの野望:2011/11/13(日) 18:33:34.37 ID:VLS9u6R6
>>562
ありがとう御座います。
もう一度確認してご連絡させていただきます。
564名無しさんの野望:2011/11/13(日) 19:25:52.30 ID:VLS9u6R6
>>562
ご提示いただいたサンプルを余り理解しないまま、ログを省みることで正常動作
するスクリプトが出来上がってしまいました。
要点としては、MessageBox と共に飛び先を制御する変数があり、これをリセット
する位置がマルチタスクを考慮する必要があるということのようです。

シングルタスクだと、飛び先ルーチンの最後に一行だけリセット文を書けば良い
ですが、マルチだと目的の実行をする前に踏んでしまいます。
単に慣れの問題でしょうね。。。
ありがとう御座いました。
565名無しさんの野望:2011/11/13(日) 21:29:54.29 ID:LK0BAICC
横から細かい話ですが、MessageBoxてマルチタスクではないですよ。

GameModeと同時にMessageBoxの別タスクが起動するのではなく、GameModeブロックが
全部終了するまでMessageBoxの実際の表示/実行が遅延するだけです。

動作的には、GameMode終了→MessageBoxが出て(MenuModeになって)入力待ち→何か入力
した→MenuMode終了→GameMode再開でその結果を判定、という単なる順序動作です。
566名無しさんの野望:2011/11/14(月) 02:30:13.37 ID:0wAs43UO
>>560
CoblみたいなMODを簡単につくれるって考えればOKかと。

デザインパターンについてはこの本で勉強するのが、初心者に易しくて超おすすめ
http://www.hyuki.com/dp/

GoF(Gang of Four)デザインパターンとして有名な23のデザインパターンが載っている。

Template MethodパターンとFactory MethodパターンはStrategyパターンやBridgeパターンより
シンプルで初心者にわかりやすいからソースコードサンプルを読んでみるといいかも。

役割分担をMOD毎に分けるならChain of Responsibilityパターンも実現できるなら
かなり強力になる。

ただこのデザインパターンのうち、無闇ににAbstract Factoryパターンを多用するのは避けたいなと思う。
部品を追加するたびにFactoryを修正する手間を強いられるから。MODを追加するたびに、元のMODでパッチを作りなおす必要に迫られては本末転倒だから。
567名無しさんの野望:2011/11/16(水) 00:05:23.31 ID:rgItFC1V
CS Helpやブログを参考にしながらジュークBox的なものを作ってみました。
ところがこれだと"閉じる"(button==2)を選ぶと、再度Activateしても二度と
MessageBoxが表示されなくなってしまいます。どこが間違っているんでしょうか・・・
scn BGM
short bgm
short button

begin OnActivate
if ( bgm == 0 )
MessageBox"曲を選択してください","BGM01","BGM02""閉じる"
set bgm to 1
elseif ( bgm > 1 )
endif
end

begin gamemode
if ( bgm == 1 )
set button to GetButtonPressed
if ( button == -1 )
return
elseif ( button == 0 )
playsound BGM01
set bgm to 0

elseif ( button == 1 )
playsound BGM02
set bgm to 0
endif
elseif ( button == 2 )
set bgm to 0
endif
end
568名無しさんの野望:2011/11/16(水) 00:22:01.73 ID:1HL3LyYk
>567
下から5行目のendifをけしたら?
569名無しさんの野望:2011/11/16(水) 00:45:59.44 ID:MphouXzt
>>568
それを削除するとline14のif ( bgm == 1 ) でmismatchedエラー吐いて
保存できず、記述をendif,endif,endに変えて見るなどしてもエラーがでて
しまいます・・・。
570名無しさんの野望:2011/11/16(水) 00:51:25.54 ID:1HL3LyYk
ごめん、見落としてた。
下から3行目に移してみて。
571名無しさんの野望:2011/11/16(水) 00:54:48.53 ID:lIiFsnf4
>>567
ネスト構造(っていうんだっけ?)がちゃんと把握できるように、まめにインデントしておいた方がいいよん。
で、コピペされたスクリプトをインデントしてみると、
begin OnActivate
  if ( bgm == 0 )
    MessageBox"曲を選択してください","BGM01","BGM02""閉じる"
    set bgm to 1
  elseif ( bgm > 1 )

  endif
end

begin gamemode
  if ( bgm == 1 )
    set button to GetButtonPressed
    if ( button == -1 )
      return
    elseif ( button == 0 )
      playsound BGM01
      set bgm to 0
  
    elseif ( button == 1 )
      playsound BGM02
      set bgm to 0
    endif
  elseif ( button == 2 )
    set bgm to 0
  endif
end
最後のelseif〜endifの構造が崩れてるからそこ治せばイケるはず
572名無しさんの野望:2011/11/16(水) 02:01:31.61 ID:MphouXzt
>>570,>>571
アドバイス頂いた通りに以下のように直したところ正常に作動しました。
ありがとうございました(´▽`)。原因はやはり下から5行目のendifの位置でした。
begin gamemode
  if ( bgm == 1 )
    set button to GetButtonPressed
    if ( button == -1 )
      return
    elseif ( button == 0 )
      playsound BGM01
      set bgm to 0
  
    elseif ( button == 1 )
      playsound BGM02
      set bgm to 0
   
   elseif ( button == 2 )
    set bgm to 0
    endif
  endif
end
よく考えてみれば何の事は無い、全くif〜endifの基本通りなのに気が付かず。
お恥ずかしい・・・orz。後、インデントって大事ですね。見易さが100倍違うw
573名無しさんの野望:2011/11/16(水) 12:30:37.11 ID:Dke6+Jvw
樽を開く魔法を実行したところ、その樽へのアクティベートが出来なくなりました。
それまでは問題なかったので魔法の影響だと睨んでいます。
樽にはスクリプトは登録していません。

MidasChestScriptが参考になるかと見てみたんですが、インベントリを開いた
後は、MagicEffectFinish も無いし、変数を使えない値に変更しているだけでした。

魔法スクリプトはコツみたいなのあるんでしょうか。
魔法にインベントリが紐付けされたからアクティベートできなくなったように見えます。
574名無しさんの野望:2011/11/16(水) 12:38:54.39 ID:Dke6+Jvw
書いてる途中にピキッと閃いて、アクティベートのみのスクリプトを樽にセットした
ところサクサク開くようになりました。まだチョッとしか実行してないけど。
何かいやらしいものが残ってる感じですね。
575名無しさんの野望:2011/11/16(水) 16:04:43.80 ID:N0lo6c5+
>>573
ここの「Buggy Bug Bug of a Weird, Weird Bug」の「3.」を。
http://cs.elderscrolls.com/constwiki/index.php/Activate
576名無しさんの野望:2011/11/16(水) 17:20:39.79 ID:MphouXzt
NPCのAIパッケージについて。FindでTargeのをObjectTypeをFoodに設定した場合、
Valueの値は何を示すのでしょうか?
CSヘルプを見る限りは時間のようですが、秒なのか分なのかそれとも別の何か
なのか単位がいまいち判別しません・・・。よろしくお願いしますm(_ _)m
577名無しさんの野望:2011/11/16(水) 18:21:37.31 ID:N0lo6c5+
>>576
Targetが「AnyObject」の場合は「個数」になります。
578名無しさんの野望:2011/11/16(水) 19:52:52.66 ID:MphouXzt
>>577
個数でしたか。
時間はScheduleで設定じゃないのかな?と思っていたのでCSヘルプを
見ながら首をかしげていました。
どうもありがとうございました(´▽`)
579名無しさんの野望:2011/11/16(水) 19:57:00.90 ID:Dke6+Jvw
>>575
おお、ビンゴですね。対策も閃いたので正解みたい。
どうもありがとう。
580名無しさんの野望:2011/11/16(水) 20:23:46.89 ID:Dke6+Jvw
教えてください。
CSでクマーを一頭追加しようとしています。
NEWでIDなど登録して、既存を丸パクリの予定でしたが、NEWにはAnimationや
ModelListにNIFファイルの登録か初めからが無く、BSA_Commanderでbsaを
ばらしてNIFを放り込もうとしましたが出来ませんでした。

取り合えず既存丸パクリでPlayerFactionにしたいだけなのですが、
一頭追加する手順を宜しければご教授ください。
(Faction変更の仕方は分かります)
581名無しさんの野望:2011/11/16(水) 20:35:09.11 ID:feAyJAWl
クマーをコピーしたIDもModelList空になるっけ?
582名無しさんの野望:2011/11/16(水) 20:37:32.60 ID:PRfrFe6i
>>580
既存に新しいID付けてOK→Create New Object→はい(Y)で新しい丸コピ作れるよ
583名無しさんの野望:2011/11/16(水) 20:46:11.12 ID:Dke6+Jvw
あ、スケルトン登録したらAnimationとModelListにNIFが出てきたみたいです。
ここに書いたら解決するみたいですみません。
584名無しさんの野望:2011/11/16(水) 20:47:39.72 ID:Dke6+Jvw
>>581,582
その手には気付かなんだ。
ありがとうごさいます。
585名無しさんの野望:2011/11/17(木) 11:23:21.85 ID:U5NjZPMz
スクリプトにQuest属性が付く条件はスクリプト名に"Quest"の文字があることでしょうか。
そう思い込んでたけど何か違うみたいで、追加したQuest名のScript上の変数を参照しようと
ダメって言われます。
既存のQuest名のScriptはOKです。
586名無しさんの野望:2011/11/17(木) 11:37:36.78 ID:U5NjZPMz
スクリプトタイプ指定すれば良いんだw
昨日から引き続きすまない。。
587名無しさんの野望:2011/11/17(木) 14:15:26.03 ID:U5NjZPMz
すみません、あれから色々とやってるんですが、
新規でQuestスクリプトを作成して、タイプをQuestにし、
別スクリプトから変数を参照しようとしてもエラーで弾かれます。

Questスクリプトを作成してセーブ、CSを再起動しても変わりません。
色々やってる内にOBSEの何チャラとエラーが出るのですが、
対処方法などご教授いただきたく。

CSは割り箸経由で起動しているのでOBSEは連携しているはず、です。
宜しくお願いします。  OBSE 0019b

scn QuestScript     ←Type: Questでセーブ済み
short a
;===============
scn SampleScript     ←Type: Object
short a
Begin GameMode
set a to QuestScript.a ← Unknown variable ro function 'a'.
end
588名無しさんの野望:2011/11/17(木) 14:35:53.53 ID:K4c9ttrN
根本的な話で…

QuestScriptはクエストに張り付けるScriptだよ
つまり新規クエスト作って、QuestWindowからQuestScriptを選択しないと参照されないと言うか
どこから参照するのか設定されない

クエストスタート条件とかは他のModを参考に
589名無しさんの野望:2011/11/17(木) 16:29:45.71 ID:1LI1spRU
新Questを作ったらScriptの指定以外は全部デフォでOKですよ。
「多分こうだろう」みたいについでに他の個所の指定も色々適当に変えると今後の問題の
原因の切り分けが難しくなるんで今はそのままで。
590名無しさんの野望:2011/11/17(木) 19:26:08.08 ID:U5NjZPMz
>>588,589
ありがとう御座います。悩んで疲れきってたところでした。
初心者の癖にMidasスクリプトパクろうとしてるもので知らない事だらけで。

それで今また一つ不明なことが、、、
昨日のクマーの件なのですが、クマーRef の指定が必要のようです。
オブジェクトはRenderWindowにIDを放り込んでダブルクリックすれば
Referenceを設定できますがNPCはどうするのでしょうか。
どこか適当なフィールドに配置するのでしょうか。その場合そこに現れませんか?
召喚クマーなので何処かに配置するのはマズイような。。
591名無しさんの野望:2011/11/17(木) 20:00:43.67 ID:K4c9ttrN
SummonSample v1.0.0
ttp://www.4shared.com/file/32908276/ff70a04/SummonSample_v100.html

たぶんコレ>>589さん作だと思うのだが
592名無しさんの野望:2011/11/17(木) 20:38:10.23 ID:U5NjZPMz
>>591
おお、これは素晴らしい。
スクリプトファイル4つしかないじゃないですか。
ミダスは規模が大きいから必要なものがあちらこちらにあって、
頭こんがらがってたところでした。ありがとう御座いました。
593名無しさんの野望:2011/11/17(木) 22:22:14.44 ID:1LI1spRU
そのサンプルは多分他の方のです。

クマもNPCも同じ「Actor」で、Actorオブジェも他のオブジェも配置方法は同じです。

あと細かな話ですけど、召還魔法の重ね掛けチェックは「GetNthActiveEffectSummonRef」
が使えるかもです。
0以外が返ったらなんかCreatureを召還してる、て事で。
594名無しさんの野望:2011/11/18(金) 17:29:17.32 ID:Zaj1ncc1
ご教授ください。
クマーの件なのですが、SummonSampleを参考に自分で何も無い空間を作って
そこにクマを配置しようとしました。
CSのCell Viewで右クリックしたらNEWが出るかと思ったらViewが出ました。
何も無い空間はどうやって作るのでしょうか。
宜しくお願いします。
595名無しさんの野望:2011/11/18(金) 19:55:34.88 ID:a4WLiE9l
なにもない空間は、既存のCellをDuplicateして
EditorID変えて名前変えていらないオブジェクトゴッソリ削除してくしかなくね?
596名無しさんの野望:2011/11/18(金) 20:18:15.95 ID:QiqWZpSm
普通に新規作成できるだろw
597名無しさんの野望:2011/11/18(金) 20:23:26.97 ID:QiqWZpSm
セルの編集はCell ViewじゃなくてWolrdメニューのCellのとこな
598名無しさんの野望:2011/11/18(金) 21:31:44.62 ID:Zaj1ncc1
ありがとう御座います。
だいぶ分かってきたので一通り触ってみることにします。
599名無しさんの野望:2011/11/19(土) 00:10:57.45 ID:YQ7e+OQ/
スクリプトの最大行っていくつだったでしょうか?

1200行になったら、セーブできませんって言われて
たしか行制限あるの思い出したもんで…

でも、どこ調べていいのかわからないでござる
600名無しさんの野望:2011/11/19(土) 00:21:53.52 ID:YQ7e+OQ/
スクリプトリミットでググったらすぐ出ました

生きて
601名無しさんの野望:2011/11/19(土) 00:23:26.37 ID:YQ7e+OQ/
生きてごめんなさい
602名無しさんの野望:2011/11/19(土) 10:07:47.22 ID:DR4rwEg/
いや生きててOKですけど。
それは置いといて、スクリプトの最大長が問題になる様な巨大処理の場合は
雛型の段階でコード量と実行時間を減らすメドを付けてからの方が後々楽な気が。
その辺って特にいいんですかね。
603名無しさんの野望:2011/11/19(土) 18:35:46.58 ID:OZmh1teB
MessageBoxをBegin Function に置いて、GameMode側で
正常にボタンの値の取得って出来るでしょうか。
色々やってみたけど自分にはダメポ。
604名無しさんの野望:2011/11/19(土) 19:32:58.23 ID:r94c1YO/
出来ない
605名無しさんの野望:2011/11/19(土) 21:22:36.29 ID:OZmh1teB
>>604
ですか。行数制限が。。。
606名無しさんの野望:2011/11/20(日) 01:21:25.86 ID:71J+nz1b
NPCのリスポーンについてイマイチわからないのですが・・・

i)リスポーン属性のNPCをセルAに配置→Bセルに移動し地形などにはまる
 →プレイヤーはCセル待機、Aセル、Bセル共にリスポーン→Bセルではまった
 NPCはAセルの初期設置位置に復活

ii)エッセンシャルあるいは普通のNPCをセルAに配置→Bセルに移動しやはり
 地形にはまる→プレイヤーはCセル待機、Aセル、Bセル共にリスポーン
 →NPCはBセルにはまったまま

であってますか?いや、何か違うような気もしますが・・・i)ii)どちらも
Aセル再配置でインベントリの中身などがリスポーン属性だとCS初期設定
に戻されるとかですか?
 
607名無しさんの野望:2011/11/20(日) 08:29:50.14 ID:tSssZJev
>>605
横からですけど、それってあの店MOD改造の話ですかね。
だとするとスクリプトを読んで冗長な部分を削れば多分サイズは十分小さくなる気が。

手間をかけずに機械的にコピペでユーザー定義関数にして分割、てのもアリかもですが
本質的な解決ではないですし、逆に複雑/肥大化するかも。
その辺はポリシー次第です。
608名無しさんの野望:2011/11/20(日) 10:09:10.10 ID:tSssZJev
>>606
少し長いですが。「リスポーン」て意味が色々あって少しややこしいので。

まず、地形に嵌まった状態が回復するかどうかはRespawn指定とは関係ないです。
指定がどうあれPCがそのCellを出て少し時間を置けばそのアクターは目的地に到着
します。
その辺は「LowLevelProcessing」の話です。
Respawnはアクター死亡後の挙動の指定で、例えば、

Respawn指定アクターをCellAに配置→AIの目的地がCellBでそこでなんかの理由で死亡

みたいな場合は、PCが三日以内にBに入れば死体はそこにありますし、三日以上間隔を
置いてBに入るとその死亡した場所で復活しています。

で、これは「Respawn指定」の話で、LeveledCreature(雑魚敵)の「リスポーン」とは全く
別な話なんでご注意。
雑魚敵はRespawn指定ではなくLeveledListでその都度新規に配置個所に生成されます。
LeveledCreatureの話はそれはそれでややこしいんで必要でしたらまた。
609名無しさんの野望:2011/11/20(日) 10:11:49.71 ID:tSssZJev
続き)
あと、Respawn指定アクターのインベントリ内容等のリセットは復活とは関係無く
起きます。
恐らくそのアクターのロードが起きた時だと思うのですが、未確認です。

でもそれは多分意味があってそうなっているのではなく、単にRespawnなアクターは
元々いわゆる「その他大勢キャラ」的な位置付けなんで、状態の保持がシステム的に
最初から全く考慮されておらず、いつでも初期化は有り得る、とかそんなんだと思うの
ですが。恐らく。

またゲートを閉じた時に同行したアクターが初期化されるのはRespawn指定とは関係
無い特有の挙動です。

という事なのですが。
610名無しさんの野望:2011/11/20(日) 11:14:28.25 ID:0vvbx9oi
>>607
> 横からですけど、それってあの店MOD改造の話ですかね。
そうです。で、本日やっと200行程のお引越しに成功しました。苦労した。



別件なんですが、コンテナ内アイテムのNAMEの先頭文字を条件文にしたいのですが、
 ・"GetItemName" のようなコマンドはあるでしょうか。
 ・NAMEの先頭一文字を処理できるのでしょうか。

OBSE DOC にも Wiki にも見当たらないので。
宜しくお願いします。
611名無しさんの野望:2011/11/20(日) 13:35:14.91 ID:tSssZJev
「GetName」と「sv_Find」てのが。
612名無しさんの野望:2011/11/20(日) 15:14:15.26 ID:0vvbx9oi
>>611
おぁ、有った。なんでWikiに載ってない。
今諦めて別方法で作りかけてました。
ありがとう御座いました。
613名無しさんの野望:2011/11/20(日) 21:58:32.46 ID:0vvbx9oi
item.GetNameで文字変数に文字を入れる記述を教えてください。

string_var str

 set str to item.GetName

上記はセーブできますが、strには何も入っていないようです。

 set str to sv_Construct item.GetName

だとエラーになります。
宜しくお願いします。
614名無しさんの野望:2011/11/20(日) 22:56:57.23 ID:tSssZJev
書式は以下です。

set str to GetName item (「item」はRef変数かEditorID名即値)

で、その必要としている「NAME」て、オブジェの「Name」欄に指定した文字列(ゲーム中での
アイテム名)の事で、「EditrorID名」(スクリプトで使うID名)の事ではないんですよね?

もし後者だとするとゲーム時にその取得は構造的に出来ないんで少し気になって。
615名無しさんの野望:2011/11/20(日) 23:12:29.99 ID:0vvbx9oi
>>614
だー、逆だったのかorz 疲れるはホンマ。

取得したいのはアイテム名で、英語日本語混じってるので、それを上手く
振り分けたいなと。ありがとう御座いました。
616名無しさんの野望:2011/11/20(日) 23:23:55.18 ID:Co/z4WDc
逆と言いますか、
ReferenceとObjectIDの違いを理解していないようなので
過去スレ含めてMod作成スレを読み直したり
既存Modを少しは参考にしたらいいんでないかな
617名無しさんの野望:2011/11/21(月) 10:11:54.88 ID:d2PrGP3+
おはようございます。
>>616
> ReferenceとObjectIDの違いを理解していないようなので

この言葉で気付きました。
  (name:string_var) reference.GetName object:ref
OBSE DOCのこの文で、GetName の左ばかり見てましたw


改造も要素は揃ったのでそろそろ佳境に入りました。で、あと2点ほど。
sv_Findで、(アイテム名:Bornの場合)
  set strA to GetName Item
  set strB to "B"
  if sv_Find strB strA 1 1

とすると、"Born"の二文字目が引っ掛かっています。 なので、
  sv_Find strB strA 0 1

とすると、今度はエラーで -1 が返っています。
何か勘違いしているかと思い"1 0" としてもやはりエラーです。
先頭一文字を比較したいです。検索したけれど優良情報得られず。
宜しくお願いします。
618名無しさんの野望:2011/11/21(月) 11:16:38.32 ID:d2PrGP3+
もしかして、sv_Findって、、、
Findだから検索開始位置を指定しても、そこから最後まで検索するという
動作ですかね。それなら納得。
619名無しさんの野望:2011/11/21(月) 12:35:49.94 ID:sq0wIDRL
多分問題が二つぐらい。sv_Find自体の問題ではないです。

>set strB to "B"
一つ目。これってset文でこの書式は通らないはずなんですが。Save出来ました?
str変数へ即値を代入するなら「sv_Construct」(初期化の時)か「let」で。

二つ目。sv_Findの最初の引数は「Formatstring」です。str型変数ではないです。

あとOBSEのCommandDocumentationて必要な事は正確に全部書いてありますよ。
でも本当にぎりぎり必要最低限の事しか書いてないんで一語一句確実に読んだ方が。
620名無しさんの野望:2011/11/21(月) 12:48:12.71 ID:d2PrGP3+
>>619
ありがとう御座います。それ読む前に出来ました。

set A to sv_Construct "A"
set str to GetName item

if sv_Find A str 0 1 == 0

正常値は1と思い込んでて、丁寧にログ吐かせたら判りました。
取り合えずレスするとピキッと閃くので。
スレ汚し失礼します。
もう一点の疑問は召喚周りですが、また後で。。
621名無しさんの野望:2011/11/21(月) 13:50:02.24 ID:sq0wIDRL
それ変数名が「A」だから偶然動いた様に見えてるのかもですよ。

「sv_Find A str 0 1」と書いた場合、「A」を変数名のつもりで書いてもFormatstringと
解釈されて「"A"」と書いたのと多分同じ事に。
622名無しさんの野望:2011/11/21(月) 14:39:05.21 ID:d2PrGP3+
>>621
A〜〜〜!!w

Formatstringが変数で指定できない?!
では偶然ですね。そして無駄な変数と設定を削除できると。

オブジェクトを置き換えて、Ref名を同じにしたんですけどスクリプトが動かない。
多分みんな最初はこういうことに出くわすんでしょうねぇ。
623名無しさんの野望:2011/11/21(月) 15:04:36.32 ID:sq0wIDRL
いやFormatstringて変数指定出来ますよ。
というかその為にわざわざ引数がFormatstringになってる訳ですし。

変数を使うなら「"%z" str変数」、みたいなかんじに。
ついでに「Formatstring」の意味の確認も。

で、その文字列が日本語で始まっているかどうかを判定するのなら、
「sv_Compare」で「~」(チルダ)との順序関係を判定した方が早いかもです。
シフトJISなら。多分。
624名無しさんの野望:2011/11/21(月) 15:14:28.23 ID:sq0wIDRL
あと、文字列から一文字だけ取り出すなら配列でインデックスしろ、みたいな事が
書いてあるのですが、文字列と配列の型変換とかどうなってるのか良く分かんないんで
その辺詳しい方がいらっしゃいましたら。
625名無しさんの野望:2011/11/21(月) 21:59:25.76 ID:d2PrGP3+
>>623
> 変数を使うなら「"%z" str変数」、みたいなかんじに。
> ついでに「Formatstring」の意味の確認も。

意味は解るんですが、サンプルの記述を見付けきれずに考えるの止めてました。

> で、その文字列が日本語で始まっているかどうかを判定するのなら、
> 「sv_Compare」で「~」(チルダ)との順序関係を判定した方が早いかもです。
> シフトJISなら。多分。

先頭文字がこれ以外はこっち、見たいにしているので、そこは無問題になりました。
626名無しさんの野望:2011/11/21(月) 23:03:17.86 ID:sq0wIDRL
上の例で言えば具体的にはこんなかんじに。

sv_Find "%z" A str 0 1

またFormatstring全体を一つのStr変数で置き換えるならこの場合は「$」でOKかもです。

sv_Find $A str 0 1

両方とも多分同じ結果に。

で、そういったOBSEのExpressionや関数個別の書式みたいな細部に嵌まる前に、
まずその目的にその処理や関数が本当に適切か、てな大枠はOKなんですかね。

日本語名の判定、てのは分かったのですが、どんな構造で判定して最終的に何をする
のかによっては最適な関数や可能な書式が多分変わって来るんで。
627名無しさんの野望:2011/11/22(火) 01:30:29.05 ID:22tjMOH6
>>608 >>609
ありがとうございました。
ものすごく乱暴な言い方をすれば、その場ですぐ復活するか、PCの居ないセル
で3日経過しないと復活しないかの違いでしかない感じなのですね。
628名無しさんの野望:2011/11/22(火) 10:17:43.46 ID:489O4DLm
え、何の違いの話かよく分からないのですが、どんなアクターでも死亡してその場で
すぐ復活はしないですよ。

Essential指定の事だとすると、単に見た目に倒れて少しの間動かなくなっている
だけで内部的には「死亡」はしていないです。

で、「リスポーン属性」みたいな大きすぎる括りだと逆に話がややこしくなる気が
するですよ。

アクターの挙動って、QuestItem/Essential/Respawn/LowLevelProcessing各指定の
組み合わせと、初期配置が直置き/LeveledCreatureかどうかで決まるので、それらの
意味を調べてみると多分疑問が明快に。
ついでにCellのResetとかの三日ルール関係も。
629名無しさんの野望:2011/11/22(火) 10:30:50.18 ID:489O4DLm
あと関係して細かな話ですが。
NoLowLevelProcessingなアクターはPlaceAtMeするとLeveledCreatureと同じで生死に
関係無く三日ルールで消滅します(QuestItemは別)。

なのでスクリプトでPlaceAtMeしても他のオブジェと違って放置しておけばそのうち
勝手に消えるので恒久的な影響は気にしなくてOKです。ID消費以外は。多分。
630名無しさんの野望:2011/11/23(水) 13:12:12.20 ID:oo4opiSA
>>626
ありがとう御座います。今後の参考にします。
今回はアイテムのソートで、私はアイテムの日本語化は特定MODでしか
やってないので、日本語アイテムは例外的な扱いです。
なのでアルファベットが検出できればOKです。
631名無しさんの野望:2011/11/23(水) 13:45:10.44 ID:oo4opiSA
召喚クマーの件です。
動作として、攻撃を受けた時のみ反撃で戦闘させたいです。
近くに敵が居ても攻撃されない限り知らん顔させます。
この動作で最低限の骨格としては、

・AIのAggressionをゼロ。
・QuestScriptにOnHitハンドラを記述
  SetEventHandler "OnHit" OnHitScript名 ref::PlayerRef

・scn OnHitScript名
Begin Function { Target Attaker }
  if Target != クマー
   return
  endif
  クマー.StartCombat Attaker
end

な感じでしょうか。プレイヤー関係なくても ref::PlayerRef ? 良く解らん。
これもやっといたが有効などありましたらご教授ください。
632名無しさんの野望:2011/11/23(水) 15:21:12.46 ID:WULZnL5a
>>631
いい加減ムカついたので書かせてもらうが
召還クマーの件って何?、ポインタくら張れば?
毎度のことだけどあなたの質問は何が聞きたいのかよく分からない、要点を絞って
エスパーして答えても「それ読む前にできました」みたいな不快なレスを見ると気も削がれる、お礼を書くときに捨て台詞混ぜない

で、結局聞きたいポイントはどこ?
自分で書いたそれが動かないって話?
まさか、骨子は考えたけど動くか自分で確認するのだるいので誰か肉付けして動確してくれってんじゃないよね?

一応パッと見で書いておくと、OnHitのフィルター指定がおかしくない?
それだとイベントがPlayerRefに関連付いちゃうから多分やりたいことは出来ない
SetEventHandler "OnHit" OnHitScript名 ref::クマーref になるように思う
その場合、OnHitScript内の if Target != クマー は意味を持たなくなくはず
633名無しさんの野望:2011/11/23(水) 21:03:48.81 ID:/a5MmkiS
クマの件って>>580や594あたりかな
そこらを見ていると
CSの日本語HELPすら見る気がないように思えるw
634名無しさんの野望:2011/11/23(水) 21:51:11.97 ID:CDwN1dM7
あれ、もう少し状況が分かれば他の方法もありそうな気がするんで聞いてみただけ
なんで別にもういいならそれで。

で、確かに「召還クマー」ってなんだか謎なのですが、単にFactionを全部取って
Aggressionを「5」ではダメなんでしょうか。
それで攻撃されない限り反撃はしないですし、近くに敵がいても相手が気付かない限り
知らん顔しますけど。

そうではなくて、相手が気付いたのを察知して相手の所に走って行くのをやめさせて、
相手が来て実際に殴られるまでボーッと待つ様にする、とかそういう事なんですかね。
635名無しさんの野望:2011/11/23(水) 23:49:41.00 ID:oo4opiSA
不快な思いをさせてしまったなら申し訳ないです。
>>632
> エスパーして答えても「それ読む前にできました」みたいな不快なレスを見ると気も削がれる、お礼を書くときに捨て台詞混ぜない
もちろん悪気はありません、成り行きを正確に表現しようとした故の記述です。


> で、結局聞きたいポイントはどこ?
> 自分で書いたそれが動かないって話?
> まさか、骨子は考えたけど動くか自分で確認するのだるいので誰か肉付けして動確してくれってんじゃないよね?
お聞きしたいのは、その要点が何処かです。探したサンプルを組み合わせるけれども、
理解が十分でないと感じるので、目的と作成したコードを記載しました。

> 一応パッと見で書いておくと、OnHitのフィルター指定がおかしくない?
> それだとイベントがPlayerRefに関連付いちゃうから多分やりたいことは出来ない
> SetEventHandler "OnHit" OnHitScript名 ref::クマーref になるように思う
> その場合、OnHitScript内の if Target != クマー は意味を持たなくなくはず
ありがとう御座います。サンプルには、ref::PlayerRef があり、更にOnHitScript名には
上記のようにif文が記されていました。
これが自分なりのハンドラの動きの想定に混乱を起こしたので質問させていただきました。

ここのところ根摘めて取り組んでいたので自己中な視点になっていたようです。
以後、気をつけます。重ね重ねありがとう御座いました。
636名無しさんの野望:2011/11/24(木) 00:16:51.03 ID:qbhtJxiy
>>633
> CSの日本語HELPすら見る気がないように思えるw
日本語HELPみつけました。ありがとう御座いました。

>>634
> あれ、もう少し状況が分かれば他の方法もありそうな気がするんで聞いてみただけ
> なんで別にもういいならそれで。
錬金素材を、9つのチェストに分類して入れるためでした。アルファベット分類と均等な
数で分類する二つの方法を作ったので、日本語名アイテムが多くても数で分類させれば
間に合うだろうから良しとしました。日本語用作れば、まぁ親切でしょうけれども。。

> で、確かに「召還クマー」ってなんだか謎なのですが、単にFactionを全部取って
> Aggressionを「5」ではダメなんでしょうか。
> それで攻撃されない限り反撃はしないですし、近くに敵がいても相手が気付かない限り
> 知らん顔しますけど。
どういう動きが良いのかまだ悩んでたんですが、シンプルにそれでよさそうですね。
試してみます。ありがとう御座いました。
637名無しさんの野望:2011/11/24(木) 00:25:50.58 ID:DHplN5BT
ここに聞いてくる人の多くが何故か本当にやりたい事直接書かずに例えで聞いてくるのが問題
MODのネタを隠したい気持ちはわかるけど、素直に何をしたいのかはっきりと具体的に書いた方が良いと思うよ
問答だらだら続いてる内容読むと、後だしでちまちま具体的にやろうとしてる事書いて、誤解を解いてる問答ばっかりで無駄だと思う
638名無しさんの野望:2011/11/24(木) 00:34:20.11 ID:qbhtJxiy
>>637
それもあると思いますが、
ハマるとそれそのものに集中して目的を説明する、
というところまで気が回らないこともあります。
639名無しさんの野望:2011/11/24(木) 00:46:45.43 ID:PEE2txMf
一般板だから
エロMODネタは他に置き換えて質問しないとイカンと思ってる
640名無しさんの野望:2011/11/24(木) 01:14:27.07 ID:ivQaPfu1
そんなら落ち着いてから書きなよ
それから頻繁に書きまくるのなら、以後コテハンつけていただきたい
641名無しさんの野望:2011/11/24(木) 08:39:03.51 ID:PuqnIdq+
このスレって真性エスパーも結構いるんで症状を言わずに薬の処方だけを聞いても
OKだったりはするのですが。でもまあその辺は普通に考えてもらえれば。

エ□目的の場合は例えば、「二人のアクターの相対位置を固定してそれぞれアニメ
させるにはどうしたらいい?」、みたいな物理的状況で言ってもらえれば大体見当が。
「プロレス」とか「組み体操」とかの暗喩でも。

あと「MOD作りは初めてでプログラミング経験も全く無い17歳女子高生です」とか
「MODは作った事があってCとかも大体分かる30歳童貞です」とか「業務でゲーム開発してる
プロの冷やかしです」とか付け加えてもらえるととても答えやすいです。多分。
642名無しさんの野望:2011/11/24(木) 09:22:31.60 ID:PuqnIdq+
で結局「召還クマー」てなんですか?
643名無しさんの野望:2011/11/25(金) 19:02:25.22 ID:kcGotZqy
もうSNSとかでやった方がうざがられずマイペースでやれると思うが
644名無しさんの野望:2011/11/25(金) 23:38:05.89 ID:wwBVX/LW
別に普通に自分のペースで聞いてもらえればそれで。
結果を催促したいてのも分かりますけど。

召還クリーチャーの作り方ならここにも。

http://cs.elderscrolls.com/constwiki/index.php/Scripting_Tutorial:_Summoned_Creatures

で、クリーチャーの場合、敵がそいつばっか攻撃してつまんないとか、PCを助けて
くれないとかの細かな話があるのですが、実際にやってみてそれが自分の目的に現実に
問題になる様ならまたその時に。
645名無しさんの野望:2011/11/26(土) 18:54:31.00 ID:kHi7Y9Nf
大量のNPCの顔色をCSで一体ずついじっているのですが、これをもっと効率よくいじるやり方ってのはあるのでしょうか?
646名無しさんの野望:2011/11/27(日) 07:24:25.46 ID:utNRODQk
自分も以前お世話になったことがあるけど、やっぱり先生は場の収め方も上手くて
尊敬です。>>634 >>641

先生がいなかったらこのスレの機能は少なくとも70%くらい無くなっちゃうわけで、
お金もらえるわけでもないのに本当にお疲れ様です。あまり無理せず、お体にお気を
つけください。

自分的には Skyrim でも同様にご活躍されることを期待しております。
647名無しさんの野望:2011/11/27(日) 09:36:06.81 ID:oAQGscfQ
ちょ、おだてても何も出ないです。なんでまた。
気が向いた時に好き勝手な事を言えて楽しいんで書いてるだけです。
非商用ですし。なので内容も話半分で。

>>645
例えばheadhuman.ddsの色調を直接変えればその種族に一様に反映はされますけど。

そうではなくて条件付きとかでパラメータ側を一括で変えるツール的な方法、という事
だとちょっと分からんです。
648名無しさんの野望:2011/11/27(日) 10:51:31.65 ID:SHJQtMGr
個別じゃなく同じ顔色でいいなら、
TES4EDITで顔色パラメータだけコピペしてくのが早いんでね
あとバニラNPCだったらアンロッカーを使わないと
顔色変更できないけど、こっちは平気かな?

ただうちでアンロッカー使うと
みんな顔色が黄色くなってしまう(実際ファイルも黄色い)んだけど
なんか使い方間違ってるのかな
649名無しさんの野望:2011/11/27(日) 16:34:28.19 ID:Fai6trll
>>648
あのファイルって元々VanillaのBSAに格納されてて、原理判らないんだけどBSAのままだと顔色固定されちゃうファイル
MODとして配布してる物も中身はVanillaのBSAと全く一緒って書いてあるね
NPCの顔変えたいんで導入するからVanillaと比較した事無いんだけど、ロック外れた関係で個別のパラメータ反映して変わるのかも
650名無しさんの野望:2011/11/28(月) 20:13:26.66 ID:UNwDkvVz
なるほど、ありがとうございます
実際バラしてみたら普通にアンロックできますた

私が落としたものは
faceフォルダ用にすごく小さい黄色いファイル群が入ってたけど
なんだったんだろう
651名無しさんの野望:2011/11/29(火) 08:45:26.98 ID:hAKUoFnw
バニラNPCの顔色/濃淡変更を出来る様にするなら、例えば「Rohssan」の場合は
「0001c14c_0.dds」(0001c14cはRohssanのID)てな名前のサイズが0のファイル一つだけを
textures\faces\Oblivion.esmに入れとけば多分OKです。

ファイルの中身は関係無いので、いわゆる「アンロッカー」のddsの絵自体はダミーか
なんかな気が。多分。
652名無しさんの野望:2011/11/29(火) 19:04:22.73 ID:PvLP4WCU
・ピアノ型アクティベータを使用し単純に
アクティベートでplaysoundする他、
特定の時間帯に自動演奏するようにしたいのですが

アクティベータのサウンド欄に指定するなり
アクティとは別にサウンドオブジェクトを配置するなりすると
音が鳴るのですが
特定の時間帯のみにしようと
鳴らすsoundのstart時間とend時間を設定すると
指定時間帯も含めて、音が全く鳴らなくなってしまいます
適当にチェックボックスをオンオフしてみましたが、変化ありません

何が間違っているのか、ご指摘を頂戴できると嬉しいです
653名無しさんの野望:2011/11/29(火) 22:50:42.54 ID:hAKUoFnw
>>652
Soundの「Starts/Ends at:」ってその時間に自動的に鳴る/止まる指定ではなくて、
Region等でSound指定された際に音の鳴る有効な時間帯の指定みたいです。

例えば「AMBRBirdsForest01」なんかは森林系Region→Soundで確率が指定され、
Sound側でその有効な時間帯を6:00〜11:00に指定、みたいなかんじになってます。
またPlaySoundした時もその指定の時間帯にだけ音が鳴ります。

目覚しみたいに時刻で自動的に鳴らす例ならバニラの「BellTowerScript」なんかが。
場合によっては別な書き方もあるかもです。
654名無しさんの野望:2011/11/30(水) 07:28:41.57 ID:nhTBhopd
そんな条件があったとは、、、
スクリプト紹介とあわせ、ありがとうございます

とりあえず
NPCにアクティベートさせる方向でやってみて
綺麗にいかなかったらスクリプトをつけてみようかと思います
655名無しさんの野望:2011/12/03(土) 08:50:54.55 ID:cIXZ494T
QuestScriptのfQuestDelayTimeについて

fQuestDelayTimeの値を適時変えて毎秒の処理量を変更することは
スクリプト上できると思いますが、これやって良いんでしょうか。
不具合起きやすい等の懸念点あるでしょうか。

StopQuest, StartQuest でも良いんですが、トリガー無しで実行したいので。
宜しくお願いします。
656名無しさんの野望:2011/12/03(土) 12:20:45.83 ID:UfKqAb6V
>>655
fQuestDelayTimeの変更自体はやってOKです。バニラ各所でやってますし。
不具合が起きるかどうかは処理の内容次第な気が。

普通にユルい使い方をするのなら問題無いと思うのですが、細かい話なら例えば、
fQuest〜の変更が反映されるのは現状の実行間隔が過ぎて次回実行した時以降なんで
5秒→0.1秒みたいな長→短への変更は反映が遅れたりします。

なのでfQuest〜だけでリアルタイムな応答を期待した処理を書いてしまうとなんか
うまく行かなかったりする事はあるとは思いますが。
これはStartQuestも同じです。多分。

そういう場合は多分なんか別な方法のがいいかもです。
657名無しさんの野望:2011/12/03(土) 13:05:27.38 ID:cIXZ494T
>>656
なるほど、反映時のタイムラグですね。
良く解りました。ありがとう御座いました。
658名無しさんの野望:2011/12/03(土) 15:06:50.34 ID:krNsRN3Z
2点質問があります、御願いします

1)乱戦だと範囲shock魔法のエフェクトが大変重くなります
area指定が一桁でも画面中に広がる勢いで、緑の煙が立ち上ります
エフェクトシェーダーの(ヒット時、発射時等色々)変更や、gamesettingのshock魔法の設定を幾つか試してみましたが
スペル時のライト効果のオフなどを試してみましたが改善が見られません、
炎魔法や氷魔法程度のおとなしさになるだけでいいのですが
何か改善の方法はありますでしょうか?

2)AIパッケージでgetrandompercentを指定した場合について
ランダム判定はいつ行われているのでしょうか?
時間指定をしていれば、指定時間丁度になったときに
判定が行われるのかと思いきや
0分でなく、途中の時間でも、
思い出したようにランダム行動にでることがあります
プレイヤーが同セルに行って、見ているとおもむろに発動するようなので
NPCのAIのロード時でもないような気がします
659名無しさんの野望:2011/12/03(土) 15:20:32.94 ID:cIXZ494T
もう一点お願いします。
アイテムの名称と金額で一つの文字列を作りたいです。

  "Iron Arrow (1Gold)"

こんな感じで。

short val
string_var str

set val to GetGoldValue Arrow1Iron
let str := GetName Arrow1Iron + " (" + "%g" val + ")"

OBSE Command Docを参考にしてみましたが、let文ではじかれます。
ご教授ください。
660名無しさんの野望:2011/12/03(土) 18:51:53.27 ID:CmT+O8hJ
>>659
FormatStringと文字列の連結をごっちゃにやってるから動かないのでは?
例えば変数ひとつ足して
set tmpstr to GetName Arrow1Iron
set str to sv_Construct "%z(%g)" tmpstr val
はどうですか?

あと、試してないけどそもそもGetNameしなくても
set str to sv_Construct "%n(%g)" Arrow1Iron val
でもいけそうな気が…
661名無しさんの野望:2011/12/03(土) 19:06:13.56 ID:CmT+O8hJ
あ、Arrow1IronはObjectか、もしそうならGetNameいるか

一旦Refに代入してればGetNameなしでいける
たぶんアイテムごとに一個一個ハードコーディングというのでも無い気がするから
Foreachあたりでアイテムを取ってきているイメージなら

ref rObj
set str

set rObj to Arrow1Iron
set str to sv_Construct "%n(%g)" rObj val
みたいにGetNameしなくてよいはず
662名無しさんの野望:2011/12/03(土) 19:49:40.31 ID:UfKqAb6V
>>658
1)は、「重い」てのがどの程度の事なのか少し謎なのですが、種類によらずTagetの
範囲魔法なら相手がすぐそばにいたりしない限り画面全部が煙になる事はないと思う
ので、ひょっとするとその辺負荷以前に何か問題がある可能性も。

原因が煙の描画かどうかを切り分けるならMeshes\magiceffects\shockbolt.nifを
同じフォルダにあるnull.nifに入れ替えてみたり。


2)は、GetRandomPercentに限らずAIのConditionsの評価っていつでも起き得ます。
毎正時以外にも現在のパッケの終了時、Enable、会話の終了時なんかにも。

また何もしなくても多分ランダムに起きているとは思うのですが詳細は謎です。
あとパッケの種類やMustReachLocation/MustCmplete等の指定も関係してたりします。

その辺システム任せで問題が起きる様ならEvaluatePackage(evp)で。
663名無しさんの野望:2011/12/03(土) 19:51:15.26 ID:UfKqAb6V
>>659
sv_ConstructでOKだと思いますが、最初の例で行くなら多分こんなかんじに。

let str := GetName Arrow1Iron + "(" + $val + ")"
664名無しさんの野望:2011/12/03(土) 19:54:38.44 ID:cIXZ494T
>>660-661
先生、ありがとうございます。
いま、間違って変更中のesp消してしまいました。orz
改めて、やってみます。(やり初めで良かった。。

665名無しさんの野望:2011/12/03(土) 20:03:34.74 ID:CmT+O8hJ
あ、$がありましたね
さすが
666名無しさんの野望:2011/12/04(日) 20:11:48.77 ID:ba/1kzGn
>>662
二つともありがとうございました
距離でも煙の広がり方が違うとは知りませんでした
ひとまず、ご教示いただいたnifをfrostのものをコピーして置き換えて
大分楽になりました
AIの方と併せ、ありがとうございました
667名無しさんの野望:2011/12/05(月) 03:20:23.25 ID:yI0l5f5T
MAC.espって何のmodかわかる人いませんか?
668名無しさんの野望:2011/12/05(月) 10:47:44.34 ID:k69Dpl16
>>666
距離で煙の広がり方が違うというか、近ければ大きく見える=大きく描画される、
て事です。

で、null.nifにしたら楽になった、て事は重い原因は描画の比重が大きいのかもです。
ShockDamageって煙としてのParticleが多いので、他と比べて全画面が何重にも
アルファ描画される状態になりやすいのかも。

煙Particleの数を調整するなら、shockbolt.nifの77番NiPSysData→Num Verticesを
好きな数に変え、それ以降の各回転矢印アイコンをクリックして数をそれぞれ更新
すればOKです。多分。
669名無しさんの野望:2011/12/06(火) 13:49:48.67 ID:aEyNKjtS
すみません、tonaさんの装備MOD製作チュートリアル第二版の質問です。

「4-7.素体メッシュの調整」の所で、メッシュの下に隠れてる頂点を削除しようとしてます。
1つ1つShift押しながら選択して削除ってのを繰り返してる状態です。
このやり方では、前方や後方の頂点と区別が付きにくいです。
何か良い方法があると思ってるんですが検索してもたどり着けません。

ご教示ください。
670名無しさんの野望:2011/12/06(火) 16:12:29.37 ID:/kwO0vXd
>>669
ちょっと細かい状況良くわからないんだけど、自分なら後方の頂点をまとめて選択、Hキーで非表示にするよ
Alt+Hでまた表示されるから
671名無しさんの野望:2011/12/06(火) 20:02:01.90 ID:aEyNKjtS
>>670
ありがとうございます。
次やるときに試して見ます。
672名無しさんの野望:2011/12/07(水) 00:36:03.12 ID:BDWA2D+C
>>669
多分服と重なってる素体を削るとかかな
1.まずは服ごと要らない部分を選択する。Bキーで矩形選択でも、BBで選択でもいい
2.選択範囲を反転して、Hキーで非表示に
3.素体の頂点を1つ選択して、Ctrl+Lでつながっている頂点をまとめて選択、削除
4.細かい所をちまちまと修正

前半分と後ろ半分が重なって困る時は、あらかじめ半分をHで非表示にするとか
その辺は工夫しておくれ
673名無しさんの野望:2011/12/07(水) 15:39:30.20 ID:5ef/awM3
すいません。
MPCのMPC dialogueでの休めの指示でコンパニオンが寝る場合に「おやすみなさい」と言わせたくて
夜11時である と 近くにベットがあるという条件があればいけると思いconditionの項目を弄っていたのですが
近くにベットがあるという条件が見つからず困っています。
そもそもconditionでは無理なのでしょうか?
もし他の解決方法があればよろしくお願いします。
674名無しさんの野望:2011/12/07(水) 19:22:58.89 ID:XTz8vzhj

ScriptでOnPackageStart

でいけるんじゃないかなぁ

と、通りすがりが適当なここと答えてみる
675名無しさんの野望:2011/12/07(水) 21:42:17.12 ID:nxPgQkdC
>>672
ありがとうございます。
素体を少し拡大した後服っぽく見せる為に胸と脇腹あたりに新しい面を作った後のところでした。
場面は違いますが応用できると思うので助かります。

今一通り終わって、テスト用のキャラに着せて見ましたが、テクスチャに貼った絵が
体の中心あたりで小さくなっていくつも表示されてるなど酷い有様でしたw
676名無しさんの野望:2011/12/09(金) 10:56:41.38 ID:qPhwJd2h
>>673
遅レスですが。
他所様のMODの話だとちょっと良く分かんないのですが、一般的な話ならTopicの
Conditionsだけでは「近くにベッドがある」事の判定は多分出来ないです。

そういう場合はスクリプトで事前に必要な判定をして結果を変数に入れてそれを
Conditionsで見る、みたいにすれば普通はOKかもです。
上位のTopicがあるならそのResultScriptとか、そのNPCのOnActivateブロックとかで。

大雑把でいいならGetFrist/NextRefで「Furniture」を探してGetBoundingRadiusで
大きさでベッドと椅子を判定したり。
ベッドが使用中かどうかや所有権も判定するなら話はもう少しややこしくなると
思います。
677名無しさんの野望:2011/12/09(金) 18:23:42.52 ID:QerR0c1u
お願いします
できればクエストスクリプト用(REFの方は問題ありません)
次善の策でNPC用スクリプトで

・ダブルフェイスバグになった時
・もしくは(二重顔が起こる原因の9割を占める)playerをfollowしてFasttravel明け
を検出する方法はありますでしょうか?

NPCスクリプトの方で、begion onloadでplayerをfollowしているときだと
=playerとずっとくっついていると
微妙にOn Loadが働かない感じで
OnLOADはplayerが新たに訪れたセルに先にいないと働かないのかなーと

>>669
透過をオフにして
逆に装備の影に隠れていない素体部分を全選択していって
選択部分をPで切り離し
残った部分を処理、ではどうですか?
残った部分で戻したい部分があったら再度Pで離して
ctrl+jで先のメッシュにくっつければいいはず
(辺や頂点の接続は切れちゃうかもしれないので、できれば最初の処理で済ませた方がいいです)

あと透過をオフにすると
Bなどで範囲選択しても、透過状態とは違い
離れていてはっきり映っていない頂点は選択されなかったりするので
選ぶときは十分注意が必要かと
678名無しさんの野望:2011/12/09(金) 18:31:34.43 ID:QerR0c1u
あ、すません、単に切り離しだと
表面の頂点だけ切り離されて、くっついてる先の頂点が影に潜ってたら
上手くいかないかな?
駄目かもしれないのでスルーして下さい
679名無しさんの野望:2011/12/09(金) 21:19:31.27 ID:GpAN8f/2
抜刀中(武器を構えている)かどうかを判定する関数ってありませんか?
680名無しさんの野望:2011/12/09(金) 21:33:57.12 ID:qPhwJd2h
>>677
二重顔かどうかだけを判定する方法って無さそうな気が。
純粋にFTを検出するならOBSEのUIFunction系の何かで出来そうな気はしますけど。

で、NPCのロード(OnLoad)ってPCをFollowして同じWorldSpace内を連続的に移動したり
近距離FTや近距離MoveToでは起きないです。
ドアの出入りでもセルバッファの状態によっては必ずしも起きる訳ではないです。
「微妙にOnLoadが働かない」てのはその事では。

何が問題か少し分からないのですが、二重顔になるのにOnLoadが起きない状況がある、
て事ですか?
681名無しさんの野望:2011/12/09(金) 21:35:40.08 ID:qPhwJd2h
>>679
「IsWeaponOut」てのが。
682名無しさんの野望:2011/12/09(金) 21:49:21.36 ID:GpAN8f/2
>>681
おお、ちゃんとあるんですね。
ありがとうございます!
683名無しさんの野望:2011/12/09(金) 21:55:33.48 ID:h5KNzKBI
OblivionのスクリプトのIf文て
例えば

A=1,B=1,C=1のとき

if(A==0 && B==0 && C==1)
endif

と書いた場合、A,B,C全ての値の判定を行う。

if(A==0)
  if(B==0)
    if(C==1)
    endif
  endif
endif

と書いた場合は最初のIfの条件が成り立たず、中にあるB,Cの判定は行われないので
後者のほうが処理が早く終わる、って認識であってる?
684名無しさんの野望:2011/12/09(金) 22:58:10.18 ID:1s8iSHLK
>>677-678
ありがとうございます。
そんなやり方もあるんですね。

また質問です、お願いします。
ttp://loda.jp/tamanegiii/?id=687.jpg
ここだけ表示がおかしいんですが、これは一体何で、どういう意味でしょう?
普通のFaceに戻す方法もご教示ください。
685名無しさんの野望:2011/12/09(金) 23:09:42.69 ID:qPhwJd2h
>>683
一つのif文の中は途中で偽になっても最後まで実行されてます。恐らく。
例えば最初の例の「C==1」の代わりに「ArenaFan1Ref.Moveto Player」とかの
実行関数を書いてみると多分。

で、あと確認されているのは、もしそのif文が偽でもその節の終了の個所まで
プログラムカウンタが「ジャンプ」するのではなく、途中のコードを全部解釈しながら
節の終了を探索する、てのが。

なのでこの場合はどっちが速いんでしょうね。
行数や演算子、関数の引数が総合的に少ない方が速い気が。多分。
686名無しさんの野望:2011/12/09(金) 23:22:30.45 ID:1s8iSHLK
>>684
ぐぁー、すみません自己レスです。
多分ですが、面選択モードでそこだけ選択されてたからそうなってた模様です。
こんな単純なことで3時間も悩んで作業進まなかった・・・。
687名無しさんの野望:2011/12/10(土) 09:52:46.27 ID:eqOhHQHc
>>683
あってる

けど、オブリの場合、if条件が成立しない場合でもendifまでの命令を無視しながら読み進めるという負荷がかかる
(つまりアドレスジャンプしない)ので、returnで済む場所なら下記が一番早い

if(A!=0)
return
endif
if(B!=0)
return
endif
if(C!=1)
return
endif
688名無しさんの野望:2011/12/11(日) 00:05:28.57 ID:eV0MLpAc
どうも最近TESをいじり始めた初心者です
このやり方で何か問題はないか聞きたいので質問しました

Colourwheels Sexy Imperial Legionというガード女性化MODを種族を変更して使用していたのですが
種族がImperialでないとスタップしてくれません
そこで、オリジナルの女性ガード「CaeliaDraconis」と全ての女性ガードを、新規作成したFactionに登録し
「CaeliaDraconis」のDialougeの条件「GetIsRaceのRace: 'Imperial'」がある項目を全て複製し
複製した項目の「GetIsRaceのRace: 'Imperial'」を、全て「GetInFactionの新規作成したFaction」に変更しました。
これで一応スタップしてくれているのですが、この作成の仕方で別の箇所に影響などは出てこないでしょうか?

アドバイス等頂ければ幸いです。
689名無しさんの野望:2011/12/11(日) 00:54:48.76 ID:3Bg84uAF
複製していたらたぶん影響はないはず

ただおそらく、音声の再生部分が違うので、
音声を新たに割り当てないと無音になってしまう、というくらいかな?弊害は
690名無しさんの野望:2011/12/11(日) 01:14:52.98 ID:ktGORLNE
おお!さっそくありがとうございます。
確かに音声が再生されていなかったので割り当てたいと思います。

思ったのですが、MOD作ってるというよりデバッグしてる感覚になってきますねw
691名無しさんの野望:2011/12/11(日) 07:39:46.16 ID:ymiPyLYT
>>680
ありがとうございました。
Onloadは、他の方法で検出が面倒なら
followしてLOADのときは
毎回updateかけてしまえばいいかと思ったんですが
たまに働かないこともあるような感じかなーと
もう少し検証してみますね
692名無しさんの野望:2011/12/12(月) 14:43:11.90 ID:wwUFqk30
OnLoadで単にUpdate3Dしたらなんかうまくいかない、とかそういう事ですかね。

もしそうならUpdate3Dって実行に複数フレームの時間がかかったり、再表示のロードで
またOnLoadが起きたりするんでその辺の話な気が。
693名無しさんの野望:2011/12/12(月) 15:00:52.33 ID:wwUFqk30
あとスクリプトの話ですが多分こういう書き方も。

if(A)
return
elseif(B)
return
elseif(C)
endif

でも速さて頻度や処理内容、全体の構造の比重が大きいです。
694名無しさんの野望:2011/12/12(月) 15:37:51.04 ID:wwUFqk30
あれ、今気がついたのですが二重顔になる時てOnLoadが二回連発してるかもです。
また後で確認してみます。
695名無しさんの野望:2011/12/13(火) 10:29:48.93 ID:twFqP9Gq
上の話ですけど、二回連発とは限らないみたいです。一回でも二重顔になる事が。
なので状況は相変わらず、事で。
696名無しさんの野望:2011/12/13(火) 17:47:39.60 ID:dOGddrr/
追加検証までありがとうございます
処理が二重って他の部分でもバグを起こしますよね
装備品をunequipしないでremoveして
他のアイテムをequipさせようとすると
再装備と競合し
防具のエンチャントで
NPCに付与されるspell効果を認識しなくなったり
697名無しさんの野望:2011/12/13(火) 18:36:01.75 ID:dOGddrr/
また新しい質問で失礼します
NPCスクリプトで、単純に
NPC死亡時にアクティベートで復活させたいだけなのですが


Begin OnActivate Player

if getdead == 0
;死亡時以外は会話等へ
Activate, Player
elseif player.isincombat == 1
Message " 蘇生できない "
else
Resurrect 1
Message " 蘇生した "
endif

以上のスクリプトだと、蘇生そのものは動作するのですが
followしている当スクリプト付NPCを連れていると
死亡時以外に、こちらから話かけてもいないのに
向こうから話かけてくるような感覚で
会話がはじまってしまうことがあります
オブジェクトではないNPCに
Activate, Player
はマズかったりするんでしょうか?
698名無しさんの野望:2011/12/13(火) 21:13:49.83 ID:5lhca0i5
別にそれでOKな気が。
「Activate」の後の「, Player」は別にあってもOKですが、「,」は書式的に、「Player」は
仕様的に書かなくてもOKです。

NPCも普通に「オブジェクト」でActivateのルールは他と同じです。
AIのFollowとFindを間違えてるとかそんなんな気が。多分。
699名無しさんの野望:2011/12/13(火) 21:19:45.96 ID:5lhca0i5
で、二重顔はもういいんですか?

単に自分の書いた処理が動かなくてなんとなくOnLoadを疑ってみただけだから別に
もういい、とかいうのならそれはそれでいいのですが。

でもそうではなくて、「OnLoadが起きなくても」二重顔になる事が実際にあるから
OnLoadではうまくない、て事を言ってるのだとすると結構重大な話なんで。

そこだけ先にはっきりさせといてもらえると有り難いです。
700名無しさんの野望:2011/12/14(水) 18:25:18.58 ID:6PH186n/
あれ、書き方きつかったですかね。なんか面倒臭い事言ってしまったのかしら。

で、FT検出がいいならPCのGetParentCellの比較とかで簡易には出来ますし、NPCの
スクリプトがイヤならQuestScriptでGetFollowersとかすれば一括で出来たりはすると
思いますよ。

でもなんでOnLoadが最初からいらない子扱いされてるのかがわかんなくて。
単に別な方法でやってみたい、て事なら別にいいんですけど。

独り言でした。
701名無しさんの野望:2011/12/15(木) 08:44:32.26 ID:tQ48Hi+r
あ、いいえ、お礼が遅れてすみません
ありがとうございました
検証をしてからと思ってたのに検証をできてなかったので

フォロー状態だとUPDATE3Dするようにしてみたところ
何故か、ロード明けにずっとupdateし続けて
消えっぱになったりするようで
メッセージでtestと表示すると
ずっとメッセージが表示されているようで

ONLOADって一回限りなはずなんで
なんか他の要素が競合してるのかもしれないと
でも時間をかけて究明するより
他でやった方が楽かなーと、すんません

activateの方は余計な記述を直したら動作がまともになりました
バニラの記述を参考にしたはずですが、逆に謎のバグを起こすとは……
702名無しさんの野望:2011/12/15(木) 16:01:22.07 ID:TXRKelbU
>>701
検証を求めてるのではないですよ。

処理内容の話以前に取り立てて「OnLoadeが働いてない」、て二回も言っているので、
自分の処理ではなくOnLoadそのものを先に疑う理由が既になにかあるのかな、
と聞いているだけで。

いやいいかげん状況は分かった気がするんで別にもういいのですが。

>何故か、ロード明けにずっとupdateし続けて

ついに話が核心に。それって>>692の話ではないんですかね。
Update3DでまたOnLoadが起きて無限地獄になってるとか。
だとすると、それはUpdate3Dの使い方の問題でOnLoadのせいじゃないです。

解決はカウンタかなんか作って一度Update3Dしたら数フレームの間再度Update3Dしない
様にすれば多分。あと、

>ONLOADって一回限りなはず

無限地獄の話とは別に、FTの時なんかは一回とは限らないかもですし、他MODから
Update3DやDisable→Enableを連発される事はいくらでも有り得るです。
703名無しさんの野望:2011/12/15(木) 23:28:05.20 ID:Mp7yXW2O
プレイヤーを常に幽霊と同じようなエフェクト状態にしたくて

player.pms b9923 -1 を始めに一度だけ実行
player.saa 0.1 を常時走らせる(一度だけ実行してもなぜか数秒で元に戻ったので)

としたのだけれど、三人称/一人称視点の切り替え時や
会話終了時にエフェクトb9923の緑色の光が消えて霧状のエフェクトだけが残ってしまいました。
エフェクト自体のの仕様だと思い、会話終了時、視点切り替え時にも"player.pms b9923 -1"を実行しようと思ったのですが
その視点などが切り替わる際に1度だけ処理を実行、ということはできるのでしょうか。
704名無しさんの野望:2011/12/16(金) 09:20:06.62 ID:hq4QyjtM
>>702
Onloadに関して不用意な発言で大変失礼いたしました
アドバイスもありがとうございます

>>703
オーラを発する指輪MODに
常時エフェクトの好例があると思います
正式名称は不明ですが
705名無しさんの野望:2011/12/16(金) 10:41:40.49 ID:Gpq/MmK2
結局原因はUpdate3Dの再OnLoadだったんですかね。
それならいいのですが。
706名無しさんの野望:2011/12/16(金) 10:51:13.88 ID:Gpq/MmK2
>>703
スクリプトでPOVが変化した時だけ何かをする、て事なら例えばこんなかんじで。

short a

begin GameMode
if ( a != IsThirdPerson )
set a to IsThirdPerson
;----ここにやりたい事を
endif
end

会話も検出するならこれを追加で。

begin MenuMode 1009
set a to 999 ;----0/1以外のなんか適当な値
end

でも普通はEffectShaderやAlphaはロードやEnable等で表示の初期化が起きない限り
原則ずっと有効だと思うのですが。
EffectShaderはたまに消えたりしますけど。そういう場合はAbilityで。

Abilityの例えば「AbGhostNPC」や「MS47Invisibility」も状況は同じなんですかね。
EffectShaderのParticleだけが残るならChameleon関係な気もしますし、他MODから
それこそUpdate3Dやらなんやらを常時連発されて謎状態になってるのかもですし。

でも対症療法で問題無く動くのならそれでOKな気も。
707名無しさんの野望:2011/12/17(土) 09:59:55.12 ID:4RDbS72/
GetRandomPercentは
小数点以下も計算してますか?
708名無しさんの野望:2011/12/17(土) 11:16:31.60 ID:LpZi1APY
戻り値は0-99の整数ですけど。
709名無しさんの野望:2011/12/17(土) 11:57:22.79 ID:4RDbS72/
助かりました、点以下は意味なすとは
710703:2011/12/17(土) 19:08:37.13 ID:ovKS4uR3
>>706
おおなるほど!
そういう風に書けばPOV以外にもなにかしら状態を切り替えたときだけ実行、ってのが出来るんですね。
大変参考になりました。ありがとうございます。
711名無しさんの野望:2011/12/18(日) 02:01:00.11 ID:ojRcK3kd
blenderでウェイトペイントをした際ゲームで確認する前にポーズを付けてウェイトがちゃんと付いているか
確認したいのですがそのような方法はどうすればできますでしょうか?
712名無しさんの野望:2011/12/18(日) 02:16:02.98 ID:QIw5JTeT
>>711
ボーンにくっつけてボーンを選択してモードをポーズモードにして動かすとか
詳しくは「oblivion ポーズ 作り方」とかでググれば出てくると思う
713名無しさんの野望:2011/12/18(日) 02:35:48.58 ID:UZ3G4vJF
>>711
http://www.4shared.com/file/DTvDix2I/Bone_for_Weight_Test.html
うちで使ってるBoneのファイルを上げてみたから、良かったらどうぞ。
Blender2.49bのファイルです。

装備を作成中のファイルを開いてShift + F1で開くウィンドウ(Append or Link)からこのファイルを選んで
Object>Scene Root.01選択で導入→装備をこのBoneにMake Parent→
Pose ModeでBoneを動かしてweightのチェック。
Exportするときは元のBoneにMake Parentしなおし。
他の人がどうやってるのか知らないですが、うちはそんな感じ。
714名無しさんの野望:2011/12/18(日) 02:59:17.20 ID:UZ3G4vJF
http://www.4shared.com/file/CVFl0YXD/Bone_for_Weight_Test.html
ごめんなさい、Boneの出自を記載したtxtファイルを付けて上げ直したのでこっちで。
715名無しさんの野望:2011/12/18(日) 03:04:38.46 ID:nKV9ua9S
>>714
横からだけど、ちょいと今Blenderの勉強しておりまして資料にありがたく頂きました
716名無しさんの野望:2011/12/18(日) 03:13:32.14 ID:ojRcK3kd
>>712
レスありがとうございます
ポーズと同じ作り方でよかったのですね、参考になりました
ポーズの作り方についても早速ググってよく読んできます
>>713
レスありがとうございます
丁寧なご説明とご使用のボーンまで上げていただいて助かりました
ありがたく頂戴してblenderとにらめっこしてきます!
717名無しさんの野望:2011/12/18(日) 11:22:17.92 ID:XP1pahlp
Weight付けを実際のスケルトンで確認したい、て事なら手順的にはこれでも。、

ゲームで使ってるSkeleton(beast).nifを「ImportSkeletonOnly+〜」でImport、
そのスケルトンを選択してその装備nifを「ImportGeometryOnly+〜」でImport、
あとはPoseModeで各Boneを動かしてみれば多分。

要するにポーズやアニメを作るのと同じ事で。
その状態で「ExportGeometryOnly」でExportしてもOKです。

あと、確認に毎回ゲームを起動するのが面倒、て事なら、WindowModeのゲームと
Blenderを同時に立ち上げておき、BlenderでExport→ゲームで一度その装備をはずして
再装備すれば変更が即反映されます。
718711:2011/12/18(日) 19:40:26.55 ID:ojRcK3kd
>>717
レスありがとうございます
こんな方法もあったのですね
しかもゲームを立ち上げたままエクスポートして確認できるなんて知りませんでした
これで少し作業がはかどりそうです!
719名無しさんの野望:2011/12/20(火) 19:44:59.13 ID:5o9YqJZp
全力スレから取り下げ移動です
CSだとセーブ時にクラッシュするespのSCをtes4editで変更したとして
CS外でコンパイルする方法があったら教えてください!
720名無しさんの野望:2011/12/20(火) 21:49:05.17 ID:JFlLNzHN
CS以外にコンパイラは無いです。恐らく。
出来ないのはesp全体のセーブ(File→Save)で、そのスクリプトのScript→Saveは
出来るんですよね?

そういう事なら、CSでそのスクリプト関係以外をIgnoreしてespをとにかくセーブ
出来る状態にする→スクリプトを変更してセーブ→TES4Editで中間コードをコピペして
他の部分も辻褄を合わせる、じゃダメですかね。やった事無いですけど。

でもそれ以前にまずespのセーブでクラッシュ、てのをなんとかするのが
筋で最優先な気も。
721名無しさんの野望:2011/12/20(火) 22:52:08.29 ID:5o9YqJZp
>出来ないのはesp全体のセーブ(File→Save)で、そのスクリプトのScript→Saveは

その通りです

>筋で最優先な気も。

うちだと落とした状態でそうなってるMODもあるもので

抜け道のアドバイス、ありがとうございます!
722名無しさんの野望:2011/12/30(金) 00:58:31.42 ID:vs5itOr9
同じく全力からの取り下げ移動です、質問させてください

スカイリムを遊んでいる際に、オブリ装備をスカイリムへ移植したものが多くありました
スカイリムもひと段落してオブリに戻ってきたのですが、今度はスカイリムから
オブリへ移植できないかとチャレンジしています

Blender上ではテクスチャもUVもしっかりしているのですが
いつものob装備用のエクスポートをするとテクスチャもUVも設定が消えてしまいます

基礎知識もなく、いつもはやりたい事をネットで調べながらやっているので
今回は説明しているサイトやブログもあるはずもなくお手上げ状態です

そもそも今のツールでは不可能なのか、何か特別な操作が要るのか知りたいので
もしスカイリムをプレイされている方がいらっしゃいましたら
ご教授お願い申し上げます
723名無しさんの野望:2011/12/30(金) 02:15:45.84 ID:ubbkjtdv
比較的初歩的な質問だと思うのですが該当スレが見当たらないのでこちらで質問します。

OBSE経由でCSを起動するようにしたのですが、HUD系のModにPluggyが必要なので
Pluggyを入れ、OBSE_Elys_Pluggy.dllをリネームするタイプのModなのでリネームしました。
そうしたら、OBSE経由でCSを起動する事が出来なくなり、OBSE経由で起動する度に
dllを元の名前に戻さないといけないのですが、こういった手間を無くす方法は有りませんか?
724名無しさんの野望:2011/12/30(金) 16:39:06.76 ID:01gfpUbI
Pixivを参考にすれば制作しやすいんじゃない?

http://www.pixiv.net/mypage.php
725名無しさんの野望:2011/12/30(金) 17:15:47.77 ID:42kEZ7mm
blender 講座 で検索したらいろいろ出てきたけどモデリングの方法とかっぽくね?
726名無しさんの野望:2011/12/30(金) 19:04:31.04 ID:gtbp30y4
>>723
よくわからんけど、リネーム前と後の両方置いとけば?
727名無しさんの野望:2011/12/31(土) 03:13:18.05 ID:GmBODJCP
>>722
出来る出来ないで言えば、出来ます。
何をもってして特別な操作というかは置いといて、
普段オブリの装備作成ではやらない手順は当然発生します。

今はまだツールが揃ってないので
TES4⇔TES5間でのコンバートは面倒でハードルが高いです。
現状は個々人がやり方を模索してる時期です。
基本的に海外のサイトやForumを自力で調べて解決するつもりで考えるのがよいかと思います。
Blender以外のNif関連ツールの最新版やそれに関する情報は下記からたどれます。
http://niftools.sourceforge.net/forum/

http://www.skyrimnexus.com/downloads/file.php?id=3790
にBlender利用者向けのSkyrim NIF作成チュートリアルがありました。
試したところ自分の環境ではここに記載の内容でBlender上での
Skyrim装備作成が出来たので記載内容に大きな誤り等はありませんでした。

Blenderに取り込んでしまえばあとはObliへのコンバートは既存の技術で出来ます。
Skeleton構成がかなり違うので形状やWeight調整等がそれなりに手間になるかと思います。

最後に、やろうとしている移植が「公式のリソースの改変もの」なら個人での利用にとどめておいたほうがよいです。
TES4⇔TES5のような異なるゲーム間での公式リソース流用はBethesdaではNGです。
他の作者のMODの移植もよくトラブルになるのでライセンス回りはご注意を。
728名無しさんの野望:2012/01/01(日) 00:21:07.21 ID:BUIShadg
あけましておめでとうございます

>>727
まさに望んでいた回答です、試行錯誤してみようという気になれました

そして・・・色々ためした所、コンバートできました!
しかしテクスチャの透明の処理といいますか、スカイリムではテクスチャが透明になる所が
オブリビオンに持ってきたところ透明にならず下地の色が出てしまっています
これは仕様の違いなのかな?と思っています

最後にライセンス周りの注意喚起ありがとうございます
せっかくの楽しく遊べるmodがトラブルの元になるのは嫌ですからね
自分だけで満足していたいと思います
729名無しさんの野望:2012/01/01(日) 07:28:29.11 ID:pj3ufBBW
>>728
おめでとうございます!成功したようでなによりです。
テクスチャが透過出来ないのはDDSがDXT5などになっているか確認したうえで
NiAlphaPropertyを手動で追加すればいけるものもあるかもですね。
730名無しさんの野望:2012/01/01(日) 07:29:22.05 ID:pj3ufBBW
あ、下げ忘れた。
731名無しさんの野望:2012/01/01(日) 19:38:52.40 ID:BUIShadg
>>729
びっくりです、実はDDSもDXT5もNiAlphaPropertyも
ちんぷんかんぷんだったのですが、調べて弄ってみたところ
正常に表示されるようになりました!まさにエスパーですね

もう一つコツといいますか、簡単に出来る方法があれば教えて欲しいのですが
位置情報がズレていまして、現状Blenderで調整→エクスポート→オブ起動し確認の繰り返しで
かなり手間になってしまっています、何か手順の省略などありませんでしょうか
732名無しさんの野望:2012/01/01(日) 22:21:17.26 ID:LO27N2vo
>>731
Obを起動したままエクスポート
装備脱着ですぐ更新されますよ
733名無しさんの野望:2012/01/01(日) 22:39:27.41 ID:BUIShadg
おお!そんな事ができるのですね・・・
これでかなり楽になりそうです、さっそく試してみます
734名無しさんの野望:2012/01/02(月) 01:48:08.18 ID:/VIB76Is
>>732
ID:BUIShadgじゃないけどありがとう
735名無しさんの野望:2012/01/05(木) 08:19:26.47 ID:c1yh0+pH
私様メモ。
水底 海底 膜 LOD Frequency 0 Amplitude 5000 Additive
NibenBay
60.00.-32.32.NIF
AbeceanSea
60.-64.00.32.NIF
60.-64.-32.32.NIF
TopalBay
60.00.-64.32.NIF
60.32.-64.32.NIF +周辺
736名無しさんの野望:2012/01/05(木) 22:45:01.80 ID:c1yh0+pH
私様メモ2。
AnyObjectで複数敵自動探索殲滅はFindよりFollowのがTarget切り替え良好かも。
FactionとAggression>5で近付くと戦闘が始まる様に。
Findの遠い/逃げる相手とのCombat/Travelの競合で固まったり弓構える/納めるの
繰返しが起きない。かもしれない。多分。
737名無しさんの野望:2012/01/06(金) 08:18:40.75 ID:MnJBfMH1
私様メモ3。
でもAnyObjectって多分全部の組み合わせはデバッグしてないし、対象が複数でも
必ずしも自動的に順次その位置にTravelする、て事ではないのであんまし万能を期待
しない方が。
738名無しさんの野望:2012/01/06(金) 19:03:54.48 ID:S76/h6Qn
箒(broom)などmiscitemをNPCに使わせることによりできるモーションのまとめのようなものはないでしょうか?
いくつか代表的なモーションだけでもあれば非常に助かります
739名無しさんの野望:2012/01/06(金) 21:23:35.93 ID:MnJBfMH1
>>738
各オブジェとアニメの関係はCSのMiscellaneousのAnimObjectと、GamePlay→
IdleAnimationsのAnimObjectAnimsにまとまってますけど。
SI関係はUniqueIdleAnimsに。
関連付けは見たまんまなんで特にはドキュメントも無い気が。

そうではなくて仕組みやオプションの意味、作り方の解説とかそういう話なら
AnimObject、IdleAnimations、UseItemAt とか検索してみたり。
740名無しさんの野望:2012/01/06(金) 21:26:23.00 ID:MnJBfMH1
私様メモ4。
AnyObjectがインベントリ内の時は非装備中なモノが有効。さらに、
Taget:
相手がNPCだと自分のResponsibilityが低い/相手死亡時に有効 Creatureには常に有効
Loacation:
NPC/Creatur常に有効

TargetがややこしいのはFindで窃盗みたいなCrime関係の必要上。多分。
NPCsだけはResponsibilityが低い/相手がEvilの時有効。Followは動かない。
741名無しさんの野望:2012/01/06(金) 21:52:44.70 ID:MnJBfMH1
あれ、インベントリ内アイテムも相手がEvilならOKかも。という事で。
742名無しさんの野望:2012/01/07(土) 00:20:45.69 ID:+qSfO2ru
>>739
ありがとうございます
一つ一つ試しては再起動でグッタリしてたので助かりました
743名無しさんの野望:2012/01/07(土) 12:07:21.29 ID:JFud5rS1
独り言続き。
Findで固まるのは目的は見つけたのにPathが無い時かも。でFollowが有効。多分。
FindでもLocation=TargetでRadiusが充分近ければ行けたりする。かも。
744名無しさんの野望:2012/01/09(月) 00:07:46.21 ID:2SIjE6n5
質問させてください
テクスチャーの圧縮についてなんですが
肌テクスチャーで4096x4096のような巨大ファイルのノーマルマップは
皆さんどのように作っておられますか?

肌のような微妙な凸凹の細かい物体でのノーマルマップは
DXTBmp、GIMP2での圧縮とアルファチャンネル追加で酷く劣化してしまいます
手持ちのツールはPhotoshopELがあるのですが
これアルファ無しで2048x2048以下でのDDS生成は凄く綺麗で劣化をほぼ感じないのですが
DXT5で直接生成するとアルファチャンネルが真っ白(黒ならマシなのですが・・)
仕方ないのでノーマルマップ変換後BMPで保存後
アルファチャンネル追加の為DXTBmpでDXT5で生成すると途端に劣化してしまいます

拡大して観察してみるとPhotoshope生成DDSでは均一な地肌に細かく残っていた凸凹が
DXTBmpでは凸凹ではなくブロックノイズ状の染みになり地肌を荒らしてしまっているようです

4096x4096で綺麗なノーマルマップを作っている方もいらっしゃるようですが
何か特別な手段や手法を使っているのでしょうか?

745703:2012/01/09(月) 00:21:32.11 ID:jnDMdUN+
Player.SetAV Invisiblility 1 や
Player.SetAVC 47 1 を使って

アクティベート等の行動を起こしても常に透明、という状態で動き回れるようにしたいのですが
これをONにした状態で扉やオブリビオンゲートをくぐってセルを移動するとプレイヤーキャラが動かせない状態になってしまいます。
止まった後に一度OFFにすると動けるようになるのですが、このあたりの処理をスクリプト上でどう書いたらよいのか分かりません。

扉をくぐってセル移動し、ロード完了後に一度だけ処理を走らせる、という方法や
それ以前にSetAV Invisiblility 1にした状態でも止まらず扉をくぐるような方法はありませんでしょうか。
746名無しさんの野望:2012/01/09(月) 00:21:51.32 ID:jnDMdUN+
名前欄誤爆です。失礼。
747名無しさんの野望:2012/01/09(月) 01:25:26.12 ID:r4P7bJRR
Invisiblilityじゃなきゃダメなんですか?
Chameleon 100ではダメなんですか?
748名無しさんの野望:2012/01/09(月) 02:11:57.95 ID:jnDMdUN+
>>747
Chameleon 100でやろうとすると何故か効果が数秒しか続かないんですよね・・・
こっちを向いてるNPCの前でPlayer.SetAV Chameleon 100 とすると
数秒だけはそっぽを向いてSneakアイコンも暗くなるんですがすぐにまた戻る、と。
Invisibleなら一度 1 を指定するだけでずっと効果が続いてるのですが。

スクリプトで常時SetAV Chameleonし続けるというのもスマートじゃないと思いまして
Invisibleでどうにか出来ないかなと。
749名無しさんの野望:2012/01/09(月) 07:25:02.55 ID:R3wqOMAP
>>744
マルチするなら元の依頼を取り下げる

一時間で我慢がなくなるってどうなのよ
750名無しさんの野望:2012/01/09(月) 07:30:21.50 ID:QMctB/qQ
>>748
スペルや装備品でカメレオン100効果を付与するんじゃ駄目なの?
751名無しさんの野望:2012/01/09(月) 10:06:31.28 ID:SJhW9Px0
エンジニアリング以外にもなんか期待されてるんですかね。

>>744
DDS変換ツールは他にもありますけど。アルファの扱い方とかも。
SSスレでどなたかが答えてくれると思います。きっと。
752名無しさんの野望:2012/01/09(月) 10:15:21.76 ID:SJhW9Px0
>>745
ドアを通ったタイミングは多分GetCellChangedとかGetParentWorldspaceとかで分かる
とは思うのですが、でも頻繁にInvisibilityを弄っていいかはまた別問題で謎です。

で、以前の話の続きだと思うのですが、Abilityの「AbGhostNPC」と「MS47Invisibility」
だとどうなるんですか?
コンソールで「player.addspell 4d7d8(又は2f863)」とすればすぐに。

色々ダメなら対症療法を重ねるより多分原因のMODを外すのが早い気がするですよ。
753名無しさんの野望:2012/01/09(月) 10:24:47.25 ID:EPK9/7Vk
どなたかCSの日本語ヘルプ再UPしてくれませんか?お願いします。
754名無しさんの野望:2012/01/09(月) 10:54:08.93 ID:FgAomFfU
日本語化wikiに普通にあるんだがあれじゃだめなのか?
755名無しさんの野望:2012/01/09(月) 11:16:50.35 ID:EPK9/7Vk
>>754
日本語化wikiの確認を怠ってました、無事見つけました。
ありがとうございます。
756名無しさんの野望:2012/01/10(火) 00:35:40.53 ID:zaeYey1w
>>747,750,752
AbGhostNPC等に関してもエフェクトが途中で止まる、という状態だったのですが
エフェクトシェーダはBeautiflPeopleのMoonShadowElfのスクリプトが、
chameleonの値はSupreme MagickaのスクリプトがUpdateする形になっていたようでしたので
上記の該当箇所を変更してInvisibleは使わずChameleonで実装できました。

ご回答ありがとうございます。勉強になりました。
757名無しさんの野望:2012/01/10(火) 10:22:10.17 ID:GNyu/PZO
なるほどそゆことですか。動いてよかったです。
758名無しさんの野望:2012/01/10(火) 10:28:52.54 ID:GNyu/PZO
長い独り言。
Wateffrontの大Subspaceは水面ぎりぎりZが15。

目標とPathがSubs内でも水上の場合は泳ぐとアクターのZは水面下でSubs外なんで
泳ぎ中にそのパッケが終ると既に外にいる事に。
結果として海岸の不定形状=Subsの境界、という事に。

ちなみにPCが水に入るとタマネギやコンパニオンが急にどこかに走り出すのは
その辺が理由。

またSubs外の沖から入るには陸部分のSubs下ギリにマーカー、Pathも同様に敷くと
成り行きで泳ぎから陸に上がって自然にSubs内に。ドア不要。
陸上Subsでも地面が凹んでいれば同じ。何かに使えるかも。

あと泳ぎ中はアニメドアはActivateしない。
斜面の足場でそこだけ立たせたり
リアルに船に乗せるならドアアニメをリフト機構+乗りアニメとか。
759名無しさんの野望:2012/01/11(水) 10:13:19.64 ID:O6/H/yu7
もっと長い独り言。
Subspaceでの同セル内ロードドア。
WorldSpaceではうまく動かない。NPCがActivateを繰り返したり。
なんで別Interiorや5x5より遠い場所を迂回とかスクリプトで強制移動とか。
ドアのスクリプト例。

ref a
float p

begin OnActivate
set a to GetActionRef
set p to GetDoorTeleportX
a.SetPos X p
set p to GetDoorTeleportY
a.SetPos Y p
end

必要ならZも。OnActivateブロックはLowLevelProcess時、PCが側にいなくても動く。
OnPackage〜とかも同じ。ドアはScale 0でPC不可視。

で、Waterfrontみたいな場合は、陸→水のドアは水上Subs内に、水→陸のドアはXYが
陸地でZをSubsより下にすれば上の話と同じでドアActivateの移動→地形の成り行きで
Subsに自動的に出入りする事に。
ドア本来の移動とかSetPosとか必要無いんでスクリプトはこんなんで。

begin OnActivate
Return
end

これでFollowerはPCに従って連続的に水/陸に。必要なら複数箇所に。
WaterfrontのSubspace位置/大きさを変更してるMODとかあるのかしら。
それだと話がまたややこしく。
760名無しさんの野望:2012/01/11(水) 10:26:07.46 ID:O6/H/yu7
あれ、Scale0は嘘。ドアをPC不可視てどうするんだろ。
761名無しさんの野望:2012/01/11(水) 10:49:48.99 ID:O6/H/yu7
Meshes\magiceffects\null.nifでOKかも。
なんか適当なEditormarkerだけのnifがあればそっちのがCSで操作しやすい。
762名無しさんの野望:2012/01/11(水) 11:57:59.57 ID:O6/H/yu7
markerx.nifで別にいいのか。ゲームで見えるし。
作業用なんで後でnull.nifにしとけばそれで。という事で。
763名無しさんの野望:2012/01/11(水) 21:30:22.03 ID:FHbj1bx8
MOD作成中にバニラのAIパッケージを参考にしようと
CSのメニューからキャラクター→AIパッケージと進んだのですが、
何か1つでもパッケージを選択するとCSが落ちてしまいます。
NPCのAIを覗く際も落ちてしまいますが、こちらは以前は覗けた記憶があります。
OSはWin7の64bitです。
何か対策があれば是非教えていただきたいです、よろしくお願いします。
764名無しさんの野望:2012/01/12(木) 04:48:42.73 ID:rYQrVY7y
SHYに上げられていたMODを補完していた者ですが以前このスレで上げられていた資料を流してしまうのは
勿体無いと思い、全てではありませんが自分の保管していた分だけ上げさせて頂きました。
「その他」のMOD作成支援スレのサンプルフォルダにあります。
http://www.4shared.com/dir/XHPa_i5n/MODS.html#dir=143329693

横入り失礼しました。
765名無しさんの野望:2012/01/12(木) 11:07:56.64 ID:Vf97VseI
おー、乙であります。
766名無しさんの野望:2012/01/12(木) 11:22:48.88 ID:Vf97VseI
独り言は続く。
Waterfront南岸にドアがあるとPath探索に関してはSubsが無いのとほぼ同じ事に。
本来陸上を迂回するはずなのにのにショートカットして泳ぐNPCとかいるかも。
これどうしよう。

ドア経路が複数あるとNPCは目標までの合計距離の一番短いドアを選ぶ。
例えばドア迂回でジグザグの遅延配線みたいなPathを挟むと距離を調整出来たりする。
あの辺の地形でその手が行けるか後でやってみよ。
767名無しさんの野望:2012/01/12(木) 11:27:53.90 ID:c+Q2ZGtV
転送ポータルMODを導入するとNPCがポータルを利用しようとする
確かに最短なんだけどねw
768名無しさんの野望:2012/01/12(木) 11:39:09.37 ID:Vf97VseI
うん。そうなりますよね。その場合はドアのMinimalUseでなんとかなる事も。

あれ、非ロードセルのPathって全ポイント辿ってるのかな。単にドア間の距離かな。
まずそれ確認しないと。うー、なんかめんどくさくなってきた。
769名無しさんの野望:2012/01/12(木) 21:31:27.14 ID:Vf97VseI
結論。色々追い込めば行けるかも。
非ロード時はPathGridじゃなくてドア間距離ぽい。Subs内も。

Waterfront中央南岸は9セル半程度のドア経由距離ならIC西門経由より優先される。
それを超えると西門経由のが近くなって走り出す。
西門経由ルートに水面Pathを敷くと距離が稼げるかもしんない。

9セル半だと南対岸の街道辺りがギリギリ陸上西門経由のが近くなるかんじ。
770名無しさんの野望:2012/01/13(金) 10:23:31.95 ID:8sI2oRxQ
独り言がどんどんややこしい方向に行ってしまいましたが。

全力の人へ。
Waterfront沖ってSubspaceの関係で非常に特殊で、船位置がSubspaceの内/外かで
NPCの移動AI関係が変わって来たりするですよ。
あとクエとかで同じPathを通るのか、コンパニオンみたいにPCにFollowして
任意ルートを通るのかとかでも。

船の乗り降りメカニズムみたいな話に加えてそういった特殊な状況があるんで
全体として多分かなりややこしい話になりそうな気が。

AIとかスクリプトとかまだ不慣れでしたら、いきなりWaterfront沖ではなくて
別の単純な場所でまず色々試してみるのがいいかもです。
771名無しさんの野望:2012/01/13(金) 18:37:55.33 ID:mcDw9kkZ
パスグリッド設定に関して質問です

自動で置かれた黄色
手動で置いた赤
街道など移動の際に優先してNPCがルート選択する?青

3種類あるのですが編集の際に色を変えるやり方がわかりません
新規で作った街などに青いグリッドを設定したいのですが・・・
772名無しさんの野望:2012/01/13(金) 19:36:06.68 ID:8sI2oRxQ
青新規はAlt+右クリ、橙と赤/青変更はAlt+左クリ。ここを。
http://cs.elderscrolls.com/index.php/Edit_Cell_Path_Grid
773名無しさんの野望:2012/01/13(金) 20:07:28.90 ID:mcDw9kkZ
>>772
ありがとうございます
774名無しさんの野望:2012/01/14(土) 03:18:49.02 ID:U/suEc9u
>>770
全力質問スレで色々シロウト臭いScriptの質問してた者だよ。
ホント色々教えてくれてありがとー! なんか引数の置き方ちょっと分かった気がする。
あと>>759のRef。これ使った人のIDを変数に代入するんだよね? これも知りたかったありがとうイエー

今までの失敗と教えてくれた事を勘案すると、やっぱドアのLadderで
舟乗り降りが手に届きそうな範囲で一番スマートかなあ。
でもやっぱ乗船時間が来ても、ラダーに向かってくれるわけではないので
その前にFindでラダー発見するってパッケージを置いたりするといいのかな。
さっき現状のへっぽこ状態でテストしたら、NPCは舟に頭から突進してゴリゴリやってるうちに
いつの間にか乗船してご飯食べたりしてるw

NaturalWatersで増やした魚を狩るというパッケージもうまく動かなくて
俺の漁師MODは先行き暗いw LeveledCreatureターゲットに出来ねえwww
今のとこ、分かんない事が多すぎて、一個一個聞いてたらすごいジャマになりそうだから
もうちょっとググったりしたり過去ログ読んだりしてみるね。
ROMで居座るからまたよろしくね! ありがとー
775名無しさんの野望:2012/01/14(土) 10:15:10.48 ID:ap5xUvMb
>>774
>その前にFindでラダー発見するってパッケージを置いたりするといいのかな。

そのラダーがDoorならFindとかは不要です。単にドアの先のマーカーにTravelなり
Wanderやそこでeatさせれば自動的にDoorを使います。その為のDoorオブジェなんで。

ドアの作り方自体や同セル内ドアにはSubspaceが必要とかの話はOKなんですよね?
でAIの目的地とかは問題無いなら多分両ドア位置と舟Subspaceの関係に問題が。
また舟やドアが大Subspace内なのか外なのか、移動の開始位置はどこか、とか。

でもSubs+ドアってそれだけで充分ややこしいんで、もしアレならとりあえずは
Static→CollisionBox01を45度に傾けてScaleを調整、二つ山形にして舟の縁に置けば
それで行けると思いますけど。斜面方式ですが。

>いつの間にか乗船してご飯食べたり

それ多分移動経路が曖昧な場合のシステムの救済措置か偶然です。
まず経路を整合させとかないと後で色々問題かもです。

>魚を狩るというパッケージもうまく動かなくて

Findパッケージの話ですかね。
魚なら多分InventoryにScalesがあると思うんでそれをTargetで。
また舟のSubs内からは多分外をFind出来ないんでLocationを舟ドアの外に。
776名無しさんの野望:2012/01/14(土) 10:28:48.81 ID:ap5xUvMb
で、一個一個聞くのは別に全然OKだと思うですよ。最近暇ですし。
ただ、それがその目的に合っているかはまた別なんで、目的込みで聞いてもらった
方が多分話が早いです。


あと全然別なネタ的話ですが。
舟と漁師、て事ならStaticな舟を基地にする以外にも舟をHorseにしてそれにNPCを
乗せて水上をパトロール、魚と出会ったら降りて水中Combat、みたいな考え方も。

舟型の馬さえ作れば後は要するにIC周辺街道にいるImperialLegionRider〜と全く
同じ事なんで、適当にその辺の水上を行き来させとけば乗り降りもCombatも全部
成り行き任せでOKだったりします。

Waterfront岸で上陸/乗せたりは多分>>758のマーカー配置で特にドア不要。多分。
馬を舟にする話は過去スレのどこかに。
777名無しさんの野望:2012/01/14(土) 11:50:06.01 ID:U/suEc9u
うおーまたまたありがと。

実は今気付いたというか改めてHelp読んだんだけど、
家の中とかみたいな別セルとSubSpaceって意味が違う?
CSで見るとあるICWの緑色の四角い箱枠、あれもSubSpace?

だとすると、ワールド上の舟をSubSpaceで囲うとOKなのかな。囲いかたが分からないけどw
Helpには概念しか書いてねえwww
再三説明してくれた事だと思うけど、このレベルなのでほんと申し訳ない。

> Static→CollisionBox01を45度に傾けてScaleを調整、二つ山形にして舟の縁に置けば
> 魚なら多分InventoryにScalesがあると思うんでそれをTargetで。

その二つとも目からウロコだなあ。今まで馬鹿正直に木っぽいオブジェクト斜めに置いて
変すぎてガッカリしたりとかしてた。すげえ。

> それ多分移動経路が曖昧な場合のシステムの救済措置

まさにまさに。舟の影に泳いでいって見えなくなると突然ワープしてるw
まあ、誰も居ない森の倒木の音方式で、自分が見てる時だけ
それっぽく見えればいいかとかも考えたんだけど。

> あと全然別なネタ的話ですが。

イカス! それは是非とも導入してみたい。俺の漁師が7つの海に。
ちと過去ログ漁るでござる。たびたびかたじけない。
778名無しさんの野望:2012/01/14(土) 13:50:59.19 ID:ap5xUvMb
Subspaceて別セルそのものではなく、別セルの様に振舞うObjectです。
詳しい説明はここを。本家が一番正確なんで。
http://cs.elderscrolls.com/index.php/SubSpace

CSで見るならWaterfrontの塔のてっぺんとか船食堂の前後甲板上にある水色の線の
箱がそれです。
WFの真中あたりで思いっきりズームアウトすると出島全体を覆う大Subsが。
今問題になりそうなのはこれ。

CSでの定義はMiscellaneous→SubSpaceに。
線のままだとRenderWindow上では選択出来ないんでCellViewの右でオブジェ名右クリ
→EditするかView→SolidSubspaceをONしてRenderWindowで操作を。

Subspace+ドア方式で行くなら多分こんなかんじに。盛り付け例。
http://up.mnty.net/img/up000361.jpg (予想図。実際とは多分異なります)
この例では300x300x300の新しいSubspaceを作って舟を覆ってます。
右奥はCollisionBox01の斜面例。

CSでの実際の色々な操作はまずはチュートリアルを。
http://cs.elderscrolls.com/index.php/Category:Tutorials
779名無しさんの野望:2012/01/15(日) 10:19:57.22 ID:Gp0cSYN+
>>778

やーありがとー! カンペキに動いた! すごいよSubSpace
ゲーム時間丸一日背後から監察して、狩り飯寝る乗船下船全部動いた。
Nexusにあった漁師Resourcesとか使ってドアのNIFも交換して
見た目もちゃんとそれっぽく。
あと、自然と魚狩りのパッケージも動作するようになったよ。
WaterBreathingを付けてみたせいか、AIパッケージの優先順位を見直したせいか
経路がちゃんとなったせいかは分からないけど。

教えてもらわなかったら絶対途中で挫折してた。ほんとありがとう。
たぶんまた聞くからその時はよろしくお頼み申す。
780名無しさんの野望:2012/01/15(日) 11:49:21.09 ID:R1+HtUqs
おー、行けましたか。
Resourceてどれです?なんかおもしろそう。

WFの大SubSpaceとの関係はOKなんですかね。
舟位置が大SubSの外か、大Subsと重なってても舟床やドア、マーカー類のZが
全部15未満なら、NPCが水上だけで生活している限り問題無いとは思うのですが。
781名無しさんの野望:2012/01/15(日) 22:02:37.36 ID:Gp0cSYN+
>>780
ICWaterfrontのだいぶ西方沖に配置したから、SubSpaceはだいじょぶ。
最初説明してくれた話題、だいぶ理解が進んだから分かるようになったw

http://www.tesnexus.com/downloads/file.php?id=39274
漁師用諸々Resourceはこれ。これのロープをScale落として
船上SubSpace内部のドアNIFにしてみた。
魚の串焼きパーツとかも良い感じなので今後の夢がひろがりんぐ。
782名無しさんの野望:2012/01/15(日) 23:18:10.88 ID:R1+HtUqs
お、いいかんじの魚や網が。ありがとうございます。

で、Findですけど、この場合は少し偶然ぽいけど動くのかも。
Findって自動的にWander動作が入るので、船上が狭くて目的地が船外に→ドアを
通って外に出る→で、うまく行ってるのかもです。

テストして特に問題無ければOKな気がします。
783名無しさんの野望:2012/01/17(火) 03:43:09.81 ID:OTaueVy9
>>735
これって海底が2重になってるやつです?
ずっと悩んでてここでも何度か質問したけど結局分からずじまいで・・・
nifをいじればいいのでしょうか、それともCSか何かでFrequencyとAmplitudeを
いじればいいのです?
784名無しさんの野望:2012/01/17(火) 09:01:54.57 ID:9W07/4FJ
多分そうです。偽海底の話です。
遠景用のnifを作り直します。外部ツールやCSのHeightmapEditで。
FrequencyとかはHeightmapEditでの指定の覚書き。
SSスレ201を「膜」で探すと細かい話が。

あとVeryLow指定やコンソールでTogglerLiteBriteした時に出る地面の膜も
理由は少し違いますが現象的には同じです。多分。
785名無しさんの野望:2012/01/17(火) 10:12:43.22 ID:9W07/4FJ
ネタサンプルです。NPC用の乗れる舟(馬)です。

http://up.mnty.net/img/up000376.zip

PCも乗れますが素の馬なんでFTでついてきたりします。
その場合はEnableFastTravelやGet/Set/ClearPlayersLastRiddenHorse等で多分。
786名無しさんの野望:2012/01/17(火) 10:41:52.21 ID:9W07/4FJ
あれ、泳ぎ中なのにジャンプする。なんでだ。swimfastforwardだからかしら。
787名無しさんの野望:2012/01/17(火) 11:07:01.22 ID:9W07/4FJ
むむ、swimfastforwardを作るとPCもジャンプする。PCイルカ化が視野に。
788名無しさんの野望:2012/01/17(火) 11:49:56.36 ID:9W07/4FJ
アレ? PCてデフォで泳ぎ中ジャンプしましたっけ?
789名無しさんの野望:2012/01/17(火) 12:05:35.33 ID:atWenaPp
ツイッターと間違えてないですか
790名無しさんの野望:2012/01/17(火) 12:20:37.83 ID:9W07/4FJ
ごめんなさいね。最近独り言多くて。
791名無しさんの野望:2012/01/17(火) 13:24:48.73 ID:JddW852A
ここで何かが捗るんならまー良いじゃないか
埋めと違っていずれ誰かの役に立つんだろうし
792名無しさんの野望:2012/01/18(水) 09:22:06.37 ID:T2SswIFy
そういってもらえると。独り言続き。
馬舟、地上で死体になるとなんか軽すぎて重心も変なんでRigidBodyのInertiaとか
Centerとか調整した方がいいかも。元のMOPP使った方がいいのかな。

あとFT関係の辻褄合わせて結構面倒かも。
現在のEnableFasttravel状態の検出ってどうやるんだろ。
793名無しさんの野望:2012/01/18(水) 21:36:31.12 ID:T2SswIFy
アクターの生きてる時のコリジョン形状てSkeletonのBSBound→Dimensions。
Y!=ZでXが大きい横長形状の時はYZどちらが大小でもゲームでの形は同じ。
でもZに応じて喫水位置が変わる。多分。
NifSkopeで見たときに横に平たいと喫水位置が低い。
794名無しさんの野望:2012/01/19(木) 00:13:16.27 ID:fNEk2vbZ
あんまりやりすぎると質問した方も恐縮しちゃうん
795名無しさんの野望:2012/01/19(木) 08:50:27.31 ID:BXvVFAE2
今思い付きで船MOD作ってて特に誰の為、て事ではないんですが。
上げたものも。ていうか正直自分用覚書の意味大なんで。遠慮せずごゆっくり。
796名無しさんの野望:2012/01/19(木) 09:22:38.63 ID:BXvVFAE2
で、EnableFastTravel状態は分からないぽい。
ActivateとGetRider/LastRiddenHorseの反映はタイミングが違う。
SetGhost/WaterBreathingはAbility/OnLoadどっちにしよう。

つかHavokで行けないかな。
797名無しさんの野望:2012/01/19(木) 21:38:51.14 ID:0g+MbpcW
斜め上にふきとべばおkか
798名無しさんの野望:2012/01/20(金) 06:27:39.85 ID:MK6JAFly
独り言続くならブログとかTESNSとかでやったほうがいいんじゃね、他の人が単発質問とかしづらくなるし
799名無しさんの野望:2012/01/20(金) 07:15:31.96 ID:zHpRUFmW
>>1にも
自己解決の独り言などを書き込んでいくスレ

って書いてあるし別にいいんじゃないかな。
800名無しさんの野望:2012/01/20(金) 09:39:28.95 ID:9UIzE38a
誰かしらここにいてくれるのが分かるから自分は別にいいと思う
質問しづらいとは感じない
むしろ詳しそうな人がいるんだからどんどん質問するべき
801名無しさんの野望:2012/01/20(金) 10:13:21.87 ID:iLWCwPsZ
なんかご迷惑でしたらごめんなさい。Havok舟ネタです。

http://up.mnty.net/img/up000423.zip

乗れますけどまだ自分では動かないです。ただボーッと浮いてるだけ。
NPCや荷物を乗せて掴んで引っ張ったりは出来ます。ゆっくりなら。
802名無しさんの野望:2012/01/20(金) 12:59:20.56 ID:wborncg0
そう混んでるスレでもないし、無関係の内容を書いてるわけでもないし
SNSとかでももちろんいいけど、検索に引っかかりやすかったりとかで
広く参考になりやすいのはこっちだから、いいと思うけどなー

>NPCや荷物を乗せて掴んで引っ張ったり
舟以外にも荷車とかも楽しそう!家畜運搬でドナドナ・・・
803名無しさんの野望:2012/01/20(金) 21:25:51.81 ID:qbpCxy2v
漁師MOD誕生の瞬間であった
804名無しさんの野望:2012/01/22(日) 19:50:35.44 ID:YD2z32wm
ありゃ?
昼くらいに見たときDAT落ちと表示だったので新しく建ててしまったOrz
805名無しさんの野望:2012/01/22(日) 21:02:51.32 ID:Dxt6AS2F
Havok舟その3。PlayGroupで操作出来ます。

http://up.mnty.net/img/up000447.zip
806名無しさんの野望:2012/01/23(月) 02:25:03.60 ID:Jjq1V/fu
>>804
乙w

807名無しさんの野望:2012/01/23(月) 20:38:49.49 ID:Pa7PvHZJ
Havok舟その4。動きアニメ大体全部入り。

http://up.mnty.net/img/up000450.zip

操作をなんとかすれば乗って遊べると思います。
でも乗り降り判定とかを真面目にスクリプトで書くと大変そうなんで、
特に乗員の有無は考えずにリモコン的操作にするのが簡単かも。

Cell境界でのHavokリセットにまた嵌まりました。
これ根本的な解決が出来るのかは謎です。
808名無しさんの野望:2012/01/24(火) 04:14:46.66 ID:0K1+yswy
blenderの質問なのですがここで大丈夫でしょうか
weight設定やらmatの設定やらをチュートリアルを見ながら終らせて
いざ.nifに出力しようと言う段階なのですが、

ちゃんとBP_にweight設定出来ているにもかかわらず
「weightが設定されていない」と警告されてnif出力が出来ません

該当箇所は頂点のみで、その頂点を含む周辺は全てweight1.0で
それぞれ適切なBP_にウェイト設定されているように見えています
解決方法があるのであれば御教授願います
809名無しさんの野望:2012/01/24(火) 07:30:11.22 ID:Z00PPXwe
>>808
かまわないけどBP_ってFollout3のNifから実装されててOblivionだと無いので知らない人の方が多いと思うよ
多分SkyrimのNif弄ってるんだろうけど、わかるスレ行った方が早いかも

FalloutのNif使うの前提でそのエラーなら一応答えられます

>ちゃんとBP_にweight設定出来ているにもかかわらず
出来ていないからエラー吐きます、エラー後に設定されて無い頂点を表示しますからその状態のまま該当するBP_にアサインして下さい
アサインボタン押せば新たに追加する形で登録されます

それでもエラーを吐く場合boneがおかしいはずです、他のNIF読み込んでボーンを比較して下さい、何か欠けてる部分があったりするはず
このためにBoneWeightCopy時に頂点にweightが付いていないのでエラーを吐いてます、元のNifがおかしくてインポートするとboneが欠けちゃうNifとかがたまにあり、それが原因です。

正しいboneに差し替えて最初からweightを取り直してください、そしてエクスポートすればエラー吐きますからその指示に従ってBP_の設定されて無い頂点をアサインしていってください。
これを数回繰り返せばちゃんとエクスポートできます

SkyrimのNifは弄った事無いのでこれが該当するかは知りません
810名無しさんの野望:2012/01/24(火) 10:48:20.37 ID:0K1+yswy
>>809
Boneは盲点でした。早速確認して見ます。

お察しの通り、OBLIVIONではなくFallOutでのMOD作成をしてます
FallOutの作成支援スレが落ちて居た様なのでスレチ覚悟で
こちらに質問しました

アドバイスを元にもう一度試して見ます
返答ありがとうございました
811名無しさんの野望:2012/01/24(火) 19:15:10.25 ID:+nxDtbmW
>>810
falloutの場合は人体の破壊があるから、四肢と胴体、頭部のいずれかにアサインしてやらないとエクスポートできないんだったかな。
812名無しさんの野望:2012/01/25(水) 10:43:51.23 ID:B6cD6afm
また独り言でアレですが。

舟を宙吊りにするとフワフワして結構いいかんじに。
あと普通のHavokオブジェにOL_TRIGGERのbhkSimpleShapePhantomを付けると
そこだけOnTriggerが有効に。複数OK。OL_TRAPと共存も。乗船検出はそれで多分。
あれ、弾丸的なモノてこの辺の組み合わせで出来たりするのかな。
813名無しさんの野望:2012/01/28(土) 20:07:37.73 ID:Tdslxndr
上の続きですが、純粋Havok飛び道具もある程度行けるのかもです。

PlayGroup Unequipするとその時のキーフレームアニメ量がベクトル的に残って
その方向に射出される事に。
タイミングや量が謎なのでも少し要確認ですが。

でもこれ仕様か偶然どっちだろ。
バニラに初速付きでUnequipするオブジェってありましたっけ。
814名無しさんの野望:2012/01/29(日) 09:31:28.44 ID:dedSna0/
midasで地形に反射して飛び回る攻撃魔法が複数あるけど
あれってhavokとは違うの?
815名無しさんの野望:2012/01/29(日) 09:32:29.91 ID:dedSna0/
地面転がってくのもあったかな
816名無しさんの野望:2012/01/29(日) 10:57:22.03 ID:BH14lMqX
うーん、どれでしょ。とりあえず純粋Havok飛び鈍器のテスト版です。

http://up.mnty.net/img/up000506.zip

初速が微妙に一定しない理由は謎です。なんでかな。
817名無しさんの野望:2012/01/29(日) 15:37:21.71 ID:BH14lMqX
いっこみつけた。でもこの場合動きが速くて飛距離のばらつきが目立たないかも。
上のsample.nifも5番NiTransformData→Translations→二つ目のキーのYを3000ぐらい
にすると安定して的を狙えると思います。
でも鈍器的には速過ぎなんでLinearDampingとか増やすといいのかな。
818名無しさんの野望:2012/01/30(月) 00:35:34.11 ID:dYk1YLGw
装備召還魔法を使って変身MODを作成しようと思っています
変身中にだけ使える魔法を入れたいのですが上手くスクリプトが書けません
Bound Armor ExtraとScript effectの効果を持った魔法を作成し
その魔法の効果が継続している間だけ(変身中だけ)特定の魔法をイベントリに追加したいのです

ScriptEffectStartで魔法を追加するところまでは成功したのですが
ScriptEffectFinishによって、追加と同時に魔法が消えてしまっているようです
ScriptUpdetaを使えばいいというのは何となくわかるのですが
どのようにスクリプトに組み込めばいいのか、よくわからないのです
このスレでもちらほらScriptEffectUpdetaの話が出ていますが
自分には高度すぎて理解できません…

初歩的な質問になってしまいますが、アドバイスをいただけないでしょうか
お願いします


819名無しさんの野望:2012/01/30(月) 00:41:53.81 ID:dYk1YLGw
ちなみに、最初に試したスクリプトがこちらです

---------------------------------------------------------

ScriptName aaaMagic

Begin ScriptEffectStart

player.AddSpell スペルのID

end

Begin ScriptEffectFinish

Player.RemoveSpell スペルのID

end

-----------------------------------------------------------




ScriptEffectStartで魔法が追加されて
ScriptEffectFinishで、効果が切れると同時に魔法がイベントリから消えるんだ!
と思って書いたものです
初心者丸出しの質問ですみません…
820名無しさんの野望:2012/01/30(月) 00:49:12.34 ID:KIIartVa
イベントリの人がこっちにも居るw
821名無しさんの野望:2012/01/30(月) 08:19:05.51 ID:AKhzj23U
>>818
スクリプト的にはそれで。
BoundExtra〜とScriptEffectのRangeを「Self」、Durationも同じ秒数にすれば多分。

ScriptUpdateブロックで何かをする必要はこの場合特には無い気が。
またMagicEffectScriptって唱えた人/掛けた相手のスクリプトとして実行されるので、
この場合「Player.AddSpell XXX」とする必要は無く単に「AddSpell XXX」でもOKです。
822名無しさんの野望:2012/01/30(月) 08:35:07.38 ID:XeUlq7kO
>>821
Durationが0になってました
ありがとうございます
823名無しさんの野望:2012/01/30(月) 09:38:25.07 ID:AKhzj23U
動いたようで。おはようございます。でまた鉄球投げですが。

飛距離が変わるのは多分フレーム毎のキーの補間量が一定じゃないからかも。
高速なら各フレーム移動量の差が相対的に小さく初速安定に。多分。
また速過ぎればHavok側で制限されてさらに一定に。恐らく。
これ直接の解決は難しいのかな。OSRを入れてみたり。なんか前にも似た話が。

あとサンプルの構造だとOnTriggerでReturnはマズいかも。つい。
Returnせずif節で括って下さい。
単にGameModeの下に持ってきてもGameModeもReturnしてるので正常に動かないです。
この辺いつまで経ってもよく嵌まるです。
824名無しさんの野望:2012/01/31(火) 07:02:57.83 ID:5LrcQHgl
ダイアローグトピックの選択肢を選ぶ際の表示数を
バニラの5からDARKUIのような7前後にあげたいと思い
Darkuiの記述を参考にバニラのdialog_menu.xmlいじっていますが

冒頭の
<_number_of_lines> 5 </_number_of_lines>
前後の記述や

560行あたりからの記述↓を中心にいじっていますが、どうも反映されません
スクロール数の設定などは反映されるので、ゲームにxmlが読み込まれているのは確かなようです


<user1> 0 </user1> <!-- Minimum value that can be scrolled to (should usually be zero) -->
<user2>
<copy src="dialog_topics_scroll_pane" trait="child_count"/>
<sub> 5 </sub>
</user2>



<user8> 5 </user8> <!-- How many items are visible at once -->

選択肢表示数を変えるには、どのあたりをいじればいいのでしょうか?
825名無しさんの野望:2012/01/31(火) 08:56:32.21 ID:w4ihDciV
>>824
バニラならdialog_menu.xmlの176行<mul> 5 </mul>がTopic表示行数です。
826名無しさんの野望:2012/02/01(水) 07:04:02.34 ID:w7oBY22b
ありがとうございます、試してみます!
827名無しさんの野望:2012/02/01(水) 20:53:15.17 ID:ud1dz6FE
let string := "残金" + $v + "Gold、 レート" + $Rate + "%%"

上記の記述ですと、残金が100万Goldを超えると表示がおかしくなってしまいます。
"%.0f" で表示を整える方法はあるでしょうか。
828名無しさんの野望:2012/02/02(木) 01:01:34.34 ID:skDtrik1
花瓶や食器などの手で掴めるアイテムを、動かせない固定のオブジェクトにしたいのですが
NifSkopeだけで変更することは可能でしょうか?
もし可能であればどの辺りを変更すれば良いかアドバイスいただけると嬉しいです。
よろしくお願いします。
829名無しさんの野望:2012/02/02(木) 01:16:23.01 ID:pEwPck6f
>>828
試したことないけど確かコリジョンの種類が違うからそこを変えればなんとかなりそう
ブレンダーでもそれだけならインポートしてエクスポートするときに設定をStaticにして素材を選ぶだけだから簡単だと思う

ところで弓の作り方を調べているのですがどなたかご存知の方か英語でもいいので解説シテルページとかないですか?
830名無しさんの野望:2012/02/02(木) 09:02:02.39 ID:k54ZmSY+
>>827
sv_Constructで。似た話が上の方に。「%%」にも問題あるならとりあえず全角で。
831名無しさんの野望:2012/02/02(木) 09:24:05.10 ID:k54ZmSY+
>>828
可能です。
bhkRigidBodyのMotionSystemをMO_SYS_FIXEDに、QualityTypeをMO_QUAL_FIXEDに
すれば原則それで。

厳密にするならLayer,LayerCopy,ColFilter,Inertia,Mass,DeactivatorType,
SolverDeactivationをStaticなnifのそれと同じに。あと1番BSXFlagsも。
832名無しさんの野望:2012/02/02(木) 09:27:40.06 ID:k54ZmSY+
>>829
弓の作り方は過去スレに。
サンプルもあったと思うのですがもうないのかも。探しときます。
833名無しさんの野望:2012/02/02(木) 11:45:42.72 ID:3EmD/hdW
>>830
ありがとう御座います。
Constructを使うとなると、終わったら必ずDestructしなければなりませんか。
同じ変数にConstruct連打すると問題起きるでしょうか。
Destructの扱いが分からなくてletに逃げてた節があって。
834名無しさんの野望:2012/02/02(木) 12:27:15.59 ID:k54ZmSY+
同じ変数をDestructせずに何度もConstructてなんか問題あったと思います。
その辺心配ならsv_Constructの直前にsv_Destructしたり。
835名無しさんの野望:2012/02/02(木) 12:53:11.97 ID:k54ZmSY+
オブジェ投げ例その2。Constraint引っ張り式。超遠投。跳弾がなんかすごいです。
http://up.mnty.net/img/up000545.zip

他に初心に返ってカタパルト式も試してるのですが、近距離だと前のやこれより
実は安定してる雰囲気も。なんでかな。
nifのキーフレームアニメて多分元はHavokとは別物なんで、アニメ力を一旦別な
Bodyを経由させた方が色々辻褄合うのかな。
836名無しさんの野望:2012/02/02(木) 13:28:54.06 ID:k54ZmSY+
>>829
弓サンプルです。

http://up.mnty.net/img/up000546.zip

txtにNifSkopeの旧Ver、みたいにありますが多分最近のでも。
解説サイトが消えてますが要するにMorphアニメ作りなんでその関係を。
837名無しさんの野望:2012/02/02(木) 16:26:28.53 ID:skDtrik1
>>829,>>831
お二方アドバイスありがとうございます。
>>831さんの方法を試させていただいたところ、無事に固定出来ました!
ブレンダーも試していたのですが、インポートの時点で躓いており
なんとかNifSkopeだけで出来ないものかと四苦八苦していました。
おかげさまで作りたかったものを諦めずに済み、とても嬉しいです!
ありがとうございました!
838名無しさんの野望:2012/02/02(木) 20:01:40.47 ID:3EmD/hdW
>>834
直前にDestructですか、それなら記述場所に悩むこと無いですね。
ありがとうございます。
839名無しさんの野望:2012/02/02(木) 20:43:14.93 ID:hG4Dk64Y
>>832 >>836
なるほど、装備のモーフアニメと同じやり方で良いんですね
ありがとうございます。頑張ってみます
840名無しさんの野望:2012/02/03(金) 02:45:31.30 ID:+JCNzIn5
質門スレから誘導されてきましたぁ〜
CSで、会話からNPCを派閥に所属させるスクリプトを組みたいのですが、
どういう構文を書けばいいんでしょうか。
841名無しさんの野望:2012/02/03(金) 06:13:54.42 ID:HOeXStDs
842名無しさんの野望:2012/02/03(金) 08:37:32.39 ID:RzQsqWwS
一日一回、時間指定で正常に動作しているクエストスクリプトがあります。
このクエストスクリプト内の変数をオブジェクトスクリプトから参照しようとすると

  "Unknown variable or function 'GoldG'

と出ます。
他のクエストスクリプトでオブジェクトスクリプトから参照しているものは多々あるのに、
これだけ参照できません。コピペでスクリプト名や変数名を記述したりしているので、
文字列の間違いはありません。
このクエストスクリプトはCSのクエストに登録されています。
何か根本的に足りないのでしょうか。ご教授お願いします。
843名無しさんの野望:2012/02/03(金) 08:53:20.66 ID:f5+PYI30
>>840
Topic(会話で選ぶやつ)が既にあるのならそのTopicのResultScriptに
「SetFactionRank XXXX 0」とか書けばOKです。
Topic自体を作るのはスクリプトとはまた別な話に。
844名無しさんの野望:2012/02/03(金) 08:57:57.96 ID:f5+PYI30
>>842
QuestScriptの変数の他所からの参照は「クエ名.(ピリオド)変数名」で。
845名無しさんの野望:2012/02/03(金) 09:23:30.11 ID:f5+PYI30
オブジェ投げその3。カタパルト式(nifだけ)。

http://up.mnty.net/img/up000563.zip

ポイと投げるかんじにするなら多分こっちのが。
あと>>835をもっと超遠投するにはbhkMalleableConstraintのTauを0.1ぐらいに。
846名無しさんの野望:2012/02/03(金) 09:24:18.11 ID:RzQsqWwS
>>844
もちろん、そこは他の記述と同じ形式にしています。
もうね、CSのバクか何かとしか思えなくて。。
847名無しさんの野望:2012/02/03(金) 09:45:18.94 ID:f5+PYI30
具体的にどう書いたんですか?
その行その書式というより他の部分に何かありそうな気が。
848名無しさんの野望:2012/02/03(金) 10:09:39.30 ID:RzQsqWwS
>>847
実際の記述です。

Scn AAAoShopKeeperGoldQuestScript
Short Gold
short GoldGained
short Skill
short random
;===============================
Object Script側
scn AAAoShopKeeperChestScript
short Gold
short GoldG
Begin OnActivate
; set GoldG to AAAoShopKeeperGoldQuest.GoldGained


Object Scriptの方で";"を外すと先のエーメッセージが。。
Object Script側で参照の"GoldGained"を"Gold"にしたら、メッセージが
  ""Unknown referenced object 'AAAoShopKeeperGoldQuest'
になりました。
そもそもスクリプトがクエスト扱いになってないですか?
チャンと15時にはメッセージを出して動いてるんだけどなぁ。
849名無しさんの野望:2012/02/03(金) 10:12:29.64 ID:RzQsqWwS
因みに、Object Scriptはコンテナに登録されています。
850名無しさんの野望:2012/02/03(金) 10:50:57.88 ID:f5+PYI30
今クエとコンテナを作ってその名前とスクリプトを機械的にコピペで動きました。
Saveも問題無く実際に値も入ります。

で、まず「AAAoShopKeeperGoldQuestScript」が「AAAoShopKeeperGoldQuest」の
スクリプトに指定されてるのは確実なんですかね。

あとErrorは「Unknown variable or〜」と「Unknown referenced object〜」どっちです?
例えばスクリプトで既に使っているEditorID名を途中で別なのに変更したりすると
Unknown系のErrorが出る事はありますけど。
851名無しさんの野望:2012/02/03(金) 11:12:16.52 ID:RzQsqWwS
>>850
お手数お掛けします。

> で、まず「AAAoShopKeeperGoldQuestScript」が「AAAoShopKeeperGoldQuest」の
> スクリプトに指定されてるのは確実なんですかね。
他に『AAAoShopKeeper』の名でのQuestScriptは『AAAoShopKeeperPayQuestScript』
だけなので確実、のはずです。『AAAoShopKeeper・・・』の名はこれら3つだけです。

> あとErrorは「Unknown variable or〜」と「Unknown referenced object〜」どっちです?
> 例えばスクリプトで既に使っているEditorID名を途中で別なのに変更したりすると
> Unknown系のErrorが出る事はありますけど。
問題なのは、「Unknown variable or〜」の方で、QuestScriptに変数"Gold"があるので
試しに指定してみたら、「Unknown referenced object〜」が表示されました。

●AAAoShopKeeperGoldQuestScriptをメモ帳にコピって、"GoldGained"を"GoldGaine"にして
変数の並びをチョッと変えて、ScriptEditorに戻してセーブして、ObjectScriptの方で
再度セーブしてみましたが、やっぱりダメでした。原因が判らない。orz
まぁ、これなくてもMODとしては十分なんですが。。。
esp上げるので見ていただいたりして良いですか。これが終われば今週か来週末にでも
公開しようかと思っているので。
852名無しさんの野望:2012/02/03(金) 11:52:36.91 ID:f5+PYI30
事前に出しちゃって問題無いならこちらはOKですよ。
853名無しさんの野望:2012/02/03(金) 12:39:04.18 ID:RzQsqWwS
>>852
それでは、ここに上げました。
http://ll.la/'oXJ
PW:patao

3時間でDL出来なくなります。
宜しくお願いします。
因みに他人がTESに公開したMODの改造なので、2chにひっそりくらいなら
上げてもOKですよね?
854名無しさんの野望:2012/02/03(金) 13:03:48.12 ID:f5+PYI30
改造公開可否の個別の話はちょっと分からないんでそれは置いとくとして、

AAAoShopKeeperGoldQuestScriptが指定してあるクエ名が
AAAoShopKeeperGoldQuest ではなくて
AAProShopKeeperGoldQuest になってます。なので

set GoldG to AAAoShopKeeperGoldQuest.GoldGained を
set GoldG to AAProShopKeeperGoldQuest.GoldGained にすれば多分。
855名無しさんの野望:2012/02/03(金) 13:25:03.51 ID:RzQsqWwS
>>854
いや凄いわー。
スクリプト内でのクエスト名指定はクエスト名から末尾の"Script"を取り除いたもの、
というのがルールとばかり思い込んでました。
変なルールと思ってたけど、まさかクエスト登録した名称だったとは。
勉強になりました。ありがとう御座いました。(動作しました)
856名無しさんの野望:2012/02/03(金) 14:16:01.78 ID:f5+PYI30
おー、行けましたか。
EditorID名のルールってその名前を付けた人が他の人や自分が後で見て分かり易い
様に命名規則を決めて付けてるだけで、文字列自体には特にシステム上の意味や
関連は無いですよ。
(Cell名とかはゲーム実行時に名称で検索されたりするんで例外)

バニラの命名規則が分かり易いんでみんな大体それに倣ってるのだと思います。
857名無しさんの野望:2012/02/03(金) 14:16:54.49 ID:+JCNzIn5
>>841 ありですゝ
CSwiki読んだつもりが、setFactionRankの内容理解出来てなかったようですねーw−;;;
寝ボケてたのかなorz
858名無しさんの野望:2012/02/03(金) 16:41:40.70 ID:R7PYN2LJ
>>853
>因みに他人がTESに公開したMODの改造なので、2chにひっそりくらいなら
上げてもOKですよね?

>これが終われば今週か来週末にでも
公開しようかと思っているので。

コロルショップの人だろうけど
まるで意味がわからない
859名無しさんの野望:2012/02/04(土) 21:04:36.20 ID:XpTFSci9
Havokの速度制限て固定なんですかね。もっと弾丸的に高速にしたくて。
関連して矢発射テスト用簡略化クリーチャーです。

http://up.mnty.net/img/up000586.zip

作ってみたらなんかそれはそれで面白かったのでご興味あれば。
860名無しさんの野望:2012/02/04(土) 21:48:46.64 ID:LLHCGPS4
>>859
タレットたんハァハァ
861名無しさんの野望:2012/02/05(日) 09:11:23.89 ID:7KLz5iWt
SpecialIdleのTextKeyにSound:で多分喋るですよ。
NPCにするならヒトボーンを全部ダミーで追加して箱体nifを全身Clothingにして
持たせれば多分。NPC的動作が全部OKかは分かんないですが。

掴んで移動はどうしましょ。
CollisionBoxを下に出すのが簡単かも。Velocityは位置操作が難しそう。
862名無しさんの野望:2012/02/05(日) 19:10:44.90 ID:mZCUxNh9
全力スレから来ました。
MOD作成ではないのですが全力スレで解決できなかったので、こちらの
エキスパートの方のお知恵をお借りしたく。

OWCNDに、爆弾宝箱があり、開けると低レベルなら一発死ですが、
Healthが上がると、死ななくなります。
これを高レベルでも一発死にしたいんですが、何をどうしたら良いでしょうか。
ダメージを1000以上にすれば良いと思いますが、どこかの設定なのか、
スクリプトなのか検討が付きません。宜しくお願いします。
863名無しさんの野望:2012/02/05(日) 23:29:08.17 ID:TPRMq0N/
宝箱のスクリプトがキャストさせてる魔法だった覚えがあるんで
魔法を突き止めて威力をうんと上げたらどうでしょ
864名無しさんの野望:2012/02/06(月) 09:22:07.06 ID:liyoy6cK
結局Constraint引っ張り式が遠投/近距離ポイ投げ共にいいかんじかも。
でも速さはどうやっても弾丸的にはならない雰囲気が。

弾頭/薬莢一体nifの野望は一旦置いといて高速矢+排莢にしようかしら。
865名無しさんの野望:2012/02/06(月) 13:28:23.94 ID:m7X6G4up
>>863
ありがとうごさいます。有った様な気がします。
OWCDynamitBomb3
OWCDynamitBomb5
OWCDynamitBomb7
この3っつのSpellみたいです。

で、名前からするとOWCNDのダイナマイトアイテムとスクリプト流用してるかも
知れませんね。私はOWCNDのダイナマイトは使ってないから良いけど。
火力上げたので死んだらご一報しに来ます。

866名無しさんの野望:2012/02/06(月) 18:16:38.72 ID:NOD+Ncmq
よくインポートテキストファイルが提供されいた日本語化パッチって
そのespファイルをストレートにCSで読み込んでインポートを選ぶだけでOK?
CS起動して試しにMODを作ってみたらなんか、Oblivion.esmのどこか弄ったのか今まで開けることができた扉が開かなくなってしまった

ArenaからMarket Districtにいく扉が開かない

でそのお試しMODのespファイルを削除してみた
ArenaからMarket Districtにいく扉が全然治らない

ってことは、やっぱり、Oblivion.esmを間違えてどこかでいじってしまった?

CSって、うっかりマウスで3Dのオブジェクトをクリックすると、ゴミが残るらしいけどそれって本当?
そのゴミのせいでArenaからMarket Districtにいく扉が壊れてしまったん?
867名無しさんの野望:2012/02/06(月) 19:44:28.52 ID:ITSNQc4G
esmってCSじゃいじれないから壊れないと思う。
勘違いで他のespを書き替えたりしてなければ、その失敗espを外して
セーブ/ロードしてみればどうかね。
それでもダメなら、CSでその扉のID調べて、TES4EDITかなんかで
それをいじってるesp突き止めて修正すれば良いんじゃん?
あと、オブジェクトは大丈夫だけどパスグリッドは痕跡が残るって聞いた。
TES4EDITのクリーニング使えば痕跡も消せるしだいじょぶなんじゃないかね。

と、素人がしゃしゃって回答。
868名無しさんの野望:2012/02/06(月) 20:17:36.46 ID:/qI3GsL+
>>866
アクティベートの情報ってセーブデータにも残るから、弄る前にセーブしたセーブデータでもドアがくぐれないか確認してください
大丈夫ならセーブがダメなので可能なセーブから再開
もしドアがくぐれない場合まだ弄った情報がどこかのプラグインに残っています、本当に自作したプラグインを消したのか確認してください
まさかと思うけどBashed Patch組み直ししてなくてそっちに情報残ってたりしませんか

不具合の出たねれないベットをゲーム内で直すMODあるから、不具合のあるセーブデータでも扉直せるかも
869名無しさんの野望:2012/02/06(月) 20:19:41.53 ID:jTkDK3DD
てか、日本語パッチにCSは必要ないことも教えてあげた方が
870名無しさんの野望:2012/02/07(火) 09:10:02.45 ID:WDeDCd/D
http://www.youtube.com/watch?v=BkQPs1EwO0A

これってどうやってるんだろう
871名無しさんの野望:2012/02/07(火) 09:36:16.71 ID:IwhQ8neE
バニラドアを気付かず動かしちゃってそのドア位置がespをはずした後もセーブに
残ってドア行方不明、て事なら、

CSでそのドアのRefIDと元のXYZ座標をメモ→ゲームのコンソールでprid そのRefID→
そのドアをSetPos その座標→セーブすれば次回ロード以降元の位置に。

でもそこまでするよりこの場合はそのセーブ自体を捨てるのがいいと思いますが。
テスト用espだったのなら他にも色々あるかもですし。
872名無しさんの野望:2012/02/07(火) 10:08:13.39 ID:a/n+ZPk9
>>870
周囲のアクター等に小刻みにtaiかけてるだけっぽくね?
873名無しさんの野望:2012/02/07(火) 10:55:59.91 ID:IwhQ8neE
fGlobalTimeMultiplierとToggleSpecialAnimである程度行けると思うけど
一人称どうするのかな。s1stと組み合わせたり。
874名無しさんの野望:2012/02/07(火) 11:46:27.81 ID:IwhQ8neE
PowerAttackはSayだと多分Hitキーのタイミングが。どこまで辻褄合うかな。
面白そうですけど。でも他所様のネタなんでこの辺で。
875名無しさんの野望:2012/02/07(火) 23:07:01.56 ID:VVvforg1
すみません、今攻撃モーションを一から製作してたんですけど、
いざ、kfに出力してNifSkopeで読み込んで再生すると
攻撃モーションの1フレーム目の格好で硬直状態になるんですが、どなたか対処法をご存知ないでしょうか;;

NameとCycle_Typeは変更済みです
最初は1フレームだけがkfに出力されてるのかなとも思ったんですが、
キーフレームの挿入数を増やすとkfファイルのサイズも増えたのでそれも無いと思います;;

他に考え付くのはkfを読み込んだ際に、
"The following controlled nodes were not found in the nif:"
"Scene Root"
と、表示されるんですが、
これは特定ボーンが存在しない時の表示ですよね

何が原因でこうなったのか全く分からない/(^o^)\
876名無しさんの野望:2012/02/08(水) 08:48:16.32 ID:4HYDtVu7
何が原因で、というか、元々アニメていわゆる「静止ポーズ」と違って各指定を
適切にしないと動かないですよ。攻撃や移動アニメならさらに。

硬直するのは多分TimeLine関係。StopTimeが0になってるとか。
AttachKFでなんか出るのはBlenderとNifSkopeで違うSkeletonを使ってたりで
関係無い個所に不要なキーが。恐らく。実動作上は問題無い場合も。

BlenderでどのSkeleton使ってどんな手順でやってるんですかね。
877名無しさんの野望:2012/02/08(水) 09:18:38.48 ID:4HYDtVu7
とりあえず多分最低限確認が必要な個所は、Blenderでは
TimeLineの「End」、TextEditorの「Anim」の「end」、
各ボーンのConstraint→Priority※

NifSkopeでは
NiControllerSequence→Name、CycleTyep、StopTime(上のTimeLineと同じか 30fps換算)
NiTextKeyExtraData→色々ありますがまずはendのTimeが上のStopTimeと同じか※

※Priorityはkfの種類やボーン毎に適切な値が違います。TextKeyの他の内容も、
バニラのその相当するkfを見るのが早いです。
878865:2012/02/08(水) 21:05:56.90 ID:fSHJUSTw
爆破で一発死できました。
上記のスクリプトで良いみたいです。
お世話になりました。
879名無しさんの野望:2012/02/11(土) 15:17:48.70 ID:1yaV9Egg
うーん、水中てなんかHavokの制限多いみたい。
PCから距離1000離れると演算止まったり。

遠くのHavok船に大砲ドカドカ撃ちたいんだけどどうしよう。
水中に土台置いてConstraintでプカプカ浮いてるみたいにすればいいのかしら。
880名無しさんの野望:2012/02/11(土) 15:29:13.13 ID:o+LIDS9E
弾型のMobにして走らせるとかw
881名無しさんの野望:2012/02/11(土) 16:32:43.73 ID:1yaV9Egg
魚雷的クリーチャーとかはすんなり出来るかもですね。
SkeletonにOL_TRIGGERのSimpleShapePhantomを付ければOnTriggerが。
あれ、乗り物で通行人をはねたり攻撃するのて簡単に出来たのかもしんない。
882名無しさんの野望:2012/02/12(日) 01:10:31.82 ID:Eh0jHUyl
ObのConstraintだけでプカプカ上下動してそのうち間の適当なとこで落ち着く、
みたいなのて出来るのかな。
バネ振動的な。ダンパーの効きが悪いサス的な。
883名無しさんの野望:2012/02/12(日) 02:31:36.30 ID:pqPu4jxZ
>>868 >>871
遅ればせながら、ありがとう御座います。
その方法で検証してみます。
Bashed Patchは何度もリビルドしてるので情報はまず残っていないでしょう。

>>869
それは一応わかっています。
自分も翻訳をしてみたくて。Wikiみると大変なイメージがある。
884名無しさんの野望:2012/02/12(日) 13:25:15.11 ID:Eh0jHUyl
遠距離用標的船nifです。上下動付き。微妙ですが。

http://up.mnty.net/img/up000639.zip

上下動も少しなんとかしたいけどなんかいい方法ないかな。
885名無しさんの野望:2012/02/12(日) 18:57:48.17 ID:vQXE/iar
NPC配置なんですが、足元が微妙に地面に埋まってました・・・
微調整ってできますか?
886名無しさんの野望:2012/02/12(日) 19:19:08.50 ID:lEHaWZC/
>>885
CSの画面上での話?
適当に浮いた位置にしてからFキー押せば真下のコリジョン判定のある地面まで落ちるよ
ウインドウ出してZ座標クリックとかZキー押しながらドラッグとかでも動くけど、地面に配置するのはFキーが便利
887名無しさんの野望:2012/02/12(日) 19:34:33.65 ID:vQXE/iar
>>886
おー、ありがとうございます。
888名無しさんの野望:2012/02/13(月) 00:07:06.70 ID:YkqsDUej
バネ振動てTauとDampingでいいんだ。一方向収斂だけだと思ってた。
可動軸を限定するのてどうやるんだろ。PrismaticConstraint重ねるのかな。
四輪独立サス出来るかしら。
889名無しさんの野望:2012/02/13(月) 01:23:15.49 ID:YkqsDUej
ダンパーサス的なもの、PrismaticConstraintとMalleableConstraintで
原則行けるぽいです。ということで。
890名無しさんの野望:2012/02/13(月) 22:24:21.85 ID:YkqsDUej
四輪独立サステスト台車。ご興味ありましたら。

http://up.mnty.net/img/up000653.zip

ステアリングどうしよう。
891名無しさんの野望:2012/02/14(火) 21:17:31.35 ID:nFPSm8BQ
実験中ネタ。手前の台車には影が。

http://up.mnty.net/img/up000665.jpg

変則クリーチャー化。Havokオブジェなのに影有り、PCと任意形状でコリジョン、
Cell境界リセット無しかつ座標更新有効。乗り物的オブジェには超好都合か。
892名無しさんの野望:2012/02/14(火) 21:59:56.60 ID:FCnmdqHE
オートパイロットできそうw
893名無しさんの野望:2012/02/14(火) 22:08:39.84 ID:FBzoYSOV
台車クリーチャーwwww
これが襲ってくる図が脳内で再生された
894名無しさんの野望:2012/02/14(火) 22:18:06.55 ID:xOJYFxJ8
和風にして火車とか
895名無しさんの野望:2012/02/14(火) 22:41:19.03 ID:UQfpqy7j
もしかしてバイク作った人?
896名無しさんの野望:2012/02/14(火) 23:51:09.32 ID:nFPSm8BQ
普段はkfアニメで各部が手足でヒトみたいに立って歩いてて、物理演算に
切り替わると車になる、みたいなのも多分いけるですよ。トラン○フォーマー的な。
NPCでもいけるかも。

バイクの方とは別の人です。
車輪付き純粋物理演算乗り物は前からの趣味で、動力、乗り心地、Cell境界リセット
の問題に進展があったんでまた遊んでるです。
897名無しさんの野望:2012/02/15(水) 05:14:33.44 ID:uE+Zp1sM
うおー面白そうなもの作ってるな。
チャリオット作って戦争MODみたいなのとかできるといいな。
898名無しさんの野望:2012/02/15(水) 12:44:50.61 ID:8BxnLed0

899名無しさんの野望:2012/02/15(水) 20:23:33.08 ID:+VMxYywf
クリーチャて回転が分かんないんだった。うーん、どうしよう。
GetPos/Angle出来てかつCell境界リセットしないオブジェてどうやるんだろ。
撃った後の矢?

あとサスですけど、bhkMalleableConstraint一つだけでもいいかも。
SusXXを全部取って各Wheelを車体に直結。指定メモ。後は右クリHavok→A->B。

Type 1(Hinge)
PivotA 0 0 0 0
Perp2AxleInA1 0 1 0 0
Perp2AxleInA2 0 0 1 0、
AxleB 1 0 0 0、
Tau 0.05
Damping 0.5
900名無しさんの野望:2012/02/16(木) 22:00:21.59 ID:u6RnnjB4
とりあえず動力兼位置回転センサ埋め込んでみました。ミッドシップで。

http://up.mnty.net/img/up000668.zip
901名無しさんの野望:2012/02/17(金) 22:18:52.88 ID:46qQFSYB
ステアリング途中。パワステの動力付けたとこまで。

http://up.mnty.net/img/up000671.jpg

LimitedHinge2つ、StiffSprintg2つ、Prismatic1つ。
動力がPrismatic上を左右に動いてStiffSpringのリンクでHingeを回転。
まだ色々調整中。
902名無しさんの野望:2012/02/18(土) 02:56:54.02 ID:erUFcjNt
>>901
なんか過ごそうなのができそう
応援してる!
903名無しさんの野望:2012/02/18(土) 07:53:28.36 ID:PFX37sDZ
これが…オブリレーシングって事ね
904名無しさんの野望:2012/02/18(土) 22:20:37.20 ID:DO3VOFx6
getdistanceは室内セル時のgetinsamecellも同時判定できるのでしょうか?
それとも室内別セルにいるREF同士をgetdistanceした際に
別セルであっても絶対座標が偶然近ければ
正判定されることもありえるでしょうか?お願いします
905名無しさんの野望:2012/02/18(土) 22:20:38.75 ID:NcHCBJnv
乗れるHavok台車超試作版です。

http://up.mnty.net/img/up000680.zip

でもTamrielで四輪に乗るのてなんか逆に罰ゲームみたいになるですよ。
道狭いし坂急だし。別な広い世界を作って走ると楽しいです。
906名無しさんの野望:2012/02/18(土) 23:54:53.95 ID:NcHCBJnv
室内セル=「Interiors」て名前のWorldspaceの隣り合った各セル、ではないですよ。
CellViewの操作上はそんなかんじになってますけど。
概念的には室内各セルは全部独立した別空間で、GetDistanceもそう振舞うと思います。
907名無しさんの野望:2012/02/19(日) 11:46:37.61 ID:d6U+upDt
台車、高速で絵がガタガタするのはOSRやGMSTのfChase3rdPersonXYMultを1000ぐらい
にすると少しはいいかも。
新型。動力は直付けでもう壊れない。

http://up.mnty.net/img/up000687.jpg

でもセンサーはやっぱ壊れる。
Tamrielはゼ○ウェイ的な乗り物のがいいのかな。それか四駆的に走破性を上げる?
モンスタートラック的な。実際に車軸回して。
908名無しさんの野望:2012/02/19(日) 12:49:52.65 ID:KNOxCLdP
タマネギ付きの荷車で良いんじゃないでしょうかw
909名無しさんの野望:2012/02/19(日) 23:31:03.64 ID:d6U+upDt
やっぱ車輪はSphereのがいいのかな。
マジでタマネギが引いてる様に見せるなら台車側からSetPosXY、SetAngleZ、
PlayGroupで多分。
アクターて外部からXYを連続的に変えてもその方向に移動アニメしてるなら
Zは地形なりにきちんと上下するです。多分。

あれ、同じ理屈であの四頭立て戦車て実はもう出来るんだ。先に競技場か。
910名無しさんの野望:2012/02/20(月) 00:49:37.75 ID:wEYQQmgX
上の理屈でやっつけ馬車化テスト映像。

http://up.mnty.net/img/up000696.zip
911名無しさんの野望:2012/02/20(月) 02:39:16.44 ID:EqKlnf/X
>>910
イヤッホー!すげーw
912名無しさんの野望:2012/02/20(月) 07:11:56.72 ID:8nzQwYqa
>>906
なるほどごちゃごちゃ記述しないでも
距離とるだけで十分なんですねありがとうございます
913名無しさんの野望:2012/02/20(月) 07:13:23.83 ID:8nzQwYqa
>>910
放置していても連れていってくれる
街道馬車MODを是非
914名無しさんの野望:2012/02/20(月) 07:17:17.37 ID:SYrbG3bX
>>913
すでにあるよ
HAZ_Classic_Travel
街の間を馬車に乗って勝手に移動してくれるMOD、設定でFTするかリアルタイムで街道走るか選べる
UL入れると一部ルートで地形とパスグリッドが合わなくて登れずループしまくる場所があるんで外しちゃった
ためしに入れるとかなり面白い
915名無しさんの野望:2012/02/20(月) 10:25:17.25 ID:wEYQQmgX
おー、きちんと計算してる。

で、こっちの話ですけど、動きをもっと馬車的にするなら左右前輪を軸で繋いで
操舵軸を中央にして、馬位置はその軸を中心にオフセットするといいかも。
ニ輪馬車なら前輪透明で三輪とか。前輪はFrictionの小さいただの球でも。
OL_BIPEDなら馬コリジョンと重なってもOKです。

自動運転はどうしましょうね。
馬をAIで目的地にTravelさせ、SetPosXYだけでSetAngleZせず、GetAngleZで馬の
行きたい方向を見て車の舵を常にその方向に切って前進してれば後は成り行きで多分。
916名無しさんの野望:2012/02/20(月) 20:54:54.07 ID:mJUybhbl
すげーなー馬車。
NPCとか乗っけられるようにして、ダンジョン救出MODの囚われの女の子とか
メインクエストのまーちんを荷車に乗っけて輸送したい。

ちなみにここ、Blenderのド素人質問もおk?
917名無しさんの野望:2012/02/21(火) 02:09:56.23 ID:A7GGTidm
オブリが関わらず完全にブレンダー内での話になるなら
専門の場所のほうが良い解答を得られるかもしれない

でもいいんじゃない
918名無しさんの野望:2012/02/21(火) 02:21:59.05 ID:mtbq7Mrd
>>915
すまん
サスペンションつけたら坂道でも揺れが少なくてスムースかなあwなんて考えてしまった

それがトロッコの上を走るところを想像した


エンジン搭載してギアで加速、減速できたら面白そう
ついでにブレーキも

慣性の法則、質量保存の法則も再現できたら最高
919名無しさんの野望:2012/02/21(火) 20:57:03.09 ID:Z+r5yX4z
それをやった結果なんですが。
ゲーム的に期待される動きのスムースさと実際の物理挙動て必ずしも同じじゃ
なかったりするですよ。車輪駆動テスト。

http://up.mnty.net/img/up000710.jpg
http://up.mnty.net/img/up000711.zip
920名無しさんの野望:2012/02/23(木) 16:59:36.38 ID:b8AQMDmf
純粋車輪駆動式台車のテスト映像。思ったより行けるかも。

http://up.mnty.net/img/up000729.jpg
http://up.mnty.net/img/up000730.zip

でも実は駆動輪よりステアリングに色々手間がかかってるです。4WD化の布石で。
直線推力、回転動力、位置角度検出、角度位置決めはなんとかなりそうなんで
二足歩行ロボできるかも。ものすごく根性があれば。
921名無しさんの野望:2012/02/23(木) 17:53:04.26 ID:yWbMDb+f
新しく作ったworldspaceで自分の用意した画像を地図に使おうと指定したのですが
ゲーム上のマーカー間の距離と地図の縮尺が合いません。これには画像を加工して対応するしかないのでしょうか
922名無しさんの野望:2012/02/23(木) 21:10:25.12 ID:W+soJMC8
Havok検証の最中にすみません。お願いがあります。
以前、AutoIK可能なようにArmatureの接続を加工したOblivion用のSkeletonを作成されたと思うのですが
どのように加工すればBoneを連結して整合を取れるのか、よろしければその方法を手ほどきいただけないでしょうか?
理由はSkyrim用のSkeletonをAutoIK可能にするためにです

単にBlender上で接続したいBoneのTailを動かして別BoneのHeadの位置に持っていく、
という単純なことをしてもだめで、ExportするためとImportするためで
それぞれ何かなさっておられると思うのですが
例えばSpineとSpien1など適当な2つのBoneを例に教えていただけるととてもありがたいです。

どうぞよろしくお願いします。
923名無しさんの野望:2012/02/23(木) 22:52:28.96 ID:b8AQMDmf
>>921
縮尺が微妙に違う、て事なら書いたMap絵のCellの範囲とWorld→Worldspaceの
CellCoordinatesが合ってるか確認を。
絵がボケボケだったりで全然変ならDXTフォーマットの確認を。

Tamrielご本尊とかSIのそれを見てみたり。過去スレPart6 791に似た話が。
924名無しさんの野望:2012/02/23(木) 23:26:38.57 ID:b8AQMDmf
>>922
ゲーム別の話は該当スレでするとして、一般的にはNifScriptのImprotて子ボーンが
複数あればTailはその平均位置になるですよ。
Obの場合なら例えばPelvisやSpine2がなんか変な方向を向く理由がそれです。
Importした後にそのTail位置を動かすとボーンを回転した事になって妙な結果に。

これをなんとかするには例えば無視したい子ボーンとの位置の平均が0になる対向する
ダミーのボーンを付けてImportすると辻褄が。

以前UPしたIK付きSkeletonのオマケのkfImport用Skeletonにそのダミーが付けて
あったと思います。
925名無しさんの野望:2012/02/23(木) 23:34:00.46 ID:yWbMDb+f
>>923
うまくいきました!ありがとうございます
926名無しさんの野望:2012/02/24(金) 00:30:35.64 ID:CerIbpQo
>>924
レスありがとうございます!知らないことだらけです!
Skeleton2.nifになんでMagicnodeDummyなどがあるのかはようやく分かってきました

まだ理解が追いつけてないのですが、この理解はあってますか?

・Export:
  特に気にするところはなく、Boneを連結したければBlender上で親側のTailを連結したい子のHeadのところまで
  引っ張ってやればいい
  (ExportするときにTailの位置はあまり関係ない?)

・Import:
  Blender上であるBoneXのTailの位置を動かしたら、それを相殺するDummyBoneを子に付ける。
  相殺するには例えばBoneXのtailをZ=0→Z=1に動かした場合は
  BoneXの子供としてBoneXDummyを作ってそいつのHeadをZ=2にすればよい?

>これをなんとかするには例えば無視したい子ボーンとの位置の平均が0になる対向する
>ダミーのボーンを付けてImportすると辻褄が。

  位置の平均というのは、親BoneのTailを動かした場合、その子Boneの何の平均でバランスする感じでしょうか?
  子BoneのTailでしょうか?或いはHeadでしょうか?

質問ばかりですみません、よろしくお願いします
927名無しさんの野望:2012/02/24(金) 00:35:25.46 ID:CerIbpQo
あれ?すみません、自分で書いてて意味が分からなくなってきました

>これをなんとかするには例えば無視したい子ボーンとの位置の平均が0になる対向する
>ダミーのボーンを付けてImportすると辻褄が。

自分は上の「位置の平均が0になる対向するダミーのボーンを付けて」の部分がよく分かってないみたいです
928名無しさんの野望:2012/02/24(金) 01:33:48.97 ID:Itr9951y
>>926
・Export:
kfをExportする時の話ならTailを動かすとマズかった気が。
例えば素のskeleton.nifと何かkfをImport→PelvisのTailをSpineに→そのkfをExpor
するとよく見ると腰の絵が微妙に捩れてたり。そうなると思うのですが。

SkeletonをExportする話なら、Blender上で単にTailを動かすだけ→Export→Import
してもまた元の方向を向いてると思います。

・Import:
相殺はNifSkopeでその子ボーン(NiNode)を親にコピペして名前を適当に変え、
TranslationXYZそれぞれの符号を逆に。Import後はそのボーンは不要なのでDelで。

Blender上でやるならそれと同じ事を。親ボーンのTailは動かさずに。
929名無しさんの野望:2012/02/24(金) 01:44:50.88 ID:Itr9951y
ボーン(Armature)てNIFでは位置と回転を持った単なる一つの点ですが、
BlenderではHeadとTailのある一本の棒で位置はHeadで回転はTailとの位置関係、
みたいな違いがあります。

でもボーンて結局は一つの位置と回転の事なんで見た目は違っても同じ事なんですが。
CGツール的には「ボーン(骨)」と言うからには概念的や操作的に棒の方が分かり易い
からな気が。多分。

その辺の違いを吸収する為にNifScriptではImport時に子ボーンを見てTailを
自動生成してます。恐らく。
930名無しさんの野望:2012/02/24(金) 01:56:19.96 ID:CerIbpQo
>>928
Import了解です。なるほど。これだとNifskope上でやるほうが楽そうですね。

Exportについては、IK_skeleton2.blendとかだと腕や背骨のBoneが連結されたArmatureを使っても
正しくkfが作られるってことは、これはこれで何か配慮というか仕掛けがしてあるかんじでしょうか?
931名無しさんの野望:2012/02/24(金) 10:51:17.84 ID:Itr9951y
>>930
その.blendでkfを新規に作ってバニラSkeletonで再生してOKなのは、skeleton2.nifを
一度ImportしていてBoneExMatが更新されてるからです。多分。

BoneExMatて、ImportしたボーンのTailは子が複数の場合は行き場が無く中間位置に
なるので(Importオプションによる)本来の回転との差を変換行列で保存したTxtです。
NifScriptはExport時にそれを使ってボーンの回転を元に戻してます。恐らく。

この辺ややこしくて私も曖昧ですが。多分なんかそういう事だった気が。
932名無しさんの野望:2012/02/24(金) 11:29:41.76 ID:Itr9951y
あれ?じゃあTailを狙いの子ボーンに合わせたらそのBoneExMat消せばいいのかな。
Rollはどうなるんだろ?あれれ?
なんかよくわかんなくなってきましたが。とにかくその辺の話です。
933名無しさんの野望:2012/02/29(水) 22:04:32.36 ID:NcUVynbw
もう一つのmodスレ落ちちゃったか
934名無しさんの野望:2012/03/02(金) 05:51:23.81 ID:xaxnZZM8
先に落ちたのかw
935名無しさんの野望:2012/03/03(土) 16:13:21.95 ID:FFlRO+B+
規制終わったかな?
>>931
Skeleton2.nifってそこでも使うんですね、なるほど!
一通り出入りの感覚がわかったので試行錯誤してみます、ありがとうございます!
936名無しさんの野望:2012/03/03(土) 21:29:05.21 ID:ijvs9oeA
座標とか回転とかkfとの関係とかややこしいですがその辺は気合で。
祝規制解除。
937名無しさんの野望:2012/03/03(土) 21:35:39.43 ID:ijvs9oeA
安全のためロールバー付けましたが全く効果ないです。

http://up.mnty.net/img/up000792.jpg

センサー用オブジェをFurnitureにしたので座らせるのが非常に単純に。
ただNPCは座ると体のコリジョンが有効になるので車体との干渉どうしよう。
前に付いてるTriggerZoneの目的はご想像の通り。
938名無しさんの野望:2012/03/03(土) 22:10:47.63 ID:hAKmqfmU
>>937
見るからにロールゲージの意味無いんだがw
頭はみ出してるしw
939名無しさんの野望:2012/03/04(日) 09:26:44.42 ID:Z/OszEhK
確かにロールバーにしては低いかも。首グキッてなりそう。
これ手摺です。乗員をラグドールにして立たせて揺らす野望の布石で。
940名無しさんの野望:2012/03/06(火) 23:15:37.55 ID:JsSVOZXd
台車ですが。
センサ用オブジェ外れ対策試作版です。ついでに同乗者処理付き。

http://up.mnty.net/img/up000815.jpg
http://up.mnty.net/img/up000816.zip

センサがでかくなって場所が無くなったんでラグドール乗員の野望は
一旦置いとく事に。
941名無しさんの野望:2012/03/09(金) 10:54:32.29 ID:5z3Trtu9
前を照らす特製松明で夜道も安心。同乗者に持たせても。

http://up.mnty.net/img/up000831.jpg

でも絵のガタつき防止の同乗者AIのON/OFFが非常に厄介に。どうしよう。
あと前輪をSphere二つにするとヨレなくなるかも。
センサ枠も車体から浮かせた方がいいかも。
942名無しさんの野望:2012/03/09(金) 11:06:07.44 ID:f74YSwUx
>>941
ヘッドライトにカンテラを付けたらどうだろうか?
943名無しさんの野望:2012/03/09(金) 14:51:45.62 ID:5z3Trtu9
台車と一緒に任意の光源を簡単に移動出来ればいいんですけど。
スクリプト的な方法でなく。処理増えてきたんで。

台車をNPCにして松明ならいいのかな。
944名無しさんの野望:2012/03/09(金) 15:48:46.24 ID:5z3Trtu9
NPC化+松明で行けるかも。死んでても装備出来るしLightRadiusもOKみたいだし。
Layer指定ルールがクリーチャーと同じならNPC化の方向で。
NPCに最低限必要なNodeてどれだろ。
945名無しさんの野望:2012/03/09(金) 23:10:11.51 ID:hvruuEId
流れをぶった切っての質問で申し訳ないんだが
AIパッケージのことで質問させてほしい

一定を距離を保ちながら自分の後をついてくる
ストーカー的なNPCを作りたいんだが
プレイヤーを追ってくるパッケージタイプは「follow」で合ってる?
946名無しさんの野望:2012/03/09(金) 23:43:37.96 ID:hvruuEId
ごめん
事故解決しました
947名無しさんの野望:2012/03/10(土) 10:09:29.28 ID:wXZHAlfB
Followで多分いいと思うのですが、種類自体より細かな指定やConditionsのが
多分ややこしいかも。
一連の台車の話って単なる独り言なんで別に気にしなくてOKです。

で台車NPC化。

http://up.mnty.net/img/up000835.jpg

体は全身指定のnullな服で見えなく。
各ノードは外装着せ替えに使えるかもなんでとりあえず残しとく事に。
逆に体のコリジョンも残して車体に付けたりするとかなり世紀末的な車両に。
948名無しさんの野望:2012/03/10(土) 22:21:00.83 ID:Mjn4fzAA
>>947
すごいなぁ、自分じゃ仕組みがややこしそうで理解できそうにないw
NPC化ってことはクリーチャーについてこさせるなんてことも可能なんですか?
949名無しさんの野望:2012/03/11(日) 09:01:15.11 ID:wL86VBiP
>>947
自分も仕組みがよくわかっていないけど、もう凄すぎ!

ひょっとして家に車輪付けてトレーラーハウスみたいなものも
出来るんじゃないかと夢がひろがりんぐ!


950名無しさんの野望:2012/03/11(日) 09:57:14.00 ID:F/mWfdp4
>>948
Followさせれば多分。というかFollowて相手は原則何でもOKで、NPCでなくても
リンゴとかカボチャでも。インベントリに入ってても。
本来動かないマーカー類でもスクリプトから動かしたりすれば。

ただ相手によっては変な挙動になる事もあるのでNPC以外の場合は要確認ですが。

上の台車の場合は直接Followではなくて別なMiscItemを車体位置にMoveToして
それに乗員をFollowさせてます。横転転落や暴走した時に乗員が後を追わない様に。
951名無しさんの野望:2012/03/11(日) 10:15:31.28 ID:F/mWfdp4
>>949
トレーラーハウスもいけるんじゃないですかね。
箱型のニ輪カーゴトレーラーみたいなのなら簡単かも。

仕組み的には、物理演算するオブジェとkfアニメを裏技的に共存させてます。
要するにアニメする死体、て事です。
アニメで死体の車輪を回したり向きをかえれば後は物理演算の成り行きで。
952名無しさんの野望:2012/03/11(日) 12:30:40.49 ID:F/mWfdp4
あとTamrielを走るなら車輪幅を左右10ぐらいずつ狭くした方がいいかも。
SteeringFL/FR、SusRL/RRのXを加減してそのノード以降のConstraintを全部
右クリHavok→A->Bで。
SteeringCaseもShiftSpring→右クリHavok→CalculateSpringLengthで。

広い世界を60fpsとかで飛ばすなら幅広のがいいかも。
953名無しさんの野望:2012/03/12(月) 19:20:33.25 ID:40zJQCj3
ライト自動点灯版台車4。

http://up.mnty.net/img/up000869.jpg
http://up.mnty.net/img/up000868.zip

IC東あたりの丘陵地を夜走り回ると楽しいかも。
954名無しさんの野望:2012/03/12(月) 19:29:50.04 ID:I+C3A3wM
台車どんどん凄い事になってんなw
NPC扱いってことは、すごく強く設定して
Dwemer製暴走戦車を止めろ、みたいなQuestも作れたりしそうだな。
955名無しさんの野望:2012/03/12(月) 19:59:22.23 ID:40zJQCj3
8輪装甲車の野望もあるですよ。兵員しこたま積んでゲート突入的な。
地形に嵌まって立ち往生な予感もしますが。
956名無しさんの野望:2012/03/12(月) 21:37:25.64 ID:3z/CC3Dx
分身魔法を作りたい!
Fullactorcopyを使った魔法で分身を作るところまでは上手くいったんだが
棒立ちのままで、ついてこないし戦いにも参加しない
というかわざわざ自作しなくても、既に誰かが作ってそうね
957名無しさんの野望:2012/03/12(月) 21:47:36.71 ID:70ClsTPs
は・・・八輪装甲車ですと!

このままいっちゃうと最後は無限軌道・・・ゴクリ
958名無しさんの野望:2012/03/12(月) 22:23:41.93 ID:iUwjm47C
>>953
すごいな、もう殆ど車だ
EDSFを上下左右移動、Wをアクティベートに設定してあるからうまく動かせなかったぜ・・・
959名無しさんの野望:2012/03/12(月) 23:09:53.78 ID:wxeRITYs
流れ豚切りですまんが
今いるセルに水面があるかどうか取得できないで困ってる
そもそもInInteriorだと水面なんてねーよ、とかいうオチでしょうか?
ひょっとしてダミー水面だからそれを探さないといけないとか

いいお風呂場取得方法ないもんか(´σ`)
960名無しさんの野望:2012/03/13(火) 01:06:49.85 ID:CnvocbiS
CSで見るんじゃ駄目なの?
あるもないも、Interiorなら好きに設定すればいいんじゃないの?

野外なら気軽に変更できないけど
961名無しさんの野望:2012/03/13(火) 02:03:31.20 ID:31Gp7j6V
んあ、建造物作ってるんじゃないんだすまん
うろついてその都度そのセルに風呂っぽいのがないか判定したいんだ
962名無しさんの野望:2012/03/13(火) 03:37:37.53 ID:+kYPKpth
BathingModみたいに自キャラの状態で取るしか思いつかないな。
もしくは力業でお風呂マーカーを全世界に。

具体的に何がどういう挙動をすればいいのか、もっと詳しく書けば
台車の中の人とかみたいな猛者がとんちきかせてくれるかもよ。
963名無しさんの野望:2012/03/13(火) 07:05:36.08 ID:ds2+lv6N
とんちて。台車はNPCなんでほんとに中に人が。死んでますが。

水面の有無ならOBSEのParentCellHasWaterとか。
でもそれだけでそこがいわゆる「お風呂」かどうかの意味的な判定をするのて
超難しい気が。セルの名前とか。

既設のお風呂検出の事ではなくて、水があればどこでも即全裸で準備OK的な事なら
それだけでいけるとは思いますが。
水場は全て俺の風呂的なフリーダムなかんじで。
964名無しさんの野望:2012/03/13(火) 07:13:51.82 ID:ds2+lv6N
>>958
申し訳無い、成り行きでキー決め打ち検出してます。
WASDの「IsKeyPressed3 XX」を「IsControlPressed 0〜3」に書き換えれば
キーアサインに従うと思います。
965名無しさんの野望:2012/03/13(火) 07:35:25.75 ID:ds2+lv6N
>>956
PC分身MODはあるとは思いますけど。でも自分で作るのも楽しかったり。

CreateFullActorCopyしたアクターてAIが一切無いんで何かさせるなら
AddScriptPackageを魔法や会話等で。
PCの助太刀ならDispositionやFactionを。

ただCreate〜したアクターはそのMODを外してもSaveに残るんでどこかの時点で
DeleteFullactorCopyした方が。
Delete〜も必ずしも万能ではないのでその辺はCSWikiを。

あとPC分身はPlaceAtMeでも。例えば「Player.PlaceAtMe "7" 1」と。
Lvl1の初期囚人服状態ですが。
PlaceAtMeしたアクターの消滅ルールは原則雑魚敵と同じです。
966名無しさんの野望:2012/03/13(火) 08:55:06.35 ID:ds2+lv6N
無限軌道てどうやればいいんでしょね。
真面目に履帯繋いだらBody数が多分すごい事に。
動輪に嵌めると噛んで爆発、すぐ外れそうだし。うーん。

履帯は絵で実際は転輪が接地して動く場合は履帯メッシュどうすればいいんだろ。
各サス部のWeight付ければそれっぽく波打って上下するかな。
967名無しさんの野望:2012/03/13(火) 10:22:07.14 ID:EDZx/9SA
スパイダーディドラを参考に多脚砲台を…
968名無しさんの野望:2012/03/13(火) 10:49:58.34 ID:+XYtz0vm
>>966
Fallout3のロボブレインがキャタピラ使ってますね、Nifちょっと見たけどキャタピラ部分アニメーションさせてるみたいなんで参考になるんじゃないでしょうか
969名無しさんの野望:2012/03/13(火) 15:43:52.70 ID:ds2+lv6N
キャタピラを絵にするなら動き自体はテクスチャアニメでいいと思うのですが。

例えば転輪が何個か並んでいて一つだけが岩に乗り上げて持ち上がった場合、
本来転輪と岩の間に常に挟まって曲がるはずのキャタピラが平らなまま岩に
めり込んで絵なのがバレバレなのでそれをどうするか、て話です。
970名無しさんの野望:2012/03/13(火) 23:50:23.58 ID:TxxofjP3
>>964
ありがとうございます、動かせました
ドライブ楽しすぎて困る・・・
971名無しさんの野望:2012/03/14(水) 03:44:55.59 ID:T6LSyCxK
>>963
ありがとんち
水面あるかはやっとこ取れましたペコリ

続けて申し訳ない
スクリプトがQuestタイプだとセル名取れないとかありますか?
だんだん不安になってきた・・
あとセル名の無いのがあってすごいフリーダムでムラムラする

972名無しさんの野望:2012/03/14(水) 09:58:02.50 ID:Y8CxaiOF
InteriorCellをGetNameする話ならScriptの種類は関係無いと思いますが。
ただお風呂的な場所であっても必ずしも「お風呂」て名前が付いてる訳でも無いと思う
ので、Nameだけで何かを判定するのもまた難しいかも。

最終的にどんな動作になればいいんですかね。
973名無しさんの野望:2012/03/14(水) 11:35:20.94 ID:Y8CxaiOF
あと多脚モノなら普通の方法で作るのが良さそうな気が。

物理演算て事だと、今の動力の仕組みだと静止時の保持力がほとんど無いんで
自重を支えて脚を踏ん張って立つ事自体が超難しいかも。

台車のステアリングがなんかグニャグニャしたり効きが悪かったりするのは
その辺にも理由が。多分。
もっとカチッとした位置決めが出来ればいいんですが。
974名無しさんの野望:2012/03/14(水) 17:15:38.13 ID:T6LSyCxK
>>972
取れなくないんだね、さんきゅー
まだ理解が浅くて文字列に含んでるかどうかなんでできねーよw
975名無しさんの野望:2012/03/14(水) 19:32:13.31 ID:Y8CxaiOF
雰囲気的に多分すぐな気もしますが。
恐らく先回りしちゃうと、水面の露出形状とかを直接知る方法は無いですよ。
フレームバッファや周囲のコリジョン形状もスクリプトからは分かんないです。

水面Z位置付近に小さいアクターを移動させてGetLOSでスキャン、みたいな
間接的な方法はあるかもですが。自前のお風呂判定スキャナー的な。
976名無しさんの野望:2012/03/15(木) 09:25:26.01 ID:BlQIIZqx
台車ですけど、転倒処理の場所が明らかに変でした。
現状だと転倒しても車から降りずに妙な事になるかも。

「Rollover」てコメントのあるまとまりを、その上のキー検出とかしてる
「if ( CrtOff == 0 ) ;----Not in getoff proc」て節の中に。
また毎フレームチェックする必要もないんで適当に間引いても。

ていうか転倒てXY角の二乗の和でいいんですかね?
977名無しさんの野望:2012/03/15(木) 12:17:42.26 ID:BlQIIZqx
あと外装替えどうしましょ。
今は位置合わせの便宜上Skeletonに直接メッシュ付けてます。
元はクリーチャなんで各車輪とか全部別nifにして該当ノード指定するつもりだった
んだけど、NPCにしちゃったから装備スロットの制限が。

例えば車輪なら四つを一体化してFoot装備とかにすればいいのかしら。
各WheelノードのWeightを付けて。それでいけるのかな。
978名無しさんの野望:2012/03/15(木) 17:01:52.73 ID:0pR+W8SL
>>977
NPC装備で外装変えられるのか。よく考えられてるなーすげえ。
公開すると、エロModderがアクメ戦車とか作りそうで困るなw

でちょっと質問なんだけど。
今The Elder CouncilV2.6のなんちゃってしとしん仕様和訳に手を染め始めたんだが
一括で名詞をリプレースする方法ってあるかね?
分量が多すぎてうんざりしてきた。いつまで経ってもゲームができんよ。
979名無しさんの野望:2012/03/15(木) 19:03:24.43 ID:UIXs/CIp
>>978
ExportしたファイルをExcelみないなcsvを編集できるソフトを使って一括文字列置換するとか
テキストエディタでも文字列置換はできるけど自分は専らExcel使ってる
翻訳所ではテキストエディタが紹介されてるね

Oblivion Mod 翻訳所 > 有用Tool > 一般
http://modl10n.oblivion.z49.org/?%CD%AD%CD%D1Tool#i41f3e09


自分も翻訳所の日本語化したModの名詞日本語化をやろうとして途中で放置してるのがあるw
あまりのアイテムの多さに名前を考える作業にウンザリしてしまって
Dialogなんかの固有名詞は少ないから楽なんだけどね
980名無しさんの野望:2012/03/15(木) 20:17:33.14 ID:0pR+W8SL
>>979
ありがとう、Excelだったら名詞だけ行を選んでとかできそうでいいな。
Terapadつかってるんだけど、FormIDに誤爆したりして使いづらかったんだよ。
よしやっぱExportするか。

もう一つ、今更聞きづらい質問。
CSで特定MODだけのExportってどうやればいいのかな?
ヘルプにも書いてないし、カンでFilterとかやってみたんだけど
どうしてもOblivion.esmのバニラデータも出力されちゃって困る。
981名無しさんの野望:2012/03/15(木) 20:32:08.14 ID:UIXs/CIp
>>980
wrye bashのName Exportとespexportを併用してる
espexportはModファイルで使われてたり変更されているものだけを抜き出してくれるから便利

espexport
http://wiki.oblivion.z49.org/?MOD%2FTool#s7834bf7
982名無しさんの野望:2012/03/15(木) 20:59:50.91 ID:0pR+W8SL
>>981
重ね重ね感謝。ライバッシュを使えばいいのか!
ありがとーこれ終わったらTemple of Onesも翻訳してみよう。
983956:2012/03/15(木) 21:52:02.49 ID:NvzK4Tag
>>965
亀レスだけどアドバイス感謝!
984名無しさんの野望:2012/03/16(金) 14:47:11.17 ID:41Rnr32t
紳士的車両の方向にいくんですかね。車体装備化。

http://up.mnty.net/img/up000904.jpg

絵だけじゃ分かんないですが。ついでに少しカッコよく。でもやっぱ木製。
今後の装備予定(仮)。

Head : 幌、天蓋
UpperBody : ボディ内外装
LowerBody : シャーシ、サス類
Foot ; 車輪、ノーマル、スノー
L/RRing ; 左右ウインカー、テールランプ
Amulet : エンブレム
985名無しさんの野望:2012/03/16(金) 18:58:56.27 ID:xYS2Tjtb
>>984
すげーねw
986名無しさんの野望:2012/03/16(金) 19:47:17.38 ID:IoP8rFmT
エンブレムが気になるw
987名無しさんの野望:2012/03/16(金) 21:35:16.08 ID:41Rnr32t
エンブレムは解体屋で探すですよ。

車体を装備にしたらGetActorLightAmountが自分のLightを反映する様に。
多分それが正常動作な気が。ライト自動点灯やめて手動にします。
988名無しさんの野望:2012/03/17(土) 09:39:43.54 ID:sXzhw+SD
ステアリングとサス機構の形状てどんなんがいいんでしょね。板バネ?
989名無しさんの野望:2012/03/17(土) 09:56:57.95 ID:3a1FCrcI
今更ながらポーズとモーションの作成をしています
いきなりオリジナルではなくリリースされてるものを少し変えるのから始めたいのですが
配布されているチュートリアルのボディメッシュは肩を動かせば肘も付いてきますが
自分が使っているメッシュを使うと方だけしか動きません

そして、リリースされているモーションも、スケルトンだけだと問題なく読み込めるのですが
ボディメッシュに付けてインポートすると地面に潰れて出てきます
他の方が作ったモーションを自分好みに変えたいのですが、メッシュを見ながら
変えることは可能でしょうか
990名無しさんの野望:2012/03/17(土) 10:44:24.85 ID:sXzhw+SD
可能だと思いますが。
SkeletonとそのkfをImport出来たのなら体メッシュをそこにImportで。
体メッシュImportはObjectModeでSkeletonを選択状態にしてImport画面の
「ImportGeometryOnly+ParentToSelectedArmature」ボタンをONで。

「ボディメッシュに付けてインポート」てのが少し謎な気が。
991名無しさんの野望:2012/03/17(土) 11:16:34.11 ID:3a1FCrcI
>>990
ありがとうございます!!できました!

勝手な思い込みでボディに骨や動きを入れるものとばかり思っていました
逆だったんですね・・・的確で早い回答感謝しますっ
992名無しさんの野望:2012/03/17(土) 11:47:42.01 ID:G54NobUl
>>988
板バネが妥当な気がしますね
エンブレムはやっぱり凡(←こんな感じのオブリのマーク?)になるのかな
993名無しさんの野望:2012/03/17(土) 12:22:51.59 ID:sXzhw+SD
うまくいったようで。

板バネカッコいいですよね。昔のジープ的な。
サスのストロークが大きいんでうまくいくかな。
ゲートのエンブレムがあるて事はDaedra的な車体も手に入るんですかね。
994名無しさんの野望:2012/03/17(土) 18:03:29.91 ID:3a1FCrcI
先ほどポーズで質問させてもらいましたが、その後の作業が上手くいっていません

ポーズ作成後テストとしてアイドルモーションにエクスポートするのですが
どうしても棒立ち状態になってしまい反映されていないようです
ためしに走りモーションをインポート、エクスポートしアイドルに貼り付けたところ
アイドルモーションが走りになったので、入力出力は間違えてないと思います

作業的には棒立ちの最初と最後ににlocrot、中間に肩を上げさせてlocrot
コレだけしかやってないんですが、何か他に必要なことはあるんでしょうか・・
995名無しさんの野望:2012/03/17(土) 19:17:12.93 ID:sXzhw+SD
アニメの場合はこれらが必要になるですよ。

・NiControllerSequence→Name、CycleType、StopTime
・NiTextKeyExtraData→TextKeys→「end」のTime(上のStopTimeと同じか)
・各ボーンのPriority(PoseModeでボーンを選ぶとボタンパネルの「Constaints」に出る、
無ければ出ない)

その辺どうなってるんでしょう。
996名無しさんの野望:2012/03/17(土) 19:27:58.77 ID:sXzhw+SD
うーん、現状だと前輪にサスの絵付けると前輪と一緒に方向変わっちゃう。
ステアリング機構がサスの上位にあるんで当然なんだけど。
どうしよう。Skeletonの構造から変えないとなんないかも。
997名無しさんの野望:2012/03/17(土) 19:34:33.79 ID:KIBF7ksg
初歩的な質問で申し訳ないのですが…
Blenderでポーズ作成し、いざnifファイルにExportしようとしてもエラーが出て
しまいます。
何処かのサイトの紹介で「メッシュはいらないので削除して」と書いてありそれ
も試しました。結果、Exportは成功するもののNifscopeで開くとボーンだけの状
態のものがレンダーに出力されるはずなのに、今度はそれが出力されない…。
にっちもさっちもいきません><;
一体、なにがいけないのでしょうか?
998名無しさんの野望:2012/03/17(土) 19:40:07.38 ID:sXzhw+SD
「kf」をExportするですよ。「ExportAnimationOnly」てボタンで。
999名無しさんの野望:2012/03/17(土) 19:57:46.64 ID:3a1FCrcI
>>995
>・各ボーンのPriority(PoseModeでボーンを選ぶとボタンパネルの「Constaints」に出る、
無ければ出ない)
これっぽいです、モーション作成のブログでこれは見なかったんですが
これは何を意味するものなのでしょうか?

そして次スレ立ててきます
1000名無しさんの野望:2012/03/17(土) 20:00:20.94 ID:3a1FCrcI
次スレです
OBLIVION MOD作成支援/相談スレPart10
http://anago.2ch.net/test/read.cgi/game/1331981957/
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。