Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion
DemonLlama
Beginner


Joined: 03 Nov 2002
Posts: 27
Location: USA

PostPosted: Wed Aug 22, 2007 7:44 pm   

Converting inherited MUD files to PKG files
 
So, I can't make this work for the life of me. In zMUD, I had a generic file with all the appropriate highlight settings, and any triggers/aliases/etc that all my characters would need, and then I had "primary" settings files based on a per-class basis.

How the devil do I duplicate that in CMUD?

An edit to elaborate, the generic file was, of course, the "Inherited" file.
_________________
~DemonLlama~

Last edited by DemonLlama on Wed Aug 22, 2007 8:02 pm; edited 1 time in total
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Wed Aug 22, 2007 8:01 pm   
 
The first thing to do would be to create a new package that had all the aliases, triggers etc that all characters use.

Depending on the number of characters you had, you might even do the same thing for you classes (i.e. having a package specific to each class).

Then when you create a session for a character (each session icon should represent one character) you edit the the settings the session. When you click on the package files tab you'll see a list of the layout and packages associated with that session.

The filename is the main package for the session (and what would contain everything specifically for that character.) The packages list contains all the packages you want this character to have access to. By clicking on the green '+' sign you can browse for the other packages you want. This where you will add the Base package (the one that all characters use), and if you separated them out, the class specific packages as well.

You'll even notice that you have two there by default (English Directions, and English Keypad). These provide the default implementation of directions and short-cut keys.

I hope that helps.
_________________
Asati di tempari!
Reply with quote
DemonLlama
Beginner


Joined: 03 Nov 2002
Posts: 27
Location: USA

PostPosted: Wed Aug 22, 2007 8:05 pm   
 
It's something I've tried before (I thought), and it doesn't seem to work. I've done that, and seen both Packages listed on the Settings screen, but... nothing in the packages from the Packages List winds up as available. Yes, I've done the "idiot user" check and made sure they're all enabled, so... I'm sure it's something equally "idiot user", but it's not that ;)

I'll try again, from scratch.

EDIT: Actually, attempting it this way, which is slightly different from how I'd tried, I wind up with a separate tab for each package I include in the Package List. Now I know I must be doing something wrong; the boards would be on fire if this were a common issue :P Am I supposed to go into the Settings area and use the "Copy to..." functionality or something?
_________________
~DemonLlama~
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Wed Aug 22, 2007 8:59 pm   
 
Right. I'll assume you've managed to set this up:

One package with shared stuff.
A number of packages with class-specific stuff.

And you want to have each character have the shared package and one class specific package. So do what Tech suggests and create a new session icon for each character. Rclick on the icons in the sessions dialogue and click Edit Session. On the Package Files tab, press the green plus and find the shared file and the class file for that character. Add them both to the list with English Keypad and English Directions.

Once that's done, open one of the sessions offline. If you open the Package Editor by clicking the Settings button, you should see more than one tab listed - in fact, you should see one with the name of the class package, one with the name of the shared package, and one with the same name as the session icon.

If this is right, stuff should Just Work. If your setup is the same as the above but things aren't working, describe exactly what isn't working. You've either made a mistake setting up your package files, or you've made a mistake writing a script (or you've found a bug). Make sure you describe both in detail and mention what you've got, what you want it to do, and what it's actually doing. Screenshots can help - upload them to imageshack.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
DemonLlama
Beginner


Joined: 03 Nov 2002
Posts: 27
Location: USA

PostPosted: Wed Aug 22, 2007 9:17 pm   
 
Here is a screenshot of the Edit Session screen:
http://www.mediafire.com/?9fyyyunyyxx

Here is a screenshot of the Session window after I open it offline. Note a tab for each .pkg file, and "practice" is an alias from the CarrionFields file, while "dt" is an alias from the Warrior file:
http://www.mediafire.com/?bgj5sjyhzge

Here is a screenshot of the Package Editor, showing all the tabs visible as appropriate, and to the right, they are all checked as "available" to the session:
http://www.mediafire.com/?0idd5cbyntg

Note: Even though it says ".mud", it's actually successfully converted to a .pkg file, and that's what I'm using. The compatibility checker only reported some warnings with some highlights I had set up, and those are handled.
_________________
~DemonLlama~
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Wed Aug 22, 2007 9:27 pm   
 
That site is horrible :(

And yes, that explains perfectly what your problem is. Your packages carrionfields.pkg and warrior.mud.pkg contain windows, and those windows contain all the aliases and things that you're after. Settings inside windows aren't visible outside that window, so the MyCharacterOnCF window (where you're entering the aliases) can't see the aliases in the Carrionfields and Warrior.mud windows.

To fix this, go onto the CarrionFields and Warrior.mud tabs in the Package Editor and click on the window objects in each. Then click the "Convert to Module" button, and make sure the module is set to Global rather than External or Local (you might also take the opportunity to rename the Warrior.mud module "warrior"). Once you've done this, the extra two windows you have in your second screenshot should vanish, and your aliases should start working.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Wed Aug 22, 2007 9:33 pm   
 
[Edit] Ninja'd by Fang and he got it right. I should have picked up on the window thing. I essentially describe the same thing, but Windows are always local by default. Once they are converted to modules, what I said would apply.

Ok... You didn't show us the configuration for the other packages but what you've shown looks right, so I'm guessing your other packages CarrionFields and Warrior are both set to be local.

Set them to be Global for now (External will probably work too. I let you research the differences but it's essentially scope specifiers for the package.)

You change this by going to the properties tab for the module in each package selecting the appropriate radio button. Incidentally you can rename the module here as well.

Check that and let us know.

P.S. I believe CMUD keeps the exact name when you convert a .MUD file so if you want to change it (so it displays differently in the Package List under Edit session) go Edit -> Package Properties in the Settings editor.
_________________
Asati di tempari!
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Wed Aug 22, 2007 9:49 pm   
 
Tech wrote:
Windows are always local

There's a minor difference - settings inside windows can't be seen from anything that isn't inside that window. Even an alias in a global or local module in the same package couldn't access a variable inside a window. Local modules are visible inside the same package (except to settings inside an external module) but not to other packages.

But yes, from the perspective of another package, windows and local modules work the same - that is, they don't.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
DemonLlama
Beginner


Joined: 03 Nov 2002
Posts: 27
Location: USA

PostPosted: Wed Aug 22, 2007 10:03 pm   
 
Seems to have done the trick; thanks to you both. I plan on re-writing these things anyway, but... I wanted to dive right in and get the feel for the differences from zMUD first. Well, the first difference is my frustration, but I suppose that shall pass :P
_________________
~DemonLlama~
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Wed Aug 22, 2007 10:23 pm   
 
It takes time to get used to the changes in CMUD (not least that CMUD is now more strict about syntax than zMUD was - mostly things that worked in zMUD but probably shouldn't have), but if you have any questions, don't hesitate to ask.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net