QuestNotes開発ブログ

MMOTRPG「QuestNotes(クエストノーツ)」を開発しています。不具合や要望があればぜひご一報ください。 

Android版QuestNotesリリース!

とうとうChromeSilverlightプラグインが完全停止したため、
今後は通常版の場合はIE等の別のブラウザかダウンロード、あるいは、タッチUI版をご利用いただければと思います。

さて、今までタッチUI版はWindows向けのみでしたが、
この度Android版をリリースしました!

「QuestNotes - Google Play
https://play.google.com/store/apps/details?id=net.questnotes
f:id:questnotes:20150508030115p:plain:w200

スマートフォンタブレットで遊びやすいように、タッチUI版になります。
パネルによる情報表示や、スワイプやピンチによる直感的操作で遊ぶことがでいます。
(マスター向けの機能はありません(Windows用タッチUI版と同等の機能))

尚、利用しているAPI的にはAndroid4.4で動作するはずですが、
デバイスごとの動作の差異が大きいとよくいわれるAndroidなので、
なにか不具合があればフォーラムやメールにてお知らせいただけると助かります。
(開発時の動作確認はNexus5、Nexus7(Android5.1、AndroidSytemWebView42)を利用しています。)

完全な状態でリリースを目指すといつ公開ができるのかわからないので、
大変恐縮なのですが、とりあえずリリースだけしつつ適宜修正していく、
というスタイルにさせていただければと思います。。

Android版開発の感想

f:id:questnotes:20150508032030p:plain
基本的にゲーム部分はWindowsタッチUI版と共有なので、追加実装量は少なかったのですが、ソフトウェアキーボードやActivityのライフサイクル等Android固有の実装は必要になり手間取りました。
とりわけソフトウェアキーボードの扱いが思ったようにいかず、妥協しフルスクリーン表示をあきらめました・・・

それから動作速度がやはり課題になりました。
スマートフォンというデバイスかつHtmlベースなので満足行くパフォーマンスにならずに苦労しています。
いっそParadoxUnityといったゲームエンジンを利用すればよかったかな?という考えが常に頭の片隅をよぎりながらの作業になりました。

ただ最終的にはブラウザで遊べるものもタッチUI版に差し替えたいとも考えているので、
Htmlベースにしておきたいという考えがあるので、仕方ないということにしておきます。

これから

最近はAndroid版の作業に注力していたのでSilverlight版やウエブサイトの管理がおざなりになっていたので、そちらの作業をこなしつつiOS版の開発をしていければと思っています。
今後ともよろしくお願いします。

スキル修正とステータスリセット

ウォリアーのスキルを修正しました。
インデュア -> レイジ(パッシヴ)
重傷無効 -> 重傷時にATK+1
ディフレクション(リアクション)
SP2 -> SP3
になります。

ステータスリセット

f:id:questnotes:20150415012911p:plain
また、それに合わせてステータスのリセット機能を実装しました。
装備の仕様変更は装備を変更すればいいのですが、スキルやステータスが仕様変更されてしまうと、
プレイヤーとしてはどうしようもなくなるので、スキル振りを再構成できるようにしたいと思いました。

ステータスリセットは、修練場の「休養(ステータスリセット)」から行えます。
あまり頻繁にやれないように少し高めに設定しようと考えて、ひとまず2000ルドにしました。

ただ、今回のようにスキルの仕様変更があった場合には、対象のクラスのキャラクターのみ一定期間割引で利用できるようにしようと思います。
(4/20までウォリアーは200ルドで行えます)


今後もスキル・アイテム・クラスの実装如何では
またゲームバランスの変更があるかもしれませんが、
お付き合いいただければと思います。

基本アイテムの追加&既存アイテムの修正を行いました。

f:id:questnotes:20150313031144p:plain

新規基本アイテム

ワンド 杖 MATK+1d-1、MDEF+1 サイズM 重量25
スタッフ 杖 MATK+1d Hit+1 サイズL 重量30
フレイル 鈍器 ATK+1d Hit+1 サイズM 重量40
ウォーハンマー 鈍器 ATK+2d+2 Hit -2 サイズL 重量60

基本アイテムはショップでも取り扱いを始めました
取扱商品が増えたので、基本商品以外は日替わりの「掘り出し物」にて購入ができます。

また、基本商品もLV15以上だった場合の品揃えを変更しました。
「初心者の~」が「熟練の~」になります。

以前用意したシリーズアイテムと同様に
基本アイテムにプラスされた性能をもったアイテムになります。
(ビルド時にスキル付きの装備か、
 バニラだけども少し性能の高い武器かを選べる状態にしたいと考えています。)

基本アイテム性能調整

武器はひとつしか持てないので増加量が1ですが、
防具は3つ持てるので、増加量が3増えてしまっている現状
装備のバランスが1:3の防御力過多になってしまいがちなので

