白峯のソース

IT なことのメモなど

Mac から Microsoft Remote Desktop で Windows に接続するとキーボードが 101(US 配列)なる問題

レジストリエディタ(regedit.exe)から
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\KeyboardType Mapping\JPN

00000000
の値を
kbd101.dll
から
kbd106n.dll
に変更し、Windows を再起動すると JP 配列になった。

macOS 11.6.5
Microsoft Remote Desktop 10.7.6
Windows 10 Pro

UE5 + Mac + VSCode 環境メモ

Unreal Engine 5 インストール
→ オプションで「デバッグに必要なエディタシンボル」もインストール


VS Code に Extension をインストール
C/C++
C/C++ Extension Pack
C#
→ (あると良さそう)Unreal Engine 4 Helper
→ (あると良さそう)Unreal Engine 4 Snippets


▼ (あると良さそう)VSCode/UE Intellisense Fixes Extension インストール
https://gist.github.com/boocs/f63a4878156295b6e854cac68672f305
> Download from here から VSIX をダウンロード
> 左メニューから「拡張機能
> 「…」(3dots) メニューより「VSIX からのインストール」
> 先程ダウンロードした VSIX を指定し、インストール
> UE Intellisense Fixes の設定を以下に変更
    → Cpp Stanrad: C++14
    → Enable Fixes: ON
    → Enable Optional Fixes: ON


.NET SDK のインストール(ない場合)
VS Code
> 「The .NET Core SDK cannot be located.」メッセージの「Get the SDK
    → または、「.NET Core SDK」で検索して MacSDK
> 該当するプラットフォーム SDK をダウンロードしてインストール
    ※ CPU アーキテクチャIntel CPU: x64 か Apple M1: Arm64 かに注意
> 左メニューから「拡張機能」、C#、歯車マーク(設定)
> 拡張機能の設定
> Omnisharp: Dotnet Path の「setting.json で編集」
> dotnetPath を設定
    "omnisharp.dotnetPath":    "/usr/local/share/dotnet/dotnet"
    ※ パスは環境に合わせること
    ※ which dotnet で PATH が通っているか確認しておくこと(echo $PATH でも確認できる)


Unreal Editor のソースコードエディタを VS Code に設定(設定されていない場合)
Unreal Editor 環境設定
> ソースコード
> ソースコードエディタ
    → Visual Studio Code に設定
> 再起動


VS Code の .workspace を作成(ない場合)
> Unreal Editor > ツール > Visual Studio Code プロジェクトを更新
> Unreal Editor > ツール > Visual Studio Code を開く


▼ launch.jspn にアタッチを追加
VS Code
> (launch.json がない場合)左メニューから「実行とデバッグ」、「launch.json ファイルを作成します」、環境の選択「LLDB」
> "configurations" に以下を追記
        {
            "name": "Attach Editor (Development)",
            "type": "lldb",
            "request": "attach",
            "program": "/Users/Shared/Epic Games/UE_5.0/Engine/Binaries/Mac/UnrealEditor.app/Contents/MacOS/UnrealEditor",
            "preLaunchTask": "MyProjectEditor Mac Development Build",
        },
    ※ MyProject は、自分のプロジェクト名に変更
    ※ パスは環境に合わせること
> 追加した「Attach Editor (Development)」で実行してみる
    → 左メニューから「実行とデバッグ」、ドロップダウンから追加した Attach.. を選択しておく
    → 先に VS Code で実行、その後 Unreal Editor でプレイ
    → 実行前に適当な場所にブレイクポイントを設定しておき、そこで止まったら成功!
※ 既存の Launch... 構成でもデバッグできるが、そのたびに Unreal Editor が起動/終了してしまう
※ Attach は起動済の Unreal Editor を利用する


