Fixed. Thanks for the correction at least you read it
EDIT: the bullet snipped I have to investigate, donât understand the messed markup.
EDIT: Fixed both now.
Just wanted to say: I am very glad you make this.
A year ago I wanted to learn about ES via websites and blogs - but everything was rubbish or not detailed enough. So I really hope to finally find some good material on that subject.
Iâm just not ready to start with ES right now, but I will in a while (maybe some 1 or 2 months or so).
I really enjoyed the blog. I only briefly heard about entity systems as I am new to jme, and thought they really could only applied for certain games. However I now see they can pretty much be implemented practically in any game. Only thing I still have to wrap my head around is the use of AbstractAppStates vs AbstractControllers as Ali_RS tries to explain.
control vs app state: control cares for one object only and is some kind of a ego perspective. app state in a ES environment is the similar but you donât care only for your own but for all objects, so it is kind a âweâ perspectiv.
maybe that helps
damn son, your blog be blowing up the internetâŠ
This website is under heavy load
Weâre sorry, too many people are accessing this website at the same time. Weâre working on this problem. Please try again later.
His original site or the new one?
Articles are being moved to the Zay-ES wiki⊠which is github. When github is down we are all sad pandas.
logdown problems github is fine. glad to move it there
A couple random things after skimming through itâŠ
-
itâs screaming for some screen shots.
-
for the ship, you can use a WatchedEntity and avoid the âset of oneâ thing youâve got going on.
âŠhmmm⊠I guess I havenât released a version with that in it yet so itâs only available when building from source. So maybe wait I guess if you are trying to be compatible with the downloadable release.
Also, the writing style is very conversational âI thisâ âyou thatâ which is good for a tutorial. But because itâs so personal with all of the âIâ it reads like a blog (which it should I think) and so maybe deserves to have you introduce yourself at the beginning. Maybe we make that a regular thing where other authors can also present their own case studies. It also may remove some of the pressure to be 100% âcorrectâ on all points.
The other thing I missed was a link at the bottom that took me to the next article.
Edit: and by introduction, I mean something like âMy name is **** and Iâm developing a *** and got turned onto ES because ***â kind of thing. Just a short intro and slight âsales pitchâ as to what originally got your excited about an ES.
Sounds like good idea. I will do some introduction my self this evening. Add links to prev next tutorial. I didnt know about that watched entity thing. May I ask you for a sample or a linkt to one, maybe a test or the like?
As well then the beginners section should be renamed to case studies.
Note: new releases are up that include WatchedEntity:
You grab a WatchedEntity in a similar way to an entity set except that you give it a specific entity ID.
WatchedEntity ship = ed.watchEntity(shipId, Position.class, Model.class);
You can then use it exactly like any other Entity, calling set/get on it. In this case, if the entity doesnât have a component then get() will return null.
Where it differs from a regular entity is that you can call applyChanges() on it to get the latest component values.
http://jmonkeyengine-contributions.github.io/zay-es/javadoc/zay-es/com/simsilica/es/WatchedEntity.html
Itâs precisely designed to cover cases like the player avatar, player status, player ship, etc⊠the thing you will know you have exactly one of and need to deal with that one thing directly and using an EntitySet of one item is clumsy.
Cool blog! Itâs clean, organized and clear! Keep up the good work, I like your tutorials!
And BTW, hereâs a video that also explains this âcomponent based architetureâ very well. Just for inspiration xD
I added an about section for my person and a âPreviousâ | âNextâ Link for easier navigation to the Zay ES wiki: Case Studies.
EDIT: Feel free to change it or correct it. Or just tell me what I should change/correct/move/remove
Maybe I will add some screen shots and model pictures to the zay es wiki for my case study.
Update: I released my 5th article. As well I added it (slightly changed) to the Zay ES wiki:
Stay tuned, I planed a 6th article to show how I deal with effects like explosions.
As well I thought of kind a âdesignâ pattern catalogue for ES, I would like to have that on the Zay ES wiki in a more technical way. I will come back to that pattern idea as soon as I have something to show up.
Good as the other parts. However there is a set of typos in the last snippet, you stream attackingParts with entity name âdamagingPartâ but then try to reference it in he block as âattackPartâ.
Also do you have any plans down the road to look at zay-es-net? It would be cool to see a tutorial on that aswell sometime .
Many thanks for your feedback. yeah I renamed the damageing to attack while writing this last one and now I ended up in inconsistent naming howevere it should work.
I will overhaul it this evening and try to eleminate the typosâŠ
and yep Zay ES Net case study would be cool. maybe I could do a two player mode with two ships.
but to be honest I have no clue how to design that with Zay Es Net. So currently I do not have plans to do but who knowsâŠ
fixed and tested. should now work at least the collision state.
I asked because I am looking at zay-es-net for my game, I actually just got back to looking at it today. If I get any example going ill be sure to share it.
Unfortunately, the best example is still MonkeyTrap.
âŠthough with JME 3.1 this is even simpler as there is a service model. I think I wrote about this in another thread.