Hi! smd...@student.cs.york.ac.uk wrote: >>> -Standardise the Quest, Trigger and Reward properties so that they can >>> access constraints, property values and message each other. >>> >>> >> Can you explain this point in more detail? >> > > This was intended to satisfy the last 3 suggestions on > https://b2cs.delcorp.org/dev/wiki/QuestEditorNG. Specifically > > "Sequence constraints ¶ > One problem with current sequences is they don't allow contraining of > parameters, so, for example, if a state allows to rotate a robot arm a > certain amount of degrees by clicking some key, it's not easy to make the > rotation stop at a certain angle. Constrains could be implemented in > sequences themselves, as an additional object, or not allowed at this > level of abstraction. > > Using values from properties inside rewards/triggers ¶ > It's needed to use real time values inside rewards or triggers, to be able > to specify varying parameters (like the position for an object). This is > not possible right now. It could be implemented in the quest property > class, by specifying synced parameters, but needs some change also in the > quest manager for this to work, as now the quest parameters are specified > at quest creation, and not updated afterwards. >
This is done for rewards through cel expressions (which can now be placed on parameters). It would be very useful to have this same feature into triggers. > Forwarding of parameters from triggers to rewards ¶ > Rewards often need to use parameters coming from trigger, like message > parameters, property values... also possibly with some arithmetic > operation. This is now wip in cel trunk, but the arithmetic operations are > not considered, and also the concept is somewhat problematic when trigger > logical operations are being used. " > This last one is already done now in a bit obscure way. So, what's missing is the first one (constraints) and using values from properties into triggers and possibly sequences too. So, the task is more about implementing the expressions on triggers and maybe sequences (unless you're thinking of some other way), plus finding out what to do with constraints (one such option is simply add the constraints to sequences). Also, there is another important thing which doesn't seem covered. At the moment you can declare quest variables, but right now they don't translate to property class properties, they can only be set on the quest initialization. It would be extremely important that these quest properties are made available to quest property class, as it would allow development of first class components by using quests (supporting in-out messages and properties). So, i request: - Make quest variables be accessible as pc properties (ie, through pc property interface). >> - Somehow standarize start-finish protocol. Note i'm not very sure how >> this can be approached, but many actions take some time to end, for >> quests this usually involves some state waiting for an action to end, >> and for behaviour trees its just the basic building block (actions >> taking some time together with serial or parallel containers). In cel we >> have some cases like sequences ending or starting, or the steering pc's >> which report finishing when arriving to some destination (or can fail). >> So, this is currently done in many ways, in the case of sequences its >> done with explicit callbacks, steering works with an action-message pair >> to handle start and end, and probably we have some example of >> message-message too. >> > > Ok, so if I understand correctly you would like sequences removed and > instead implemented through one pc with two actions with one trigger for > detecting the end of the sequence that will be represented by the (to be > implemented) standard finish protocol. Have I got the point? The details have to be fleshed out better, but yes. I imagine an independent sequence subsystem in cel, and pc's to control sequences through actions, and sending the finish message. Greetings. Pablo ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Cel-main mailing list Cel-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cel-main