00:00
00:00
BoMToons
So many times, it happens too fast...you trade your passion for glory. Don't lose your grip on the dreams of the past, you must fight just to keep them alive.

Age 43, Male

Software Engineer

Somewhere in Nevada...

Somewhere in California..

Joined on 11/29/05

Level:
40
Exp Points:
17,124 / 17,760
Exp Rank:
1,272
Vote Power:
8.10 votes
Audio Scouts
1
Art Scouts
10+
Rank:
Police Officer
Global Rank:
14,724
Blams:
242
Saves:
415
B/P Bonus:
10%
Whistle:
Gold
Trophies:
42
Medals:
1,390
Supporter:
8y 5m 21d
Gear:
17

Successful communication

Posted by BoMToons - April 16th, 2015


[200th blog post!]
One of the big challenges I've been dreading for the launch of Super Chibi Knight is the communication between AS3 Adobe AIR and Steamworks.

Steamworks lets you do Steam Achievements, Trading Cards, Cloud Saving, chat from within your game etc. Unfortunately, there is no official "wrapper" made by Valve for interaction with Adobe AIR. That means I had to turn to a 3rd party solution which is always a bit scary. Fortunately, I found FRESteamworks, an open source library of classes that uses an "Adobe Native Extension" to communicate with the c++ code that runs Steamworks.

There were quite a few things undocumented (or at least hard to find), especially for people using FlashDevelop, in the FRESteamworks example code, but with a bit of help from @mike from Newgrounds, who went through a lot of the same hurdles making Swivel, I was able to sort everything out and get the Steamworks API working with native AS3 code! Part of the confusion is that all the Steamworks documentation is under NDA, so people who try to make these extensions can only tell part of the story publicly. Valve really needs to address this issue IMO.

Here's a pic of the very 1st Steam Achievement ever earned in Super Chibi Knight (it's just a test, but it still worked right!):

After the native extension was up and running, implementing cloud saves literally took about 10 minutes to implement, so now Super Chibi Knight save states will persist across multiple computers! Woo! Trading Card art is being made by @jouste and it looks as awesome as you'd expect :-D

In other news, progress continues on Super Chibi Knight, though some day I want to write an article about the weird kind of creative block I have about the game ending... I want it to live up to my expectations and be AWESOME, but now that it's here, I'm finding it hard to START the final art and code because then I'm COMMITTED and all the awesome possibilities collapse into the finite choices I'll make which might ruin it all. But it HAS to be done, this game has dragged on for too long... must finish...

Here are some sneak peeks:

 

 

 

[INSERT CATCHY QUESTION TO STIMULATE CONVERSATION]

 


Comments

So how about that programming stuff? Lots of functions and whatnot.

Yep. Variables and such.

HRRNG. So pumped for this. I can't believe it's taken so long.

I know! Should be done soon... ish. :-)

[Snazzy answer to catchy question, full of conversational stimulation]

[passive aggressive insult]

[INSERT PERSUASIVE REQUEST FOR YOUR GAME GIVEN TO ME FOR FREE]
thx

[polite but straightforward denial of request]
[reminder that it's really quite affordable]

I forgot to ask, whatever happened to the pico fighting game?

shelved for now while I finish Super Chibi Knight.

Papers Please guy made a steamworks wrapper for haxe, but I guess that's easier to do since it's only for native cpp.

There are so many gotchas with the implementation that are not clearly documented (mostly on the Steam side) I don't think I ever would have figured it out without help.

so, are you still giving out free keys anytime soon?

Probably!

Sometimes the best way to end a game is to leave the door open to a sequel

I'm planning to!

Been following this one for a LONG while and really excited about the release! Looks terrific!

-Tim

:-D