1.700以前の更新履歴

末尾にアルファベットが付くバージョンは私家改造版の作者様による更新です。

1.700以降の最新版までの更新履歴は最新の更新履歴を参照してください。
追加された命令などの詳細はEmueraの拡張書式を参照してください。

2009/6/15 ver 1.700

  • 私家改造版1.63a-dの更新を取り込みました
  • WINAPIによる描画方式を追加
  • emuera.configに新規オプション追加。
    • "描画インターフェース":標準はGRAPHICS、以前はGRAPHICS
    • "イメージバッファを使用する"標準はYES、以前はYES
    • "ボタンの途中で行を折りかえさない"標準はNO、以前はYES
  • Gamebase.csvの"バージョン違い認める"の項目が正常に動作していなかった問題を修正
  • ERBの開発者側がコンフィグを制御する方法を追加。
    • 優先順位は"csv\default.config" < "emuera.config" < "csv\fixed.config"
  • ALIGNMENT命令追加。文字列の揃え方を設定する。
  • BEGIN命令にFIRST、TITLEを追加。
  • RESETDATA命令追加。グローバル変数を除く全ての変数を初期化
  • RESETGLOBAL命令追加。グローバル変数を初期化
  • GAMEBASE_**変数追加。gamebase.csvで設定した項目を参照する
  • @SYSTEM_TITLE追加。標準のタイトル画面の代わりにCALLされる

2009/6/ 1.63d Rev.4 バグ修正

  • ERB再読み込み処理と一部システム処理がかちあう問題を修正

2009/6/ 1.63d Rev.3 バグ修正

  • コマンド連続実行まわりの再度バグ修正
    • 1.63cの修正に絡んで、コマンド実行中に体力が0になる等の条件で動作がおかしくなるのを修正

2009/6/ 1.63d Rev.2 1.63dの微調整

  • 文字列の三項演算子まわりの処理を微修正
    • エスケープ済み文字列の処理にちょっと問題があった

2009/6/ 1.63d 三項演算子まわりの不具合修正

  • 文字列変数に対して三項演算子での代入ができないのを修正
    • 書式が専用のものになります
          文字列用書式:(文字列変数) = \@(条件) ? 文字列A # 文字列B\@
      
    • なお、副次的な効果として、以下のような書式も使えるようになりました
          PRINTFORM \@(条件) ? 文字列A # 文字列B\@
      

2009/6/ 1.63c 本家163のバグ修正+自分の仕事周りの修正

  • 関数名の仕様の後方互換性が死んでいたのを修正
    • 163では"_"以外の記号をブラックリスト化していたが、Eramakerでは全て通る仕様になっているので、ブラックリストによる判定自体をなかったことに
  • コマンド連続実行周りのミス修正
    • 最後のコマンドがCOMABLEの判定で実行不可の場合エラー終了するのを修正
  • コマンド連続実行周りの表示修正
    • 実行できなかったコマンドについても何回目のコマンドか表示かつ、COMABLEで実行不可の場合はそれを表示するように

2009/6/ 1.63b

  • 三項演算子追加

2009/6/ 1.63a

  • EQUIPNAME、TEQUIPNAME実装
    • EQUIP、TEQUIPに対応する文字列配列
      それぞれequip.csv、tequip.csvで定義(書式はabl.csvやtalent.csvと同様)

2009/6/3 ver 1.63

  • CALL文の引数が省略された場合、0または""が代入されるように(1.54uの仕様に戻す)
  • FONTSTYLE命令追加。FONTSTYLE 1でFONTBOLD相当など。

2009/6/2 ver 1.62 <私家改造版の作者様による更新を含む>

  • 累乗命令POWER追加。"POWER A, X, Y"でXのY乗をAに代入する。
  • 変数GLOBAL、GLOBALS追加。数値型と文字列型の配列変数。変更可能、通常のセーブデータにはセーブされない。
  • 命令SAVEGLOBAL、LOADGLOBAL追加。GLOBAL、GLOBALSを保存する。異なるセーブデータ間でGLOBAL、GLOBALSを共有できる。
  • <私家改造版の作者様による更新>CALLTRAINに関する修正

