SlideShare a Scribd company logo
1 of 19
C#版人狼知能エージェント
の作り方
― Visual Studio 編 ―
(AIWolf.NET 1.0.6版)
大槻恭士@AIWolfSharp
(山形大学 学術研究院)
準備
1. Visual Studio をインストール(ここでは VS Community
2017 を使用)
2. 人狼知能プラットフォームをダウンロードして任意のフォル
ダーに展開しておく
3. ClientStarter-1.0.6.zip をダウンロードしておく
新規プロジェクトの作成
プロジェクトの
名前は
ClientStarter
コンソールアプリ
(.NET Core)
.NET Core
ソリューション
の名前は
DemoAgent
ClientStarterのソースファイルを追加
まず,Program.csを削除 次に,ダウンロードした
ClientStarter-1.0.6.zip中の
ClientStarter.csを
プロジェクトにコピー
(ドラッグ&ドロップ可)
NuGetパッケージマネージャーの起動
ClientStarter
プロジェクトで
NuGetパッケージの管理
NuGetパッケージマネージャーでaiwolfで検索
AIWolfPlayerを選んで「インストール」
必要なライブラリのインストール
OK 同意する
AIWolfPlayerとともに必要なライブラリも自動的にインストールされる
その他のライブラリのインストール
System.Runtime.Loader
Microsoft.Extensions.DependencyModel
ClientStarterのビルド
ClientStarterプロジェクトを
ビルド
正常に終了するはず
ClientStarterをデモモードで起動
ClientStarterのプロパティの「デバッグ」
タブで「アプリケーション引数」に –d
(デモモードで起動)
人狼知能サーバを起動し,接続待ち
の状態でデバッグ開始
デモモードの
サンプルエージェントが
ゲームに参加している
エージェント用プロジェクトの作成
DemoAgentソリューションにDemoAgentプロジェクトを追加
名前は
DemoAgent
クラスライブラリ
(.NET Core).NET Core
作成後,NuGetパッケージマネージャーでAIWolfPlayerをインストール
DemoRoleAssignPlayerの作成
1. Class1.csをDemoRoleAssignPlayer.csに名前変更
2. 下のように入力すれば,各役職にサンプルプレイヤーを割り
当てるエージェントとなる.(ClientStarterのデモモードと
同じ)
3. あとはSetPlayer()メソッドの中で各役職に自作のエージェ
ントを割り当てていけばオリジナルのエージェントが完成
DemoRoleAssignPlayerの実行(1)
「アプリケーション引数」に
-c DemoAgent.DemoRoleAssignPlayer
..DemoAgentbinDebugnetcoreapp1.1DemoAgent.dll
–r SEER
ClientStarterのプロパティの「デバッグ」タブ
DemoRoleAssignPlayerの実行(2)
• ClientStarterのデモモードを試した時と同様にゲームに参加
DemoAgentが
占い師で参加
している
占い師の実装例(1)
右の内容でSeer.cs
を作る
Initialize()で
フィールドを
初期化することを
忘れないこと
占い師の実装例(2)
まだ占っていない生存エージェントからランダムに占い先を選択
占い師の実装例(3)
確定人狼が
いなければ
占っていない
エージェントから
投票先を選ぶ
宣言済みの
投票先と
異なる場合は
再度宣言する
作った占い師エージェントで参戦
下のようにDemoRoleAssignPlayerを変更
本当に参戦しているか確認
1. ブレークポイントを設定
2. デバッグを開始
3. Seerがゲームに参加して
いれば
ブレークポイントで止ま
るはず
人狼知能大会に提出するときは
• Release 構成でビルド
• DemoAgentプロジェクトフォルダの
binReleasenetcoreapp1.1DemoAgent.dll
を提出する

More Related Content

What's hot

継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキングTakayuki Kondou
 
はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入Yu Nobuoka
 
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題murai1972
 