頭装備はRESI上昇(状態耐性等)
体装備はDEF上昇(防御力)
足装備はFLEE上昇(回避率)

というように装備の箇所によって主とする上昇ステータス値を分けてみました。

また、同一アイテムを装備して特化できてしまうのも
多様性がなくなってしまいよろしくないと認識しました。
そこで、今回同一アイテムは装備できないようにしました。
(基本アイテムが同じ場合も含む(例・「初心者のリング」を装備して「リング」を装備することはできない))

SP=0時の仕様変更

SPが0以下になるような行動も取れるようにしました。
その行動を行った場合は、行動後に気絶になります。
この時、Willダメージは発生しません。
(最後の気力を振り絞って行動するようなイメージになります。)

合わせて、NPCの行動時に勝手に気絶になるような行動は取らないように修正しました。

割りと大きめなバランス修正となり申し訳ないのですが、
より楽しめる環境にしていければと思うのでご意見・感想等があればご一報いただけると助かります。
今後ともよろしくお願いいたします。

タッチUIバージョンがWindowsStoreで公開されました

f:id:questnotes:20150216035025p:plain
http://apps.microsoft.com/windows/ja-jp/app/questnotes/f4f4fc23-2d8d-4e64-9315-65ce9c49c0c7

以前からHtmlベースでタッチUI版のQuestNotesを開発してきていました。
まだまだ現在のSilverlight版と同等な状態(エディタ機能がないことや各種UI表現等)
を用意することができていないのですが、
一旦区切るをつけるためにも申請をしてみました。

■告知サイト
f:id:questnotes:20150216035904p:plain
http://www.questnotes.net/Topic/Touch/

(おそらく一発の申請では審査は通らない気もするので、
 その間に告知ページの作成なり、修正をしておきたいと思います)

(と思ったら審査がとおてしまったので、公開となります!
 ぜひお手にとって頂いて感想をいただければと思います。
 何か不具合があれば、フォーラム等でお知らせいただけると助かります)

Silverlight依存からの離脱へ

今回リリースを急いだ理由のひとつに、
ChromeがNPAPI(Silverlightを含むプラグイン)を1月にデフォルトオフ(許可制)にしたことがあります。
そして、4月には完全不可になるそうなので、それまでに別のクライアントを用意する必要がありました。
http://blog.chromium.org/2013/09/saying-goodbye-to-our-old-friend-npapi.html

Silverlightプラグイン自体が新しいプラグインの規格に更新してくれればいいのですが、 それに期待するのは難しいでしょう・・・)

現在、SilverlightChromeで実行するためには、
アドレスバーの通知からOKを押す必要があります。
f:id:questnotes:20150216035713p:plain

今後

今回はマルチプラットフォームを意識して開発を進めてきたので、
まずAndroid対応させていこうと思います。
ただAndroid4.4以降でHtml描画エンジンが変わったらしいので、
うまく動作できるか心配です。

GooglePlayは割りとカジュアルに公開/アップデートできるらしいので、
WindowsStoreの審査に手間取った場合には、こっちのほうが早くリリースできるかもしれません。

その次は、iOSを提供できればいいなと考えています。

その後は、エディタ機能のHtml化もしていきたいのですが、
なかなか作業量が多くて悩ましいところです。
また、タッチUIと編集作業というのはあまり相性が良くない印象があるので、
いい感じのUIが用意できるか心配でもありません。


それから、既存のSilverlight版もHtml版とは一部コードを共有しているので、
ひとまずSivlerlight版を通常版(プレイヤー&マスター用)、タッチUI版(プレイヤー用)をとして、今後とも両方開発作業は行って、不具合・要望対応等は適宜行っていきたいと思いますので
Slverlgiht版をプレイされている方もご安心ください。
今後ともよろしくお願いいたします。

あけましておめでとうございます

遅くなりましたが、
明けましておめでとうございます。

年明け初ブログなので、今年の目標あたりを明記してみます。
今年の目標は大きく分けて以下の3点になります。

・安定化
去年よりはましになった程度で
まだまだ不具合があるので、致命的な不具合は
優先度を高めで対応していければと思います。
f:id:questnotes:20150113021127p:plain
不具合報告をしていただけると大変助かりますので、
今年も協力していただければ幸いです。


・データの充実
クエストやスキル、アイテム、キャラクターのデータの追加をしていきたいです。
また、データ自体もそうですが、イラストを用意できるようにしたいなーと思います。
f:id:questnotes:20150113021115p:plain
せっかくカードとして表示できるようにしているに
イラストが用意できないままになっているのは少しさびしいですよね。。
投稿システムを用意するか、絵師さんへ依頼に回るか、素材サイトを巡ってみたいと思っています。。


