Welcome to the Builder Academy

Question Issue with Loading Specific Mob in Luminarimud & Zone Status Explanation

More
20 Feb 2025 08:21 #10543 by cry1004
Hello,
I am currently localizing Luminarimud into Korean. As far as I know, Luminarimud is derived from Tbamud, and its source code is continuously updated on its GitHub repository. While working on the localization, I have kept my translated source updated with these changes.
After completing most of the Korean localization, including input/output messages, room descriptions, and object/mob names, I began testing the game. However, I repeatedly encountered segmentation faults.
I suspected that these crashes were due to missing wld, mob, and obj files that the source code expected to exist but did not. To handle this, I modified the code to  continue; when attempting to load non-existent world files. Despite this change, segmentation faults persisted. To investigate further, I configured the game to load only basic zon, wld, obj and mob files and was able to run the server.
Now, here is my question:
  • When loading the entire world, the administrator zone (1207 room) correctly loads the test mob (1208 scarecrow).
  • However, when I manually add 12.zon, 12.wld, 12.mob, and 12.obj to the index file, the 1208 mob does not load.
  • The zone configuration appears identical between the full world load and my selective load.
  • Using zedit in room 1207, I confirmed that the command list includes loading the 1208 mob, so I expected it to appear. However, it does not spawn.
My Questions:
  1. Why is the 1208 mob not loading when I manually add 12.zon
    and related files, even though it loads fine when the full world is loaded?
  2. In the zlist
    command, what do the zone states Incomp, Ready, and N-Reva mean?
  3. What steps are required to ensure a zone reaches the "Ready" state?
I appreciate any insights you can provide. Thank you!

world\zon\index
0.zon
1.zon
2.zon
3.zon
12.zon
13.zon
14.zon
30.zon
86.zon
106.zon
186.zon
187.zon
200.zon
234.zon
$

world\wld\index
0.wld
1.wld
2.wld
3.wld
12.wld
13.wld
14.wld
30.wld
86.wld
106.wld
186.wld
187.wld
200.wld
234.wld
$

world\mob\index
0.mob
12.mob
30.mob
234.mob
$

world\obj\index
0.obj
1.obj
3.obj
12.obj
30.obj
$

Please Log in or Create an account to join the conversation.

More
Yesterday 14:48 #10544 by cry1004
I freshly cloned the latest version of Git from GitHub and modified the code so that only the username input could be in Korean. After testing, everything worked correctly. It seems that I had made some mistakes while localizing the existing code into Korean.

Now, I have to go through the localization process again, which is quite a daunting task, but I’ll have to start over step by step. Previously, I modified a large portion of the source code at once and tested it, making it difficult to pinpoint where errors occurred.

Starting today, I plan to make small changes one at a time to identify and fix any mistakes.

Please Log in or Create an account to join the conversation.

More
Yesterday 18:12 - Yesterday 18:26 #10545 by ironfist
I don't think the Incomp, Ready, and N-Reva is in stock tbamud (although my copy might be out of date).  I can only guess that maybe if it is not "ready" that could affect what actually loads in the mud so that people don't end up with development items.

I have had issues long in the past when editing zones manually that certain editors add ^M 's or a hidden character at the end of certain lines that needed to be backspaced over.  Usually though it would give an error message in the syslog (though it didn't outright state the real problem).

Sounds like a good plan to try a bit at a time to see what fails and check your git diff on the files if they are in source control.  You can also run the mud by typing gdb bin/circle lib/core ... then type run from the root directory (assuming the file structure is the same on Luminari and you are on linux).  When it crashes your syslog will be right there on the screen with the stack dump

Edit:  also, I'm guessing Korean letters use 2 or more bytes compared to ascii letters, so they will use more memory.  I don't know how circle/tba has changed over the years to handle utf8 and things like that as far as sizing, etc.
Last edit: Yesterday 18:26 by ironfist. Reason: add more info

Please Log in or Create an account to join the conversation.

More
Yesterday 21:59 #10546 by thomas
When testing - is the 1208 mob actually _read_ ? I mean, if you "medit 1208" - does it exist?

Please Log in or Create an account to join the conversation.

Time to create page: 0.291 seconds