From: "David Seikel" > > I don't really want to spend much more time on python scripting, I just > want it to work so that at least the night club script will do what I need > it to do. The IPO stuff was really just to play with as examples, but they > needed to be working, so I spent more time than I wanted. I will likely > concentrate on my maps and weather code. > I would love to get the python stuff working perfectly here, I didn't > really want to spend the time rewriting the IPO scripts. My python > knowledge is non existant though, and it looked a much easier job to > rewrite for text files than fix shelf. > The shelf fix is likely something top do with the default database module being borked (I think bsddb?) and should be a all or nothing fix I am thinking (I can't remember and I am too lazy/busy at the moment to search through the mail archives here for when I sent messages about this issue - maybe there is some more info in there?) I remember having to change the make file for the plugin by hand because the header used (I used --with-includes...) and the library (make file was grabbing python 1.5 module path) were not matching up properly (again two python versions on Redhat - python 1.5 was python (*required) and python 2.1 was python2...) I do know that I haven't had any problems for a while with current versions of the server. If you don't fix shelf other python enabled features on the maps like the IPO will break on you as well however. If shelf is broken I would suspect this other stuff may cause you problems too, perhaps unpredictably. did you try running configure with the --with-includes=I/usr/include/python2.1 (or python2.2 or whatever your path is?) If there is a problem with the plugin and SUSE in particular it would be good to be able to post a fix for people. > > all python scripts should break properly when the plugin isn't > > installed/running, > > How do they get called if the plugin isn't working? > Exactly the right question and the answer as well -always ask that when making a new feature with a plugin. You shouldn't have anything in your maps that is *required* functionality (like exits or parts of a quest) that will break if the plugin isn't loaded. One way to do this is to lock out any Python necessary quests when the plugin is't working (use the plugin to open the doors rather than a normal exit or somesuch so people can't even get in). The other way is not to use the plugin for important stuff, but as enhancements (so your bank clerk will just say 'I'm on a break come back later' if the plugin isn't installed.) This works because python overides the trigger events so you can put in actions that will work different when ther is no python... This 'bustability' is why somehting like a universal bank system shouldn't be done in Python if you want to incorporate it into the game and tie it into other stuff. You can of course have banks and mail and stuff as perks for python enabled servers however. It really is too bad since there is so much you can can do with the plugin, but it is a good policy not to rely on it for the official crossfire packages (although for a specific crossfire server you can go nuts and do what you like :)) _______________________________________________ crossfire-devel mailing list crossfire-devel at lists.real-time.com https://mailman.real-time.com/mailman/listinfo/crossfire-devel