・Html版
マルチプラットフォーム化を進めていきたいと思っています。
そもそも現在利用しているフレームワークSilverlightの将来が見えないため、
いい加減他の環境(Html版)に移行しないといけないなと感じています。。
f:id:questnotes:20150113020812p:plain
作業的には結構前から粛々と進めているのですが、
エターナらないようにするために、さっさと公開してしまって、
公開テストしつつ作業を進めていきたいと考えています。


・・・
主にこの三点ですが、去年と目標があまり変わっていないような気もします(汗)
少しずつではありますが、より良い環境にしていければと思いますので、
まったりと見守っていただければと思います。
それでは今年もよろしくお願いいたします。

セッションのサポートを一旦なくしました

一旦セッション(マスターがプレイヤーを募集してリアルタイムに一緒に遊ぶ)をオフにしました。
理由としては以下の点になります。

・シンプル化
 機能が増えれば複雑になるので機能の見せ方が難しくなっています。
 また機能を減らせばそれだけHtml版の開発工数の軽減できるので、
 Html版のリリースを早くするためにもセッション機能はオフにしました。

・サポートが不親切
 機能が不親切な状態で用意しておいてもあまりよくないなー、と思いました。
 リアルタイムに募集するだけではなく、
 予約を取れるようにしないと不便だなと思いましたので、
 その辺の機能強化と合わせて改めて公開したいと考えています。

セッションができないとTRPGとは言えないような気がするので、
将来的には再び提供できればと思うので、今しばらくお待ちいただければと思います。

状態変化の終了条件追加

こちらの提案の実装で、
コンディションの終了条件追加を行いました。
前々からスリーピングが強すぎるという話があったので修正しました。
もともと、何かを受けたら状態異常を回復するというのは実装予定ではあったのですが
おざなりになっていたので、今回やっと実装しました。

f:id:questnotes:20141215033745p:plain
そのうち、

  • 毎ラウンド自分が判定を行って回復や
  • 他のプレイヤーがアクションで判定を行って回復

みたいなパターンも用意できればいいなと考えています。

合わせて、いくつか基本的な状態異常をプリセットとして用意しました。
プリセットからの値変更もできるので適宜利用してもらえればと思います。
f:id:questnotes:20141215033741p:plain

シナリオ表示の改善

こちらの提案からの実装ですが、デフォルトの表示件数だけでは
表示しきれないので「もっと見る」を追加してみました。
f:id:questnotes:20141215033748p:plain

シナリオ表示といえば、現在「おすすめ」が固定表示なのですが、
「このクエストを遊んだ人はこのクエストも遊んでいます」
的な動的なレコメンド機能を用意したいなーと思っています。

Twitterについて

開発している内容が、バグ修正が主になっていると、
なかなかブログを書く話題がなくてブログ更新が遅くなってしまいました。

Twitterについて

というわけで、今回はゲーム自体とは直接関係ないのですが、
Twitter関連について調べてみました。
f:id:questnotes:20141113022551p:plain
Twitterはもはや一大SNSになったコミニュケーションサービスですが、
QuestNtoesでもクエスト公開時などにTwitterへ通知という形で利用していたのですが、
時折Tweetする際にエラーが発生してQuestNtoesのサービス自体が停止してしまっていたのをなんとかしなければいけませんでした。

原因を調査するなりエラーハンドリングをきちんとするなりでもよかったのですが、
現在使用していたTwitterのライブラリ
「Tweetsharp」
https://github.com/danielcrenna/tweetsharp
自体がもう更新停止となっており、使い続けるのもよくないかなと思い
新しいTwitterライブラリに乗り換えてみようかなと思いました。


そこでC#、.NETのライブラリを少し探してみたところ、
「linq2twitter」
https://linqtotwitter.codeplex.com/
が更新もされており、インターフェースも良さそうだったので検討してみたのですが、
DLLの読み込みがなぜかうまく行かず断念。。。

しかたなく別のものを探していたところ
「coreTweet」
https://github.com/CoreTweet/CoreTweet
というライブラリを見つけました。
依存が少なく、国産?のライブラリということで採用してみました。
今のところきちんと動いていてくれて大変助かります。


また合わせてnugetで開発のパッケージを管理するように(いまさら)してみたのですが、なかなか便利です。

Twitterの運用

というわけで、Twitterのライブラリを更新したので、
ついでにメンテナンス情報も通知するようにしてみました。
f:id:questnotes:20141113021715p:plain

・・・現在Twitterの運用がユーザーさんとの交流窓口というよりは
情報発信Botみたいな感じになっていますが、
もうちょっと開発中の雑感や日常的?なことをつぶやくほうが
(宣伝的にも)いいのかなーとも思います。

同人ゲームは、ゲーム自体よりもゲームの開発自体がコンテンツになりうると思うので、
そういうアプローチもおもしろそうかなと思う今日このごろです。