Durable Functions (Core) 気になっていたことを勉強がてら実装してみた
Durable Functions (Core) 気になっていたことを勉強がてら実装してみたDurable Functions (Core) 気になっていたことを勉強がてら実装してみた
Durable Functions (Core) 気になっていたことを勉強がてら実装してみた朋志 佐々木
 
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念Masahito Zembutsu
 
今日から使おうSmalltalk
今日から使おうSmalltalk今日から使おうSmalltalk
今日から使おうSmalltalkSho Yoshida
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015ichikaway
 
アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門Hori Tasuku
 
割と新し目の Open shift origin で作る自宅 paas 作成記
割と新し目の Open shift origin で作る自宅 paas 作成記割と新し目の Open shift origin で作る自宅 paas 作成記
割と新し目の Open shift origin で作る自宅 paas 作成記Hara Yoshihiko
 
はじめての CircleCI
はじめての CircleCIはじめての CircleCI
はじめての CircleCIYosuke Mizutani
 
会社でClojure使ってみて分かったこと
会社でClojure使ってみて分かったこと会社でClojure使ってみて分かったこと
会社でClojure使ってみて分かったことRecruit Technologies
 
Asakusa Framework スモールジョブ実行エンジン & Windows対応
Asakusa Framework スモールジョブ実行エンジン & Windows対応Asakusa Framework スモールジョブ実行エンジン & Windows対応
Asakusa Framework スモールジョブ実行エンジン & Windows対応apirakun
 
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~aha_oretama
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaYuta Kawadai
 

What's hot (20)

継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング
 
はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入
 
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題FreeCAD OpenFOAM Workbenchセットアップ方法と課題
FreeCAD OpenFOAM Workbenchセットアップ方法と課題
 
Java GUI Programming
Java GUI ProgrammingJava GUI Programming
Java GUI Programming
 
Durable Functions (Core) 気になっていたことを勉強がてら実装してみた
Durable Functions (Core) 気になっていたことを勉強がてら実装してみたDurable Functions (Core) 気になっていたことを勉強がてら実装してみた
Durable Functions (Core) 気になっていたことを勉強がてら実装してみた
 
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念
 
CruiseControl.NET設置
CruiseControl.NET設置CruiseControl.NET設置
CruiseControl.NET設置
 
Visual studio de debug
Visual studio de debugVisual studio de debug
Visual studio de debug
 
今日から使おうSmalltalk
今日から使おうSmalltalk今日から使おうSmalltalk
今日から使おうSmalltalk
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
 
Windowsでhaskell
WindowsでhaskellWindowsでhaskell
Windowsでhaskell
 
アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門
 
割と新し目の Open shift origin で作る自宅 paas 作成記
割と新し目の Open shift origin で作る自宅 paas 作成記割と新し目の Open shift origin で作る自宅 paas 作成記
割と新し目の Open shift origin で作る自宅 paas 作成記
 
Gaej Explorer
Gaej ExplorerGaej Explorer
Gaej Explorer
 
はじめての CircleCI
はじめての CircleCIはじめての CircleCI
はじめての CircleCI
 
会社でClojure使ってみて分かったこと
会社でClojure使ってみて分かったこと会社でClojure使ってみて分かったこと
会社でClojure使ってみて分かったこと
 
Asakusa Framework スモールジョブ実行エンジン & Windows対応
Asakusa Framework スモールジョブ実行エンジン & Windows対応Asakusa Framework スモールジョブ実行エンジン & Windows対応
Asakusa Framework スモールジョブ実行エンジン & Windows対応
 
SubversionServer設置
SubversionServer設置SubversionServer設置
SubversionServer設置
 
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for Java
 

Similar to C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版)

C#で作ったプログラムのインストーラーをInnoSetupで作成(1)
C#で作ったプログラムのインストーラーをInnoSetupで作成(1)C#で作ったプログラムのインストーラーをInnoSetupで作成(1)
C#で作ったプログラムのインストーラーをInnoSetupで作成(1)Kenichi Yamada
 
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~de:code 2017
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibilityTakeshi Fujimoto
 
