FIFE forums

Please login or register.

Login with username, password and session length
Advanced search  

News:

FIFE 0.4.0 has been released on 15th of January, 2017!

Pages: 1 [2]

Author Topic: Dialog syntax  (Read 10216 times)

phoku

  • Developer
  • Full Member
  • *
  • Posts: 102
    • View Profile
    • IZ dev blog
Re: Dialog syntax
« Reply #15 on: February 05, 2008, 09:38:08 am »

Hi Joshdan,

I agree that the dialogue system is a very game specific thing. But we could provide glue code as an extension so that
game scripters end up writing game specific code and not the usual glue/management code which.

In my opinion adding a layer which automates the script to dialog interaction could result in less code.
And less code is good.

My hope would be that a set of conditions/actions could be put together by the dialog designer, HasSeen(char,item)
as opposed to adhoc scripting decentralizing conditions in each scripted dialog.

I don't think that function registering is that much of a hassle, however this might get implemented.
On the other hand python documentation using epydoc might result in much higher quality documentation
of the available functionality.

--
Concerning the intercept based approach, I consider it intuitive in the sense, that it actually expresses rules
as assertions directly. I don't think that this approach does really fit the problem, I like it's different view on
expressing behaviour though.

--
Concerning the order of pre/post conditions - I don't really get your point, as pre-condtions should be without side-effects
and post-conditions i.e. results commutative in nature.

--
After all I guess we'll have to wait and learn the lessons by the first attempts made.

-phoku
Logged

November

  • Developer
  • Newbie
  • *
  • Posts: 36
    • View Profile
Re: Dialog syntax
« Reply #16 on: February 05, 2008, 10:19:51 am »

I have nearly finished writing an almost flexible draft of dialogue system, so we can learn lessons from my attempt hehe.
Unfortunately I'm getting some problems with the Pychan layout system :(
If I can't manage to find a solution until tonight I'll send you the actual code to see if you can spot the source of my difficulties.
Logged

Joshdan

  • Developer
  • Newbie
  • *
  • Posts: 46
    • View Profile
Re: Dialog syntax
« Reply #17 on: February 06, 2008, 12:33:29 am »

Regarding the ordering of pre- and post-conditions, I don't think that either is necessarily commutative.

Pre-conditions could be combined with either AND or OR.  E.g. you might have to have to pass a spot check _and_ a lore check (notice a marking on their clothing and know that it belongs to the order of Wadeva), or pass a spot check _or_ a lore check (know that furrimugs like chocolate or notice the chocolate on their fingers).

Post-conditions could be order-dependent as well (e.g. a big difference between getting the ring of energy absorb _then_ getting hit by lightning as opposed to vice-versa).

Bizarre situations like this complicate any approach, and just about any approach can handle them with effort. I just feel a script-driven approach is easier to manage for the game creators, as they aren't repeatedly passing control off to some extension that they didn't write and don't understand the intricacies of.  If a developer understands python, they can debug a dialog without learning a new mini-language or rigging methodology. 
Logged

phoku

  • Developer
  • Full Member
  • *
  • Posts: 102
    • View Profile
    • IZ dev blog
Re: Dialog syntax
« Reply #18 on: February 06, 2008, 08:11:50 am »

Ah yes you are right there ... basically i got carried away by my ideas, but pure python
is easier to understand and debug, while being flexible enough to handle the special cases
popping up everywhere.

-phoku
Logged

chewie

  • Developer
  • Full Member
  • *
  • Posts: 123
    • View Profile
    • zero-projekt.net
Re: Dialog syntax
« Reply #19 on: February 07, 2008, 12:07:36 pm »

I know, I'm just popping in a bit too late - but did you ever think about a python-sqlite based solution for dialogues?

November

  • Developer
  • Newbie
  • *
  • Posts: 36
    • View Profile
Re: Dialog syntax
« Reply #20 on: February 07, 2008, 01:41:42 pm »

The question that would then raise would be : if sqlite, why only for dialogs ?

But nevertheless, basically if you want to change the way the data is stored you just have to plug another loader in. Using sqlite won't change the dialog system itself, but just the loading part. Except if I missed something.

So, as writing a sqlite dialog loader shouldn't be very complicated, I'd say why not, as long as you feel that it would be useful to you (or to Zero projekt).
« Last Edit: February 07, 2008, 01:43:38 pm by November »
Logged

Sadr

  • Newbie
  • Posts: 34
    • View Profile
    • Radakan
Re: Dialog syntax
« Reply #21 on: February 12, 2008, 05:25:32 am »

I'm not a programmer myself (only basic undersatnding), so I'm not sure if this is really that relevant, but when I made the discussion for the techdemo, I came up with a kind of syntax taht would at least help myself keep track of some of the variables included, such as if A has already happened, XA-type dialogue will be answered with when reaching X12. Read the whole thing here.

After reading the stuff here, I realize that it doesn't take into account things such as alterations in emotions of the characters, but I think it's a decent representation of all conditions, text and results, albeit not in code but in my own odd syntax ^^
Logged
Pages: 1 [2]