Looking for contributors to an open-source game

Started by
7 comments, last by Javapony 3 years, 3 months ago

Hello everyone!

We are looking for contributors to a free, open-source game for PC. The game is still in its early development but certain results have been achieved already (see “techdemo” below).

The game is called Progressia and its premise is similar to that of Minecraft. It is a sandbox game about survival and engineering in a realistic voxel destructible world. The player's objectives are to settle and to master various technologies whilst overcoming hunger and unwelcoming climate.

About the game

Progressia will be quite like many other games of its genre, namely Minecraft with "industrial" mods, Factorio, Vintage Story and Minetest. The mission of the game is to become an open-source sandbox implementing at the deepest possible level several mechanics not found in the aforementioned games.

The unique features of Progressia will include:

  • compound and highly customizable content (For example, instead of implementing an "iron shovel", a generic "shovel" is hardcoded, capable of being made out of "iron". Or "glass". With obvious consequences.);
  • materials and technologies implemented close to realistic;
  • an Earth-scale world without fantastical elements;
  • an approximately accurate temperature calculation;
  • RPG-like player stats and a health system; tiles to be placed between blocks;
  • a multithreaded server.

An abstract implementation is known for each point of this list. Further details and a comparison with Minecraft can be found in this tl;dr.

Design

Little is determined about the graphical design. In-world graphics will be pixelated, probably photorealistic; a minimalistic pixelated UI is planned. Audio design has not been addressed yet as there isn't yet anyone with even a hint of experience in the field. There will be no plot and the setting will not be developed.

Target audience

Progressia's target audience are those who play modded Minecraft or modded Factorio. The game will be challenging; however, care must be taken not to make it irritatingly hard. The difficulty will be balanced for a cooperating group of 2-4 people, although singleplayer mode will be available as well.

Licensing

It is essential that the project is free and open-source. Progressia's code and assets are licensed under GPL. This is a non-commercial effort so we don't count on getting any money.

Technical details

Progessia doesn't use a game engine, mainly due to far too specific requests. Appropriately licensed game engines are also a rarity. The main programming language is Java. C#, C++ nor Brainfuck are used because Java provides platform neutrality guarantees, convenient concurrency, reflection and self-modification. The latter two are especially useful for developing complex mods. Java is also the language of Minecraft, which means that a large community of potentially interested capable developers already exists. And, well, yeah, Java is teamlead's favorite language, so there's that.

Modern OpenGL, OpenAL and GLFW are the backend. LWJGL serves as a wrapper library. It is the same that Minecraft uses. We only plan to support PC platforms: GNU/Linux, Windows and MacOS. Mobiles, consoles and web are far more than we can chew.

“Techdemo”

In order to prove to others—and ourselves—that Progressia is serious business, we have prepared a kind of a demo of what has been made so far, the "techdemo". Please note that the "techdemo" IS IN NO WAY a demo of the game, its engine or even its prototype; it merely proves that we are not just script kiddies. So don't judge the game by the "techdemo".

There's a YouTube video showcasing the "techdemo":

Alternatively, "Techdemo" can be downloaded from our GitHub. The link offers a crossplatform JAR and a couple of simple installers. The "techdemo" has been tested on Win10, Debian, Ubuntu and Fedora; it fails on MacOS. JRE (Java runtime) 8 or newer is required. Universal JAR is portable; Debian package installs the game into /usr/share/. Universal and Debian package require that you run the JAR file manually (which is usually done by double-clicking it); Windows installer creates a desktop shortcut.

Existing team

At the moment, the following team develops Progressia in their free time:

  • Javapony aka OLEGSHA, the team leader and a programmer;
  • ExceptNullpointer, a programmer;
  • serega404, a programmer;
  • WarDreg, a graphics designer;
  • Roboad, a graphics designer;
  • infirms, a programmer.

Valelya has helped create installers but has since left the group.

None of the aforementioned are experts and this is the first big project for most of us. We welcome all enthusiasts regardless of skill level and free time. The development promises to be fun at the very least; it will probably give all of us some good experience, and, we hope, might result in something decent.

That said, we are especially interested in:

  • OpenGL developers to at least give a piece of advice in low-level graphics code;
  • graphics designers and artists;
  • someone at least remotely familiar with sound design;
  • game designers to guide the others from making high-quality yet unplayable crap.

