Page 3 of 4
Re: Steam?
Posted: Sat May 13, 2017 9:27 am
by jjmafiae
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.
Re: Steam?
Posted: Sat May 13, 2017 10:18 am
by raidho36
You can do it either way.
Re: Steam?
Posted: Tue May 23, 2017 3:16 am
by BukkitmanMC
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?
Re: Steam?
Posted: Tue May 23, 2017 9:08 am
by zorg
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.
Re: Steam?
Posted: Wed May 24, 2017 2:45 am
by BukkitmanMC
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
Looks interesting. Is there an steam-free download somewhere?
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
Re: Steam?
Posted: Tue Nov 21, 2017 3:58 am
by HDPLocust
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
gif
Re: Steam?
Posted: Mon Nov 27, 2017 2:51 pm
by adnzzzzZ
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.
Re: Steam?
Posted: Mon Dec 04, 2017 9:26 pm
by drunken_munki
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.
Re: Steam?
Posted: Wed Dec 13, 2017 9:57 am
by drunken_munki
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.
Re: Steam?
Posted: Wed Dec 13, 2017 3:40 pm
by HDPLocust
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.