2009/5/31 ver 1.61

  • CALL時に変数型が違う場合、数値→文字列の場合のみ自動で変換するように。
  • JUMPでJUMP先関数が見つからない場合、exeのエラー(ExeEE)と判断されていた問題を修正
  • 書式付文字列定数@"~~"追加。CALL FOOBAR, @"[{COUNT}] ほげ"のように使う。詳しくはEmueraの拡張文法.txtで。

2009/5/31 ver 1.60

  • 私家改造版1.54uをベースに更新
  • CALL文の仕様変更。半角スペース区切りからカンマ区切りへ。ロード時に引数チェックを行うように。
  • SORTCHARA文の強化。SORTCHARA CFLAG:2,BACKのようなソートを可能に。MASTERが0でない場合にも対応。
  • FOR~NEXT文の追加。カウント用の変数を設定可能で多重ループも可能なREPEAT~RENDの代替。
  • RETURNの仕様変更。現在のRETURNをRETURNFORMに移動、RETURNの仕様を旧来に戻す。
  • GETCHARAの仕様の一部変更。後天的にNOを変える場合も考えてchara*.csvで定義されていないNOが指定されても全員チェックするように。

2009/ 1.54u

  • 連続コマンド実行命令CALLTRAIN実装
  • TINPUT、TINPUTSの拡張

2009/ 1.54t Rev.2

  • エラー発生中にコードを再読み込みできないように変更
    • エラー→コード再読み込み→タイトルでアプリケーションエラーになるため

2009/ 1.54t

  • メニューにタイトルに戻るを追加
    • 実行するとデータが破棄された上でタイトルに戻ります
  • メニューにERBファイルの読み直しコマンド追加
    • 実行するとERBファイルを再度読み直してくれます
      なお、口上表示中にその口上部分を書き換えて読み直しても、その時点では反映されません
      (Emueraのスクリプト処理の仕様です)
      その次の表示から反映されます
  • RETURNにFORM構文が使えるように
    • 直接計算式でRETURNの値を記述できます
      当然、文字列を与えた場合はエラーになるのでご理解の上お使いください

2009/ 1.54s Rev.6

  • Rev.5のエンバグ修正

2009/ 1.54s Rev.5

  • 関数名処理のルーチン微調整
    • 関数名に演算子が含まれる場合等の挙動を修正

2009/ 1.54s Rev.4

  • 引数処理のスコープ処理に問題があったので修正
    • LOCAL、LOCALS、ARG、ARGSを引数に使うと問題が起こる場合があった
  • その他細々した修正・調整

2009/ 1.54s Rev.3

  • 自作関数への引数の仕様を拡張
    • 引数省略可能に(省略された引数は数値なら0、文字列なら空文字列となります)
  • ARG、ARGSをLOCAL、LOCALS同様ローカル関数に
    • 仕様はLOCAL、LOCALSと同様です
  • LOCALSにあった処理上のミスを修正

2009/ 1.54s Rev.2

  • 自作関数への引数の仕様を拡張
    • PRINTFORMと同様式の書式
      数値には{}で囲って計算値を、
      文字列には{}および%%で作った文字列を渡せるようにしました

2009/ 1.54s

  • 自作の関数に引数(値渡し)を指定可能に

2009/ 1.54r Rev.2

  • SORTCHARAのソート処理を安定ソート実装に変更
    • これで同じキャラ番号持つキャラが複数いるときに、入れ替える度にその順序が変わるということはなくなります
      なお、昇順でも降順でも元のリスト位置が小さい方が先になります

2009/ 1.54r

  • キャラ番号によるソート命令SORTCHARA追加
  • オートセーブタイミング変更で生じていたちょっとした不具合を修正

