バグ:技能カードを装備した状態でレベルアップすると、その技能の使用回数上限がレベルアップ前のものとなっている。

Issue #492 resolved
mmng created an issue

バグ報告です。 表題の通り、技能カードを装備した状態でレベルアップすると、その技能カードの使用回数上限がレベルアップ前のものとなってしまいます。 経験点付与によるレベルアップと、拠点での”レベルを調整する”によるレベル上昇、どちらでも発生を確認しました。 なお、確認したバージョンは1.1です。

まず、レベル1の冒険者に居合い斬りを装備させます。 その後、経験点クーポンを付与するか、”レベルを調整する”を使用してその冒険者をレベル2にします。 本来ならこの冒険者は居合い斬りを3回使えるところを、2回使用しただけで精神力が枯渇してしまいます。 これはレベル1の冒険者の居合い斬りの使用回数上限と同じ回数です。

例えばレベル1からレベル10への上昇や、 レベル3からレベル7への上昇でも同様の状態が確認されます。

一度技能カードを荷物袋に戻し、再度装備すればこの状態は解除され、 本来の技能カードの使用回数に戻ります。 他にも、一度宿から出るか、アプリケーションを終了させても治るようです。

Comments (6)

  1. tachi gigas

    恐れ入ります。

    レベルが変更された後に最大技能使用数が更新する処理が走ってないようです。

    試しのバグ対応版 pull request #1798 として、自分の私家版で対応しました。実行ファイルをCardWirthPy.exeと同じフォルダに入れて動作の確認をお願いします。なお、設定ファイルは共有されないのでご注意下さい。

  2. mmng reporter

    対応感謝いたします。

    しかし頂いた実行ファイルで確認しようとした所、 宿を選択したところでフリーズしてしまいます。

    Exception in thread Thread-2:
    Traceback (most recent call last):
      File "threading.pyo", line 801, in __bootstrap_inner
      File "cw\scenariodb.pyo", line 40, in run
      File "cw\util.pyo", line 3765, in acquire
      File "cw\scenariodb.pyo", line 223, in __init__
    OperationalError: no such column: imgpath
    
    Version : 2.0 Alpha 3 / 2017-03-17 23:22:24
    DateTime: 2017-03-17 23:45:15
    Traceback (most recent call last):
      File "cw\thread.pyo", line 718, in run
      File "cw\thread.pyo", line 748, in _run
      File "cw\thread.pyo", line 757, in main_loop
      File "cw\eventhandler.pyo", line 113, in run
      File "cw\eventhandler.pyo", line 622, in executing_event
      File "cw\thread.pyo", line 1848, in set_yado
      File "cw\sprite\statusbar.pyo", line 112, in change
      File "cw\sprite\statusbar.pyo", line 184, in _create_yadomoney
      File "cw\sprite\statusbar.pyo", line 483, in __init__
    KeyError: 'desc_base_money'
    
    Exception in thread Thread-2:
    Traceback (most recent call last):
      File "threading.pyo", line 801, in __bootstrap_inner
      File "cw\scenariodb.pyo", line 40, in run
      File "cw\util.pyo", line 3765, in acquire
      File "cw\scenariodb.pyo", line 201, in __init__
    OperationalError: table scenarioimage_temp already exists
    
    Version : 2.0 Alpha 3 / 2017-03-17 23:22:24
    DateTime: 2017-03-17 23:45:28
    Traceback (most recent call last):
      File "cw\thread.pyo", line 718, in run
      File "cw\thread.pyo", line 748, in _run
      File "cw\thread.pyo", line 757, in main_loop
      File "cw\eventhandler.pyo", line 113, in run
      File "cw\eventhandler.pyo", line 622, in executing_event
      File "cw\thread.pyo", line 1848, in set_yado
      File "cw\sprite\statusbar.pyo", line 112, in change
      File "cw\sprite\statusbar.pyo", line 184, in _create_yadomoney
      File "cw\sprite\statusbar.pyo", line 483, in __init__
    KeyError: 'desc_base_money'
    
    Exception in thread Thread-2:
    Traceback (most recent call last):
      File "threading.pyo", line 801, in __bootstrap_inner
      File "cw\scenariodb.pyo", line 40, in run
      File "cw\util.pyo", line 3765, in acquire
      File "cw\scenariodb.pyo", line 201, in __init__
    OperationalError: table scenarioimage_temp already exists
    
    Version : 2.0 Alpha 3 / 2017-03-17 23:22:24
    DateTime: 2017-03-17 23:51:06
    Traceback (most recent call last):
      File "cw\thread.pyo", line 718, in run
      File "cw\thread.pyo", line 748, in _run
      File "cw\thread.pyo", line 757, in main_loop
      File "cw\eventhandler.pyo", line 113, in run
      File "cw\eventhandler.pyo", line 622, in executing_event
      File "cw\thread.pyo", line 1848, in set_yado
      File "cw\sprite\statusbar.pyo", line 112, in change
      File "cw\sprite\statusbar.pyo", line 184, in _create_yadomoney
      File "cw\sprite\statusbar.pyo", line 483, in __init__
    KeyError: 'desc_base_money'
    
    Exception in thread Thread-2:
    Traceback (most recent call last):
      File "threading.pyo", line 801, in __bootstrap_inner
      File "cw\scenariodb.pyo", line 40, in run
      File "cw\util.pyo", line 3765, in acquire
      File "cw\scenariodb.pyo", line 201, in __init__
    OperationalError: table scenarioimage_temp already exists
    
    Version : 2.0 Alpha 3 / 2017-03-17 23:22:24
    DateTime: 2017-03-17 23:53:58
    Traceback (most recent call last):
      File "cw\thread.pyo", line 718, in run
      File "cw\thread.pyo", line 748, in _run
      File "cw\thread.pyo", line 757, in main_loop
      File "cw\eventhandler.pyo", line 113, in run
      File "cw\eventhandler.pyo", line 622, in executing_event
      File "cw\thread.pyo", line 1848, in set_yado
      File "cw\sprite\statusbar.pyo", line 112, in change
      File "cw\sprite\statusbar.pyo", line 184, in _create_yadomoney
      File "cw\sprite\statusbar.pyo", line 483, in __init__
    KeyError: 'desc_base_money'
    
  3. mmng reporter

    テスト版にて、同様の手順でもバグが発生しないことを確認しました。 迅速な対応ありがとうございました。

  4. tachi gigas

    し、失礼しました…。最新のCardWirthPyにのみ対応するexeファイルである事を書き忘れておりました。次から気をつけます。

    それと並びまして、バグ報告する際はk4nagatsuki様が仰っている通り現時点で最新の(ダウンロードで一番上にある)CardWirthPyでお試しいただきますようお願いします。既に直っている可能性があるかも知れないので。

  5. Log in to comment