So far the workflow has been organized with Telegram, Discord and partially with GitHub but we will probably need to switch to something more adequate soon. Those interested in contributing can contact us in the following ways:

  • leave PMs here,
  • chat with team leader Javapony in Telegram (@javapony),
  • chat with team leader Javapony in Discord (OLEGSHA#7375)
  • or join our fresh Discord server.

Come to Progressia, we have cookies.

Our GitHub repository is https://github.com/OLEGSHA/Progressia/.​ It also contains a detailed build guide for those interested.

None

Advertisement

@fleabay, it definitely is designed for software, but it is still applicable to assets. That said, I guess we might switch to use CC-BY-SA for textures and sounds. As for whether GPL is “crappy”, I don't think this is the right thread to discuss such topics. Unless you mean it would somehow not suit our needs, in which case I disagree.

We definitely won't use NoCommercial or NoDerivatives versions of CC because they forbid something we want. Forbidding modifications or monetization goes against the entire point of free software. The preference of CC-BY-SA over CC-BY is based purely on the fact that CC-BY-SA is closer to GPL in its terms.

None

Why not Public Domain license – the license where the source is actually open-source, string-free, instead of some ancient and draconian license.

fleabay said:

If your assets are procedurally generated, go right ahead.

The GPL clearly states in section 1 that “The “source code” for a work means the preferred form of the work for making modifications to it.” It does not need to be code. For textures, sound effects and translation files, a PNG, an OGG and a plaintext are one of the preferred forms of the work for making modifications. It is therefore entirely legal to distribute graphics as PNGs and sounds as OGGs. (Music and packed assets are a different story, though. We don't plan to use packers so that isn't a problem.)

fleabay said:
There is so much software for use by game devs under MIT and similar that GPL is generally avoided whenever possible. Even proprietary is preferred over GPL.

That is very true. Most open-source game development resources use permissive licenses because they are expected to be combined with proprietary game engines to make proprietary games. GPL plainly forbids utilizing covered works in proprietary applications, which is why no developers of proprietary software want to mess with it. Well, we're not a library, and we don't plan on closing our source ever, so why should we care? Last note: these aren't issues specific to GPL but to any copyleft license.

taby said:
Why not Public Domain license

Another option would be to use a permissive license (MIT, BSD, Apache, etc.) We specifically want a copyleft license because we want to make a contribution to the free software movement. Effectively, the only difference between permissive licenses and copyleft licenses is whether redistribution under proprietary terms is allowed. As I outlined earlier, we aren't making a library nor a game engine, so catering to proprietary game developers isn't on the table. Instead, we want to create a game that will itself stay open-source forever.

Using permissive licenses allows the following situation: some third party re-publishes our work, with or even without modifications, under proprietary terms. (With PD, they wouldn't even need to give proper credit.) While we are totally okay with someone profiting from our work, even financially, we expect that person to give back, at the very least by contributing to our cause or our project. Imagine some company gathering a lot of players with an improved version of Progressia. If Progressia were MIT, we'd get nothing in return, save for a humble mention in the game's credits. Since the game's GPL, however, we could simply merge their improvements back into our version of the game. As a bonus, that company would be helping spread free software, which is something we care about.

Doubtful that any of that actually happens IRL? Look no further than Linux. It is precisely because Linux has a copyleft license that huge companies like IBM, Google and even Microsoft are its contributors. If they could, they'd just make proprietary forks: a famous example is how TiVO used a GPLv2 loophole. (Progressia's GPLv3-or-later.)

Obviously, GPL has some drawbacks as a game license. For an easy example, selling game copies, selling game subscriptions, releasing on Steam, embedding anti-cheats and DRM and selling copyright are impossible or pointless. Thankfully, we never planned to do any of that. Another problem is proprietary game mods. Yet another is compatibility with other copyleft licenses.

I hope that covers the licensing questions. I am of the opinion if the legal topic is to continue, it should move over to the appropriate forum (to which I will definitely link in OP if that ever happens).

None

fleabay said:
That's not what the GPL says. You can't paraphrase as a quote.

I literally copied and pasted that from https://www.gnu.org/licenses/gpl-3.0.html​. I don't think I could paraphrase less if I tried.

None

Yep that pretty much covers it. I'm just your ordinary neighbourhood socialist pig, which is why I prefer public domain. ?

This topic is closed to new replies.

Advertisement