2009/ 1.54q rev.2

  • 最終表示行再利用命令REUSELASTLINE追加
    • 書式:REUSELASTLINE (警告用に表示する文字列)
      基本的にはINPUT、INPUTSのループ処理でのみ使用するもの
      引数はPRINTFORMと同様の書式を使用可
      なお、REUSELASTLINE (この半角スペース必須)とすれば、警告文なしで空行にできます
  • 一部システム入力に上の機能と同様のものを実装
    • あまり意味ないが、無駄なスクロールは減らせるだけ減らそうということで
  • INPUT時に数値以外のものを入力した場合には入力結果自体表示されないように変更

2009/ 1.54p

  • 制限時間つき入力命令TINPUT、TIUPUTS追加

2009/ 1.54o

  • 変数解釈の処理の不具合を修正
    • 変数指定時にA:(X + Y * (Z + 1)) = ...のように()を2重以上にしたときに正しくパースできない不具合の修正
      原因は変数の解釈時にそもそも()が2つ以上来ることを想定していないコードになっていたこと
  • 1.54nの微妙な不具合の修正
    • CLEARLINE後に描画周りの負荷が増大する問題があったのを修正
      原因はフラグのクリアし忘れ

2009/ 1.54n

  • 行削除命令CLEARLINE追加
    • 書式
           CLEARLINE (整数)
      
      処理表示されている文字列の最後から指定した行数分を削除

2009/ 1.54m

  • 演算子追加
    • ^^:(二項演算子)ビットによらないXOR  A ^^ B = (A && !B) || (!A && B) は同じ動作
    • !&:(二項演算子)ビットによらないNAND A !& B = !(A && B) は同じ動作
    • !|:(二項演算子)ビットによらないNOR  A !| B = !(A || B) は同じ動作

2009/ 1.54l

  • オートセーブのタイミングに問題があったのを修正
    • @EVENT_SHOPが実行される前にセーブされて、ロードするとSHOW_SHOPからのため
      @EVENT_SHOP中に発生した処理の影響が反映されないことがわかったため

2009/ 1.54k

  • SETCOLOR、RESETCOLOR、FONTBOLD、FONTITALIC、FONTREGULAR使用時に文字列の処理に問題があったのを修正
    • 連続した文字列が長く1行に収まらない場合、表示変更の境目で改行される形になっていたので修正

2009/ 1.54j

  • FONTBOLD、FONTITALIC、FONTREGULARを実装
    • それぞれ、太字、斜体、通常文字になります
      BOLDとITALICは重複可能、REGULARを指定すると通常表示に戻ります

2009/ 1.54i

  • SETCOLOR、RESETCOLORを行中の一部のみの表示に適用できるようにした
    • もしかしたら部分的におかしいかもしれないのでバグがあれば報告してください

2009/ 1.54h

  • 文字色指定関数SETCOLORおよび文字色指定リセット関数RESETCOLOR実装
    • SETCOLOR (R), (G), (B)のRGBで指定
      使用後はRESETCOLORを呼び出せば元の文字色に戻ります(戻さないと大変なことに)

2009/ 1.54g

  • 引数解析時の予期せぬ識別子エラーを警告にして、エラー位置を把握できるように修正
    • プログラムはそのまま動作しますが、当然正しく動かない可能性があります
      あえて、こうしたのはデバッグ作業の効率アップのためにはこっちの方が効率がよいため

2009/ 1.54f

  • LOCALSにLOCAL同様のスコープ指定を実装
  • GETCHARA、GETSPCHARAにキャラが未定義のNOを与えたときに例外ではなく-1を返すように変更
    • キャラの追加、削除するわけではないので、例外投げるほどではないと判断

2009/ 1.54e

  • LOCALSを実装
    • LOCALの文字列バージョン