Scalaコーディングの準備
Scalaコーディングの準備Scalaコーディングの準備
Scalaコーディングの準備Yusuke Arakaki
 
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~Akira Inoue
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#Yuta Matsumura
 
モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編
モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編
モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編Masaki Takeda
 
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)Shinya Nakajima
 
Wasm blazor and wasi 2
Wasm blazor and wasi 2Wasm blazor and wasi 2
Wasm blazor and wasi 2Takao Tetsuro
 
Windowsストアアプリ開発 オープンセミナー広島
Windowsストアアプリ開発 オープンセミナー広島Windowsストアアプリ開発 オープンセミナー広島
Windowsストアアプリ開発 オープンセミナー広島Akira Onishi
 
App014 デスクトップ アプ
App014 デスクトップ アプApp014 デスクトップ アプ
App014 デスクトップ アプTech Summit 2016
 
App014 デスクトップ アプ
App014 デスクトップ アプApp014 デスクトップ アプ
App014 デスクトップ アプTech Summit 2016
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejsTakayoshi Tanaka
 
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」アシアル株式会社
 
[Ps11]ネットワーク第4回
[Ps11]ネットワーク第4回[Ps11]ネットワーク第4回
[Ps11]ネットワーク第4回Yukiko Kato
 
Visual Studio を使わず .NET する
Visual Studio を使わず .NET するVisual Studio を使わず .NET する
Visual Studio を使わず .NET するm ishizaki
 
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1schoowebcampus
 
.NET Coreとツール類の今
.NET Coreとツール類の今.NET Coreとツール類の今
.NET Coreとツール類の今Yuki Igarashi
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送Google Cloud Platform - Japan
 

Similar to C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版) (20)

C#で作ったプログラムのインストーラーをInnoSetupで作成(1)
C#で作ったプログラムのインストーラーをInnoSetupで作成(1)C#で作ったプログラムのインストーラーをInnoSetupで作成(1)
C#で作ったプログラムのインストーラーをInnoSetupで作成(1)
 
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
[TL10] Azure IaaS 構築・運用・管理の専門家が語る DevTest Labs ~高速・費用無駄ナシ・簡単管理を実現する開発・テスト環境の構築~
 
Visual studio extensibility
Visual studio extensibilityVisual studio extensibility
Visual studio extensibility
 
Scalaコーディングの準備
Scalaコーディングの準備Scalaコーディングの準備
Scalaコーディングの準備
 
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
.NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編
モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編
モバイルアプリケーション開発体験ハンズオン ~実装からビルド・テスト・ベータテスト配布まで~ Android 編
 
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
 
Wasm blazor and wasi 2
Wasm blazor and wasi 2Wasm blazor and wasi 2
Wasm blazor and wasi 2
 
Windowsストアアプリ開発 オープンセミナー広島
Windowsストアアプリ開発 オープンセミナー広島Windowsストアアプリ開発 オープンセミナー広島
Windowsストアアプリ開発 オープンセミナー広島
 
App014 デスクトップ アプ
App014 デスクトップ アプApp014 デスクトップ アプ
App014 デスクトップ アプ
 
Scoop!
Scoop!Scoop!
Scoop!
 
App014 デスクトップ アプ
App014 デスクトップ アプApp014 デスクトップ アプ
App014 デスクトップ アプ
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
 
[Ps11]ネットワーク第4回
[Ps11]ネットワーク第4回[Ps11]ネットワーク第4回
[Ps11]ネットワーク第4回
 
Visual Studio を使わず .NET する
Visual Studio を使わず .NET するVisual Studio を使わず .NET する
Visual Studio を使わず .NET する
 
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
 
.NET Coreとツール類の今
.NET Coreとツール類の今.NET Coreとツール類の今
.NET Coreとツール類の今
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
 

C#版人狼知能エージェントの作り方~Visual Studio編~(AIWolf.NET 1.0.6版)