したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

【エミュレータ】Emueraスレ【+α】

1Emueraの人:2010/11/23(火) 01:41:51 ID:mrlVhh/.0
このスレはEmuera(エミューラ)に関する話題を扱うスレです。
Emuera本体に関する要望・バグ報告などありましたらこのスレでどうぞ。
各ERBスクリプトに関する話題はそのバリアントのスレでお願いします。

なおeramakerの作者である佐藤敏様はEmueraの製作には関与していません。
Emueraへのサポート要求等をサークル獏様や佐藤様宛てに送らないで下さい。

690名無しさん:2017/12/17(日) 02:35:16 ID:Cn6Jr3yQ0
SAVECHARAおよびLOADCHARAってもしかしてDIM SAVEDATA CHARADATAした変数に対応できなかったりしますか?

691690:2017/12/17(日) 03:35:15 ID:Cn6Jr3yQ0
追記
生成されたdatを読んでみましたが、DIM SAVEDATA CHARADATAされた変数自体は存在していました
セーブ時に値が入っていないか、ロード時に読めていないかのような気がします

692690:2017/12/17(日) 20:28:09 ID:Cn6Jr3yQ0
連投すみません。

色々試した結果、SAVECHARAおよびLOADCHARAは問題なくDIM SAVEDATA CHARADATAした変数を読み書きできていました。失礼しました。
今回、ADDCOPYCHARAやCOPYCHARAによってコピーしたキャラをSAVECHARA、LOADCHARAに突っ込んでいました。
ADDCOPYCHARAのコピー元になったキャラとLOADCHARAによって生成されるキャラを比較して、変数が同一になっておらず、セーブロードがうまくいっていないと考えていました。
しかしさらに調べたところ、ADDCOPYCHARAやCOPYCHARAの時点で問題があるようでした。
コピー先のキャラで変数の内容が吹っ飛んでおり、SAVECHARA/LOADCHARAにおいても変数が空になっており、上記挙動のようになっていたようです。
お騒がせしました。

それで、ADDCOPYCHARAやCOPYCHARAがDIM SAVEDATA CHARADATAした変数の中身をコピーしないのは仕様なんでしょうか……

693妊)|д゚):2017/12/31(日) 04:40:18 ID:xyNAxzLE0
>>692
あー、そこらへん考慮から外れてるかも
ちょっと考えてみますか

694名無しさん:2017/12/31(日) 22:34:36 ID:lTrJszrk0
式中関数でエラーが発生したとき、そのエラーを無視して何もしない、と設定することは実現可能ですか?
BASICでいう、ON ERROR RESUME NEXTに相当する処理です

695妊)|д゚):2018/01/01(月) 13:43:04 ID:Sy6.64LI0
お年玉(バグが入っていないとは言っていない

・1821+v8
ttps://ux.getuploader.com/ninnohito/download/447

・主な変更
COPYCHARA、ADDCOPYCHARAがユーザー定義キャラ変数に対応してないのを修正

696妊)|д゚):2018/01/01(月) 13:45:44 ID:Sy6.64LI0
>>694
うーん、できないことはないですが、
典型的なerror-proneになりそうなので、あんまり乗り気にはなれないですかねぇ

697名無しさん:2018/02/20(火) 20:18:37 ID:TM7N44F.0
ttp://era.moe.hm/cgi/era/upload.php?id=0003424

いつもの人とは別の人によるEmuera改造版です
ERBで定数を使っていたところ定数で定数の値を与えることが出来なかったので前につくったERHの定数をいい感じに処理してくれる奴に追加する形で改造版作りました

698名無しさん:2018/04/11(水) 22:19:36 ID:J7M5CUcQ0
SETCOLORすると値によってフォントサイズが変わるみたい・・・・?
0xFF4500と0x504010、フォントサイズ17で数ドットレベルで違うのを確認

699名無しさん:2018/05/01(火) 23:36:28 ID:83x4HkOA0
HTML_PRINTで& # x a ;(表示されないっぽいのでスペース入れてます)等の文字参照による改行が<br>や\nによる改行と挙動が異なる
通常HTML_PRINTを行った後はLINECOUNTとしては1行扱いだが<br>の改行の分だけ以降の行は表示が下になるのに対し文字参照の場合以降の行はHTML_PRINTの行の直後になる
つまり文字参照で改行した場合以降の行で表示した内容と描画位置が被ったりする
さらにbutton系でposで表示位置を動かしていた場合<br>では左端に戻るが文字参照の場合前の行と左端は同じになる
後文字参照の改行はコンフィグで設定した行の高さは無視されて文字のサイズによるものになる
最期にbuttonとして反応するのは最初の行だけ