2009/ 1.54d

  • GETCHARA、GETSPCHARAを実装
    • 現在所有しているキャラに、そのキャラ番号を持っているキャラがいるかを判定する関数
      いれば、そのキャラのリスト上での番号を、いなければ-1を返します
      GETCHARAは通常キャラ(CFLAG:0 = 0)、GETSPCHARAはSPキャラ(CFLAG:0 = 1)を見ます

2009/ 1.54c

  • 1.54bのDRAWLINEカスタマイズ可能にする処理にバグがあったので修正
    • これで全角文字でも正しく表示されるようになったはず

2009/ 1.54b

  • DRAWLINE、BARの表示をカスタマイズ可能に
    • _replace.csvでの実装
  • 起動時システムメニューの表示をカスタマイズ可能に
    • これも_replace.csvでの実装

2009/ 1.54a

  • ショップ画面でのアイテム販売数の上限をカスタマイズ可能に
    • ただし、仕様上_replace.csvでの実装になります

2009/4/11 ver 1.54

  • 私家改造版1.52a-cの更新を取り込みました
  • "_Replace.csvを利用する"の初期値をYESに変更。
  • _Replace.csvが存在しなくてもエラーにならないように。
  • ABLNAMEなどのcsvから読む変数についてもVariableSize.csvでサイズを変更できるように変更。
  • 設定ダイアログを整理
  • TRYCALL、TRYJUMP、TRYGOTO命令追加。関数が存在しなくてもエラーにならない。
  • CALLFORM、JUMPFORM、GOTOFORM命令追加。PRINTFORM形式で呼び出し先を指定できる。
  • TRYCALLFORM、TRYJUMPFORM、TRYGOTOFORM命令追加。↑二つの組み合わせ。

2009/XX/XX ver 1.53 <欠番>

2009/ 1.52c

  • 左詰のPRINTFORMCであるPRINFORMTLCを実装
    • 実装し忘れとも言う
  • レポートなしの場合の起動時のファイル処理の簡略表示をカスタマイズ可能に
    • 欲しいと言われたから作った
      例はお約束のごとく_Replace.csvを参考にどうぞ

2009/ 1.52b

  • 左詰のPRINTCであるPRINTLCを実装
    • 既存のPRINTCが右詰め前提のため、左詰を想定している場合表示が狂うため、左詰明示のPRINTC関数が必要なため実装
  • レポートなしの場合は起動時のファイル処理の表示を省略
    • なお、エラーはちゃんと表示されます

2009/ 1.52a

  • PRINT_SHOPITEMのお金単位の内部処理を変更
    • 単位の変更および単位の前置・後置の設定を可能に
      この処理には_Replace.csvを使用します
      また、仕様の際にはEmuera.configに
      _Replace.csvを利用する:YES
      を追加する必要があります
      _Replace.csvの具体例は添付のサンプルを参照してください

2009/3/28 ver 1.52

  • GDI+を使用しない場合、PRINTする文字列中に&が存在すると表示が乱れる問題を修正。
  • 論理演算子を短絡評価するように変更。

2009/3/28 ver 1.51

  • NEXTCOMの動作を本家に合うように修正。

2009/3/28 ver 1.50

  • NEXTCOMが機能するように修正。
  • SAVEDATA・LOADDATA命令追加。番号を指定して直接セーブ・ロードを行う。
  • DELDATA命令追加。指定した番号のセーブデータを削除する。
  • CHKDATA命令追加。指定した番号のセーブデータの状態をRESULTとRESULTSへ代入する。
  • GETTIME命令追加。現在時刻に関する情報をRESULTとRESULTSへ代入する。
  • @EVENTLOAD関数追加。ロードした時に@SHOW_SHOPの前に呼び出されます。
  • @TITLE_LOADGAME関数追加。タイトル画面でロードを選択したときに呼び出されます。
  • @SYSTEM_AUTOSAVE関数追加。オートセーブを独自に実装できます。
    • 命令、関数の詳細は"Emueraの拡張文法.txt"を参照してください。
  • "無限ループ警告までのミリ秒数"のオプション追加。WAIT系命令がないままで指定したミリ秒経過すると警告ダイアログ表示。

