SkyrimMOD作成wiki
http://w.atwiki.jp/skyrim_mod/
SkyrimMOD作成wiki
ja
2019-04-16T16:44:51+09:00
1555400691
-
右メニュー
https://w.atwiki.jp/skyrim_mod/pages/82.html
#contents()
2019-04-16T16:44:51+09:00
1555400691
-
ゲームとUI間でデータをやり取りする
https://w.atwiki.jp/skyrim_mod/pages/81.html
#contents
* ゲームとUI間でデータをやり取りする
このチュートリアルではSkyrimでのプレイヤー名をUI上で表示し、その名前を別のものに変更して承認ボタンを押したら、ゲーム内のプレイヤー名が変わるものを作ります。
ここでは以下の内容ができるようになります。
・CLIKコンポーネントを利用する
・ゲームからUIにデータを送る
・UIからゲームにデータを送る
#region(close,Flash関連ファイル)
本チュートリアルのFlashに関連するファイルを置いておきます。Adobe Flashを所持している方はこれ抜きでチュートリアルを進めても問題ありません。
ソフトを持ってなかったりするけど動作は見てみたい、というような方はご利用ください。
[[ゲームとUI間でデータをやり取りする>https://drive.google.com/open?id=1ZN4O4JXOh8L6eRITvbZejhPlsX0Y4Owh]]
|ファイル名|説明|
|02test.fla|Adobe Flashで開く編集ファイルです。|
|02test.swf|コンパイルして作成したデータやり取りのインターフェースです。CKのスクリプトで読み込むことで開くことができます。|
|MainPanel.as|ゲームとUIのやり取りのためのASソースです。|
#endregion
**必要なオブジェクトを作る
Flashを用いて名前の入力域、名前変更を承認する「Submit」ボタン、名前の変更をキャンセルする「Cancel」ボタンを作ります。
#image(01screen.jpg,https://img.atwikiimg.com/www50.atwiki.jp/skyrim_mod/attach/81/938/01screen.jpg)
画面では、黒い領域に「New name is ...」と表示し、下の「name」の所にプレイヤー名を表示します。
この「name」の領域はこちらの入力を受け付けるようにし、ここに名前を入力して「Submit」ボタンを押すことでプレイヤー名が変更できるという構造です。
ファイル・フォルダ構造について、制作者の環境ではプロジェクトのファイル名は02test.flaとし、「UIを開く
2019-04-15T08:24:10+09:00
1555284250
-
UIを開く・閉じる
https://w.atwiki.jp/skyrim_mod/pages/80.html
#contents
* UIを開く・閉じる
このチュートリアルではとりあえずSkyrim内で閉じるボタンを開いて、クリックしたらゲームに戻ることができるものを作ります。
ここでは以下の内容ができるようになります。
・SkyUIのリソースを取り込んだ編集ファイルを構築する
・Action Scriptを利用したUI用オブジェクトを作成できるようにする
・UIをSkyrimのゲーム内で開く/閉じることができるようにする
#region(close,Flash関連ファイル)
本チュートリアルのFlashに関連するファイルを置いておきます。Adobe Flashを所持している方はこれ抜きでチュートリアルを進めても問題ありません。
ソフトを持ってなかったりするけど動作は見てみたい、というような方はご利用ください。
[[UIを開く・閉じるファイル>https://drive.google.com/open?id=1K_vFyGEHpz9A3kmZUXSh3_UTZhRLgQUh]]
|ファイル名|説明|
|01test.fla|Adobe Flashで開く編集ファイルです。|
|01test.swf|コンパイルして作成した開く・閉じるインターフェースです。CKのスクリプトで読み込むことで開くことができます。|
|myButton.as|閉じるボタン用のスクリプトのソースです。|
#endregion
**前準備
***新規の編集ファイルを作成する
Adobe Flash CS6を開いた後、ファイル→新規から新規ドキュメントの作成を行います。
幅と高さは1280x720、背景色は何でもいいですがSkyUIの状態に習って#333333にしておきます。
#image(01newfile.jpg,https://img.atwikiimg.com/www50.atwiki.jp/skyrim_mod/attach/80/921/01newfile.jpg)
***フォルダ環境を整える
Flashの[ファイル]→[名前を付けて保存]から、新規ドキュメントを名前を付けて適当なフォルダに保存します。
ここでは保存先のフォルダは前準備で作成した00project、ファイル名は01test.flaとしています
#imag
2019-04-13T23:46:42+09:00
1555166802
-
UIの開発環境の構築
https://w.atwiki.jp/skyrim_mod/pages/79.html
#contents
* UIの開発環境の構築
**ソフトウェア・ライブラリのダウンロード
本チュートリアルでのUI作成のためには以下のソフト・ファイルを使用します。
***Adobe Flash CS6(Animate CCだとAS2非対応)
&color(red){Adobeのポリシー変更によりFlash CS6はダウンロードできなくなりました。}
&s(){有料なので注意。Adobe CCにて1ヵ月のトライアル利用ができます。}
&s(){https://www.adobe.com/jp/creativecloud/plans.html?promoid=NV3KR7S1&mv=other}
***SkyUIリソース
SkyUIのリソースには再利用を許可されているUI作成のためのライブラリ集があります。
これを利用して作成したMODを公開する場合はSkyUIチームのクレジット表記を必要とするので注意しましょう。
srcフォルダ内がUI作成のためのライブラリです。
https://github.com/schlangster/skyui
***FlashDevelop
ActionScriptを記述するためのエディタです。
他に使ってるエディタがあるから別に良いという方は入れなくても大丈夫です。
http://www.flashdevelop.org/
**インストール&パス設定
Adobe Flash CS6はとりあえずインストールのみでOKです。
SkyUIリソースは展開後、適当な所に配置してください。
FlashDevelopは、SkyUIのライブラリのコンポーネントを入力候補として出すための初期設定を行う必要があります。
FlashDevelopをインストール後に開いたら[ツール]→[ソフトウェアをインストール]から、AS2 Templateをインストーします。
SkyrimのUIはActionScript2を利用するため、そのプロジェクトファイルを作成するために必要です。
#image(01FlashDevelopソフトウェアインストール.jpg,https://img.atwikiimg.com/www50.atwiki.jp/skyrim_mod/attach/79/913/
2019-06-10T21:41:19+09:00
1560170479
-
UI作成
https://w.atwiki.jp/skyrim_mod/pages/78.html
#contents
* UI作成
Skyrimのインベントリ画面や取引画面といった、ユーザーインターフェース(UI)の作成に関する情報です。
**目的
このチュートリアルはSkyrim内で表示するUI画面を作成すること目的とします。
UIを自作することでMCMの制限を超えた設定画面を作れたり、自分のMOD内で必要な情報の閲覧を行うことができるようになります。
**チュートリアルの内容
SkyrimでのUIはすべてFlash(.swf)で行われています。このため、このチュートリアルでは①何かを行う.swfファイルを作成し、②それをCKのPapyrusから開いてUIを実行することが大体の内容です。
本チュートリアルで作成するUIはインベントリやパーク取得画面のように、開いている間はゲーム内時間は止まります。
ステータスバーのようなリアルタイムで動作するHUDウィジェット作成に応用できる箇所はあると思いますが、主だってサポートする内容ではありません。
また、このチュートリアルではFlash作成のために&bold(){有償のソフトウェアを利用}することを前提としていますが、完成された.swfファイル自体は別途用意しているのでCKで開いて実行してみることは可能です。
***チュートリアル内容
-[[UIの開発環境の構築]]
-[[UIを開く・閉じる]]
-[[ゲームとUI間でデータをやり取りする]]
2019-04-13T21:15:50+09:00
1555157750
-
SKSE上でのデータのセーブ/ロード
https://w.atwiki.jp/skyrim_mod/pages/77.html
#contents
*目的
SKSEプラグインを用いてデータの保存を行えるサンプルを提供します。
SKSEプラグイン上で処理するデータは、静的変数を用いればゲーム中は値を保持し続けますが、ゲーム終了時にはすべて破棄されます。
このため本来はPapyrusスクリプトでデータを保存する([[Tips参照>https://www50.atwiki.jp/skyrim_mod/pages/18.html#id_717ea3ed]])必要がありますが、このページのサンプルによりSKSEプラグイン上でデータの保存が可能となり、Papyrus上の変数などに戻すような手間が不要になります。
*前提
[[SKSE64プラグイン開発環境構築手順]]にて、skse 本体のコンパイルができる状態にあることが前提となります。
プラグインのサンプルプロジェクトである samplePlugin を元にデータのセーブ/ロードを実装します。
*手順概要
データの保存のために、SKSESelrializationInterfaceクラスが提供されています。これを利用してデータのセーブ/ロードを実現します。
以下の手順によって実装します。
+SKSESerizalizationIntarfaceのインスタンス化
--自分のSKSEプラグインでSKSESerializationInterfaceを利用できるようにします。
+セーブ/ロード時のコールバック関数の作成と登録
--セーブ時及びロード時に動作させる関数を作成し、実際に呼び出されるよう登録します。
+セーブ用関数の実装
--SKSEプラグイン内の変数の値を保存する処理を実装します。
+ロード用関数の実装
--SKSEプラグイン内の変数へ値を読み込ませる処理を実装します。
+セーブ/ロードの確認
--skse64_loader.exeからSKYRIMを起動し、セーブ/ロードが行われていることを確認します。
*手順詳細
以下の手順はすべてsamplePluginプロジェクトのmain.cppに対して行います。
**SKSESerializationInterfaceのインスタンス化
グローバル変数としてSKSESerializationInterfaceのポインタを作成
2018-09-08T09:53:11+09:00
1536367991
-
Mod公開後のトラブル対策
https://w.atwiki.jp/skyrim_mod/pages/76.html
mod公開後のトラブルにあわないよう事前の対策と事後の対処法について記載します。
#contents
*事前の対策
mod公開後に転載の許諾に関してトラブルが相次いでいます。あいまいな返事を許諾と言い張り、他ゲームに移植したり、私物化したりするケースもあります。これらには自衛する必要があります。
**許諾関係を日本語と英語で明文化しておく
多様な文化圏とやり取りする以上は、意思表示を明確にしないかぎりなかったことにされます。なるべくパーミッションについては具体的に明記しましょう。
下記のNexusの投稿時の許諾関係のページ訳とModの英語ページの[[パーミッション(許諾)関連を英語で書く>https://www50.atwiki.jp/skyrim_mod/pages/59.html#id_cfdd9099]]を参照にしてください。
**なるべく自分でやっておく
勝手にコンバートしたり、翻訳して別サイトに置いたりする場合は善意でやってるつもりなケースも多く、転載者は「ユーザーのため」という自己正当化をします。SE版、LE版への移植の場合は、技術的に問題があって難しい場合はその旨を書いておきます。後日対応する場合は、それも書いておきます。
翻訳はGoogleのスプレッドシートを共有公開して募ります。
**あいまいな返事をしない
許可を求められたときに、あいまいな条件付きの同意はなるべく避けましょう。拡大解釈して権利ごと奪おうとする人がいます。はっきりと意思表示する必要があります。
英語に不慣れなノンネイティブや性格的に優しすぎる人が狙われてます。勇気を出して断るのも手です。
*トラブル事後の対策
・転載者と連絡をとって取り下げさせる。コメント欄かPMで連絡を取る。
・Nexusの運営に報告する。基本的にmodのDescriptionページにあるReportから報告してください。modが非公開だとここから報告はできません。別の手段をとってください。forum profileからユーザーを通報することもできます。PMの各発言にも通報機能があります。下記画像参照。スタッフへのPM、DiscordのNexusModAuthorsで相談などもありますが、非公式の扱いになります。support@nexusmods.
2019-04-21T01:12:53+09:00
1555776773
-
SKSEプラグイン開発環境構築手順(旧)
https://w.atwiki.jp/skyrim_mod/pages/75.html
SKSE プラグインを開発するには、以下の環境が必要になります。
**必要なソフトウェアのインストール
-[[Micorsoft Visual C++ 2008 Express Edition>http://gurigumi.s349.xrea.com/programming/visualcpp/install2.html]]
--2010, 2012 とあるが本体が 2008 で開発されており 2008 の相性が一番良い。
--しかし、既に過去のもので入手困難であり、上記リンク先のサイトで入手可能な内に早めに入手しておいた方が良い。
-[[DirectX SDK>http://www.microsoft.com/en-us/download/details.aspx?id=6812]]
--「fatal error C1083: include ファイルを開けません。'dinput.h': No such file or directory」というエラーでコンパイルできない箇所があるため必要になる。
上記サイトからダウンロードした Micorsoft Visual C++ 2008 Express Edition はオフライン版の DVD イメージファイルです。
インストールするには通常 DVD に書きだす必要がありますが、仮想 DVD-ROM ドライブ作成ソフトを使うことでそのままインストールできます。
以下、窓の杜から該当ソフトをダウンロードするリンクです。
-[[Deamon Tools Lite>http://www.forest.impress.co.jp/library/software/daemonlite/]]
Deamon Tools Lite は、Visual C++ 2008 インストール時のみ必要なものなので、インストール後はアンインストールして構いません。
現在でも、下記のURLでVisual C++ 2008 ExpressionのWEBセットアップ版をダウンロードできます。(2013/6/30日現在)
ただしユーザー登録(無料)する必要があるので、嫌な方はオフライン版を。
http://go.microsoft.com/?LinkId=9348304
Visual
2018-02-03T20:23:28+09:00
1517657008
-
スクリプトmod作成
https://w.atwiki.jp/skyrim_mod/pages/74.html
<p>player.setav Alteration 9999<br />
player.setav Conjuration 9999<br />
player.setav Destruction 9999<br />
player.setav Enchanting 9999<br />
player.setav Illusion 9999<br />
player.setav Restoration 9999<br />
player.setav Marksman 9999<br />
player.setav Block 9999<br />
player.setav HeavyArmor 9999<br />
player.setav Onehanded 9999<br />
player.setav Smithing 9999<br />
player.setav Twohanded 9999<br />
player.setav Alchemy 9999<br />
player.setav LightArmor 9999<br />
player.setav Lockpicking 9999<br />
player.setav Pickpocket 9999<br />
player.setav Sneak 9999<br />
player.setav Speechcraft 9999<br />
tgm<br />
tmm 1</p>
<p>player.setav dragonsouls 100</p>
<p> </p>
<p>player.additem 0000000A 99<br />
player.additem 0000000F 9999999</p>
<p>player.addperk 000BE128<br />
player.addperk 000C07CE<br />
player.addperk 000C07CF<br />
player.addperk 000C07D0<br />
player.addperk 000C07D1<br />
player.addperk 00058F72<br />
player.addperk 00058F75<br />
player.addperk 001090A2<br />
pl
2017-02-24T22:16:18+09:00
1487942178
-
Skyrim Special Edition
https://w.atwiki.jp/skyrim_mod/pages/73.html
#contents
2016年10月28日に&bold(){Skyrim Special Edition(以下SE版)}が発売されました。
SE版特有のMOD制作についての情報をまとめるページです。
旧来のスカイリムとの変更点は少なく、&bold(){SKSE以外}ならmodの互換性が高いです。
*簡易まとめ
互換性なしだが変換が必要:bsaファイル、アニメーション、メッシュファイルの一部
そのまま使える:スクリプト、テクスチャ、音声ファイル、triファイル
そのまま使えるが変換推奨:esp、esm
変換不可能(コードの書き換えが必要):SKSEプラグイン
コンバートの配布に関しては必ず原作者に許諾を確認してください。
*ファイル
**esp
ファイル構造はほぼ変わりません。大半はそのまま使えますが、移植する場合はCreation kitでespの読み込み、保存をすることが推奨されています。水のシェーダーやボリュメトリックライトの設定に変更があります。
**fuz
音声ファイルなどはそのまま使える…ハズ…
ボイスを変えたい場合はLE版同様に「Ly Player Only Voice Replacer」が使える…ハズ…
**スクリプト
これもそのまま使えます。コンパイルし直す必要もなし。しかし、スクリプトのソースフォルダがデフォルトでData\Scripts\Sourceから、Data\Sourceに変更になりました。
**テクスチャ
これもそのまま使えます。ただし、RGB5.6.5は非対応になりました。
BC7などDirectX10のフォーマットが使えます。
**メッシュ
後方互換性があるので旧来のほとんどのnifファイルはそのまま使うことができます。
バニラのファイルは&bold(){NiTrishape}から&bold(){BSTriShape}に変更されています。
以前はNiTrishapeとNiTrishapeDataに分かれてデータを保持してましたが、BSTriShapeは両方まとめたようなデータです。
[[AFKMod nifskope開発者のひとりであるJon氏の発言>>http://afkmods.iguanadons.net/index.php?/topic/46
2021-12-07T15:59:08+09:00
1638860348