尚この仕様の方が表示出来る幅は広い
例えば複数行に跨る文字列AとBが有ったとして
Aより前面に何らかの画像それより更に前面にBと表示できるのはこの仕様の場合だけである
<br>による改行の場合Aを表示しきった後画像を表示してBを表示すると必然的にBはA以降の行にしか表示できないのである
ついでにコンフィグで設定した文字サイズと行の高さが互いの素なら大きな余白行が必要だが文字の表示位置をピクセル単位で操作も可能

700妊)|д゚):2018/05/05(土) 23:34:57 ID:IROg4Tog0
改行文字の文字参照まではキャッチしてませんからねぇ
対応自体はそんな大変ってわけではないけど、正直やる価値があるかは疑わしいかなー

701名無しさん:2018/05/06(日) 21:01:23 ID:BPuANbEE0
READMEのSTRJOIN関数の説明に誤りがあります
実際に結合される範囲は下記の通りです
第三引数≦i<第三引数+第四引数

702名無しさん:2018/05/09(水) 18:18:58 ID:64LkLGiQ0
描画範囲外の行で行われたPRINT_RECTとHTML_PRINTの<img>タグと<shape type='rect'>で画像又は長方形が描画範囲内まで入る位置、大きさでも描画されない

703妊)|д゚):2018/05/11(金) 04:45:47 ID:SLAq39/U0
>>701
単なる書き間違いですね、はい
次のリリースの時にreadmeの方直しておきます

>>702
描画の処理の仕様の関係で、画像の左上(描画の起点)が画面内にないと表示されないですね

704名無しさん:2018/06/04(月) 19:37:34 ID:tSc6O0i.0
SETCOLOR直後にPRINTBUTTONすると設定した色で表示されないようです

705妊)|д゚):2018/06/05(火) 03:10:01 ID:I4NEdLig0
>>704
ちょっと見てみますねー

706妊)|д゚):2018/06/05(火) 03:54:51 ID:I4NEdLig0
かなり変則的なバグですね

;PRINTL GOGOGO!
SETCOLOR 255,0,0
PRINTBUTTON "TEST2", 2

コメントを外すか外さないかで挙動が変わるっていう楽しい光景
根本的な原因はわかってるので修正修正っと(正直再設計必要なレベルな気もするけど

707妊)|д゚):2018/06/05(火) 04:06:02 ID:I4NEdLig0
バグ修正はとっても大事

・1821+v8
ttps://ux.getuploader.com/ninnohito/download/448

・主な変更
○PRINTBUTTON系、PRINTPLAIN系命令が特定条件でSETCOLOR系の処理を反映しないのを修正
○REPEATなどの多重構造に関する警告のtweak ちょっとだけしっかり見るようになりました

708妊)|д゚):2018/06/05(火) 22:48:34 ID:6Tv5kmDU0
設定の違いって時折大変な事態を生むのであった

・1821+v9.1
ttps://ux.getuploader.com/ninnohito/download/449

・主な変更
○v9の変更で設定によって、大量の例外がすっ飛んでくるようになったのを修正

709名無しさん:2018/06/10(日) 19:37:35 ID:y3FNtlvI0
STRJOINに TALENTNAME などを引数に与えると、構文エラーなど表示せずに例外吐いてEmuera自体が落ちます。

例:STRJOIN TALENTNAME, ",", 0, 10

DEMO.ERBの15行目で予期しないエラーが発生しました:Emuera1821+v9.1
System.InvalidCastException:型 'MinorShift.Emuera.GameData.Expression.SingleTerm' のオブジェクトを型 'MinorShift.Emuera.GameData.Variable.VariableTerm' にキャストできません。
場所 MinorShift.Emuera.GameData.Function.FunctionMethodCreator.JoinMethod.GetStrValue(ExpressionMediator exm, IOperandTerm[] arguments)
場所 MinorShift.Emuera.GameProc.Function.FunctionIdentifier.METHOD_Instruction.DoInstruction(ExpressionMediator exm, InstructionLine func, ProcessState state)
場所 MinorShift.Emuera.GameProc.Process.runScriptProc()
場所 MinorShift.Emuera.GameProc.Process.DoScript()