2009/3/18 ver 1.44

  • VARSIZE命令を追加。
  • LOCAL変数のサイズが変更できなかった問題を修正。

2009/3/17 ver 1.43

  • "描画にGDI+を用いる"オプションの標準を"使用する"に変更。

2009/3/17 ver 1.42

  • 標準でGDI+を使用していたのをGDIに変更。
  • "描画にGDI+を用いる"オプション追加。標準では使用しない。

2009/3/16 ver 1.41

  • PRINTFORMC命令が正常に機能していなかった問題を修正。

2009/3/16 ver 1.40

  • オプションでウィンドウの高さを固定した場合にスクロールバーがずれることがあった問題を修正。
  • "ロード時に引数を解析する"にONCEオプション追加。
  • コンフィグウインドウ追加
  • ローカル変数LOCAL追加。
  • SOURCENAMEとEXNAME追加、source.csvとex.csvを読むように。
  • 文字列と整数の乗算を追加。
  • STRLEN、STRLENS、STRLENFORM命令追加。文字列の長さを測定します。
  • SUBSTRING命令追加。指定した文字列変数を指定した位置から指定した長さだけ切り取ります。
  • PRINTFORMC命令追加。PRINTFORMと同様の書式でPRINTC命令を実行します。
  • SWAPCHARA命令追加。キャラの登録番号を入れ替えます。

2009/3/13 ver 1.26

  • UPCHECK命令からWAIT処理を除去、@EVENTCOMEND後にWAIT処理を追加(本家にあわせた)

2009/3/8 ver 1.25

  • ボタンの表示処理(ディスプレイ上でのピクセル数を測る処理)を修正

2009/3/7 ver 1.24

  • ボタンの生成処理を修正

2009/2/26 ver 1.23

  • 私家改造版の更新を取り込みました
  • 文字列変数への代入で文字列の最初と最後のスペースなどが無視されていた問題を修正。
    • 本家の仕様が不明瞭なので完全には再現せず
  • PRINTFORMなどの書式付文字列で、対応する'{'の無い'}'が使われた場合の警告がシステムのエラーになっていた問題を修正。
  • デバッグコマンドに@OUTPUT追加。
  • コンフィグ"関数が見つからない警告の扱い"、"関数が呼び出されなかった警告の扱い"について、
    • IGNOREオプションが選択されると警告の数も報告しないように変更。
    • 代替としてLATERオプションを追加。
  • 不評だったコンフィグの初期設定を変更。高速化と本家との一致を優先。
    • 多重起動を許可する-YES
    • 履歴ログの行数-5000
    • 履歴文字色-192,192,192(通常の"文字色"と同一)
    • フレーム毎秒-15
    • ロード時にレポートを表示する-NO
    • ロード時に引数を解析する-NO

2008/ 1.22c

  • AutoSaveをする条件を限定
    • パッチ詰め合わせの某処理での問題を修正

2008/ 1.22b

  • SAVEGAME/LOADGAME呼び出しに関するeramakerとの仕様の違いを修正

2008/ 1.22a

  • 1.22に同期
  • 1.21bのルーチンの改良版を追加
  • マウスが描画領域から外れる時の処理をきちんとイベントでハンドリング
    • 表示されている一番下の行の文字(タイトルの1続きから等)が選択状態の時に、入力フィールドへマウスを動かしたときに表示が選択状態のままになるのを修正
  • 何かのはずみでNullReferenceExceptionが投げられることがあるので、原因修正(一応安全のためにNullチェックは保存)

2008/11/26 ver 1.22

  • 描画処理を改善
  • 本家にあわせ、BREAK文の実行時にCOUNTに1を加えるように修正

2008/ 1.21b

