Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

MTool Forum

  1. Home
  2. 错误回报
  3. Monmusu Quest! Paradox RPG 3.06

Monmusu Quest! Paradox RPG 3.06

Scheduled Pinned Locked Moved 错误回报
23 Posts 3 Posters 28 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Dnkk

    Does the error log give any hints what might be causing this? Or why specifically when I move to Job (and also Race) information views?

    鬼 Offline
    鬼 Offline
    鬼才琪露诺
    wrote on last edited by
    #7

    @Dnkk 32004b96-91aa-49e4-b327-ae79c972694b-图片.png 084c26c8-c3dd-40ec-a5c6-fb14953e431c-图片.png

    1 Reply Last reply
    • D Dnkk

      error_screen.PNG

      鬼 Offline
      鬼 Offline
      鬼才琪露诺
      wrote on last edited by
      #8

      @Dnkk The error stack contains information, but it's insufficient. I still don't know why.
      I need to recreate the scene to resolve this.

      Also, you can try deleting all mods in the MCenter tab.

      1 Reply Last reply
      • 鬼 Offline
        鬼 Offline
        鬼才琪露诺
        wrote on last edited by
        #9

        This game is quite popular, and I plan to wait for more similar error reports. In the meantime, you can switch to the stable channel for use.
        (The stable channel hasn't been updated in two months.)

        图片.png

        1 Reply Last reply
        • 鬼 Offline
          鬼 Offline
          鬼才琪露诺
          wrote on last edited by
          #10

          After the stable channel update, I started doing a lot of overhauling on MTool.
          This may cause some unknown issues.

          1 Reply Last reply
          • D Offline
            D Offline
            Dnkk
            wrote on last edited by Dnkk
            #11

            The crash would occur when going to this view
            info_view.PNG

            but now I can't reproduce this on the base version :/

            Initially to rule out any other issues, I've requested that MTool translate the game, the translation got loaded in and then I got the expected behavior of it crashing immediately once I go to either Job or Race views

            Now it does not... Only in the modified version which I understand is a lot more difficult to debug on someone else's machine :)

            So for the moment I'll do some more testing, try out the stable version, see what happens

            1 Reply Last reply
            • D Offline
              D Offline
              Dnkk
              wrote on last edited by
              #12

              You know what, actually the stable branch works

              And after I switch back to the latest - the crash returns

              Testing this might be outside of the scope of support for MTool as now it's additional changes to the game that are introduced, but I will provide a bit more information in the case you're interested

              The modification I mentioned is a translation made by ArzorX and the team using One-Click Patcher

              1 Reply Last reply
              • 鬼 Offline
                鬼 Offline
                鬼才琪露诺
                wrote on last edited by
                #13

                In testing it, in case it wasn't communicated accurately I actually scratched through all of the options on all of the screens and didn't see a problem.
                I'll think about it later.
                For now, i need to sleep.

                1 Reply Last reply
                • 鬼 Offline
                  鬼 Offline
                  鬼才琪露诺
                  wrote on last edited by
                  #14

                  I'm works over 19 hours today..

                  1 Reply Last reply
                  • D Offline
                    D Offline
                    Dnkk
                    wrote on last edited by
                    #15

                    Oh by all means 😉 19 hours is a bit much I think 😥

                    It is said that the actual effective hours per day in system development is from 4 to 6 of intense work

                    And the stable branch works, so that's great 👍

                    鬼 1 Reply Last reply
                    • D Dnkk

                      Oh by all means 😉 19 hours is a bit much I think 😥

                      It is said that the actual effective hours per day in system development is from 4 to 6 of intense work

                      And the stable branch works, so that's great 👍

                      鬼 Offline
                      鬼 Offline
                      鬼才琪露诺
                      wrote on last edited by
                      #16

                      @Dnkk 👼

                      1 Reply Last reply
                      • 鬼 Offline
                        鬼 Offline
                        鬼才琪露诺
                        wrote on last edited by
                        #17

                        图片.png
                        I don't have those things in game.

                        1 Reply Last reply
                        • D Offline
                          D Offline
                          Dnkk
                          wrote on last edited by
                          #18

                          Ok, so did some more testing

                          One thing that I'm very confused about is - I initially thought that even the base version of the game crashes, and I could have swore that it did, but after posting the initial report I can no longer reproduce that
                          So for the sake of sanity, let's assume I just did something wrong and the base 3.06 v does not crash under any circumstances

                          Now once you apply the ArzorX translation patch (and it does more then just translate the game) something changes that when you use the new version of MTool and load in a translation on top of it, it causes the crash, but the old version of MTool does not do that

                          And the particular script that crashes is this - or rather the block of script inside the file ...画面/153 - 転職編集.rb

                          #--------------------------------------------------------------------------

                          ● ジョブ説明の描画 #Drawing Job Description edited in translation to adjust description font size and text space

                          #--------------------------------------------------------------------------
                          def draw_job_desc(y, num)
                          lht = 24
                          desc_text = NWConst::JobChange::JOB_DESC_TEXT[@class_id]
                          desc = desc_text[num] if desc_text
                          return y + lht unless desc
                          lht -= (desc.size - 4) * 2 if desc.size > 4
                          lht = 16 if lht < 16
                          rect = Rect.new(4, y, contents.width - 4, lht * desc.size)
                          r = Rect.new(rect.x, rect.y, rect.width, lht)
                          desc.each_with_index do |text, _i|
                          draw_text_job_desc(r, text, lht)
                          r.y += lht
                          end
                          rect.y + rect.height
                          end

                          As far as I could understand it's the
                          desc.each_with_index do |text, _i|
                          draw_text_job_desc(r, text, lht)
                          r.y += lht
                          end
                          with the each_with_index do loop expecting to get only 2 arguments, but getting three when you go to the Jobs (Occupation) and Races (Species) view

                          Adding the crash text

                          *Error - v3.06.00 - 2025-11-08 17:37:32 (Saturday)
                          Exception : ArgumentError
                          wrong number of arguments (3 for 2)
                          trace:
                          ["( 画面/転職編集 ):923:in block in draw_job_desc'", "( 画面/転職編集 ):922:in each'", "( 画面/転職編集 ):922:in each_with_index'", "( 画面/転職編集 ):922:in draw_job_desc'", "( 画面/転職編集 ):871:in draw_status'", "( Plugins/JobRaceInfoPlus ):160:in draw_status'", "( 画面/転職編集 ):738:in refresh'", "( トリス情報表示関連 ver8 ):255:in now_tribe_refresh'", "( トリス情報表示関連 ver8 ):226:in call'", "( トリス情報表示関連 ver8 ):226:in refresh'", "( 改造/ステータス画面 ):154:in index='", "( Window_Selectable ):110:in select'", "( Window_Selectable ):233:in cursor_up'", "( Window_Selectable ):285:in process_cursor_move'", "( Window_Selectable ):275:in update'", "( ベース/Scene ):389:in each'", "( ベース/Scene ):389:in update_all_windows'", "( ベース/Module ):1956:in update_all_windows'", "( ベース/Scene ):353:in update_basic'", "( Scene_Base ):41:in update'", "( ベース/Module ):2643:in update'", "( ベース/Module ):1939:in update'", "( ベース/Scene ):2701:in update'", "( Scene_Base ):14:in main'", "( ベース/Module ):2458:in run'", "( ▼ メイン【WF-RGSS】Exit-EX 終了処理 ):118:in run'", "( ▼ メイン【WF-RGSS】Exit-EX 終了処理 ):127:in block in <main>'", ":1:in block in rgss_main'", ":1:in loop'", ":1:in rgss_main'", "( ▼ メイン【WF-RGSS】Exit-EX 終了処理 ):127:in <main>'", "ruby:in eval'"]

                          I will currently use the stable branch version of MTool, and hopefully this will help if anymore similar issues arise to at least have something to start from when debugging

                          If you need more information or help to test something - let me know

                          P.S.: what also is a bit messy - the initial crash screenshot specified a different error (bad value for size) but not sure currently why I got that error initially

                          1 Reply Last reply
                          • 鬼 Offline
                            鬼 Offline
                            鬼才琪露诺
                            wrote on last edited by
                            #19

                            Nothing much, this game has been causing a lot of problems...

                            1 Reply Last reply
                            • D Offline
                              D Offline
                              Dnkk
                              wrote on last edited by
                              #20

                              A bit more follow up

                              I've modified the script's loop so it's inside a try...catch... segment, so that even if an error occurs it does not close the game
                              Also added logging of what exact string is being put through the loop to see if it gives me any hints of what is happening and checked if those strings are different between different MTool versions

                              The modified script code snippet

                              #--------------------------------------------------------------------------
                               # ● ジョブ説明の描画 #Drawing Job Description edited in translation to adjust description font size and text space
                               #--------------------------------------------------------------------------
                               def draw_job_desc(y, num)
                                 lht = 24
                                 desc_text = NWConst::JobChange::JOB_DESC_TEXT[@class_id]
                                 desc = desc_text[num] if desc_text
                                 return y + lht unless desc
                                 lht -= (desc.size - 4) * 2 if desc.size > 4
                                 lht = 16 if lht < 16
                                 rect = Rect.new(4, y, contents.width - 4, lht * desc.size)
                                 r = Rect.new(rect.x, rect.y, rect.width, lht)
                                 file2 = File.open("debug_log.txt", "a")
                                 file2.write(desc) 
                                 file2.close unless file2.nil?
                                 begin
                                    desc.each_with_index do |text, _i|
                                      draw_text_job_desc(r, text, lht)
                                      r.y += lht
                                    end
                                 rescue Exception
                                    file = File.open("log_crash.txt", "a")
                                    file.write(desc) 
                                 ensure
                                    file.close unless file.nil?
                                 end
                                 rect.y + rect.height
                               end
                              

                              And the string that is processed when going into the Status -> Basic Information -> Job

                              ["A hero-in-training who has not received the blessing of the Goddess. Aims to be a true hero, wields a sword but without experience. Average stats, poor at magic. Has personal sword skills and minor divine protection.", "", "", "", ""]["Equip: Dagger,Sword,Rapier,Spear,Axe,Club,Scythe,Boomerang", " Armor,Helmet,Shield", "Skills: Dagger,Sword,Heroism", "Passive: None", ""]

                              What is interesting, that the string is the same in both MTool branch versions, but for whatever reason this string causes a crash on the latest branch, but not in the stable one

                              So at least I've managed to make the latest MTool version work by "ignoring" the error. The Job and Race windows are then mostly empty, but the game does not crash 😅

                              Will mess around with the code a bit more and see if there's a better option

                              1 Reply Last reply
                              • D Offline
                                D Offline
                                Dnkk
                                wrote on last edited by
                                #21

                                A quick follow up

                                Managed to fix the crashing completely, but have no idea why it happens in the first place

                                So the current fix is that you have to rename the method being called inside the code snippet I showed

                                This is the method that causes the issue -> draw_text_job_desc(r, text, lht)

                                And renaming it into anything else fixes the problem

                                #--------------------------------------------------------------------------
                                # ● ジョブ説明の描画 #Drawing Job Description edited in translation to adjust description font size and text space
                                #--------------------------------------------------------------------------
                                def draw_job_desc(y, num)
                                  lht = 24
                                  desc_text = NWConst::JobChange::JOB_DESC_TEXT[@class_id]
                                  desc = desc_text[num] if desc_text
                                  return y + lht unless desc
                                  lht -= (desc.size - 4) * 2 if desc.size > 4
                                  lht = 16 if lht < 16
                                  rect = Rect.new(4, y, contents.width - 4, lht * desc.size)
                                  r = Rect.new(rect.x, rect.y, rect.width, lht)
                                  desc.each_with_index do |text, _i|
                                    draw_text_job_desc2(r, text, lht)
                                    r.y += lht
                                  end
                                  rect.y + rect.height
                                end
                                
                                #--------------------------------------------------------------------------
                                # ● ジョブ説明用テキスト描画
                                #--------------------------------------------------------------------------
                                def draw_text_job_desc2(rect, text, lht)
                                  reset_font_settings
                                  text = convert_escape_characters(text)
                                  pos = { :x => rect.x, :y => rect.y, :new_x => rect.x, :height => lht }
                                  contents.font.size -= 6 #Sets font size to force word-wrapping and prevent a crash
                                  process_character(text.slice!(0, 1), text, pos) until text.empty?
                                end
                                

                                As far as I understand Ruby does not allow overloads of methods like in C# or VB (or some other languages as well) and if someone declares a method with the same name, that method then gets overwritten - so perhaps that's why the original name of draw_text_job_desc causes the issues with the new versions of MTool

                                Attaching the modified script file just in case - though it's really simple to modify it yourself -> 153 - 転職編集.rb

                                The path to this files inside the translation folder from ArzorX is ...\Translated Files\Scripts\画面\

                                鬼 1 Reply Last reply
                                • D Dnkk

                                  A quick follow up

                                  Managed to fix the crashing completely, but have no idea why it happens in the first place

                                  So the current fix is that you have to rename the method being called inside the code snippet I showed

                                  This is the method that causes the issue -> draw_text_job_desc(r, text, lht)

                                  And renaming it into anything else fixes the problem

                                  #--------------------------------------------------------------------------
                                  # ● ジョブ説明の描画 #Drawing Job Description edited in translation to adjust description font size and text space
                                  #--------------------------------------------------------------------------
                                  def draw_job_desc(y, num)
                                    lht = 24
                                    desc_text = NWConst::JobChange::JOB_DESC_TEXT[@class_id]
                                    desc = desc_text[num] if desc_text
                                    return y + lht unless desc
                                    lht -= (desc.size - 4) * 2 if desc.size > 4
                                    lht = 16 if lht < 16
                                    rect = Rect.new(4, y, contents.width - 4, lht * desc.size)
                                    r = Rect.new(rect.x, rect.y, rect.width, lht)
                                    desc.each_with_index do |text, _i|
                                      draw_text_job_desc2(r, text, lht)
                                      r.y += lht
                                    end
                                    rect.y + rect.height
                                  end
                                  
                                  #--------------------------------------------------------------------------
                                  # ● ジョブ説明用テキスト描画
                                  #--------------------------------------------------------------------------
                                  def draw_text_job_desc2(rect, text, lht)
                                    reset_font_settings
                                    text = convert_escape_characters(text)
                                    pos = { :x => rect.x, :y => rect.y, :new_x => rect.x, :height => lht }
                                    contents.font.size -= 6 #Sets font size to force word-wrapping and prevent a crash
                                    process_character(text.slice!(0, 1), text, pos) until text.empty?
                                  end
                                  

                                  As far as I understand Ruby does not allow overloads of methods like in C# or VB (or some other languages as well) and if someone declares a method with the same name, that method then gets overwritten - so perhaps that's why the original name of draw_text_job_desc causes the issues with the new versions of MTool

                                  Attaching the modified script file just in case - though it's really simple to modify it yourself -> 153 - 転職編集.rb

                                  The path to this files inside the translation folder from ArzorX is ...\Translated Files\Scripts\画面\

                                  鬼 Offline
                                  鬼 Offline
                                  鬼才琪露诺
                                  wrote on last edited by
                                  #22

                                  @Dnkk I'm defined this method with this sign: def draw_text_job_desc(rect, text)
                                  i'll make this functuon defined to float args define.
                                  with next update.

                                  1 Reply Last reply
                                  • D Offline
                                    D Offline
                                    Dnkk
                                    wrote on last edited by
                                    #23

                                    Glorious, just tested it and now it works without any modifications to the script 😉

                                    Seems with some additional research we fixed it 🤜

                                    1 Reply Last reply
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • Login

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular
                                    • Users
                                    • Groups