For the first time, I can say I am ready to publish a game on Steam. Yay ! It's bug free, polished, and all. However with that realization came a lot of questions related to preparing the game for Steam itself. It seems to require quite the technical expertise, but I can't find any tutorial, and most topics on the forum are very old. I'll split my questions in several paragraphs and if you can answer any of them I'd be IMMENSELY grateful.
Sorry for the truckload of questions but this is a really puzzling moment for me, and my programer's experience has not prepared me to it. I don't want to stumble so close to the finish line.
First of all I need to point out I've been using Construct 2 (release 262) for this project.
1) Implementing Steam achievements functionality
I'd like to offer Steam achievements to my players, but all the addons I've found are quite old and I don't know if they're up to date :
I suppose I'll go the "Official" greenworks route if someone can assure me it still works ? (it's one year old)
I also do not understand what these "supported versions" mean. Is it that when you Export to NW.Js, the current version of the program you've installed is included in the export ? So far I've been working with an old NW.js I've installed a while ago : "v0.20.0 for Construct 2".
If a want to use the Greenworks Addon, I shall download v0.30.4 here (https://www.scirra.com/nwjs) and everything will be good ? Or do I need to do something else ?
2) Going Construct 3
Simple question : would it be easier to port my game on Construct 3 before releasing on Steam ? Is the support more up to date and would it guarantee my game works better than with Construct 2 ?
3) Save File Format
As of now, I save all the data I need in an XML File located in a folder I create at first launch located here : UserFolder\GameName\Save
I load it at launch with Ajax and rewrite it with the new save data when needed with NW.Js.
So far this method has worked well BUT it is extremely unprotected. Basically, anyone can alter the data with a simple notepad (unlocking any item, any level, ...).
Is Steam ok with such a save system ? Should I rework it, and if so what other system should I use ?
This seems especially problematic with my Achievement trackers that could be easily manipulated thus prompting Steam achievements with little to no "playing" at all.
4) Save File Location
Like I said, my save folder is located here : UserFolder\GameName\Save
Is it a good place fitting Steam standards ?
I think most of my Steam games save in two folders :
- Program Files (x86)\Steam\steamapps\common
- Documents\My Games
Should I locate my save file in one of these places ? I don't know if there's an "etiquette" to respect.
5) Testing everything works
Will I be given the opportunity to test how my game works on Steam without actually making it public ? I suppose my implementation of achievements, for example, won't work the first time I program it, but will I be able to test it and have some feedback ?
I think it sums up everything I'm concerned about on this topic so far. Again, thanks a LOT to anyone who can give me any kind of insight on this topic <3 <3