## Steam?

General discussion about LÖVE, Lua, game development, puns, and unicorns.
jjmafiae
Party member
Posts: 1333
Joined: Tue Jul 24, 2012 8:22 am
Location: Denmark
Contact:

### Re: Steam?

slime wrote:
Fri May 12, 2017 10:15 pm
You don't need to modify LÖVE's source to use Steamworks - you can require() a dll with Lua bindings or use LuaJIT's FFI.
Ah okay wasn't aware of this solution. I might remember wrong, but I think windmill games modified Löve for their game.
My Itch.io Games (Not up to date)
My Website

raidho36
Party member
Posts: 1519
Joined: Mon Jun 17, 2013 12:00 pm

### Re: Steam?

You can do it either way.

BukkitmanMC
Prole
Posts: 9
Joined: Sat Apr 29, 2017 4:06 am

### Re: Steam?

Stifu wrote:
Sun May 07, 2017 7:03 am
BukkitmanMC wrote:
Sun May 07, 2017 3:54 am
Wasn't Move or Die made with LOVE?
Yes, but you just digged up a 5-year old thread.
Sorry? I am actually confused a bit... what exactly do you mean?

zorg
Party member
Posts: 1968
Joined: Thu Dec 13, 2012 2:55 pm
Location: Absurdistan, Hungary
Contact:

### Re: Steam?

He meant that the last post in this thread was made on Saturday, the 15th of September, 2012, before you somehow found it (probably via google) and replied without checking the last post's date. This is usually frowned upon.
Me and my stuff True Neutral Aspirant. Why, yes, i do indeed enjoy sarcastically correcting others when they make the most blatant of spelling mistakes. No bullying or trolling the innocent tho.

BukkitmanMC
Prole
Posts: 9
Joined: Sat Apr 29, 2017 4:06 am

### Re: Steam?

Thanks to this game, I was able to find a Love2d game that uses the Steamworks API, so you will be able to use something like what this person did for the game!
francismoy wrote:
Tue May 23, 2017 7:51 pm
ivan wrote:
Tue May 23, 2017 3:06 am
Congratulations on the Steam release!
I think having online support is by far the most exciting feature.
The graphics look OK, but I'm not 100% sold on the animations.
Since the graphics style looks hand-drawn, I would like to see more personality in the animations.
I'm talking about over the top keyframe animations, like in the old Tom & Jerry cartoons.
So yea, the graphics aren't bad just too static IMO.
Good luck!
Hi! Thanks!

And thanks for the feedback! Yes, animations could use more polishing, we're aware of that and we won't deny it. For a small team like ours (4 people), it's a matter sometimes to do painful trade-offs. There are 16 characters in the game, and each character has around 10 animations (and like other 10 poses), all of them hand-made. Also, the artist had no previous experience animating, so she basically learned over the process. As you can imagine, by the end of the development she was much better than she was at the beginning, so we made lots of iterations. However, if we wanted to ship the game at a reasonable time frame, at some point we needed to stop. After testing in several game events and with other professionals, we realized that the deep gameplay and the funny situations made up for the shortage of more polished animations.
BukkitmanMC wrote:
Tue May 23, 2017 3:21 am
Nice game! I am also working on a game, and I am planning on getting it on steam! I just have one question... does the game use Steamworks? If you don't know what Steamworks is, it is pretty much the steam API, for Trophies, and Stuff... it is for my game, and also someone is asking about it...
Yes, we use the Steamworks API! We built a new module inside Löve, so that we could call the functions like

Code: Select all

love.steam.unlockAchievement(achievementID)
. Good luck with your game, and show it once you have something playable!
MasterLee wrote:
Tue May 23, 2017 3:48 pm
Thanks! Not for now, sorry We were considering uploading a demo, and maybe we will once the game is out. Anyway, if you have any specific question about the gameplay, game modes, etc, just ask me

HDPLocust
Prole
Posts: 32
Joined: Thu Feb 19, 2015 10:56 pm
Location: CENTER OF THE RED LANDS
Contact:

### Re: Steam?

Wait one-two weeks, i worked on dll(so)-library for any lua app with full steamworks api, callbacks, APICalls etc. It can be easily attached, like

Code: Select all

steam = require'steam'
gif
Last edited by HDPLocust on Wed Dec 13, 2017 3:50 pm, edited 3 times in total.
Мой английский не очень хорош, заранее прошу простить. Любви каждому.
If you see it, you may will sheet bricks :3

Party member
Posts: 297
Joined: Sun Dec 26, 2010 11:04 pm
Location: Porto Alegre, Brazil

### Re: Steam?

I'm interested in your solution, HDPLocust, since the one I'm using right now (the one by CapsAdmin) doesn't implement callbacks and API calls properly and I can't figure this out on my own, so certain things like Leaderboards seem not possible to implement. I managed to get Achievements and Steam Cloud working though even without callbacks, so at least that seems easy.

drunken_munki
Citizen
Posts: 86
Joined: Tue Mar 29, 2011 11:05 pm

### Re: Steam?

I'd love access to something like that, I'm not very good at cpp and the steam documentation and source code is giving me a headache.
Last edited by drunken_munki on Wed Dec 13, 2017 9:57 am, edited 1 time in total.

drunken_munki
Citizen
Posts: 86
Joined: Tue Mar 29, 2011 11:05 pm

### Re: Steam?

Ok I have abandoned several (I think 3) different libraries as none of them come with any doc, or even a simple readme how to set up their code which a novice like me just couldn't get something going.

Then I hit the mother-load. After more searching I found this gentleman's work:

https://github.com/SeStudio/steamworks-lua-integration

Where he uses the 'ffibuild' tool by CapsAdmin to create the ffi c api wrapper to the c++ dll, and adds a few things and notes in his readme that makes sense.

This thing loaded up easy and I got to work -- here is the catch... steamworks API is pretty bulky but after a while I managed to understand what is going on.

Bottom line is with the ffi route, sometimes you gotta marshal the data around so it plays nice with the cdata. Also in particular because most of the api functions are expecting pointers that they use to return data to you. So I've made myself learn some ffi stuff now and making progress after several hours.

Currently I can get the api to check in with steam, pull and upload stats and achievement progress.

Most other functions are very similar to access via the wrapper, however steamworks uses a lot of callbacks.

What I gotta do now is find out how to bind the ffi to a c++ callback so it triggers a lua function. It's some really backwards ass shit but there you are.
Last edited by drunken_munki on Thu Dec 14, 2017 2:40 am, edited 1 time in total.

HDPLocust
Prole
Posts: 32
Joined: Thu Feb 19, 2015 10:56 pm
Location: CENTER OF THE RED LANDS
Contact:

### Re: Steam?

drunken_munki wrote:
Wed Dec 13, 2017 9:57 am
What I gotta do now is find out how to bind the ffi to a c++ callback so it triggers a lua function. It's some really backwards ass shit but there you are.
We can't do this with ffi, i was spend two weeks for finding method of implementation.
It needs to C++-object for linking with STEAM_CALLBACK/APICall, but ffi provides only C-interface (tcc, compiled into memory), not C++:

So, here my library (in development) for this, but it may be full of bugs, i can't test all of this.
Мой английский не очень хорош, заранее прошу простить. Любви каждому.
If you see it, you may will sheet bricks :3

### Who is online

Users browsing this forum: No registered users and 7 guests