Monthly GameSalad Meetup Thursday September 3 2015 at 7pm CST (01:00 GMT)
BlackCloakGS
Member, PRO Posts: 2,250
Topic: GameSalad Network Behaviors, Amazon API Gateway, Amazon Lambda, and Amazon DynamoDB.
Come learn about GameSalad and meet other GameSalad creators. Chat with some of the developers behind GameSalad, including GameSalad's own Steve Jakab (a.k.a stevej), Alan Uthoff (a.k.a. BlackCloakGS), Tan Tran (a.k.a. adent42)
Description:
If you can't join us in person, join us online
Edit: Updated topic.
Comments
Looking forward to it!
My GameSalad Academy Courses! ◦ Check out my quality templates! ◦ Add me on Skype: braydon_sfx
Nice to hear and see you guys once a month. It confirms that fact that we have real people looking after us and not a faceless entity.
Faceless? They have personalized forum avatars!
Fortuna Infortuna Forti Una
@BlackCloakGS
Here is a Topic request:
I would love to get the low down on Loops, Constrains, Timers and Rules
How do they impact logic sequence?
Which is easier on the processor, loops, constrains or 0sTimers?
Why to 0sTimers only execute every other game cycle.
Why are Loops twice as fast as 0sTimers.
Would be nice to get a little insight as to what GS does at runtime.
For Next month:
Importance of x/y offsets for tiled images.
Importance of a Depth-sorting function of actors per layer.
Oops, did it again.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
Absolutely. Like I said in the thread asking what we'd like to learn about, this was definitely the thing I'd find most valuable. There's a lot of optimising that can be done once we know exactly what's faster than what, and why.
Another thing along similar lines I'd love to know - common belief is that using tables is more efficient than using attributes (ignoring ease of use). What's believed is that each code cycle every attribute is checked, so putting this information in a table instead is more efficient. But tables are just, essentially, Lua's arrays. It seems reasonable to believe that tables are only checked if a table check is performed, but is this not also true of attributes? It doesn't seem to make much sense that attributes are in reality less efficient at runtime. Then you also have to consider if there's any difference between the time it takes to run a change attribute and the time it takes to run a change table value, and if checking an attribute is faster than checking a tableCellValue(x,x,x). If checking a table is slower at that point, even very slightly, does any gain get offset? Some clarification on this issue would be helpful.
Would love some firm answers on this kind of thing.
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
Just to clarify: tables are not lua arrays. They are implemented as c++ classes.
Based on our schedules we won't be able to throw the requested talk together (all the native devs are busy with fixing particularly tough bugs).
For now, unless the schedule forces me to be less ambitious, I'll be giving a talk on network behaviors.
Depending on how much spare time I find it's either going to be "Using GameSalad network behaviors with Node.js" or "Using GameSalad network behaviors with Node and Parse". I'll know sometime tomorrow which one it will be.
@adent42 Sounds great! This will definitely be an appreciated talk!
@stevej Interesting! That just makes me even keener to know the answers to my general questions, though
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
@Armelline Also for attributes, I'm not 100% but I believe using attributes should not slow things down. They're set up on a notification system so only when the attributes change do we evaluate expressions connected to them (and of course the first time the action/behavior is run). So it shouldn't buy you anything over putting them in tables (though I would argue that putting the data in tables would lead to better organization).
Thanks for the update! This is what I'd assumed - tables are better for keeping things tidy, but not necessary. I favour attributes for some things and tables for others, but have never been all that enthused by the suggestion that everything should be stuck in tables. Looking forward to when you guys get time to sit down and confirm all these things and walk us through it! @Hopscotch mentioned a few and I mentioned others here and in that "what you want to learn" thread, but I'm sure there's a lot more we can come up with too!
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
Interesting....
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
Advantage attributes have over tables: when an attribute is changed, rules that use that attribute are notified. When a table cell changes, rules that use any cell in the table are notified, whether they care about the particular cell that changed or not.
Advantage tables have over attributes: they're the only way of sending data from one actor to another.
These aren't the only advantages, but they're the big ones.
Alright people, since I just finished the demo project for this presentation, tonights topic will be:
GameSalad Network Behaviors, Amazon API Gateway, Amazon Lambda, and Amazon DynamoDB.
Thank you for the presentation @adent42!
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
Sorry I wasn't able to be present this month. Can't wait to see the recording!
My GameSalad Academy Courses! ◦ Check out my quality templates! ◦ Add me on Skype: braydon_sfx
A little over my head (I've never learned any Javascript!) but very interesting to see what's possible!
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
TL;DR version since i didn't go into a lot of detail:
It's possible to use the 3 amazon services in the title (Amazon API Gateway, Lambda, and DynamoDB). To get basic network connected game functionality without provisioning any servers.
The example was a demo where users could click to move a box and the game state would be updated as a table entry and sent to the server. The app would the wait for an updated stated from another user.
I also did a REALLY quick intro of https://github.com/gamesalad/gstable-js which is an incomplete javascript version of the gstable-php. It's a node.js module that allows you to parse GameSalad Table JSON data into something a bit easier to use when you write your server logic.
Video to follow. I'll probably turn it into a very short learn.gamesalad.com module as well since there are some details I gloss over in the meetup presentation that would be useful for anyone wanting to go this route for doing game/app server stuff.
STL;DR version: Servers? Where we're going, we don't need servers.
@adent42 that is fantastic stuff. I look forward to watching the video of the meet up and checking out the learn.gamesalad.com module ... Excellent work.
Free Mini Games and Demo Templates
+1 to "would love to watch this video."
Here's the video for you guys, sorry for the delay!
Thank you! Looking forward to watching this one!
My GameSalad Academy Courses! ◦ Check out my quality templates! ◦ Add me on Skype: braydon_sfx
>
Fantastic! Thank you ...
Free Mini Games and Demo Templates
Must see tv.
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS