Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
 parse description bug
Yesterday, 10:08 pm
By Remcon
Couple bugs
Dec 12, 2017, 5:42 pm
By Remcon
Bug in disarm( )
Nov 12, 2017, 6:54 pm
By GatewaySysop
Bug in will_fall( )
Oct 23, 2017, 1:35 am
By GatewaySysop
Bug in do_zap( ), do_brandish( )
Oct 18, 2017, 1:52 pm
By GatewaySysop
LOP 1.45
Author: Remcon
Submitted by: Remcon
LOP Heroes Edition
Author: Vladaar
Submitted by: Vladaar
Heroes sound extras
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.3
Author: Vladaar
Submitted by: Vladaar
Memwatch
Author: Johan Lindh
Submitted by: Vladaar
Users Online
CommonCrawl, Yahoo!, Yandex, DotBot, Bing, Google

Members: 0
Guests: 8
Stats
Files
Topics
Posts
Members
Newest Member
477
3,706
19,240
608
LAntorcha
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » Codebases » LoP Codebase » LOP 1.31 bugs?
Forum Rules | Mark all | Recent Posts

LOP 1.31 bugs?
< Newer Topic :: Older Topic >

Pages:<< prev 1 next >>
Post is unread #1 Oct 2, 2008, 2:12 am
Go to the top of the page
Go to the bottom of the page

Igabod
Fledgling
GroupMembers
Posts40
JoinedSep 25, 2008

just downloaded LOP 1.31 and tried to start it up. i'm using cygwin and just booting it via the exe file. i got the following messages.

$ ../LOP 4444
Thu Oct  2  4:04:46AM 2008 :: Booting Database
.~`~.~`~.~`~.~`~.~`~.~`~.~`~.~`~.~`~.~`~.~`~[  Boot  Log  ]~`~.~`~.~`~.~`~.~`~.~
`~.~`~.~`~.~`~.~`~.~`~.
Thu Oct  2  4:04:46AM 2008 :: Creating transfer data
Thu Oct  2  4:04:46AM 2008 :: Loading transfer data
Thu Oct  2  4:04:46AM 2008 :: load_transfer: couldn't open system/transfer.dat f
or reading. Using Defaults.
system/transfer.dat: No such file or directory
Thu Oct  2  4:04:46AM 2008 :: Loading fish name data
Thu Oct  2  4:04:46AM 2008 :: Loading channels...
Thu Oct  2  4:04:46AM 2008 :: Initializing libdl support...
Thu Oct  2  4:04:46AM 2008 :: Loading Calendar...
Thu Oct  2  4:04:46AM 2008 :: load_calendarinfo: couldn't open system/calendarin
fo.dat for reading. Using Defaults.
system/calendarinfo.dat: No such file or directory
Thu Oct  2  4:04:46AM 2008 :: Loading helps...
Thu Oct  2  4:04:46AM 2008 :: [*****] BUG: load_helps: Can't open system/help.da
t
system/help.dat: No such file or directory
Thu Oct  2  4:04:46AM 2008 :: Loading news...
Thu Oct  2  4:04:46AM 2008 :: Loading HighScores...
Thu Oct  2  4:04:46AM 2008 :: Loading Hints...
Thu Oct  2  4:04:46AM 2008 :: Loading mud wide resets...
Thu Oct  2  4:04:46AM 2008 :: Loading bugs, typos, and ideas...
Thu Oct  2  4:04:46AM 2008 :: Loading banks...
Thu Oct  2  4:04:46AM 2008 :: Loading commands...
Thu Oct  2  4:04:46AM 2008 :: Loading spec_funs...
Thu Oct  2  4:04:46AM 2008 :: [*****] BUG: load_specfuns: can't read system/spec
funs.dat, exiting.
system/specfuns.dat: No such file or directory

don't know if this is because i am trying to boot it using the exe file or what but this is what i got.
       
Post is unread #2 Oct 2, 2008, 3:14 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005


$ ../LOP 4444

Here is the problem :)

In this codebase you have to run it from the lop folder so it should just be
./LOP 4444
       
Post is unread #3 Oct 2, 2008, 1:07 pm
Go to the top of the page
Go to the bottom of the page