▼ インテリセンスの設定
VS Code
> .vscode/c_cpp_properies.json を開き、以下の内容に書き換える(または、configurations 下に {〜} を追記する)
{
    "configurations": [
        {
            "name": "UE5",
            "includePath": [
                "${default}",
                "${workspaceFolder}/Source/**",
                "${workspaceFolder}/Intermediate/**",
                "/Users/Shared/Epic Games/UE_5.0/Engine/**",
            ],
            "defines": [
                "IS_PROGRAM=0",
                "UE_EDITOR=1",
                "ENABLE_PGO_PROFILE=0",
                "USE_VORBIS_FOR_STREAMING=1",
                "USE_XMA2_FOR_STREAMING=1",
                "WITH_DEV_AUTOMATION_TESTS=1",
                "WITH_PERF_AUTOMATION_TESTS=1",
                "UNICODE",
                "_UNICODE",
                "__UNREAL__",
                "IS_MONOLITHIC=0",
                "WITH_ENGINE=1",
                "WITH_UNREAL_DEVELOPER_TOOLS=1",
                "WITH_APPLICATION_CORE=1",
                "WITH_COREUOBJECT=1",
                "USE_STATS_WITHOUT_ENGINE=0",
                "WITH_PLUGIN_SUPPORT=0",
                "WITH_ACCESSIBILITY=1",
                "WITH_PERFCOUNTERS=1",
                "USE_LOGGING_IN_SHIPPING=0",
                "WITH_LOGGING_TO_MEMORY=0",
                "USE_CACHE_FREED_OS_ALLOCS=1",
                "USE_CHECKS_IN_SHIPPING=0",
                "WITH_EDITOR=1",
                "WITH_SERVER_CODE=1",
                "WITH_CEF3=1",
                "WITH_LIVE_CODING=1",
                "WITH_XGE_CONTROLLER=1",
                "UBT_MODULE_MANIFEST=\"UnrealEditor.modules\"",
                "UBT_MODULE_MANIFEST_DEBUGGAME=\"UnrealEditor-Mac-DebugGame.modules\"",
                "UBT_COMPILED_PLATFORM=Mac",
                "UBT_COMPILED_TARGET=Editor",
                "UE_APP_NAME=\"UnrealEditor\"",
                "NDIS_MINIPORT_MAJOR_VERSION=0",
                "OVERRIDE_PLATFORM_HEADER_NAME=Mac",
                "UE_BUILD_DEVELOPMENT=1",
                "UE_IS_ENGINE_MODULE=0",
                "IMPLEMENT_ENCRYPTION_KEY_REGISTRATION()=",
                "IMPLEMENT_SIGNING_KEY_REGISTRATION()=",
                "DEPRECATED_FORGAME=DEPRECATED",
                "UE_DEPRECATED_FORGAME=UE_DEPRECATED",
                "INCLUDE_CHAOS=0",
                "WITH_PHYSX=1",
                "WITH_CHAOS=0",
                "WITH_CHAOS_CLOTHING=0",
                "WITH_CHAOS_NEEDS_TO_BE_FIXED=0",
                "PHYSICS_INTERFACE_PHYSX=1",
                "WITH_APEX=1",
                "WITH_APEX_CLOTHING=1",
                "WITH_CLOTH_COLLISION_DETECTION=1",
                "WITH_PHYSX_COOKING=1",
                "WITH_NVCLOTH=1",
                "WITH_CUSTOM_SQ_STRUCTURE=0",
                "WITH_IMMEDIATE_PHYSX=0",
                "GPUPARTICLE_LOCAL_VF_ONLY=0",
                "ENGINE_VTABLE=DLLIMPORT_VTABLE",
                "ENGINE_API=",
                "UE_ENABLE_ICU=1",
                "WITH_VS_PERF_PROFILER=0",
                "WITH_DIRECTXMATH=0",
                "WITH_MALLOC_STOMP=1",
                "CORE_VTABLE=DLLIMPORT_VTABLE",
                "CORE_API=",
                "TRACELOG_VTABLE=DLLIMPORT_VTABLE",
                "TRACELOG_API=",
                "COREUOBJECT_VTABLE=DLLIMPORT_VTABLE",
                "COREUOBJECT_API=",
                "NETCORE_VTABLE=DLLIMPORT_VTABLE",
                "NETCORE_API=",
                "APPLICATIONCORE_VTABLE=DLLIMPORT_VTABLE",
                "APPLICATIONCORE_API=",
                "RHI_VTABLE=DLLIMPORT_VTABLE",
                "RHI_API=",
                "JSON_VTABLE=DLLIMPORT_VTABLE",
                "JSON_API=",
                "WITH_FREETYPE=1",
                "SLATECORE_VTABLE=DLLIMPORT_VTABLE",
                "SLATECORE_API=",
                "INPUTCORE_VTABLE=DLLIMPORT_VTABLE",
                "INPUTCORE_API=",
                "SLATE_VTABLE=DLLIMPORT_VTABLE",
                "SLATE_API=",
                "WITH_UNREALPNG=1",
                "WITH_UNREALJPEG=1",
                "WITH_UNREALEXR=1",
                "IMAGEWRAPPER_VTABLE=DLLIMPORT_VTABLE",
                "IMAGEWRAPPER_API=",
                "MESSAGING_VTABLE=DLLIMPORT_VTABLE",
                "MESSAGING_API=",
                "MESSAGINGCOMMON_VTABLE=DLLIMPORT_VTABLE",
                "MESSAGINGCOMMON_API=",
                "RENDERCORE_VTABLE=DLLIMPORT_VTABLE",
                "RENDERCORE_API=",
                "SOCKETS_PACKAGE=1",
                "SOCKETS_VTABLE=DLLIMPORT_VTABLE",
                "SOCKETS_API=",
                "ASSETREGISTRY_VTABLE=DLLIMPORT_VTABLE",
                "ASSETREGISTRY_API=",
                "ENGINEMESSAGES_VTABLE=DLLIMPORT_VTABLE",
                "ENGINEMESSAGES_API=",
                "ENGINESETTINGS_VTABLE=DLLIMPORT_VTABLE",
                "ENGINESETTINGS_API=",
                "SYNTHBENCHMARK_VTABLE=DLLIMPORT_VTABLE",
                "SYNTHBENCHMARK_API=",
                "RENDERER_VTABLE=DLLIMPORT_VTABLE",
                "RENDERER_API=",
                "GAMEPLAYTAGS_VTABLE=DLLIMPORT_VTABLE",
                "GAMEPLAYTAGS_API=",
                "PACKETHANDLER_VTABLE=DLLIMPORT_VTABLE",
                "PACKETHANDLER_API=",
                "RELIABILITYHANDLERCOMPONENT_VTABLE=DLLIMPORT_VTABLE",
                "RELIABILITYHANDLERCOMPONENT_API=",
                "AUDIOPLATFORMCONFIGURATION_VTABLE=DLLIMPORT_VTABLE",
                "AUDIOPLATFORMCONFIGURATION_API=",
                "MESHDESCRIPTION_VTABLE=DLLIMPORT_VTABLE",
                "MESHDESCRIPTION_API=",
                "STATICMESHDESCRIPTION_VTABLE=DLLIMPORT_VTABLE",
                "STATICMESHDESCRIPTION_API=",
                "PAKFILE_VTABLE=DLLIMPORT_VTABLE",
                "PAKFILE_API=",
                "RSA_VTABLE=DLLIMPORT_VTABLE",
                "RSA_API=",
                "NETWORKREPLAYSTREAMING_VTABLE=DLLIMPORT_VTABLE",
                "NETWORKREPLAYSTREAMING_API=",
                "PHYSICSCORE_VTABLE=DLLIMPORT_VTABLE",
                "PHYSICSCORE_API=",
                "COMPILE_WITHOUT_UNREAL_SUPPORT=0",
                "CHAOS_MEMORY_TRACKING=0",
                "CHAOS_VTABLE=DLLIMPORT_VTABLE",
                "CHAOS_API=",
                "CHAOS_CHECKED=0",
                "CHAOSCORE_VTABLE=DLLIMPORT_VTABLE",
                "CHAOSCORE_API=",
                "INTEL_ISPC=1",
                "VORONOI_VTABLE=DLLIMPORT_VTABLE",
                "VORONOI_API=",
                "FIELDSYSTEMCORE_VTABLE=DLLIMPORT_VTABLE",
                "FIELDSYSTEMCORE_API=",
                "WITH_PHYSX_RELEASE=0",
                "UE_PHYSX_SUFFIX=PROFILE",
                "UE_APEX_SUFFIX=PROFILE",
                "APEX_UE4=1",
                "APEX_STATICALLY_LINKED=0",
                "WITH_APEX_LEGACY=1",
                "SIGNALPROCESSING_VTABLE=DLLIMPORT_VTABLE",
                "SIGNALPROCESSING_API=",
                "WITH_RECAST=1",
                "UNREALED_VTABLE=DLLIMPORT_VTABLE",
                "UNREALED_API=",
                "BSPMODE_VTABLE=DLLIMPORT_VTABLE",
                "BSPMODE_API=",
                "DIRECTORYWATCHER_VTABLE=DLLIMPORT_VTABLE",
                "DIRECTORYWATCHER_API=",
                "DOCUMENTATION_VTABLE=DLLIMPORT_VTABLE",
                "DOCUMENTATION_API=",
                "LOAD_PLUGINS_FOR_TARGET_PLATFORMS=1",
                "PROJECTS_VTABLE=DLLIMPORT_VTABLE",
                "PROJECTS_API=",
                "SANDBOXFILE_VTABLE=DLLIMPORT_VTABLE",
                "SANDBOXFILE_API=",
                "EDITORSTYLE_VTABLE=DLLIMPORT_VTABLE",
                "EDITORSTYLE_API=",
                "SOURCE_CONTROL_WITH_SLATE=1",
                "SOURCECONTROL_VTABLE=DLLIMPORT_VTABLE",
                "SOURCECONTROL_API=",
                "UNREALEDMESSAGES_VTABLE=DLLIMPORT_VTABLE",
                "UNREALEDMESSAGES_API=",
                "GAMEPLAYDEBUGGER_VTABLE=DLLIMPORT_VTABLE",
                "GAMEPLAYDEBUGGER_API=",
                "BLUEPRINTGRAPH_VTABLE=DLLIMPORT_VTABLE",
                "BLUEPRINTGRAPH_API=",
                "EDITORSUBSYSTEM_VTABLE=DLLIMPORT_VTABLE",
                "EDITORSUBSYSTEM_API=",
                "HTTP_PACKAGE=1",
                "CURL_ENABLE_DEBUG_CALLBACK=1",
                "CURL_ENABLE_NO_TIMEOUTS_OPTION=1",
                "HTTP_VTABLE=DLLIMPORT_VTABLE",
                "HTTP_API=",
                "UNREALAUDIO_VTABLE=DLLIMPORT_VTABLE",
                "UNREALAUDIO_API=",
                "FUNCTIONALTESTING_VTABLE=DLLIMPORT_VTABLE",
                "FUNCTIONALTESTING_API=",
                "AUTOMATIONCONTROLLER_VTABLE=DLLIMPORT_VTABLE",
                "AUTOMATIONCONTROLLER_API=",
                "LOCALIZATION_VTABLE=DLLIMPORT_VTABLE",
                "LOCALIZATION_API=",
                "WITH_SNDFILE_IO=1",
                "AUDIOEDITOR_VTABLE=DLLIMPORT_VTABLE",
                "AUDIOEDITOR_API=",
                "AUDIOMIXER_VTABLE=DLLIMPORT_VTABLE",
                "AUDIOMIXER_API=",
                "TARGETPLATFORM_VTABLE=DLLIMPORT_VTABLE",
                "TARGETPLATFORM_API=",
                "UELIBSAMPLERATE_VTABLE=DLLIMPORT_VTABLE",
                "UELIBSAMPLERATE_API=",
                "LEVELEDITOR_VTABLE=DLLIMPORT_VTABLE",
                "LEVELEDITOR_API=",
                "SETTINGS_VTABLE=DLLIMPORT_VTABLE",
                "SETTINGS_API=",
                "INTROTUTORIALS_VTABLE=DLLIMPORT_VTABLE",
                "INTROTUTORIALS_API=",
                "HEADMOUNTEDDISPLAY_VTABLE=DLLIMPORT_VTABLE",
                "HEADMOUNTEDDISPLAY_API=",
                "VREDITOR_VTABLE=DLLIMPORT_VTABLE",
                "VREDITOR_API=",
                "COMMONMENUEXTENSIONS_VTABLE=DLLIMPORT_VTABLE",
                "COMMONMENUEXTENSIONS_API=",
                "LANDSCAPE_VTABLE=DLLIMPORT_VTABLE",
                "LANDSCAPE_API=",
                "PROPERTYEDITOR_VTABLE=DLLIMPORT_VTABLE",
                "PROPERTYEDITOR_API=",
                "ACTORPICKERMODE_VTABLE=DLLIMPORT_VTABLE",
                "ACTORPICKERMODE_API=",
                "SCENEDEPTHPICKERMODE_VTABLE=DLLIMPORT_VTABLE",
                "SCENEDEPTHPICKERMODE_API=",
                "DETAILCUSTOMIZATIONS_VTABLE=DLLIMPORT_VTABLE",
                "DETAILCUSTOMIZATIONS_API=",
                "CLASSVIEWER_VTABLE=DLLIMPORT_VTABLE",
                "CLASSVIEWER_API=",
                "GRAPHEDITOR_VTABLE=DLLIMPORT_VTABLE",
                "GRAPHEDITOR_API=",
                "STRUCTVIEWER_VTABLE=DLLIMPORT_VTABLE",
                "STRUCTVIEWER_API=",
                "CONTENTBROWSER_VTABLE=DLLIMPORT_VTABLE",
                "CONTENTBROWSER_API=",
                "ENABLE_HTTP_FOR_NFS=1",
                "NETWORKFILESYSTEM_VTABLE=DLLIMPORT_VTABLE",
                "NETWORKFILESYSTEM_API=",
                "UMG_VTABLE=DLLIMPORT_VTABLE",
                "UMG_API=",
                "MOVIESCENE_VTABLE=DLLIMPORT_VTABLE",
                "MOVIESCENE_API=",
                "TIMEMANAGEMENT_VTABLE=DLLIMPORT_VTABLE",
                "TIMEMANAGEMENT_API=",
                "MOVIESCENETRACKS_VTABLE=DLLIMPORT_VTABLE",
                "MOVIESCENETRACKS_API=",
                "ANIMATIONCORE_VTABLE=DLLIMPORT_VTABLE",
                "ANIMATIONCORE_API=",
                "PROPERTYPATH_VTABLE=DLLIMPORT_VTABLE",
                "PROPERTYPATH_API=",
                "NAVIGATIONSYSTEM_VTABLE=DLLIMPORT_VTABLE",
                "NAVIGATIONSYSTEM_API=",
                "MESHDESCRIPTIONOPERATIONS_VTABLE=DLLIMPORT_VTABLE",
                "MESHDESCRIPTIONOPERATIONS_API=",
                "MESHBUILDER_VTABLE=DLLIMPORT_VTABLE",
                "MESHBUILDER_API=",
                "MATERIALSHADERQUALITYSETTINGS_VTABLE=DLLIMPORT_VTABLE",
                "MATERIALSHADERQUALITYSETTINGS_API=",
                "INTERACTIVETOOLSFRAMEWORK_VTABLE=DLLIMPORT_VTABLE",
                "INTERACTIVETOOLSFRAMEWORK_API=",
                "TOOLMENUSEDITOR_VTABLE=DLLIMPORT_VTABLE",
                "TOOLMENUSEDITOR_API=",
                "WITH_OGGVORBIS=1",
                "XAUDIO2_VTABLE=DLLIMPORT_VTABLE",
                "XAUDIO2_API=",
                "AUDIOMIXERXAUDIO2_VTABLE=DLLIMPORT_VTABLE",
                "AUDIOMIXERXAUDIO2_API=",
                "ASSETTAGSEDITOR_VTABLE=DLLIMPORT_VTABLE",
                "ASSETTAGSEDITOR_API=",
                "COLLECTIONMANAGER_VTABLE=DLLIMPORT_VTABLE",
                "COLLECTIONMANAGER_API=",
                "ADDCONTENTDIALOG_VTABLE=DLLIMPORT_VTABLE",
                "ADDCONTENTDIALOG_API=",
                "USE_EMBREE=1",
                "MESHUTILITIES_VTABLE=DLLIMPORT_VTABLE",
                "MESHUTILITIES_API=",
                "MESHMERGEUTILITIES_VTABLE=DLLIMPORT_VTABLE",
                "MESHMERGEUTILITIES_API=",
                "HIERARCHICALLODUTILITIES_VTABLE=DLLIMPORT_VTABLE",
                "HIERARCHICALLODUTILITIES_API=",
                "MESHREDUCTIONINTERFACE_VTABLE=DLLIMPORT_VTABLE",
                "MESHREDUCTIONINTERFACE_API=",
                "ASSETTOOLS_VTABLE=DLLIMPORT_VTABLE",
                "ASSETTOOLS_API=",
                "KISMETCOMPILER_VTABLE=DLLIMPORT_VTABLE",
                "KISMETCOMPILER_API=",
                "GAMEPLAYTASKS_VTABLE=DLLIMPORT_VTABLE",
                "GAMEPLAYTASKS_API=",
                "WITH_GAMEPLAY_DEBUGGER=1",
                "AIMODULE_VTABLE=DLLIMPORT_VTABLE",
                "AIMODULE_API=",
                "KISMET_VTABLE=DLLIMPORT_VTABLE",
                "KISMET_API=",
                "PHYSICSSQ_VTABLE=DLLIMPORT_VTABLE",
                "PHYSICSSQ_API=",
                "CHAOSSOLVERS_VTABLE=DLLIMPORT_VTABLE",
                "CHAOSSOLVERS_API=",
                "GEOMETRYCOLLECTIONCORE_VTABLE=DLLIMPORT_VTABLE",
                "GEOMETRYCOLLECTIONCORE_API=",
                "GEOMETRYCOLLECTIONSIMULATIONCORE_VTABLE=DLLIMPORT_VTABLE",
                "GEOMETRYCOLLECTIONSIMULATIONCORE_API=",
                "CLOTHINGSYSTEMRUNTIMEINTERFACE_VTABLE=DLLIMPORT_VTABLE",
                "CLOTHINGSYSTEMRUNTIMEINTERFACE_API=",
                "AUDIOMIXERCORE_VTABLE=DLLIMPORT_VTABLE",
                "AUDIOMIXERCORE_API=",
            ],
            "macFrameworkPath": [
                "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/usr/bin/clang",
            "cStandard": "c17",
            "cppStandard": "c++14",
            "intelliSenseMode": "macos-clang-x64"
        }
       ],
    "version": 4
}

※ とりあえずエラーは出ないが、コード補完機能はまだまだ改良の余地がありそう
※ 複数構成がある場合は、C/C++ 拡張機能の IntelliSense の構成で構成名を選択する必要がありそう

似ザードリィのすべて 〜 (2) 対クローン兵戦の詳細解説

1. 対クローン兵戦の概要

対クローン戦は、城の訓練場に登録されているキャラクターのクローンと戦うことができるクエストです。

登録されているキャラクターなら誰でも戦うことができるので、自分自身のクローンと戦うことも可能ですし、同じキャラクターの複数クローンとも戦えます。

条件を満たしたクローン戦に勝つと、条件に応じたメダルを取得できます。
各メダルの条件については後述します。

戦闘は通常のモンスター戦と基本的には同じですが、ボス戦扱いのためセブンブーンでの敵のテレポート(一発勝利)は制限されます。
また、行動順はモンスターのように乱数によるものではなく、純粋なキャラクターの素早さがほぼそのまま反映されます。

クローン兵を倒してもオリジナルのキャラクターには何ら影響はありません。
容赦なくボコボコにしちゃいましょう。
しかし、味方パーティーへのダメージ等は通常のモンスター戦同様、戦闘後も残りますし、全滅もします。

高レベルであると有利かというと必ずしもそうとは言えません。
というのも、メタルの取得条件は、味方パーティーと同格かより強い(相対ランク=V-RANKが高い)クローンらに勝利することであるため、自分達が強いとそれ相応の倍率の強さを持つキャラクターのクローンを用意する必要が出てくるためです。
最高のメダルを取得するには 300% 強いクローン兵パーティに勝つ必要があります!

戦うクローンは味方のパーティーを組むのと同様に任意に編成可能です。
ただし、同じキャラクターを複数人に増やせる点、並びは自動的に決められる点、ひとつのクローンパーティーしか組めない点が異なります。
なお、クローンパーティーを組まないままクローン戦を行うと、訓練場にいるキャラクターがランダムに選ばれて編成されます。

敵パーティーと味方パーティーのそれぞれの強さ(RANK)は同じ式で出されます。
詳細は後述しますが、関わるパラメーターは、
キャラクターレベル
攻撃ダメージ(1回あたりの攻撃ダメージ×攻撃回数)
AC
HP
特殊なアクセサリー装備
で決まります。

本クエストは、全てのメダルをひとつ以上取得して王城の男に渡せばクリアとなります。
以上の特徴を把握した上で、同格以上のクローン兵パーティーに対して作戦によって勝利してください!

 


以下はより詳細な条件の説明です。
自力で解きたい方はここで閉じてください。

 

↓ ネ ↓

↓ タ ↓

↓ バ ↓

↓ レ ↓

↓ 注 ↓

↓ 意 ↓

 

2. 対クローン兵戦の詳細情報


▽ ひとりのキャラクターの強さ=CHR_RANKは以下の式で求められます。

 CHR_RANK = キャラクターのレベル
 限界突破していれば、CHR_RANK = CHR_RANK × 1.2
 CHR_RANK = CHR_RANK + (攻撃ダメージAttack ÷ 10)
 CHR_RANK = CHR_RANK + 10 - AC
 CHR_RANK = CHR_RANK + (HP ÷ 10)
 ある特定のアイテムを装備していると、 CHR_RANK = CHR_RANK + 100


▽ パーティーの強さ=PARTY_RANKは以下の式で求められます。

 PARTY_RANK = パーティに参加しているそれぞれのキャラクターのCHR_RANKの合計


▽ 対戦の相対ランク=V-RANKは以下の式で求められます。

 V-RANK = クローンパーティのPARTY_RANK ÷ 味方パーティのPARTY_RANK × 100


▽ 各メダルの取得条件は、以下の通りです。

全メダルの共通条件:
・味方パーティが全員レベル 10 以上
・敵クローン兵は全員限界突破したパラメータを保持している

職業メダルの条件:
・敵も味方も同じ職業
・敵クローン兵1人以上
・V-RANK 100 以上

種族メダルの条件:
・敵も味方も同じ種族
・敵クローン兵3人以上
・V-RANK 100 以上

後衛のメダルの条件:
・敵も味方も魔法使い、僧侶、盗賊、ビショップのみ
・敵クローン兵6人
・V-RANK 150 以上

達人のメダルの条件:
・敵クローン兵6人
・V-RANK 200 〜 299

栄光のメダルの条件:
・敵クローン兵6人
・V-RANK 300 以上


▽ その他のヒント

・味方パーティーと同じ構成のクローンパーティーは必ず V-RANK が 100
・職業メダルはクローン1体と戦えば条件を満たすため、自分自身と戦って勝てば取得できる
・種族メダルの3人は同じキャラクターのクローンでも問題なし(その他のメダルも同様)
・対戦するキャラクター集めに:「NIZ ギルガメッシュの出張酒場」https://9203.teacup.com/niz/bbs
・敵も復活呪文を使ってきます
・NIZ では超高レベルになるとどんなキャラクターでもの一撃死の世界になり攻撃順が重要な戦いに

【公式ガイド】似ザードリィのすべて 〜 (1) 初心者への手引き

0. NIZ から始めるウィズ

まずこの文書では、おおよそ本家ウィザードリィのシナリオ #1, 2, 3, 5 のシステムを踏襲した作品郡(外伝シリーズやウィズクローン等)を、やや乱暴ではありますが、まとめて「古典ウィズ」と呼称します。
世間での「ウィズ」とは必ずしも一致しないことがありますのでご了承ください。

この手引きは、古典ウィズ初心者の方向けに書かれた、本作 NIZ (ニズ)の始め方です。
ですが、古典ウィズ系と似た点が多いため、楽しくもキツイ NIZ の序盤を切り抜けられれば他の古典ウィズ系を遊ぶことも容易なのではないかと思われます。(注:作者の主観です。)
NIZ でレベル 9〜13 くらいまで肩慣らしをして、他の作品を遊んでみるのも楽しいかもしれません!

 

1. NIZ を始める

※既にプレイを開始されてる方は読み飛ばしてもらって大丈夫です

1-1. どのプラットフォームで遊ぶか

まずは、お使いの端末(スマホタブレット?パソコン?)に合わせてウェブ版かスマホアプリ版かを選びましょう。

ウェブ版は、パソコン、タブレットスマートフォンなどにインストールされているインターネットブラウザ(Chrome, Safari, Firefox, Edge など)で動作し、インストールが不要な反面、データ類もインターネットから都度ダウンロードするため、常時インターネットに接続されている必要があります。

また、ウェブ版はローカルストレージと呼ばれるブラウザのサイトデータ領域に保存されるため、サイトデータの削除を行うとセーブデータも消去されてしまう点が要注意です。

スマホアプリ版は、iOS 版と Android 版があります。
アプリの全面にブラウザが貼り付けらている単純な造りのため、ウェブ版と内容は全く一緒です。
スマホアプリ版の特徴は、なんといっても一度インストールしてしまえばインターネットに接続していなくても良いことです。
通信環境などでオフラインでプレイしたい方にはスマホアプリ版がオススメです。

なお、スマホアプリ版も実態はブラウザ動作であるものの、OS による サイトデータの扱いが 異なるため搭載ブラウザのサイトデータをクリアしてもセーブデータが消去されることはありません。

また、スマホでは文字が小さいと感じる方にはパソコンやタブレットによるプレイがオススメです。

1-2. プラットフォーム間の移行と復活の呪文

NIZ は「復活の呪文」というセーブデータをテキスト化する機能がウェブ版にもアプリ版にも搭載されており、相互に移行可能です。

ただし、復活の呪文は手動でコピー&ペーストする必要があるため、同時共有や自動同期はできません。

また、復活の呪文は数十キロバイトから数百キロバイトもあるため、保存や伝達をするにはメールやクラウドストレージ等(Dropbox, Google Drive, Simplenote等)を利用するのが良いでしょう。

復活の呪文は、セーブデータのバックアップになります。
上述のサイトデータ削除時も、復活の呪文を前もってバックアップしておくとその時点でのセーブデータに戻すことが可能です。

2. 冒険を開始しよう

2-1. パーティを組もう

タイトル画面からゲームを開始すると、城のシーンになります。
まずは、キャラクターを集めてパーティを組みましょう。

パーティは「ギルガメッシュの酒場」で組むことができます。
「パーティに追加する」から登録されているキャラクターを選択し、下のパーティメンバーリストに追加していきましょう。

このとき注意なのは、善と悪の属性が違うキャラクターを混ぜてパーティを組むことはできない点です。
ただし、迷宮内で中断しているキャラクターをパーティに入れたり、友好敵による属性転向によって、善悪混成パーティを組むことはできます。

なお、中立のキャラクターは、属性を気にせず誰とでもパーティを組むことができます。

2-2. どんなパーティが良い?

ここで下手なことを発言するとパルプ○テ並に恐ろしい論争を呼びかねませんのて控えますが(笑)、オススメなのは、
戦士、戦士、僧侶、盗賊、ビショップ、魔法使い
あたりでしょうか。

NIZ は、開始時にこの職業のキャラクターが酒場にいますので、彼らですぐに冒険を開始することができます。
名前が味気ないという方は、訓練場で好きな名前に変えましょう。

パーティは慣れてくるとどんな構成にするか考えるのが楽しいところです。
是非、色々なパーティ構成を試してみてください。
「僧僧僧魔魔魔でリスク低い宝箱は開けちゃう作戦」なんかも楽しいですよ!

2-3. 各職業の説明

※下の長い職業説明を読みたくない方は読み飛ばしましょう。
職業はざっくり、戦士は序盤盾、僧侶は回復兼序盤盾、魔法使いは序盤メイン火力、盗賊は対宝箱要員、ビショップは将来が楽しみな鑑定役、と覚えておけば大きな問題はないでしょう。

戦士

古典ウィズではおおむね低レベル帯においてはパーティの盾としての存在になります。
攻撃にさらされる先頭3名、つまり前衛に立ち、高い HP で後衛3名を守ります。
また、装備が充実しやすく、防御力としての AC (*) を下げるのが容易です。
レベルが上がるにつれて、少しづつ攻撃が当たるようになり、またレベルアップも早く HP の伸びも良いため、徐々に頼れる存在になっていきます。

* AC は、アーマークラスの略で、一般的には防御力、内部計算的には回避率としてふるまいます。
何も装備してない最弱状態は(例外的な忍者を除いて)10 で、奇妙なことに強くなるにつれ徐々に値が低くなっていき、古典ウィズ系においては -20 ぐらいまで下がることが多いようです。

戦士は、全属性のキャラクターが就くことができます。

僧侶

僧侶は回復呪文や補助呪文が豊富なのはもちろんですが、古典ウィズにおいて、序盤は HP も高くそこそこの攻撃力があるため前衛としても活躍できます。
ただし、レベル 5 を超えたあたりからそのメリットも薄れはじめ、むしろ麻痺攻撃等を受けてパーティ全体の回復手段を失う可能性が高くなってくるため、なるべくなら後衛に移す(HP が上がってきた盗賊を前に出す)か、僧侶 2 名体制にしたいところです。

ビショップよりも圧倒的に成長が早く、レベル 13 で全僧侶魔法を覚える可能性が高いため (*)、レベル 13 になり次第、侍や魔法使い、ビショップに転職するのも良いでしょう。

僧侶は善か悪の属性である必要があり、中立のキャラクターは就くことができません。

* そのレベルの呪文をひとつでも覚えていれば、同系統同レベルの呪文は別の職業でも覚えます。(古典ウィズでは概ねこの仕様のようです。)
そのため、職業レベル 13 で呪文レベル 7 の呪文をひとつでも覚えていれば転職してしまっても残りはいずれ覚えます。

魔法使い

強力な攻撃魔法と補助魔法が使える魔法使いはパーティに一人はいないと困る存在です。
特に序盤においては、戦士の攻撃が当たらないため、魔法使いの火力勝負になります。
反面、終盤では呪文を無効化する敵が増えるため、ニュークリアブラストによる雑魚の薙ぎ払いとテレポートがメインになりがち。
HP の伸びも悪いため、僧侶同様レベル 13 になったら他の職業に転職するのが良いかもしれません。

魔法使いは全属性のキャラクターが就くことができます。

盗賊

戦闘ではあまり役に立たず、HP の伸びも悪いですが、装備品を充実させるには欠かせない宝箱の罠識別と罠解除に必要な職業です。
特に素早さが罠解除には大事になってくるため、ホルビトが適しています。
戦闘のお荷物にしないためには、僧侶や魔法使いを経由して呪文を覚えさせておくのも良いかもしれません。

盗賊は中立と悪の属性のキャラクターが就くことができます。

ビショップ

魔法使いと僧侶の呪文を全て覚え、MP も高いビショップ。
更に、全職業唯一のアイテム鑑定能力を持ちます。
ただし成長も遅く、HP も低く、クリアレベル時にも半分の呪文も覚えない等、序盤にはお荷物になりやすい職業です。
また、鑑定は街の商店でも行えるため、宝箱の未鑑定アイテムで手持ちが溢れそうになったら街に帰り、商店の世話になるのも手です。
育てがいはあるものの、一度魔法使いか僧侶を経由した方が使いやすいかもしれません。

僧侶同様、善か悪のキャラクターしか就けません。

魔法使いの呪文が使える戦士です。
就くための特性値も比較的低く、運が良ければ最初から就くこともできます。
刀による高い攻撃力が特徴ですが、古典ウィズ系の作品によっては防具にハンデがあることも。

善と中立の属性のキャラクターが就くことができます。

ロード

僧侶の呪文が使える戦士です。
必要な特性値が高いため就くのはやや難しく成長も遅いですが、全僧侶呪文を覚えるのは比較的早いです。
専用防具による高い防御力が特徴です。

善の属性キャラクターのみが就くことができます。

忍者

一撃必殺のクリティカルヒット (*) を持つ戦士です。
また、盗賊並の罠解除能力を持ちますが、罠識別能力はやや劣ります。
何も装備しない状態だと、AC がレベルに応じてどんどん下がるのも特徴で、裸忍者と呼ばれることも。

また、古典ウィズ系の作品によっては、条件を満たすと後衛からの攻撃が可能なこともあります。
NIZ ではレベル9以上で全武器の射程が伸びます。
高い特性値が必要かつ成長が遅いため、玄人向けの職業といえるでしょう。

悪の属性のキャラクターのみが就くことができます。

クリティカルヒットは一部の敵も使ってきます。
「首をはねられた!」のメッセージが有名です。
どんなに HP が高くても一撃で死にますので十分に注意しましょう。

3. 迷宮へ

3-1. 街外れから迷宮へ…まずは出入り口付近で戦闘を

パーティを組んだら迷宮へ向かいましょう。
NIZ の場合は、作成したてのキャラクターは一銭も持っていないため、街でやることはありません。
迷宮は、「街外れ」から行くことができます。

迷宮に降りたら、キャンプという状態になります。
キャンプでは、呪文を使って回復したり、装備を変えたり、アイテムの鑑定ができます。

キャンプを解くと、階段がありますと言われるので「いいえ」と答えましょう。
すると、移動できる状態になります。

ここでさっそく探索!と言いたいところですが、ちょっと我慢です。
キャラクターはレベル1で激弱、一回の戦闘で全滅する可能性さえあるからです。

その場で方向転換を続けるなり、1、2歩進んでは戻るなりを繰り返して、敵が出るのを待ちましょう。

敵が出たら、いよいよ戦闘です。

弱いうちは戦士の打撃はなかなか当たりません。
前衛3人は、それでも当たることを願って「たたかう」か、少しだけ回避率が上がる「防御」を選びます。

後衛は攻撃呪文のパニッシュかスパーク、またはスリープで敵を眠らせます。

敵を眠らせると相手の行動を止められると同時に打撃ダメージが増えます。
ただし、残念なことに眠らせても打撃が当たりやすくはなりません。
また、スリープで眠らせられる確率は弱い敵に対して半々ぐらいのため、敵の数が少ない場合は攻撃呪文を使った方が良いかもしれません。

慎重かつ MP を惜まず戦えば、なんとか戦闘に勝てるかと思います。

ただし、ローグは出入り口付近に出る敵にしては強いため、最序盤は逃げるのも手です。
古典ウィズはかなり逃げられる可能性が高いため、不利な戦いと感じた場合は逃げるのが良いでしょう。

また、NIZ においては、扉を開いたときに出る敵=玄室の敵は、数が多くて戦いづらいことが多いため、最初は扉を開けない方が無難です。

いずれにしても、恐いのは敵の先制攻撃です。
もし、運悪く敵の先制攻撃になってしまった場合は、攻撃が当たらぬことを祈るしかありません。

なお、先制攻撃では敵も味方も呪文は使えません
しかし、アイテムを使った呪文効果は発動できます。

3-2. 友好敵

そこそこの頻度で、冒険者に敵意のない友好的な敵に遭遇することがあります。
このとき、属性に合わせた選択をする必要があります。

善のパーティは立ち去る、悪のパーティは戦う、です。

これを間違えると、善のキャラクターは悪に、悪のキャラクターは善に属性が変わることがあるので要注意です。
もちろん、これを利用して意図的に属性を変えることもできます。

なお、中立のキャラクターはどんな選択をしても属性は変わりません。

3-3. 冒険者の宿

レベル1のうちは魔法使いも僧侶もビショップも MP が少ないため、すぐに呪文が使えなくなります。
1 回か 2 回、戦闘したら、無理せずに城に帰って「冒険者の宿」で HP と MP を回復させましょう。

冒険者の宿には、馬小屋と客室、礼拝室があります。

馬小屋は、タダの代わりに MP のみが回復できます。
HP は回復しません。
また、馬小屋は通常1日分の歳を取りますが、多くの古典ウィズでは、1/7 の確率で1週間分歳を取ります。
これは、NIZ も同様です。

客室は、お金と減った HP 相応の日数をかけて HP と MP の両方を回復できます。
多くの古典ウィズにおいては宿泊中に途中チェックアウトができますが、NIZ においてはできません。

礼拝室は NIZ のオリジナル施設で、迷宮に入ってキャンプを張らずとも、回復呪文を使って HP を自動回復させます。

従って、礼拝室でなるべく HP を呪文回復させて、客室宿泊、もしくは馬小屋が良いでしょう。
なお、客室には 1/7 の確率で7倍加齢は無いため、HP が減っておらずお金があるなら客室の方が加齢しません
これは、NIZ オリジナルの要素です。

また、キャラクターのレベルアップは宿屋の宿泊でのみ起こるため、戦士や盗賊などの MP を消費しないキャラクターもたまには休ませるようにしましょう。

3-4. 商店で最低限のアイテムを揃える

戦闘して宿泊を繰り返すとある程度お金が貯まるかと思います。
そうしたら、最低限のアイテムをポルタック商店で揃えましょう。

オススメは、スモールシールド、宝石の指輪、毒消しの3点。また、お金に余裕があるなら、盗賊あたりに傷薬を持たせるのも良いでしょう。

スモールシールドは前衛に。
AC を下げて生存率を高められます。

宝石の指輪は、ウィザードアイ代わりに。
ただし、稀に壊れることがあります。
使い過ぎには気をつけましょう。

毒消しと傷薬は、僧侶の MP が尽きたときや行動不能になったときのことを考えてひとつふたつ持っておくと安心です。

3-5. 玄室

城と迷宮の出入り口付近での戦闘を慎重に繰り返し、レベルが 3 か 4 に上がったら、そろそろ玄室での戦闘にチャレンジしましょう。

玄室とは、敵が待ち構えている部屋のことで、玄室に入ると高確率で戦闘になります。
また、この戦闘では勝つと必ず宝箱が得られます。

商店にはまともな装備がないため、装備を充実させるには玄室での戦闘は避けられません。

3-6. 宝箱

玄室での戦闘に勝ったらお楽しみの宝箱タイムです。
しかし、ここでも気を抜くことはできません。

ほとんどの宝箱には罠が仕掛けてあります。
まずは、その罠の種類を見極める必要があります。

罠の種類は、盗賊や忍者の「調べる」か、僧侶呪文のディバイントラップで推定します。

レベルや特性値にも依りますが、罠識別の精度を優れた順に並べると、ディバイントラップ、盗賊の「調べる」、忍者の「調べる」、になります。

古典ウィズでは、階層が奥(より低いもしくはより高い)なほど危険な罠が出てきますので、その情報からもある程度推測できます。
なお、NIZ では奥の階層でも低位な罠(石弓の矢など)は等しく出現します。

当然、ディバイントラップは MP を消費しますので、盗賊や忍者の調査結果に何らかの違和感があったら呪文を使う、という考え方でも良いかもしれません。
ちなみに、レベルが低かったり、職業が適していないと、調べるだけでも罠が発動することがありますので要注意です。

罠を推定したら、次は解除です。
なるべく素早さとレベルが高い盗賊か忍者にやってもらいましょう。
成功するかどうかは運次第です!

罠を無事解除できれば、お宝ゲットです。
しかし、残念ながら空の場合も多く、その場合はお金のみが戦利品となります。

罠それぞれの説明は長くなるのでここでは割愛します。
ただし、特に危険なテレポーターには絶対に引っかからないようにしましょう。

3-7. アイテム鑑定

宝箱などから入手したアイテムは、未鑑定の状態です。
ビショップの識別能力か、商店の「アイテムを識別する」で鑑定しましょう。

なお、ビショップの識別はレベルが十分にないと失敗することがあり、恐怖状態に陥ることがあります。
これは、歩いたり戦闘ターンをこなしていると自然に治りますが、その間は呪文や鑑定を使うことができません。

3-8. 迷宮の奥へ

レベルが 5 か 6 ぐらいになったら、もう少し奥へと潜ってみましょう。

そして、マーフィーズゾンビがいたら戦いを挑んでみましょう。
マーフィーズゾンビは、高レベルの敵で高い経験値が得られますが、攻撃力が低いので、低レベルでもなんとかなる敵です。
なお、多くの古典ウィズにはこの敵に相当するマーフィーズゴーストがいますが、NIZ とは違って逃げられないことが多いので注意しましょう。

マーフィーズゾンビは、魔法が利きづらく攻撃が当たりづらい点が厄介です。
しかし、対処法はあります。
ダークネスの呪文は魔法が利かない敵に対しても確実に AC を上げることができるため、終盤でも頼りになる呪文です。
戦士の攻撃がなかなか当たらない場合は、しつこくダークネスやトータルテラーを重ねがけして敵の AC を上げましょう。

レベルが上がり、魔法使いがサンダーを覚えたら初心者侵入禁止の張り紙の先に行って、クリーピングコインに挑みましょう。
サンダーは全体呪文のため、呪文が間に合えばクリーピングコインを一掃でき、その数相応の経験値を得ることができます。

3-9. 探索開始

以上が、安全な序盤の進め方です。

おおよそ、レベル 8 か 9 ぐらいになったら、迷宮の奥へと探索を開始しても簡単には全滅はしないでしょう。
ただし、地下2階には1階よりも強力な敵が出ますので、きちんと準備してから行きましょう。

4. その他のポイント

4-1. SP

アイテムの中には特別な力がこめられているものがあります。
これを、スペシャルパワー、SP と呼びます。

SP は装備時に使うことができます。
NIZ では、装備していなくても持っているだけで SP を使うか尋ねられます。

ここで「はい」、つまり使うを選ぶと SP が開放されます。
どんな効果が出るかはやってみないとわかりません。

多くの場合、SP を使ったアイテムは壊れてガラクタになります。
ラクタは修復不能ですので、捨てましょう。

4-2. 迷宮内のトラップ

ダークゾーン。
真っ暗闇になる何かが漂っており、至近距離しか見えない場所です。
ブライトネス等の明かりの魔法も利かず、それらの効果を消してしまいます。
手探りで進むしかありませんが、一歩一歩を慎重かつ冷静に進めば怖いものではありません。

落とし穴。
上に乗るとダメージを受けます。
しかし、下の階層に移動できるわけではないので、単純に二度とそこに行かなければ問題ありません。

回転床。
乗ると勝手に回転するトラップ。
これも冷静に対処し、宝石の指輪等で位置と向きを確認して対処しましょう。

ワープ、シュート、シャフト。
乗ると勝手にどこか別の場所へ転移させられます。
移動時に急に見えている構造が変わるなど、違和感が生じたら、宝石の指輪等で場所を確認しましょう。

隠し扉。
見えない扉です。
「○○は何かに気づいた。」と移動中にメッセージが出たら、周囲の壁に対して進む動作をしてみましょう。
隠された扉が見つかるかもしれません。

4-3. よく使う呪文

NIZ は、本家 #1 をベースにしているので、呪文は少なめです。
それでも、はじめてプレイする方には多いことでしょう。

よく使う、この文書の他の箇所で出てこない呪文を紹介します。
また、攻撃呪文は特に説明は不要かと思いますので、公式サイト https://wizardarts.net/niz/ の呪文一覧をご覧ください。

サフォケーション。
弱い敵を一撃死させます。
しかし耐性を持っている敵も多く、敵によって有効性は変わります。

ネームモンスターズ、マジックライト、プロテクション。
それぞれ、遭遇時から敵の正体を見破る、見える範囲を広げる、常時 AC を下げる、です。
城に戻るまで有効です。
この3種はセットで唱えておくと良いかもしれません。
ただし、マジックライトはダークゾーンに入ると消されてしまいます。

キュアパラリシス、キュアポイズン。
それぞれ、麻痺、毒を直します。
これはなんとなく名前からわかりますね。

4-4. 全滅

慎重に注意して進んでも全滅することはあります。

古典ウィズ系の全滅はやっかいです。
ドラクエのように誰かが運んでくれて玉座や寺院で復活しないからです。

全滅したら、別動隊を組んで救出に行かなくてはなりません。
救出部隊はロケートパーソンを用いて確実にその場所まで向かう必要があります。

また、6人全員で救出に行っても、パーティに空きがないため、その場でパーティを分割し組み直す必要があります。
もし、その場で蘇生ができないのであれば、全滅した死地にも関わらず最低2部隊以上に分かれ死体を抱えたまま城を目指さなくてはいけません。
なんともシビアなゲームです…。

もちろん、テレポートを使える魔法使いがいれば、テレポートでピストン輸送をすれば良いわけですが、そもそもテレポートを禁止されてる区域だったり、座標指定を誤って石の中にテレポートしてしまったりと、さらなる悲劇の元になることも…。

全滅時の墓場画面を見たら即リセットをしてしまうのも手かもしれません。(リセットについては後述。)
墓場のシーンを過ぎてしまうとオートセーブで死亡が確定しまうので判断はお早めに!

4-5. 石の中にいる

有名なウィズの全滅状態です。

テレポーターの罠や、戦闘中のテレポートでランダムに飛ばされた結果、石のブロックに飛ばされたときに起きます。

また、キャンプ中のテレポートで座標指定を間違えた場合にも起きます。
テレポートの座標指定は、今いる場所からの相対位置であることに注意しましょう。

特に注意なのは城への直接テレポートです。
城へのテレポートは、上方0 階の絶対座標 0, 0 点に寸分違わず正確に飛ぶ必要があります。
よくあるミスは、そのひとつ上、上方 1 階に指定してしまったケース(物理的には2階)で、この場合でも全滅してしまいます。
何故そうなったのかわかりづらいケースですので、城への直接テレポートは十分に注意して行いましょう。

NIZ においては、石の中全滅が発生したとき、同じ階層になんらかの移動できる場所がある場合はそこのどこかにランダムテレポートされます。
こうなると、上述の全滅対処と同じく救出部隊を組んで探索呪文ロケートパーソンを使いながら、そのパーティを救い出す必要があります。

同階層に移動できる場所がない、そもそも階層外の場合は、死亡状態で城に強制転送されます。

【ver1.1.10 以降】石の中全滅が発生した時は、城の酒場へ死体のまま強制転送されます。
酒場で死亡したキャラクターを仲間に入れ、寺院や蘇生呪文で復活させてあげましょう。

4-6. エナジードレイン

敵の最も恐ろしい攻撃がキャラクターのレベルを下げてくる攻撃、エナジードレインです。

これを受けると今までの苦労が水の泡。
無情にも数レベルダウンされてしまいます。

いちおう、その戦闘中であればテレポーテーションをすることによって経験値は取り戻せますが、そのような嫌な攻撃をしてくる敵が出るような階層にはたいてい石のブロックがあり、下手をするとランダムテレポートの結果石の中に入ってしまう可能性があります。

もうひとつの対処法としては、後述するリセットです。
エナジードレインを受けた直後、戦闘中にリセットをすれば、戦闘前に戻ることができます。

4-7. リセット

NIZ を含む多くの古典ウィズ系は、リセットすることを前提とした作りになってます。

リセットをすれば、死も罠も、レベルアップ時の能力低下さえも、全てをなかったことにし、やり直すことができます。

もちろんリセットには賛否両論あり、リセットはしない!と決めているプレイヤーもいます。
しかし、個人的には多大なストレスを感じてこのゲームを嫌になってしまうぐらいならリセットしてほしいと思います。

いずれにせよ、リセットするかしないかはプレイヤーのあなた次第です。
ですが、もたもたしているとオートセーブによって状態が確定してしまうので、やるなら躊躇なくリセットしましょう。

なお、NIZ では、コントローラー部にある四角に R のボタンを長押しすることによって簡単にリセットができます。

 

以上です!
長文お付き合いありがとうございました。

それでは、良き迷宮ライフを!

 

NIZ - Ashes of the Mad Overlord - https://wizardarts.net/niz/

wizardarts.net

wizardarts.net

ウィズクローン『NIZ』

ウィズクローン「NIZ」無料公開中です!

 

ウェブブラウザ版
https://wizardarts.net/niz/#summary

iOS
https://apps.apple.com/jp/app/id1546187733

Android
https://play.google.com/store/apps/details?id=jp.co.altoterras.niz1

 

公式ページ
https://wizardarts.net/niz/

助力を請う請わぬもプレイヤー次第!キャラクター転送用掲示
https://9203.teacup.com/niz/bbs

 

f:id:hakuhou-src:20210105170004j:plain

f:id:hakuhou-src:20210105165921j:plain

f:id:hakuhou-src:20210105165848j:plain

プレイ画面

 TypeScript + WebGL を使ってます!

OpenOffice.org Calc JavaScript マクロ

f:id:hakuhou-src:20200518115615p:plain
OpenOffice.org Calc をもう10年以上使い続けている。
もちろん Microsoft Excelも使うし、なんでも無料が良いというわけではないが、気軽に Windows にも Mac にもインストールして実行できるのはツールとして優れている。

個人的な使い方の中心は、ゲームのアイテムやら敵やらのデータ作成ツールがメイン。
そこでは、マクロが欠かせない。
しかし、OpenOffice.orgJavaScript マクロは特殊性が強い。
ネット上の情報も少なく、Apache のリファレンスとの睨めっこの時間が長くかかる。
また、JavaScript マクロといいながらも、どちらかというと Java な Uno も癖が強い。(JavaScript の常識が通用しない。)
「Macroの杜(JavaScript編) 」さんにはお世話になりっぱなしである。

続きを読む

可変長バイト列表現

セーブデータ、BLE等通信処理、データベース…などなど、現在でも数値をなるべく小さなバイト列で扱いたいときはあるもの。
そんな中で、「たいていは小さい自然数なんだけど、たまに大きな値もある」というときに数値の可変長バイト列表現というのは便利。

続きを読む