ラベル

2014年4月10日

toMoEgha用音源定義ファイル

toMoEgah(r17) では、チャンネル10をドラムチャネルとして自動認識しませんので、ABC譜に変換してもドラムの音が出ないってことがあります。
toMoEgah(r17) のマニュアルにも記載されているのですが、チャネル10の先頭付近にドラムチャネル変換マップを挿入する必要があります。Dominoでこの変換マップを入力するための音源定義ファイルを、ここに貼っておきます。

[使用方法]

1. 上のファイル (ok_GSm_forMoeABC.xml) を右クリックして、Domino の [Module] フォルダの中に保存しておきます。
2. Domino を起動すると、[ファイル] -> [環境設定] のMIDI-OUTPUT 設定に、音源 (GSm for MoeABC) が選択できるようになっているので、これに変更します。



3. チャンネル10のドラムチャネルの先頭付近に、[挿入]->[テンプレート] で、Step=5くらいの間隔で、toMoEgah Drum Pattern を挿入します。

4. パーカッション譜がある場合は、事前にドラムとパーカッションを別チャネルに分離しておく必要がありますね。
パーカッションチャネルの先頭付近に、toMoEgah Parcs Pattern を挿入します。

5. チャネル10の先頭付近に、右のようにドラムチャネル変換マップが挿入されていれば完成です。
あとは toMoEgah(r17) でMoE-ABC譜に変換するだけです。

2014年4月9日

moeFilter - 簡単なフィルタ

MoE (Master of Epic) のログファイルから、店舗検索(vendorlist)や、露店売上を抽出するフィルタです。
次のような表が出来ますので、Excelなどに "形式を指定して貼り付け" "TEXT形式" で貼りつけて使います。
表がずれてるですって? TSV形式でExcelに貼りつけるには問題ないのです:-)

[店舗検索ログ]

[露店ログ]
簡単にグラフ化できるように、0.2より出力フォーマットを変更しました。

ダウンロード

こちらからダウンロードできます。

今月の販売実績

今月の露店販売実績は、こんな感じです。



販売集計には、MoeFilterを使ってます。

2014年4月6日

トマトジュースの原価は?

トマトも海水も木炭も収穫できるので、トマトジュースの原価は0円だ。という人もいるのでしょうけど、せっかくMoeItem を作成したので、原価計算してみました。
  トマトジュース(16g)、バナナミル(33g)
労働対価を考えると、この2品は赤字なのですねぇ。客寄せ用なので構わないのですが、最近売上が多くて在庫補充が大変もに。

こちらはシッカリと黒字でした。
  セレモウニアルティ(155g)、アイスコーヒー(49g)、オレンジシェイク(57g)

同様に計算させてみると、どれが楽に儲かるかわかっちゃいますね。
  ペペロンチーノ(237g)、ミルクティ(32g)、カルボナーラ(143g)、ヘビーラウンドショット(29g)

もちろん、原価計算パラメータ次第なので、あくまで参考値ですが。
あ、私は↑の値段で販売してませんよ。念のため。

2014年3月13日

Pythonの開発環境を構築

忘れないうちに書いておかなくちゃ。

1. Pythonのインストール

配布元( python.org )から、最新版(現時点で3.3.5)を導入することにする。

2. Win32comモジュールの導入

PythonからExcelやWordを操作したいなら、配布元( Python for Windows Extensions )から導入する。
openpyxls というプロジェクトもあるが、Python3にはまだ十分対応していない。(書き込みができない)

3. PyQtモジュールの導入

GUIを作成するなら、配布元( Riverbank )からPyQt5を導入する。
Python3ではPyQt4は使えないことや、GPL3が適用されることに注意する。
なお、easy_install/pipを導入した後で、PySideを使うという手もある。

4. easy_install/pipの導入

以下の中身を、ez_setup.py として保存する。
https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
コマンドラインから、次のように easy_setup.py を起動する。
> Python easy_setup.py
これで、easy_install.exeが導入されたはず。

pipは、easy_install.exe を使って、次のように導入する。
> easy_install.exe pip

5.1 SQLAlchemyの導入

