FallingSandSurvival
FallingSandSurvival copied to clipboard
Open Source?
This looks amazing! Are you planning on publishing the code?
I came to ask the same. I think their plans is to publish the game on steam, unfortunately.
Hey guys, Basically, the deal is that I think it's not "ready" to be open source yet. The main thing preventing it from being ready is that it is completely untested on any other system than mine. There's also a few pieces of code that were kind of hacked in just to get things working, and I'd like to fix them before open source.
My plan as of right now is to fix these things in the code I have now, get it working on at least some other machines, go open source, and continue from there. I'm not looking for perfection before I open source this, but I want the code I have now to be good so it might actually be useful. (Side note: keep in mind the game is more of a tech demo than a "game" right now; making it more of a "game" will come after open source)
I'm also currently doing a pass for commenting/documenting the more convoluted algorithms so anyone can actually tell what's going on. After open source, I'd like to make a few GitHub pages explaining some of these algorithms since I think people could find them interesting.
The end goal is to release on Steam, but that's a long way off and it's more about figuring out how it works than for profit.
At some point I need to set up a timeline or something so I can communicate this better but hopefully this explains my thoughts.
I'd be glad to try to get it working on ARM linux!
Any progress so far?
Yeah there's been a bunch of progress. The main thing I'm working on now is configuring all of the libraries I'm using to work decently with GitHub, and making it easier for someone to clone the repo and get it running. The main complication is that a couple of the libraries I'm using don't work well with open source, so you will end up having to download them yourself and put the files in the right places (I might end up writing a script that automates this partially?).
I've decided I'm going to wait until after open source to start refactoring things again since I think this is more important. The initial push to GitHub will likely also only work with a very specific build setup but this will improve soon as I start setting up the build to be more flexible and start testing on more systems.
Also I realized my post didn't really clear up the timeline so: It's looking like the first public push should be out within a week or so.
That would be great! I can help with beta testing, if you'd like
Any updates?
Sorry, I've been busy with classes this week so it'll still be a couple days. I've pretty much got all of the major stuff out of the way though so there's only a couple small things left for me to do:
- [x] Pick a license for the code (edit: I think I'll probably do BSD 3-Clause)
- [x] Pick a license for the assets (edit: CC BY-NC 4.0 so someone would have to make their own assets if they want to sell it)
- [x] Final pass to make sure I'm not using code that I'm not allowed to use
- [x] Final pass to make sure there aren't any files left that shouldn't be in the repo
- [x] Test on my other machine to make sure the setup process and script works at all
- ~~Update the preview gifs (to use the newer textures)~~ (edit: actually this needs some code fixes so I'll do it later)
Ok, I tested the setup instructions I have on a fresh install of Win10, made some edits to add some things I missed, and I got it working fairly quickly. The setup process should be pretty comprehensive but there's always a chance I worded something badly so I'll edit it if people can't figure it out.
Anyway, I think it should be about ready to go. I just want to look over everything a little bit to make sure I'm not forgetting anything but it should probably be ready for the first public push tomorrow afternoon (EST).
Also I just want to clarify that when I talk about the "setup process", I mean the process for building the game from source. Once I start releasing builds (not tomorrow), the process for running them will just be Download->Run EXE.
Ok! First push is out! If anyone tries to build it, let me know how it goes.
Note that right now, the only tested build setup is using Visual Studio 2017 on Windows 10 in the Debug/x86 configuration.
The first thing I'm going to do now is start widening the options for building (Release/x64 configurations). Also the only reason it expects you to use Visual Studio 2017 is because that's what I happened to have installed when I started working on the project, but I'll probably upgrade it to VS2019 soon.
That's great! I'm trying to build with VS2019 right now, in a x64 environment. I'll tell you how it goes. I've also been wondering why FMOD is needed, as I haven't seen that as a dependency for any other game. Perhaps the license allows you to bundle the api with the game?
As far as I can tell, I don't think I can distribute the headers for FMOD, though I'm not 100% sure? I'm thinking about just scrapping FMOD and switching to another audio engine that works better with open source if I actually can't distribute headers/binaries.
I have a branch I'm working on to expand build options, and I got x64 and Release working. I mostly just had to copy some properties between configurations, but since the DLLs for x86 and x64 are different, I also set it up to look in two different folders depending on the configuration. This will require some shifting around of files, but I'll explain it later when I'm ready to merge it into dev.
I'm trying to get it working in VS2019, and it seems to work fine if I leave the platform toolset on v141, but as soon as I switch it to v142, sdl2_ttf fails to build with Conan for some reason. Let me know if it works for you, otherwise I'll probably keep trying to figure out the problem tomorrow.
I'm afraid I've run into a few problems with Conan and the Firewall, although that has nothing to do with your program. I may not be able to build it after all.
As for FMOD, the license section seems to indicate that if you acquire a free Indie game license, then you can distribute parts of FMOD. this thread seems to indicate that as well. It looks like anything you don't charge for, and isn't under the GNU license is fair game for using FMOD. Of course, I could be wrong about that.
Yeah, looking over the FMOD EULA and license details, it seemed like you were right, but I emailed FMOD just to be sure in this specific case, and they said I that I can distribute DLLs and stuff. I'll update the setup script and add the files soon.
Edit: The FMOD headers and DLLs are included in the repo now so the only manual download for setup is the optional Steam API.
Thanks for that!