Entity vs. Spatial.addUserData, and other things

What is a good way to add core game logic to my game?



Data, i.e.: health, weapon, …

Should I use the Entitiy class from jme? or the addUserData feature from Spatial to Store my data?

Or should i rather subclass Spatial and put things into fields?



For things that need to be updated frequently, i.e.: AI, InputHandling, …

do I write controllers and add them to a Spatial or do i create my own updateable classes like InputHandler?

( could  I also give every input controlled spatial it's own InputHandler and update it in a controller )



O woe is me, do I know nothing about making games?

Personally, when talking about game entities I prefer to extend JME's Entity class.



I actually use my own Entity class but it's purpose is similar.



I don't recommend using Spatial. You will probably want to track your entities in your own lists and structures.



Creating your own updateable classes is right.  Sometimes you don't need to create them, but make use of the existing ones (like InputHandler). Controllers are there for cases where you prefer to attach certain logic to the involved spatials without worring about that in your core logic. I personally don't use them.



I hope this helps.

thx