Pythonでデータベースを扱うなら、SQLAlchemy がお勧め。
pipを使って簡単に導入できる。

> pip install sqlalchemy
アップデートしたいなら、次のようにする
> pip install --upgrade sqlalchemy

5.2 cx_Freezeの導入

msiで配布するためには、cx_Freeze が必要。
配布元からmsiを持ってきてインストールする。

*.ui から *.py を纏めて生成するには次のバッチコマンドを使うか、Visual Studio に含まれる nmake を使う。(Windowsめんどくさすぎ)

@echo off
for %%A in (*.ui) do pyuic5 %%A -o ui_%%~nA.py

2014年2月26日

Bloggerのデザインを修正

しばらく放置していたら、Bloggerもスマホ対応していたのですね。このBlogのデザインも変更しないと...
ということで、トマトジュース色に染めるためのカスタムスタイルを追加。

body { padding:0 4px 4px !important }
.header-inner .Header .titlewrapper { padding:6px 6px 0 !important }
.Header h1 { margin-bottom:0 !important; font-size:200% !important; }
.header-inner .Header .descriptionwrapper { margin-bottom: 0 !important }
.Header .descriptionwrapper { margin-bottom: 0 !important }
.Header .description { font-size:50% !important }
.Header h1, .Header .description {
  text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.8); }
.header-outer {
  margin: -4px -4px 0 -4px;
  border-radius:8px;
  box-shadow: 2px 2px 10px rgba(0,0,0,0.8);
  background: #e60004 url() !important;
  background: -ms-linear-gradient(top, #FF6666 0%, #E60004 10%, #E60004 90%, #AA0000 100%), #e60004 url();
  background: linear-gradient(to bottom, #FF6666 0%, #E60004 10%, #E60004 90%, #AA0000 100%), #e60004 url();
  background-clip: padding-box; }
h2.date-header { margin-bottom: 4px !important; }
h3.post-title { margin-top: 4px !important;
  text-shadow:  0 0 2px #fff, 2px 2px 4px rgba(0,0,0,0.8);
  margin: 0 5px 0 -15px;
  padding: 2px 8px;
  background: -ms-linear-gradient(top, rgba(230,0,4,0.1) 0%, rgba(230,0,4,0.3) 100%);
  background: linear-gradient(to bottom, rgba(230,0,4,0.1) 0%, rgba(230,0,4,0.3) 100%);
  border-radius:8px;
}
.post-body { line-height:1.2 !important }
.post { margin-bottom: 0 !important }
.widget { line-height:1.1 !important; margin: 4px 0 !important }
.main-inner .column-center-inner { padding:0 0 0 10px !important }
.main-inner .column-right-inner { padding: 0 !important }
.main-inner .column-center-inner .section { margin: 0 4px 0 0 !important }
.footer-inner { padding:0 !important }
#footer-3 { display:none }

HTMLソース中に、スマホ上でのページ幅が1100pxと固定されているので、これを960pxに修正。
SyntaxHighliter も導入しましょう。

<b:if cond='data:blog.isMobile'>
      <meta content='width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0' name='viewport'/>
    <b:else/>
      <meta content='width=960' name='viewport'/>
    </b:if>
    <b:include data='blog' name='all-head-content'/>
    <!-- Syntax Highlighter Scripts Generator -->
    <link href='http://alexgorbatchev.com/pub/sh/current/styles/shCore.css' rel='stylesheet' type='text/css'/>
    <link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>
    <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js' type='text/javascript'/>
    <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCss.js' type='text/javascript'/>
    <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJScript.js' type='text/javascript'/>
    <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushPython.js' type='text/javascript'/>
    <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushXml.js' type='text/javascript'/>
    <script language='javascript' type='text/javascript'>
      SyntaxHighlighter.config.bloggerMode = true;
      SyntaxHighlighter.all();
    </script>
    <style>
      .syntaxhighlighter {
        overflow: auto !important;
        overflow-y: hidden !important; }
      .syntaxhighlighter .toolbar{ display:none !important }
    </style>

    <title><data:blog.pageTitle/></title>