adonthell-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Adonthell-devel] New dialogue engine committed


From: Kai Sterker
Subject: [Adonthell-devel] New dialogue engine committed
Date: Fri, 12 Apr 2002 17:42:50 +0200

Okay, finally the dialogue engine and compiler are far enough to 
run/compile the first two dialogues without problems. That's no 
guarantee that all dialogues will work, but it's a good start at least.

If you want to test the new stuff, get the recent CVS code. Next,
extract the attached file inside the <wastesedge>/scripts/dialogues
directory. And finally, copy the src/tools/dlgedit/dialogue.py module 
to either /usr/local/share/adonthell/modules or
<wastesedge>/scripts/modules. As it is part of the game engine, it
should go into the first directory, but it'll work in latter as well.

Once you've recompiled adonthell, you can start a fresh game, talk with
Talan outside the gate and after he let you in. All other dialogues will
crash as they need to be recompiled first.


Recompiling the dialogues:

Mainly for this purpose, I've added a few command line switches to
dlgedit. To recompile some dialogues, you'd do a 'dlgedit -j wastesedge
-c <list of dialogues>'. The -j parameter sets a default project for
dialogues that are not assigned to a project yet and -c tells dlgedit to
compile the <list of dialogues> without starting the gui. If you omit
-c, it would load the specified dialogues instead.

The bad news is, that most dialogues need an update before they'll work.
First of all, adonthell.py is no longer imported, so that would have to
be added before compiling them. And second, the old dialogue compiler
tried to sort 'if'-'elif'-'else' statements, while the new one doesn't.
Instead it looks at the position of the nodes to determine the order of
such statements. Therefore some nodes of some dialogues need to be moved
to compile properly.

None of this should be particularly hard to do.


Translating the dialogues:

If you want to test the new i18n feature, you might want to translate
part of a dialogue. Extract the strings with the pygettext.py script,
translate the them and create the binary message catalogue with the
msgfmt tool. Then rename it to wastesedge.mo and copy it to
/usr/local/share/locale/<your language>/LC_MESSAGES/. For later, we
should be able to determine the directory where the catalogue goes at
runtime. Right now it's compiled in.

Before running adonthell, set on of the environment variables to your
desired language: LC_MESSAGES, LANG or LANGUAGE (e.g. 'export LANG=de')
and Adonthell will use that language instead of English.


Okay, that's it! If there are any questions or problems, please let me
know. Otherwise enjoy!

Kai

Attachment: dialogues.tgz
Description: GNU Unix tar archive


reply via email to

[Prev in Thread] Current Thread [Next in Thread]