710妊)|д゚):2018/06/10(日) 21:58:55 ID:lhpj0PnI0
わー、とんでもない事故起こってる
ちょっと考えないとなぁ

711妊)|д゚):2018/06/10(日) 22:34:59 ID:lhpj0PnI0
ちょっと処理が雑だったな、うん

・1821+v10
ttps://ux.getuploader.com/ninnohito/download/450

・主な変更
>>709修正
○v9からの変更でエラーなコードが原因で例外が飛ぶのを修正

712名無しさん:2018/06/11(月) 20:57:34 ID:NQ4oVsVw0


713名無しさん:2018/06/11(月) 22:57:45 ID:gNEyLqmI0
問題無い感じです

714名無しさん:2018/06/12(火) 21:07:37 ID:oEeBneSU0
スレチならすんません
自分が仕様を理解してない可能性大なのですが
PRINT_IMG で 例えば640×480の画像を原寸表示する場合
行単位で表示する物を20行表示
画像A001,001.jpg,0,0,640,20
画像A002,001.jpg,0,21,640,20
〜略
画像A024,001.jpg,0,461,640,20
みたいなCSV登録をした上で
ループで廻して表示するしか方法がないのでしょうか?

715名無しさん:2018/06/12(火) 22:31:53 ID:JmuwOzQ20
>>714
一応HTML_PRINTなら画像全体を登録して原寸大表示できる
ただしそこまででかいならループ廻すのが一番
HTML_PRINTで画像を表示する時画像の左上が描画範囲内に無いと表示されなくなる

716名無しさん:2018/06/13(水) 18:34:16 ID:DY14XkqA0
>>715
教えて下さってありがとう
HTML_PRINT の方の仕様上の課題も教えて頂けて本当に助かりました
動作に必要な前提が少ないPRINT_IMGの方で
表示用ループ関数を定義して引数渡しの形で一般化して使う様にします
設計的にも画像表示はおまけ要素ですしね

717名無しさん:2018/06/25(月) 21:51:06 ID:mrbLtDas0
バグ報告

「履歴ログの行数」が正常に機能していない。
ここで設定した行数はCONFIGファイルには正常に記録されるが、本体側で10000に固定されてしまっている様に感じます。
例を挙げるとCONFIGファイルには2000と記録されていても10000まで履歴を取り続けてしまう。

気が付いたバージョンはEmuera1821+v8ですが、Emuera1821+v10でも同じ症状を確認。
試しにEmuera1821でも確認してみた所、こちらは正常に機能していました。

718妊)|д゚):2018/06/28(木) 03:35:03 ID:vpr9YSv.0
およ、直したつもりだったが直ってなかった

719妊)|д゚):2018/06/28(木) 03:50:49 ID:vpr9YSv.0
違った、v10の後に手元ではすでに修正済みなだけだった(別口で報告もらってた
基本的には次のverの時にセットでかなぁ

720妊)|д゚):2018/07/13(金) 02:45:35 ID:4ZNlghCc0
Emuの人が新バージョンやるぞオルァと息巻いてましたので、乞うご期待

・1821+v11
ttps://ux.getuploader.com/ninnohito/download/451

・主な変更
>>717修正
○v9からの変更に絡んで色々雑だったところを手入れ
○仕様と内部挙動の不一致があったところをこっそり手入れ

721妊)|д゚):2018/07/13(金) 21:05:35 ID:/K8gEFvA0
・1821+v11
ttps://ux.getuploader.com/ninnohito/download/452

・主な変更
REPEAT、FORの衝突絡みをエラー扱いから警告扱いに変更

722名無しさん:2018/07/14(土) 02:53:00 ID:J6S/dbCg0
ttp://era.moe.hm/cgi/era/upload.php?id=0003771

いつもの方々とは別の人による改造版です
Emueraにユーザー定義でCSV読み込んでINDEXアクセスを文字列でできるようにする奴です
怪しげなフォルダ名とか怪しげな命名規則とかめんどくさいところあるのでUpdate.txtの中身見てください

バグあると思うので報告ください