Quixadhal
Conjurer
GroupMembers
Posts398
JoinedMar 8, 2005

This is actually a pretty common flaw in almost ALL the Dikurivatives out there.

In Ye Olden Days, somebody assumed you'd want to start the driver from the world directory. That's probably because before OLC, you had to add rooms by doing things like "vi tinyworld.wld", and once done, you'd probably want to run the driver to see if you screwed up.

So, paths ended up being written like "../player" and "../etc". Very bad practice. If you're not using absolute paths, you probably should refer to all files from a common top level, and make sure you're AT that top level before you go very far in the boot process.

I'd probably suggest writing a bit of code to use stat() to see if the first file you touch is present, and if not, try doing a chdir("..";) and try again. If it still fails, abort and cry at the user saying you can't find whatever that file is.

In my case, I've been too lazy to check for a file, but I do this:
  if (chdir(dir) < 0) {
    log_fatal("Cannot change directory to %s", dir);
    proper_exit(MUD_HALT);
  }
  log_boot("Using %s as data directory.", dir);


dir is set to either a constant (default is "../lib";), or a command line argument.

So, I'm guilty too... but at least I only refer to parent directories ONCE, and never again anywhere in the code. The proper way is to use stat() to see if some known file exists in the right place (IE: "wld/tinyworld.wld" for me) and then try to chdir() if it isn't.

You can work around it by having your boot script put you in the right place, but then you're unhappy if you try to run the game in gdb by hand. :)
       
Post is unread #4 Oct 2, 2008, 1:09 pm
Go to the top of the page
Go to the bottom of the page

David Haley
Sorcerer
GroupMembers
Posts903
JoinedJan 29, 2007

quixadhal said:

The proper way is to use stat() to see if some known file exists in the right place (IE: "wld/tinyworld.wld" for me) and then try to chdir() if it isn't.

Actually, I kind of disagree with this. The environment should be set up correctly when you start the program, or at the very, very beginning of the program by reading a config file. From then on, I don't think anybody should be playing change-dir guessing games based on whether or not a file exists.
       
Post is unread #5 Oct 2, 2008, 1:22 pm
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

But an easy fix for this would be to move the LOP executable up a level. If it says 'blah blah blah .dlls are missing' and you're using cygwin (this happened to me) you can find the dlls in cygwin's bin file, and under usr/X11R6/bin, just copy/paste them to the main LOP folder, with the executable.
       
Post is unread #6 Oct 2, 2008, 10:22 pm
Go to the top of the page
Go to the bottom of the page

Igabod
Fledgling
GroupMembers
Posts40
JoinedSep 25, 2008

well remcon, i've checked it out and it's very nice. i'm actually thinking about doing some major building of areas for this and maybe in the future i'll convince a more skilled coder than myself to open a mud using this source with me. i'll continue to look for any bugs and will report them here if i find any. good work.
       
Post is unread #7 Oct 3, 2008, 3:28 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

Glad you like it and thanks can always use help finding bugs etc... :)
       
Post is unread #8 Oct 3, 2008, 10:06 pm
Go to the top of the page
Go to the bottom of the page

Igabod
Fledgling
GroupMembers
Posts40
JoinedSep 25, 2008

i read in one of the readme's somewhere in your release that putting stock smaug areas in should work, but i tried 15 different areas and none of them worked. i don't really know much about how area files work but i noticed a huge difference between the structure of stock canyon.are as well as others, and your darkhaven.are. did that readme mean i could put the areas in but with a little bit of work? or are they supposed to just slip right in and work fine?
       
Post is unread #9 Oct 4, 2008, 5:58 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,866
JoinedJul 26, 2005

Thanks for pointing that out, I need to update the readme.1st :)

Stock smaug areas won't just fit in because of alot of differences between the area formats. I have thought about making a snippet for people to download seperate that will allow them to load smaug areas etc... just haven't gotten around to doing it yet :)
       
Post is unread #10 Oct 4, 2008, 2:33 pm
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
GroupMembers
Posts153
JoinedMar 25, 2008

That would be an interesting snippet, I'd like to see it
       
Pages:<< prev 1 next >>