Are AppStates still supported?

Everything I can find about AppStates use ‘LegacyApplication’, if it isn’t still supported how could I go about having differents states? I need a loading state, a menu state, and a a game state.

If its not deprecated don’t worry about it. At least i don’t. AppStates are pretty core jME they are not going anywhere soon.

AppStates exist independently of LegacyApplication and they are part of the reason we had to create that.

Used to be that it was a concrete Application class that was passed to app states but that prevented us from doing some future refactoring. So for 3.1, we changed Application to an interface and renamed Application to LegacyApplication. Someday it will get replaced.

AppStates will outlive all of it.

Oh, and do yourself a favor and extend BaseAppState for your app states (It’s new in 3.1… thus also proving app states longevity). It makes it easier to write properly cleaning up app states.


Since there was a split of the sdk and the engine development, will engine team be responsible for the wiki? I am coming late to this so I am clueless as to what caused the split and who is doing what.

This little tidbit sure caught me off guard. Wondering what else I am missing.

Everybody is responsible for everything. It is open source. You, me and anyone else that is willing to contribute is responsible. Our badges and titles just iterate our strong points and maybe devotion to the cause, but you are just as important as me if you contribute at all :slight_smile:

And just as a footnote, even filing bug reports properly on github helps. You dont even need to know how to fix it. But it brings it to the table. Every little helps.

1 Like

Shouldn’t the person who made these changes to the engine also update the wiki to reflect those changes?

Or if they have where is it at?


All 6096 commits on master.

The wiki is still the best source of information (in combination with this forum):

If you follow the wiki, everything will be alright :slight_smile:. In the worst case, you can ask it on the forum.

1 Like

Already forked the engine, did the wiki today but being new to github I am still figuring things out there. Thanks for links, helped clear up some things. Starting to see who’s doing what. 3 different projects.

I don’t want to step on toes but shouldn’t there be a 3.1beta wiki residing on github that has removed all references to the SDK and is basically just the javadocs with tutorials? One that is not linked to the website and these forums.

If we update the github wiki now with changes the engine has then it will not match which links to 3.0.10 release and matches the current wiki.

Or am I missing something?

Actually the 3.0 SDK has a copy of the wiki info in its manual (F1) from when the wiki was in the “3.0 state”. The online wiki would contain all updated info about the current (development) version which would then be consolidated into the new SDK release again. At least that was the plan back in the day, these days everything is basically just messed up and broken so no need to look after any logic anymore.

The SDK is still supported. We just release them separately now. I was trying not to answer here since none of this has anything to do with this thread… but alas… here we are.

So while I’m here, other random things: :slight_smile:
Chili Recipe:

Place the ground beef in a large pot and throw in the garlic. Cook over medium heat until browned. Drain off the excess fat, and then pour in the tomato sauce, chili powder, cumin, oregano, salt and cayenne. …
After an hour, place the masa harina in a small bowl. Add 1/2 cup water and stir together with a fork.


`Twas brillig, and the slithy toves
Did gyre and gimble in the wabe:
All mimsy were the borogoves,
And the mome raths outgrabe.

“Beware the Jabberwock, my son!
The jaws that bite, the claws that catch!
Beware the Jubjub bird, and shun
The frumious Bandersnatch!”

He took his vorpal sword in hand:
Long time the manxome foe he sought –
So rested he by the Tumtum tree,
And stood awhile in thought.

And, as in uffish thought he stood,
The Jabberwock, with eyes of flame,
Came whiffling through the tulgey wood,
And burbled as it came!

One, two! One, two! And through and through
The vorpal blade went snicker-snack!
He left it dead, and with its head
He went galumphing back.

"And, has thou slain the Jabberwock?
Come to my arms, my beamish boy!
O frabjous day! Callooh! Callay!’
He chortled in his joy.

`Twas brillig, and the slithy toves
Did gyre and gimble in the wabe;
All mimsy were the borogoves,
And the mome raths outgrabe.


Actually I felt it had everything to do with it. BaseAppState was a change made (by you?) to the engine and seems to be an important change but one that is not documented. The SDK which is linked to the 3.1beta doesn’t use it. I haven’t seen it mentioned in the tutorials up to this point, maybe its in one I haven’t gotten to. I just thought something this important deserved some recognition somewhere more obvious than a post in a forum.

Maybe it’'s good idea to created a sticky post on the forum about the SDK split.

What should be documented? There is still AbstractAppState… there is now also BaseAppState.

Every time we do something new should we go and add a bunch of documentation to say that we aren’t removing everything else?!?

And none of this has anything to do with the SDK. It still works. It still uses app states appropriately and so on. None of which has nothing to do with LegacyApplication.

To quote you.

That’s a pretty definitive statement which says to me its important to know the differences between the two.

If BaseAppState is the best way forward then it should be used in the wiki or at least mentioned is my point. If its not then you are correct, who cares.

One makes you do most things yourself the other does nice things for you.

Plenty of javadoc on BaseAppState:

You can use either. One is nicer. My statement did not imply otherwise.

Frankly, if I have to find all places something is mentioned and update it every time I add something convenient then I just won’t bother. Fortunately, it’s never been an issue because for the important things others will document them on behalf of the people doing the coding work… instead of just bitching about it.

It’s probably a good idea. I’m not sure it will matter too much though. Given the number of times I have to post a link to the “how to post code blocks” sticky every week… I think people just skip right over those.

This week has been good, though. I think I only had to post it once. :slight_smile:


The difference between the two should be obvious to any (java) programmer…

I appreciate the links, I am not new to Java, but that’s not the purpose of my reply. I was concerned that I only found out about this by randomly reading this forum when it should of been in the wiki and tutorial.

Why not at least put a note in AbstractAppState directing users to read BaseAppState?

I look forward to your patches.