723Emueraの人:2018/07/16(月) 22:44:30 ID:pEJxvcec0
Emuera 1.822リリース
ttps://osdn.jp/projects/emuera/releases/
対象の.NetFrameworkのバージョンを2.0から4.5に更新
ERH内で宣言した定数をERH内で他の変数の宣言に利用できるように修正
(読み込み順によらず利用可能になります)

また、思うところありまして投げ銭版 Emueraの販売を始めました。
ttps://emuera.booth.pm/items/933704
よろしければご支援のほどお願いいたします

724名無しさん:2018/07/18(水) 05:44:11 ID:M2AnZwhk0
いつもお世話になっております。
Monaなら投げたいです。

725名無しさん:2018/07/30(月) 22:25:45 ID:WWbiMQqA0
解析モードの動作が変わっちゃってますかね。

ttp://seesaawiki.jp/eratoho/d/Emuera%A4%CB%A4%C4%A4%A4%A4%C6%A4%CE%CA%E4%C2%AD
で書かれているように、バリアントのERBフォルダをEmueraのexeファイルにドラック&ドロップして、出力されるAnalysis.logを見る。

を試してみたのですが、
Emuera1822.exe : ERBフォルダ直下のファイルだけを見る
Emuera1821.exe および Emuera1821+v5.1.exe :ERBフォルダ以下のファイルをサブフォルダも含めて全部見る
のようです。

726妊)|д゚):2018/07/31(火) 03:12:04 ID:scZ6DgDs0
あー、ログ行数周りの修正の影響かー
さっくり直しますか

727妊)|д゚):2018/07/31(火) 03:24:52 ID:scZ6DgDs0
・1822+v1
ttps://ux.getuploader.com/ninnohito/download/453

・主な変更
>>725修正

728average:2018/08/12(日) 08:42:58 ID:lf3fzaRA0
・SAVEGLOBALを頻発させると落ちてしまう不具合の報告
ttp://era.moe.hm/cgi/era/upload.php?id=0003842

【バージョン】
Emuera1822およびEmuera1822+v1
過去バージョンでも同様の不具合が起きています:Emuera1821、Emuera1820 ほか

【導入パッチ】なし
【エラー内容】
短時間にSAVEGLOBALを何度も実行させるとエラー落ちします。
エラーログは以下の通り:

SHOP.ERBの7行目で予期しないエラーが発生しました:Emuera1822
System.IO.IOException:要求された操作はユーザー マップ セクションで開いたファイルでは実行できません。

場所 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

場所 System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)

場所 System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)

場所 MinorShift.Emuera.GameData.Variable.VariableEvaluator.SaveGlobal()

場所 MinorShift.Emuera.GameProc.Process.runScriptProc()

場所 MinorShift.Emuera.GameProc.Process.DoScript()



【エラーの再現性】
各5回ずつ試行し、5回とも全てエラーを出しました:
Emuera1822:セーブ19回目,18回目,284回目,353回目,17回目
Emuera1822+v1:セーブ20回目,15回目,28回目,21回目,20回目


【エラー発見の経緯】
eratohoJ+ v1.05.5をマクロで回しているときに時々エラー落ちする現象(再現性がなかった)を分析して、この不具合を突き止めました。
この不具合を回避しようとWAIT関数を駆使してみましたが、200フレームほど待ってもエラー落ちが回避できませんでした。1000フレームほど待機すればエラーを回避できるっぽい(たぶん環境依存)ですが、ゲームの円滑な進行に影響を及ぼします。
そのため、Emuera本体側での対応をなにとぞよろしくお願いします。

【対応案】
・SAVEGLOBAL等のセーブ系命令でエラーが起きたとき何回か再試行する
・erabasicに例外処理を追加する

729Emueraの人:2018/08/12(日) 19:32:51 ID:fu/4JBck0
>>728
こちらの環境では何度試してもエラーは出ませんでした
一応エラーが出ても強制終了はしないように次のバージョンで修正してみます

730Emueraの人:2018/08/12(日) 23:09:20 ID:fu/4JBck0
>>728
ttp://era.moe.hm/cgi/era/upload.php?id=0003843
セーブ時に落ちる問題が改善しているかもしれないし改善してないかもしれないバージョン1.823alpha002をupしました
同梱のEmuera1823alpha002を起動して旧バージョンと比較してみてください
これで改善していなければ別の修正を試みます