・描画のルーチンまわりを大幅に調整

  • コンフィグのFPS設定以上の速さで描画処理を行わないようにした
  • 状況によっては最後1行の表示がもたつくことがありえたのを修正

2008/ 1.21a

2008/10/6 ver 1.21

  • PRINTCの動作を本家に合わせて変更
    • 合わせて"PRINTCの文字数"オプションを追加。
    • また、選択肢として使用できるかどうかの判定を書き直し。
  • RELATION:あなた や ITEM:ローター のような表記に対応。
  • 吉里吉里にあわせ、2進法表記、16進法表記、3e2や1p5のような表記に対応。

2008/9/6 ver 1.20

  • 整数値を32ビットから64ビットへ拡張。
  • 合わせて"オーバーフロー時の扱い"オプションを削除。
  • VariableSize.csvを追加し、配列変数の可変に変更。
  • BASE.CSVを追加し、定数BASENAMEを追加。

2008/8/29 ver 1.16

  • 入力用TextBoxの表示位置がおかしかった問題を修正。

2008/8/26 ver 1.15

  • ファイルリストをファイル名でソートしないように修正。

2008/8/26 ver 1.14

  • イベント関数の呼び出し時に関数の実行順が不定になる問題を修正(読み込み順に合わせた)。
  • ロード時に関数の数などをカウントする機能を追加。
  • 合わせて"ロード時にレポートを表示する"オプションの追加。

2008/8/24 ver 1.13

  • RANDの引数に1000以上を指定できなかった問題を修正。
  • 関数の外に有効な行があるときに警告するように修正。
  • 入力した文字列がちらつく問題を修正。
  • ロード中にウインドウサイズの変更などが出来るように変更。
  • ロード時の引数解析で変数の引数が定数の場合、配列の範囲内かどうかチェックするように変更。
  • "呼び出されなかった関数を無視する"オプションの追加。主に@sampleを避けるため。

2008/8/23 ver 1.12

  • 命令の引数のエラー時に二重にエラーメッセージを発行することがあった問題を修正。
  • 実数リテラルの認識で負の実数を認識できなかった問題を修正。
  • csv読込中にもエラーを出すように修正。
  • 最大化ボタンを追加。
  • ERBファイルの読込前にファイルリストをファイル名でソートするように変更。
  • TIMESの第2引数が実数でない場合、0.0として動作するように変更。(警告Lv1に低下)
  • ELSEの後に他のELSEIF、ELSEがあっても動作するように変更。(警告Lv1に低下)
  • CALL、JUMP命令は最初に読み込んだ関数一つを呼び出すように変更。(警告を出さない)
  • 疑似変数RANDとCHARANUMに変更不可属性を付加。
  • 定数ITEMPRICEとTRAINNAMEを追加。
  • 本家に無い論理演算子との複合代入演算子"&&=", "||="を削除。
  • 論理否定演算子"!", ビットごとの否定演算子"~", XOR演算子"^"を追加。

2008/8/17 ver 1.11

  • 変数の引数に数式を指定できるように修正。(ITEM:(COUNT+100)など)
  • PRINTした文に中身が空白文字だけの[]があると強制終了していた問題を修正。
  • emuera.configを日本語化。
  • デバッグコマンドの復活。標準では使用不可にする。
  • ;!;で始まる行を非コメント行とみなし[SKIPSTART]行から[SKIPEND]行までをコメント行とみなすように変更
  • 引数の解析を行なうタイミングを設定できるように変更。
  • 引数の解析時にPRINTFORM等の内容にまで踏み込むように変更。
  • 関数が見つからない、関数が呼び出されないなどのエラーを無視できるように変更。

2008/8/9 ver 1.10

  • 文字列式の実装
  • csv、ERBの読込時に排他ロックを行なわないように修正。
  • QUIT、エラーの際にマウスクリックで終了するように変更。
  • オーバーフローへの対処を変更。
  • エラーチェックのタイミングを変更。

2008/7/31 ver 1.00 正式版公開