Re: Behaviour Tree PropClass

Christian Van Brussel <[email protected]>
Newsgroups gmane.comp.graphics.crystalspace.devel
Organization UCL - TELE
Message-ID <1340808892.2137.585.camel@scylla>
Not sure what is the problem here, it may be due to the fact that you
declare two different SCF interface in "behaviourtree.csplugin",
although they reference the same implementation object
(celPfBehaviourTree).

Something that I didn't notice before is that you are actually
implementing the BT propclass within the "plugins/tools/behaviourtree"
directory, while it would have been much cleaner to put it with the
other propclasses in "plugins/propclass".

Similarly, the header file should be put in "include/proclass", and all
other BT code in "plugins/tools/behaviourtree" should remain as they
were prior your propclass addition. Your propclass would simply be a
wrapper over the tools implemented in "plugins/tools/behaviourtree", no
need to change anything on that side.

Doing so, your BT propclass would also have the exact same file
structure than every other propclass, and it would be much easier to
find out what's problematic here.


On Wed, 2012-06-27 at 15:25 +0100, Sam Devlin wrote:
> Thank you the link helped a little, but I am still having
> difficulties. My code now compiles, but raises errors such as:
> 
> 
> crystalspace.pluginmgr.loadplugin:
>   could not load plugin ‘cel.pcfactory.logic.behaviourtree’
> 
> 
> crystalspace.cel.physicallayer:
>   CEL 'cel.pcfactory.logic.behaviourtree' property class factory
> plugin
>   missing!
> 
> 
> When I try to create an entity with a behaviour tree as a prop class.
> I have added to behaviourtree.csplugin
> 
> 
>       <!-- @@@ to be deprecated -->
>       <class>
>         <name>cel.pcfactory.behaviourtree</name>
>         <implementation>celPfBehaviourTree</implementation>
>         <description>CEL Behaviour Tree Class Factory</description>
>         <requires>
>           <class>cel.physicallayer</class>
>         </requires>
>       </class>
> 
> 
>       <class>
>         <name>cel.pcfactory.logic.behaviourtree</name>
>         <implementation>celPfBehaviourTree</implementation>
>         <description>CEL Behaviour Tree Class Factory</description>
>         <requires>
>           <class>cel.physicallayer</class>
>         </requires>
>       </class>
> 
> 
> and:
> - CEL_DECLARE_FACTORY(BehaviourTree) to behaviourtree.h
> - CEL_IMPLEMENT_FACTORY_ALT (BehaviourTree, "pclogic.behaviourtree",
> "pcbehaviourtree")
> 
> 
> with the name of the behaviour tree class now celPcBehaviourTree.
> 
> 
> And yet celPlLayer::RegisterPropertyClassFactory is never being called
> on pcbehaviourtree, causing the errors above when the entity is
> constructed. 
> 
> 
> Any suggestions to what I have missed?
> 
> 
> Kind regards,
> Sam.
> 
> On Wed, Jun 27, 2012 at 11:31 AM, Christian Van Brussel
> <[email protected]> wrote:
>         > What are the .csplugin files that are alongside the jam
>         files, are they
>         > just for documentary?
>         
>         
>         It is used by the SCF in order to register the plugins
>         available. See
>         here:
>         http://www.crystalspace3d.org/docs/online/manual/SCF-Meta-Info.html
>         
>         
>         
>         ------------------------------------------------------------------------------
>         Live Security Virtual Conference
>         Exclusive live event will cover all the ways today's security
>         and
>         threat landscape has changed and how IT managers can respond.
>         Discussions
>         will include endpoint security, mobile security and the latest
>         in malware
>         threats.
>         http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
>         _______________________________________________
>         Crystal-develop mailing list
>         [email protected]
>         https://lists.sourceforge.net/lists/listinfo/crystal-develop
>         
> 
> 
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and 
> threat landscape has changed and how IT managers can respond. Discussions 
> will include endpoint security, mobile security and the latest in malware 
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Crystal-develop mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/crystal-develop



------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Crystal-develop mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/crystal-develop
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.