731Emueraの人:2018/08/14(火) 23:46:19 ID:iflHcKDk0
>>728
ttp://era.moe.hm/cgi/era/upload.php?id=0003847
Emuera1.823beta001
・SAVETEXT&LOADTEXT命令・関数を追加しました
・1.822+v1の修正を取り込み

SAVETEXT STR, X, 1,1
とすることでSTRの内容をtxtXX.txtファイルに出力します。
第3引数、第4引数に非0を指定することでオプションによらず、savフォルダ内にUTF-8エンコードで出力します。
この命令・関数はセーブに失敗してもエラーにならず、単にRESULT:0に非0を代入します。
頻繁にセーブを繰り返すなどセーブに失敗する可能性がある場面でお使いください。

732名無しさん:2018/08/17(金) 17:01:07 ID:RkSqWJ7I0
>>731
新規関数の追加ありがとうございます!era2talkっていう、ソフトウェアに口上を読み上げさせるツールを作っていたのでこれはありがたい仕様ですね…!

733Emueraの人:2018/08/30(木) 02:40:31 ID:pETVsHCM0
Emuera1.823beta003
「キャラクターなんとか機」っぽいもの
ttp://era.moe.hm/cgi/era/upload.php?id=0003892

色を変えたりフォントサイズに依存しない画像描画をする機能は次で。

734名無しさん:2018/09/10(月) 22:16:18 ID:UrHeD8b20
すみません、ひとつお聞きしたいのですがEXISTCSVのような感じで、
画像を表示するためのリソースが存在するかどうかを判定する関数はemueraに存在しますか?
なければ是非欲しいです。

画像がなければ何も表示せず、あればPRINT_IMGで表示するようにしたいのです。
そういった関数を見つけられなかったので、
IF NO:LOCAL == 5 || NO:LOCAL == 8
PRINT_IMG @"%TOSTR(NO:LOCAL)%"
ENDIF
のように力技でやろうとしているんですが、画像を追加するたびに記述を書き換えなければならないし
スマートじゃないなと思いまして。

735Enter ◆KRonai/j1M:2018/09/10(月) 22:22:35 ID:Pj0VhRXs0
>>734
現状無いので、定数を使うことで対応ができるかと思われます
ERB側は静的変数(定数)でIF分岐、画像追加と一緒にERHの定数も変える仕様にすればスマートに動くはずです

736名無しさん:2018/09/10(月) 22:39:04 ID:UrHeD8b20
>>735
ありがとうございます!

737Emueraの人:2018/09/10(月) 23:49:21 ID:GlzCIpmw0
>>734
1.822正式版の時点では存在しませんが1.823beta003でSPRITECREATEDという名称で追加しました。
上記Emuera 1.823beta003
ttp://era.moe.hm/cgi/era/upload.php?id=0003892
を使ってみてください。
例えば、
IF SPRITECREATED(TOSTR((NO:LOCAL)))
 PRINT_IMG TOSTR(NO:LOCAL)
ENDIF

のようになります。

738名無しさん:2018/09/27(木) 12:25:39 ID:2S9frzmE0
>>633に似た提案ですが、式中関数にTRYCALLFORMのようなのは出来ないんでしょうか?
副作用が一番の問題だと思うので、実行結果があればすぐRETURNする形にすればどうかと
仮にこの関数の名前をTRYRETURNFORMFとすると、

@GET_SOMETHING(FOO, BAR)
#FUNCTION
#DIMS FOO
#DIM BAR
TRYRETURNFORMF GET_SOMETHING_%FOO%(BAR) ; 関数があったらここで関数の実行結果をRETURNする
RETURNF GET_SOMETHING_DEFAULT(BAR)

こんな感覚です

こんなのができると副作用はないがキャラクタとかの追加に対応しやすい式中関数ができそうなので
Emueraの製作原則に反しないなら、考慮してくださればありがとうございます

739Emueraの人:2018/10/08(月) 00:32:48 ID:5.4uyczY0
>>738
昔から要望されていて実装してませんでしたがそのうち対応しようと思います。
いつになるかわかりませんがお待ちください。


掲示板移転しました。
今後はera板+でお願いします。
【エミュレータ】Emueraスレ【+1】
ttps://jbbs.shitaraba.net/bbs/read.cgi/otaku/16783/1538925902/


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板