diff --git a/README.md b/README.md index eceade21..0d1ac897 100644 --- a/README.md +++ b/README.md @@ -3,11 +3,11 @@ **[Dynamic HTML table](https://trilarion.github.io/opensourcegames/)** of the entries / Development **[Blog](https://trilarion.blogspot.com/search/label/osgames)** / **[Statistics](statistics.md#statistics)** [comment]: # (start of autogenerated content, do not edit) -**[All entries](entries/tocs/_all.md#All)** (1079) +**[All entries](entries/tocs/_all.md#All)** (1088) -By category: **[Action](entries/tocs/_action.md#action)** (187), **[Adventure](entries/tocs/_adventure.md#adventure)** (34), **[Arcade](entries/tocs/_arcade.md#arcade)** (61), **[Board game](entries/tocs/_board-game.md#board-game)** (9), **[Card game](entries/tocs/_card-game.md#card-game)** (2), **[Educational](entries/tocs/_educational.md#educational)** (5), **[Framework](entries/tocs/_framework.md#framework)** (69), **[Game engine](entries/tocs/_game-engine.md#game-engine)** (91), **[Library](entries/tocs/_library.md#library)** (29), **[Music](entries/tocs/_music.md#music)** (10), **[Platform](entries/tocs/_platform.md#platform)** (33), **[Puzzle](entries/tocs/_puzzle.md#puzzle)** (84), **[Remake](entries/tocs/_remake.md#remake)** (462), **[Role playing](entries/tocs/_role-playing.md#role-playing)** (151), **[Simulation](entries/tocs/_simulation.md#simulation)** (78), **[Sports](entries/tocs/_sports.md#sports)** (19), **[Strategy](entries/tocs/_strategy.md#strategy)** (222), **[Tool](entries/tocs/_tool.md#tool)** (26), **[Visual novel](entries/tocs/_visual-novel.md#visual-novel)** (4) +By category: **[Action](entries/tocs/_action.md#action)** (188), **[Adventure](entries/tocs/_adventure.md#adventure)** (34), **[Arcade](entries/tocs/_arcade.md#arcade)** (62), **[Board game](entries/tocs/_board-game.md#board-game)** (9), **[Card game](entries/tocs/_card-game.md#card-game)** (2), **[Educational](entries/tocs/_educational.md#educational)** (5), **[Framework](entries/tocs/_framework.md#framework)** (71), **[Game engine](entries/tocs/_game-engine.md#game-engine)** (92), **[Library](entries/tocs/_library.md#library)** (32), **[Music](entries/tocs/_music.md#music)** (10), **[Platform](entries/tocs/_platform.md#platform)** (33), **[Puzzle](entries/tocs/_puzzle.md#puzzle)** (84), **[Remake](entries/tocs/_remake.md#remake)** (462), **[Role playing](entries/tocs/_role-playing.md#role-playing)** (152), **[Simulation](entries/tocs/_simulation.md#simulation)** (78), **[Sports](entries/tocs/_sports.md#sports)** (19), **[Strategy](entries/tocs/_strategy.md#strategy)** (222), **[Tool](entries/tocs/_tool.md#tool)** (29), **[Visual novel](entries/tocs/_visual-novel.md#visual-novel)** (4) -By platform: **[Windows](entries/tocs/_windows.md#windows)** (290), **[Linux](entries/tocs/_linux.md#linux)** (267), **[macOS](entries/tocs/_macos.md#macos)** (159), **[Android](entries/tocs/_android.md#android)** (54), **[iOS](entries/tocs/_ios.md#ios)** (9), **[Web](entries/tocs/_web.md#web)** (56) +By platform: **[Windows](entries/tocs/_windows.md#windows)** (299), **[Linux](entries/tocs/_linux.md#linux)** (274), **[macOS](entries/tocs/_macos.md#macos)** (164), **[Android](entries/tocs/_android.md#android)** (56), **[iOS](entries/tocs/_ios.md#ios)** (10), **[Web](entries/tocs/_web.md#web)** (57) [comment]: # (end of autogenerated content) diff --git a/docs/data.json b/docs/data.json index 15c1c142..385c8345 100644 --- a/docs/data.json +++ b/docs/data.json @@ -384,6 +384,14 @@ "arcade", "Source - Java - GPL-3.0" ], + [ + "Anura (home, entry)", + "Engine for Frogatto and Friends.", + "", + "mature / active", + "arcade, game engine", + "Source - C, C++ - zlib" + ], [ "Apricots (home, entry)", "Fly an airplane, fire missiles, drop bombs, destroy enemy..", @@ -1544,6 +1552,14 @@ "role playing, massive multiplayer online", "Source - C, Java - GPL-2.0" ], + [ + "CrossUO (home, entry)", + "Ultima Online client.", + "", + "mature / active", + "role playing, requires online access", + "Source - C, C++ - GPL-3.0" + ], [ "Crown (home, entry)", "Data-driven game engine.", @@ -1718,7 +1734,7 @@ "", "mature / inactive since 2002", "remake, inspired by 3D Deathchase, shooter", - "Source - C - GPL-2.0" + "Source - C, Perl - GPL-2.0" ], [ "Decker (home, entry)", @@ -2544,6 +2560,14 @@ "framework", "Source - ActionScript - MIT" ], + [ + "flixel-gdx (home, entry)", + "2D game engine in Java based on Flixel.", + "", + "beta / inactive since 2017", + "framework, 2D", + "Source - Java - 3-clause BSD" + ], [ "Fluid Table Tennis (home, entry)", "Remake of Plasma Pong.", @@ -4448,6 +4472,14 @@ "action, shooter", "Source - Python - 3-clause BSD" ], + [ + "Mindustry (home, entry)", + "Sandbox tower defense game.", + "Link", + "mature / active", + "action, sandbox, tower defense", + "Source - Java - GPL-3.0" + ], [ "MineCraft-One-Week-Challenge (home, entry)", "Clone of Minecraft.", @@ -5848,6 +5880,14 @@ "strategy", "Source - Java - GPL-2.0" ], + [ + "PLIB (home, entry)", + "Game framework.", + "Link", + "mature / inactive since 2012", + "framework, library", + "Source - C++ - LGPL-2.0" + ], [ "PokerTH (home, entry)", "Texas Hold'em poker game playable against up to nine..", @@ -5968,6 +6008,14 @@ "puzzle, clone, inspired by Minesweeper", "Source - TypeScript, JavaScript - Apache-2.0" ], + [ + "Psyco (home, entry)", + "Python specializing compiler.", + "Link", + "mature / inactive since 2008", + "tool", + "C - MIT" + ], [ "Pthreads-win32 (home, entry)", "Implements a large subset of the POSIX standard threads..", @@ -6040,6 +6088,14 @@ "framework", "Source - Python - MIT" ], + [ + "pyscroll (home, entry)", + "Animated scrolling maps in pygame library.", + "", + "mature / inactive since 2018", + "library", + "Source - Python - LGPL-3.0" + ], [ "pyskool (home, entry)", "Remake of Skool Daze.", @@ -6056,6 +6112,14 @@ "strategy, cards", "Python - GPL-2.0" ], + [ + "PyTMX (home, entry)", + "Read Tiled Map Editor's TMX maps.", + "", + "mature / active", + "tool, library", + "Source - Python - LGPL-3.0" + ], [ "Q-Gears (home, entry)", "Remake of Final Fantasy VII.", @@ -6224,6 +6288,14 @@ "action, inspired by Rescue!, real time, remake, space, strategy", "Source - Java - GPL-3.0" ], + [ + "ReShade (home, entry)", + "Post-processing graphics injector.", + "Link", + "mature / active", + "tool", + "Source - C++ - 3-clause BSD" + ], [ "ResidualVM (home, entry)", "Remake of Grim Fandango, Escape from Monkey Island, Myst..", @@ -6789,8 +6861,8 @@ "Remake of Solar Fox.", "Link", "mature / inactive since 2004", - "action, arcade, inspired by Solar Fox, remake", - "Source - Python - LGPL-2.1" + "action, arcade, inspired by Solar Fox, open content, remake", + "Source - Python - LGPL-2.1" ], [ "Song of Albion (home, entry)", diff --git a/entries/anura.md b/entries/anura.md new file mode 100644 index 00000000..514fc31b --- /dev/null +++ b/entries/anura.md @@ -0,0 +1,14 @@ +# Anura + +_Engine for Frogatto and Friends._ + +- Home: https://github.com/anura-engine/anura +- State: mature +- Platform: Windows +- Keywords: arcade, game engine +- Code repository: https://github.com/anura-engine/anura.git +- Code language: C, C++ +- Code license: zlib (src folder) + +## Building + diff --git a/entries/crossuo.md b/entries/crossuo.md new file mode 100644 index 00000000..5823497a --- /dev/null +++ b/entries/crossuo.md @@ -0,0 +1,18 @@ +# CrossUO + +_ Ultima Online client._ + +- Home: https://crossuo.com/ +- Media: https://en.wikipedia.org/wiki/Ultima_Online +- State: mature +- Platform: Windows, Linux, macOS +- Keywords: role playing, requires online access +- Code repository: https://github.com/crossuo/crossuo.git +- Code language: C, C++ +- Code license: GPL-3.0 + +Fork of OrionUO + +## Building + +- Build system: CMake diff --git a/entries/deathchase_3d.md b/entries/deathchase_3d.md index a5714ff8..49f8606f 100644 --- a/entries/deathchase_3d.md +++ b/entries/deathchase_3d.md @@ -5,8 +5,9 @@ _Remake of 3D Deathchase._ - Home: https://web.archive.org/web/20070711231311/http://www.robsons.org.uk/archive/www.autismuk.freeserve.co.uk/index.htm - State: mature, inactive since 2002 - Keywords: remake, inspired by 3D Deathchase, shooter -- Code repository: https://web.archive.org/web/20070711231311/http://www.robsons.org.uk/archive/www.autismuk.freeserve.co.uk/deathchase3d-0.9.tar.gz -- Code language: C +- Code repository: https://gitlab.com/osgames/deathchase3d.git (import of source release at https://web.archive.org/web/20070711231311/http://www.robsons.org.uk/archive/www.autismuk.freeserve.co.uk/deathchase3d-0.9.tar.gz) +- Code language: C, Perl - Code license: GPL-2.0 +- Code dependencies: SDL ## Building diff --git a/entries/flixel-gdx.md b/entries/flixel-gdx.md new file mode 100644 index 00000000..d6fdeb05 --- /dev/null +++ b/entries/flixel-gdx.md @@ -0,0 +1,14 @@ +# flixel-gdx + +_2D game engine in Java based on Flixel._ + +- Home: https://web.archive.org/web/20190623151758/http://flixel-gdx.com/ +- State: beta, inactive since 2017 +- Platform: Windows, Linux, macOS, Android, iOS, Web +- Keywords: framework, 2D +- Code repository: https://github.com/flixel-gdx/flixel-gdx.git +- Code language: Java +- Code license: 3-clause BSD +- Code dependencies: libGDX + +## Building diff --git a/entries/jumpnbump.md b/entries/jumpnbump.md index 1e38377e..e83e45a3 100644 --- a/entries/jumpnbump.md +++ b/entries/jumpnbump.md @@ -11,4 +11,6 @@ _Remake of Jump 'n Bump._ - Code license: GPL-2.0 - Code dependencies: SDL +See also https://gitlab.com/LibreGames/jumpnbump (same game?) + ## Building diff --git a/entries/mindustry.md b/entries/mindustry.md new file mode 100644 index 00000000..dc6830d6 --- /dev/null +++ b/entries/mindustry.md @@ -0,0 +1,17 @@ +# Mindustry + +_Sandbox tower defense game._ + +- Home: https://mindustrygame.github.io/ +- State: mature +- Download: https://play.google.com/store/apps/details?id=io.anuke.mindustry, https://f-droid.org/packages/io.anuke.mindustry/, https://anuke.itch.io/mindustry +- Platform: Windows, Linux, Android +- Keywords: action, sandbox, tower defense +- Code repository: https://github.com/Anuken/Mindustry.git +- Code language: Java +- Code license: GPL-3.0 +- Code dependencies: libGDX + +## Building + +- Build system: Gradle diff --git a/entries/plib.md b/entries/plib.md new file mode 100644 index 00000000..45ae9e6e --- /dev/null +++ b/entries/plib.md @@ -0,0 +1,16 @@ +# PLIB + +_Game framework._ + +- Home: http://plib.sourceforge.net/, https://sourceforge.net/projects/plib/ +- State: mature, inactive since 2012 +- Download: http://plib.sourceforge.net/download.html +- Platform: Windows, Linux, macOS +- Keywords: framework, library +- Code repository: https://svn.code.sf.net/p/plib/code/ (svn) +- Code language: C++ +- Code license: LGPL-2.0 + +## Building + +- Build system: Autoconf diff --git a/entries/proquake_4.md b/entries/proquake_4.md index e72279fd..a695a9ff 100644 --- a/entries/proquake_4.md +++ b/entries/proquake_4.md @@ -10,4 +10,6 @@ _Remake of Quake._ - Code language: C - Code license: GPL-2.0 +See also: http://quakeone.com/markv/ + ## Building diff --git a/entries/psyco.md b/entries/psyco.md new file mode 100644 index 00000000..0d309fc9 --- /dev/null +++ b/entries/psyco.md @@ -0,0 +1,16 @@ +# Psyco + +_Python specializing compiler._ + +- Home: http://psyco.sourceforge.net/, https://sourceforge.net/projects/psyco/ +- State: mature, inactive since 2008 +- Download: http://psyco.sourceforge.net/download.html +- Platform: Windows, Linux +- Keywords: tool +- Code repository: (see download) +- Code language: C +- Code license: MIT + +Unmaintained, refers to pypy.org + +## Building diff --git a/entries/pyscroll.md b/entries/pyscroll.md new file mode 100644 index 00000000..7746d7ae --- /dev/null +++ b/entries/pyscroll.md @@ -0,0 +1,15 @@ +# pyscroll + +_Animated scrolling maps in pygame library._ + +- Home: https://pypi.org/project/pyscroll/ +- State: mature, inactive since 2018 +- Platform: Windows, Linux, macOS (all that pygame supports) +- Keywords: library +- Code repository: https://github.com/bitcraft/pyscroll.git +- Code language: Python +- Code license: LGPL-3.0 +- Code dependencies: pygame + +## Building + diff --git a/entries/pytmx.md b/entries/pytmx.md new file mode 100644 index 00000000..816b9008 --- /dev/null +++ b/entries/pytmx.md @@ -0,0 +1,13 @@ +# PyTMX + +_Read Tiled Map Editor's TMX maps._ + +- Home: https://pypi.org/project/PyTMX/ +- State: mature +- Platform: Windows, Linux, macOS (all supported by pygame) +- Keywords: tool, library +- Code repository: https://github.com/bitcraft/PyTMX.git +- Code language: Python +- Code license: LGPL-3.0 + +## Building diff --git a/entries/reshade.md b/entries/reshade.md new file mode 100644 index 00000000..22c85fe7 --- /dev/null +++ b/entries/reshade.md @@ -0,0 +1,17 @@ +# ReShade + +_Post-processing graphics injector._ + +- Home: https://reshade.me/ +- State: mature +- Download: https://reshade.me/releases +- Platform: Windows +- Keywords: tool +- Code repository: https://github.com/crosire/reshade.git +- Code language: C++ +- Code license: 3-clause BSD + +## Building + +- Build system: VisualStudio + diff --git a/entries/solarwolf.md b/entries/solarwolf.md index 6c5307c7..d70a9c50 100644 --- a/entries/solarwolf.md +++ b/entries/solarwolf.md @@ -6,10 +6,14 @@ _Remake of Solar Fox._ - State: mature, inactive since 2004 - Download: https://www.pygame.org/shredwheat/solarwolf/index.shtml#download - Platform: Windows, Linux, macOS -- Keywords: action, arcade, inspired by Solar Fox, remake -- Code repository: http://pygame.org/shredwheat/solarwolf/solarwolf-1.5.tar.gz +- Keywords: action, arcade, inspired by Solar Fox, open content, remake +- Code repository: https://gitlab.com/osgames/solarwolf.git (import of source releases) - Code language: Python - Code license: LGPL-2.1 - Code dependencies: pygame +Developer: Pete Shinners, Eero Tamminen + ## Building + +- Build system: Make diff --git a/entries/tocs/_action.md b/entries/tocs/_action.md index 66eddd34..d60fcaa6 100644 --- a/entries/tocs/_action.md +++ b/entries/tocs/_action.md @@ -111,6 +111,7 @@ - **[Mega Mario](../mega_mario.md)** (C++, LGPL-2.1, mature, inactive since 2012) - **[Memory Game](../memory_game.md)** (Java, Apache-2.0, mature) - **[MicroWar 2.0](../microwar_20.md)** (Python, 3-clause BSD, mature, inactive since 2009) +- **[Mindustry](../mindustry.md)** (Java, GPL-3.0, mature) - **[Mininim](../mininim.md)** (C, GPL-3.0, beta, inactive since 2017) - **[mk.js](../mkjs.md)** (JavaScript, MIT, beta) - **[Mr.Boom](../mrboom.md)** (C++, MIT, mature) diff --git a/entries/tocs/_all.md b/entries/tocs/_all.md index 6c7a3643..261386ff 100644 --- a/entries/tocs/_all.md +++ b/entries/tocs/_all.md @@ -48,6 +48,7 @@ - **[Antares](../antares.md)** (C++, LGPL-3.0, beta) - **[AntiChess](../antichess.md)** (Java, MIT, mature, inactive since 2003) - **[antiyoy](../antiyoy.md)** (Java, GPL-3.0, beta) +- **[Anura](../anura.md)** (C, C++, zlib, mature) - **[Apricots](../apricots.md)** (C++, GPL-2.0, beta, inactive since 2003) - **[aquastax](../aquastax.md)** (JavaScript, MIT, beta) - **[Arashi-JS](../arashi-js.md)** (JavaScript, GPL-2.0, beta, inactive since 2010) @@ -193,6 +194,7 @@ - **[CrappyBird](../crappybird.md)** (JavaScript, MIT, mature, inactive since 2017) - **[Crimson Fields](../crimson_fields.md)** (C++, GPL-2.0, mature, inactive since 2010) - **[Crossfire](../crossfire.md)** (C, Java, GPL-2.0, mature) +- **[CrossUO](../crossuo.md)** (C, C++, GPL-3.0, mature) - **[Crown and Cutlass](../crown_and_cutlass.md)** (C++, Custom, beta, inactive since 2009) - **[Crown](../crown.md)** (C, C++, Vala, MIT, beta) - **[Crypto++](../crypto.md)** (C++, Boost-1.0, mature) @@ -214,7 +216,7 @@ - **[Dave Gnukem](../dave_gnukem.md)** (C++, GPL-2.0, mature) - **[Dawn](../dawn.md)** (C++, GPL-3.0, beta, inactive since 2011) - **[Dear ImGui](../dear_imgui.md)** (C, C++, MIT, mature) -- **[Deathchase 3D](../deathchase_3d.md)** (C, GPL-2.0, mature, inactive since 2002) +- **[Deathchase 3D](../deathchase_3d.md)** (C, Perl, GPL-2.0, mature, inactive since 2002) - **[Decker](../decker.md)** (Java, GPL-2.0, beta, inactive since 2013) - **[Dedalus](../dedalus.md)** (JavaScript, GPL-2.0, beta, inactive since 2018) - **[Defendguin](../defendguin.md)** (C, GPL-2.0, mature, inactive since 2009) @@ -317,6 +319,7 @@ - **[Flare](../flare.md)** (C++, Java, GPL-3.0, mature) - **[Flex Engine](../flex_engine.md)** (C++, MIT, beta) - **[FlightGear](../flightgear.md)** (C++, GPL-2.0, mature) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[Flixel](../flixel.md)** (ActionScript, MIT, mature) - **[Fluid Table Tennis](../fluid_table_tennis.md)** (JavaScript, MIT, mature, inactive since 2013) - **[fonline](../fonline.md)** (C, C++, GPL-3.0, beta) @@ -556,6 +559,7 @@ - **[micropolisJS](../micropolisjs.md)** (JavaScript, GPL-3.0, mature) - **[Microracers](../microracers.md)** (C, C++, GPL-2.0, beta, inactive since 2005) - **[MicroWar 2.0](../microwar_20.md)** (Python, 3-clause BSD, mature, inactive since 2009) +- **[Mindustry](../mindustry.md)** (Java, GPL-3.0, mature) - **[MineCraft-One-Week-Challenge](../minecraft-one-week-challenge.md)** (C++, MIT, beta) - **[Minesweeper (in C)](../minesweeper_in_c.md)** (C, 3-clause BSD, beta, inactive since 2015) - **[Minesweeper.Zone](../minesweeperzone.md)** (JavaScript, PHP, MIT, mature) @@ -731,6 +735,7 @@ - **[pkg-config](../pkg-config.md)** (C, GPL-2.0, mature) - **[PlaneShift](../planeshift.md)** (C++, GPL-2.0, mature) - **[Planetary Hoppers](../planetary_hoppers.md)** (Java, GPL-2.0, beta, inactive since 2003) +- **[PLIB](../plib.md)** (C++, LGPL-2.0, mature, inactive since 2012) - **[PokerTH](../pokerth.md)** (C++, AGPL-3.0, mature, inactive since 2017) - **[Polis](../polis.md)** (Java, GPL-3.0, mature, inactive since 2016) - **[Polycode](../polycode.md)** (C, C++, MIT, beta) @@ -746,6 +751,7 @@ - **[Project Helena](../project_helena.md)** (Pascal, GPL-3.0, beta) - **[ProQuake 4](../proquake_4.md)** (C, GPL-2.0, mature, inactive since 2018) - **[proxx](../proxx.md)** (TypeScript, JavaScript, Apache-2.0, mature) +- **[Psyco](../psyco.md)** (C, MIT, mature, inactive since 2008) - **[Pthreads-win32](../pthreads-win32.md)** (C, LGPL-2.1, mature) - **[Pushover](../pushover.md)** (C++, C, Lua, GPL-3.0, beta, inactive since 2018) - **[PyBreak360](../pybreak360.md)** (Python, GPL-3.0, mature, inactive since 2015) @@ -755,8 +761,10 @@ - **[PyKaraoke](../pykaraoke.md)** (Python, LGPL-2.1, beta, inactive since 2011) - **[Pymapper](../pymapper.md)** (Python, GPL-3.0, mature) - **[pyORPG](../pyorpg.md)** (Python, MIT, beta, inactive since 2015) +- **[pyscroll](../pyscroll.md)** (Python, LGPL-3.0, mature, inactive since 2018) - **[pyskool](../pyskool.md)** (Python, GPL-3.0, mature) - **[PySol](../pysol.md)** (Python, GPL-2.0, mature, inactive since 2004) +- **[PyTMX](../pytmx.md)** (Python, LGPL-3.0, mature) - **[Q-Gears](../q-gears.md)** (C, C++, GPL-2.0, beta, inactive since 2015) - **[Qt](../qt.md)** (C++, LGPL-3.0, mature) - **[Quad-engine](../quad-engine.md)** (Pascal, MIT, beta) @@ -778,6 +786,7 @@ - **[Remixed Dungeon](../remixed_dungeon.md)** (Java, GPL-3.0, mature) - **[ReQbert](../reqbert.md)** (JavaScript, GPL-3.0, beta) - **[Rescue! Max](../rescue_max.md)** (Java, GPL-3.0, beta, inactive since 2013) +- **[ReShade](../reshade.md)** (C++, 3-clause BSD, mature) - **[ResidualVM](../residualvm.md)** (C++, GPL-2.0, beta) - **[Return of Dr. Destructo](../return_of_dr_destructo.md)** (C++, MIT, mature, inactive since 2015) - **[Return to the Roots](../return_to_the_roots.md)** (C++, GPL-3.0, mature) diff --git a/entries/tocs/_android.md b/entries/tocs/_android.md index 90b5d4b7..8869899c 100644 --- a/entries/tocs/_android.md +++ b/entries/tocs/_android.md @@ -17,6 +17,7 @@ - **[Esenthel Engine](../esenthel_engine.md)** (C, C++, Custom, beta) - **[EternalWinterWars](../eternalwinterwars.md)** (Java, MIT, beta, inactive since 2014) - **[Flappy Cow](../flappy_cow.md)** (Java, MIT, mature) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[FreeBlocks](../freeblocks.md)** (C, Java, GPL-3.0, beta, inactive since 2015) - **[GL4ES](../gl4es.md)** (C, MIT, mature) - **[Golly](../golly.md)** (C++, Java, GPL-2.0, mature) @@ -32,6 +33,7 @@ - **[LÖVE](../love.md)** (C++, zlib, mature) - **[Memory Game](../memory_game.md)** (Java, Apache-2.0, mature) - **[Mercenary Commander](../mercenary_commander.md)** (Java, 3-clause BSD, beta, inactive since 2010) +- **[Mindustry](../mindustry.md)** (Java, GPL-3.0, mature) - **[Minetest](../minetest.md)** (C, C++, Lua, LGPL-2.1, mature) - **[Morpheus Web Remake](../morpheus_web_remake.md)** (Javascript, MIT, beta) - **[NOVA PINBALL](../nova_pinball.md)** (Lua, GPL-3.0, beta, inactive since 2017) diff --git a/entries/tocs/_arcade.md b/entries/tocs/_arcade.md index d820daec..136742c6 100644 --- a/entries/tocs/_arcade.md +++ b/entries/tocs/_arcade.md @@ -6,6 +6,7 @@ - **[Airstrike](../airstrike.md)** (C, GPL-2.0, beta, inactive since 2014) - **[Aisleriot](../aisleriot.md)** (C, Scheme, GPL-3.0, mature) - **[antiyoy](../antiyoy.md)** (Java, GPL-3.0, beta) +- **[Anura](../anura.md)** (C, C++, zlib, mature) - **[Apricots](../apricots.md)** (C++, GPL-2.0, beta, inactive since 2003) - **[Batalla Naval](../batalla_naval.md)** (C, GPL-2.0, mature, inactive since 2002) - **[Battery](../battery.md)** (Java, EPL-2.0, Custom, mature, inactive since 2009) diff --git a/entries/tocs/_framework.md b/entries/tocs/_framework.md index baa18ef1..1c2286b0 100644 --- a/entries/tocs/_framework.md +++ b/entries/tocs/_framework.md @@ -17,6 +17,7 @@ - **[F.LF](../flf.md)** (JavaScript, ?, mature) - **[Flare](../flare.md)** (C++, Java, GPL-3.0, mature) - **[Flex Engine](../flex_engine.md)** (C++, MIT, beta) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[Flixel](../flixel.md)** (ActionScript, MIT, mature) - **[GemRB](../gemrb.md)** (C++, Python, GPL-2.0, mature) - **[Godot](../godot.md)** (C, C++, MIT, mature) @@ -46,6 +47,7 @@ - **[OpenRPG](../openrpg.md)** (Python, GPL-2.0, mature, inactive since 2013) - **[Orx](../orx.md)** (C, zlib, mature) - **[Panda 3D](../panda_3d.md)** (C++, C, 3-clause BSD, mature) +- **[PLIB](../plib.md)** (C++, LGPL-2.0, mature, inactive since 2012) - **[Polycode](../polycode.md)** (C, C++, MIT, beta) - **[pygame](../pygame.md)** (C, Python, LGPL-2.1, mature) - **[pyORPG](../pyorpg.md)** (Python, MIT, beta, inactive since 2015) diff --git a/entries/tocs/_game-engine.md b/entries/tocs/_game-engine.md index 67b37489..17b3dead 100644 --- a/entries/tocs/_game-engine.md +++ b/entries/tocs/_game-engine.md @@ -3,6 +3,7 @@ - **[adventure engine](../adventure_engine.md)** (Lua, MIT, mature, inactive since 2013) - **[Alimer](../alimer.md)** (C++, MIT, beta) +- **[Anura](../anura.md)** (C, C++, zlib, mature) - **[Bacon2D](../bacon2d.md)** (C++, MIT, beta, inactive since 2018) - **[Bladecoder Adventure Engine](../bladecoder_adventure_engine.md)** (Java, Apache-2.0, mature) - **[Blitwizard](../blitwizard.md)** (C, C++, Lua, zlib, beta, inactive since 2015) diff --git a/entries/tocs/_ios.md b/entries/tocs/_ios.md index 76c090dc..c4a4d526 100644 --- a/entries/tocs/_ios.md +++ b/entries/tocs/_ios.md @@ -3,6 +3,7 @@ - **[DOOM-iOS](../doom-ios.md)** (C++, GPL-2.0, mature, inactive since 2012) - **[Esenthel Engine](../esenthel_engine.md)** (C, C++, Custom, beta) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[Gorillas](../gorillas.md)** (Objective-C, JavaScript, Java Research License, mature, inactive since 2014) - **[Hedgewars](../hedgewars.md)** (Lua, C, C++, Pascal, Haskell, GPL-2.0, mature) - **[LÖVE](../love.md)** (C++, zlib, mature) diff --git a/entries/tocs/_library.md b/entries/tocs/_library.md index d75a5b14..d6a2d2b4 100644 --- a/entries/tocs/_library.md +++ b/entries/tocs/_library.md @@ -21,7 +21,10 @@ - **[OpenSSL](../openssl.md)** (C, Custom, mature) - **[Penumbra](../penumbra.md)** (C#, MIT, mature) - **[pkg-config](../pkg-config.md)** (C, GPL-2.0, mature) +- **[PLIB](../plib.md)** (C++, LGPL-2.0, mature, inactive since 2012) - **[Pthreads-win32](../pthreads-win32.md)** (C, LGPL-2.1, mature) +- **[pyscroll](../pyscroll.md)** (Python, LGPL-3.0, mature, inactive since 2018) +- **[PyTMX](../pytmx.md)** (Python, LGPL-3.0, mature) - **[Ragel](../ragel.md)** (C++, MIT, mature) - **[Simple and Fast Multimedia Library](../simple_and_fast_multimedia_library.md)** (C++, zlib, mature) - **[Simple DirectMedia Layer](../simple_directmedia_layer.md)** (C, zlib, mature) diff --git a/entries/tocs/_linux.md b/entries/tocs/_linux.md index 237a63f3..d9eb8f61 100644 --- a/entries/tocs/_linux.md +++ b/entries/tocs/_linux.md @@ -54,6 +54,7 @@ - **[Cosmosmash](../cosmosmash.md)** (C++, GPL-2.0, mature, inactive since 2013) - **[Crack Attack!](../crack_attack.md)** (C++, GPL-2.0, mature, inactive since 2005) - **[Craft](../craft.md)** (C, Python, MIT, mature, inactive since 2017) +- **[CrossUO](../crossuo.md)** (C, C++, GPL-3.0, mature) - **[Crown](../crown.md)** (C, C++, Vala, MIT, beta) - **[Curse of War](../curse_of_war.md)** (C, C++, GPL-3.0, mature, inactive since 2014) - **[Cytadela](../cytadela.md)** (C++, GPL-3.0, beta, inactive since 2013) @@ -87,6 +88,7 @@ - **[Falltergeist](../falltergeist.md)** (C++, GPL-3.0, beta) - **[Fish Fillets - Next Generation](../fish_fillets-next_generation.md)** (C++, GPL-2.0, mature) - **[Flare](../flare.md)** (C++, Java, GPL-3.0, mature) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[Free Mars](../free_mars.md)** (Java, GPL-3.0, mature) - **[freeablo](../freeablo.md)** (C++, GPL-3.0, beta) - **[FreeBlocks](../freeblocks.md)** (C, Java, GPL-3.0, beta, inactive since 2015) @@ -134,6 +136,7 @@ - **[Mari0](../mari0.md)** (Lua, MIT, mature, inactive since 2012) - **[Maxit](../maxit.md)** (C++, ?, mature, inactive since 2014) - **[Me and My Shadow](../me_and_my_shadow.md)** (C++, GPL-3.0, beta) +- **[Mindustry](../mindustry.md)** (Java, GPL-3.0, mature) - **[Minetest](../minetest.md)** (C, C++, Lua, LGPL-2.1, mature) - **[mini2Dx](../mini2dx.md)** (Java, C#, Apache-2.0, mature) - **[Mininim](../mininim.md)** (C, GPL-3.0, beta, inactive since 2017) @@ -178,13 +181,17 @@ - **[Pingus](../pingus.md)** (C++, GPL-3.0, mature) - **[Pink Pony](../pink_pony.md)** (C++, GPL-3.0, mature, inactive since 2017) - **[PixelLight](../pixellight.md)** (C, C++, MIT, mature, inactive since 2012) +- **[PLIB](../plib.md)** (C++, LGPL-2.0, mature, inactive since 2012) - **[PokerTH](../pokerth.md)** (C++, AGPL-3.0, mature, inactive since 2017) - **[Powerslide remake](../powerslide_remake.md)** (C++, MIT, beta) - **[Privateer - Gemini Gold](../privateer-gemini_gold.md)** (C++, GPL-2.0, mature, inactive since 2012) +- **[Psyco](../psyco.md)** (C, MIT, mature, inactive since 2008) - **[Pygame---Alien-Invasion](../pygame-alien-invasion.md)** (Python, GPL-3.0, beta, inactive since 2018) - **[PyKaraoke](../pykaraoke.md)** (Python, LGPL-2.1, beta, inactive since 2011) +- **[pyscroll](../pyscroll.md)** (Python, LGPL-3.0, mature, inactive since 2018) - **[pyskool](../pyskool.md)** (Python, GPL-3.0, mature) - **[PySol](../pysol.md)** (Python, GPL-2.0, mature, inactive since 2004) +- **[PyTMX](../pytmx.md)** (Python, LGPL-3.0, mature) - **[QuakeSpasm](../quakespasm.md)** (C, GPL-2.0, mature) - **[Rabbit Escape](../rabbit_escape.md)** (Java, GPL-2.0, mature) - **[Race Into Space](../race_into_space.md)** (C, C++, GPL-2.0, mature) diff --git a/entries/tocs/_macos.md b/entries/tocs/_macos.md index 885a919c..72d8bb5c 100644 --- a/entries/tocs/_macos.md +++ b/entries/tocs/_macos.md @@ -25,6 +25,7 @@ - **[Circus Linux!](../circus_linux.md)** (C, GPL-2.0, mature, inactive since 2000) - **[Colditz Escape](../colditz_escape.md)** (C, GPL-3.0, mature) - **[Craft](../craft.md)** (C, Python, MIT, mature, inactive since 2017) +- **[CrossUO](../crossuo.md)** (C, C++, GPL-3.0, mature) - **[Cytadela](../cytadela.md)** (C++, GPL-3.0, beta, inactive since 2013) - **[D2X-XL](../d2x-xl.md)** (C++, Custom, GPL-2.0, mature, inactive since 2015) - **[Daggerfall Unity](../daggerfall_unity.md)** (C#, MIT, mature) @@ -55,6 +56,7 @@ - **[Fish Fillets - Next Generation](../fish_fillets-next_generation.md)** (C++, GPL-2.0, mature) - **[Flare](../flare.md)** (C++, Java, GPL-3.0, mature) - **[FlightGear](../flightgear.md)** (C++, GPL-2.0, mature) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[Free Mars](../free_mars.md)** (Java, GPL-3.0, mature) - **[freeablo](../freeablo.md)** (C++, GPL-3.0, beta) - **[Freedoom](../freedoom.md)** (Not applicable, Not applicable, beta) @@ -112,11 +114,14 @@ - **[Pentagram](../pentagram.md)** (C++, GPL-2.0, beta, inactive since 2018) - **[Performous](../performous.md)** (C, C++, GPL-2.0, mature) - **[Pingus](../pingus.md)** (C++, GPL-3.0, mature) +- **[PLIB](../plib.md)** (C++, LGPL-2.0, mature, inactive since 2012) - **[PokerTH](../pokerth.md)** (C++, AGPL-3.0, mature, inactive since 2017) - **[Privateer - Gemini Gold](../privateer-gemini_gold.md)** (C++, GPL-2.0, mature, inactive since 2012) - **[Pygame---Alien-Invasion](../pygame-alien-invasion.md)** (Python, GPL-3.0, beta, inactive since 2018) - **[PyKaraoke](../pykaraoke.md)** (Python, LGPL-2.1, beta, inactive since 2011) +- **[pyscroll](../pyscroll.md)** (Python, LGPL-3.0, mature, inactive since 2018) - **[PySol](../pysol.md)** (Python, GPL-2.0, mature, inactive since 2004) +- **[PyTMX](../pytmx.md)** (Python, LGPL-3.0, mature) - **[QuakeSpasm](../quakespasm.md)** (C, GPL-2.0, mature) - **[Rabbit Escape](../rabbit_escape.md)** (Java, GPL-2.0, mature) - **[Race Into Space](../race_into_space.md)** (C, C++, GPL-2.0, mature) diff --git a/entries/tocs/_remake.md b/entries/tocs/_remake.md index d2d838e6..5b24f458 100644 --- a/entries/tocs/_remake.md +++ b/entries/tocs/_remake.md @@ -68,7 +68,7 @@ - **[Danger from the Deep](../danger_from_the_deep.md)** (C++, GPL-2.0, beta, inactive since 2011) - **[DarkPlaces](../darkplaces.md)** (C, GPL-2.0, mature, inactive since 2014) - **[Data Storm](../data_storm.md)** (C, Apache-2.0, mature, inactive since 2017) -- **[Deathchase 3D](../deathchase_3d.md)** (C, GPL-2.0, mature, inactive since 2002) +- **[Deathchase 3D](../deathchase_3d.md)** (C, Perl, GPL-2.0, mature, inactive since 2002) - **[Defendguin](../defendguin.md)** (C, GPL-2.0, mature, inactive since 2009) - **[DelverEngine](../delverengine.md)** (Java, Custom, beta) - **[DesktopAdventures](../desktopadventures.md)** (C, LGPL-2.1, beta) diff --git a/entries/tocs/_role-playing.md b/entries/tocs/_role-playing.md index 1c09534e..1c56b71b 100644 --- a/entries/tocs/_role-playing.md +++ b/entries/tocs/_role-playing.md @@ -25,6 +25,7 @@ - **[Classic Blades of Exile](../classic_blades_of_exile.md)** (C++, GPL-2.0, mature) - **[coab](../coab.md)** (C#, ???, mature) - **[Crossfire](../crossfire.md)** (C, Java, GPL-2.0, mature) +- **[CrossUO](../crossuo.md)** (C, C++, GPL-3.0, mature) - **[Daggerfall Unity](../daggerfall_unity.md)** (C#, MIT, mature) - **[Daimonin](../daimonin.md)** (C, GPL-2.0, mature) - **[DarkCity](../darkcity.md)** (PHP, GPL-3.0, mature, inactive since 2012) diff --git a/entries/tocs/_tool.md b/entries/tocs/_tool.md index 18153fe5..45b6c772 100644 --- a/entries/tocs/_tool.md +++ b/entries/tocs/_tool.md @@ -17,7 +17,10 @@ - **[PCGen](../pcgen.md)** (Java, LGPL-2.1, mature) - **[pkg-config](../pkg-config.md)** (C, GPL-2.0, mature) - **[Procedural Map Generator](../procedural_map_generator.md)** (C++, MIT, mature, inactive since 2018) +- **[Psyco](../psyco.md)** (C, MIT, mature, inactive since 2008) - **[Pymapper](../pymapper.md)** (Python, GPL-3.0, mature) +- **[PyTMX](../pytmx.md)** (Python, LGPL-3.0, mature) +- **[ReShade](../reshade.md)** (C++, 3-clause BSD, mature) - **[rFXGen](../rfxgen.md)** (C, zlib, mature) - **[Rolemaster Office](../rolemaster_office.md)** (Java, Apache-2.0, mature) - **[Rolisteam](../rolisteam.md)** (C++, JavaScript, GPL-2.0, mature) diff --git a/entries/tocs/_web.md b/entries/tocs/_web.md index bfb36152..479af9b0 100644 --- a/entries/tocs/_web.md +++ b/entries/tocs/_web.md @@ -19,6 +19,7 @@ - **[Executive Man](../executive_man.md)** (JavaScript, Custom, mature, inactive since 2017) - **[F.LF](../flf.md)** (JavaScript, ?, mature) - **[Fantasy Map Generator](../fantasy_map_generator.md)** (JavaScript, MIT, mature) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[gist-txt](../gist-txt.md)** (JavaScript, MIT, mature, inactive since 2018) - **[Grimsonland](../grimsonland.md)** (JavaScript, ?, mature, inactive since 2017) - **[HexGL](../hexgl.md)** (JavaScript, CoffeeScript, MIT, mature, inactive since 2016) diff --git a/entries/tocs/_windows.md b/entries/tocs/_windows.md index 543a219d..5dfbda78 100644 --- a/entries/tocs/_windows.md +++ b/entries/tocs/_windows.md @@ -10,6 +10,7 @@ - **[Alex the Allegator 4](../alex_the_allegator_4.md)** (C, GPL-2.0, mature, inactive since 2003) - **[alive](../alive.md)** (C++, MIT, beta, inactive since 2017) - **[Annex: Conquer the World](../annex_conquer_the_world.md)** (MegaGlest Script, GPL-3.0, mature, inactive since 2014) +- **[Anura](../anura.md)** (C, C++, zlib, mature) - **[Arcane-Engine](../arcane-engine.md)** (C++, MIT, beta) - **[AssaultCube](../assaultcube.md)** (C, C++, Custom, mature, inactive since 2018) - **[Atomic Tanks](../atomic_tanks.md)** (C++, GPL-2.0, mature, inactive since 2016) @@ -45,6 +46,7 @@ - **[Colditz Escape](../colditz_escape.md)** (C, GPL-3.0, mature) - **[Crack Attack!](../crack_attack.md)** (C++, GPL-2.0, mature, inactive since 2005) - **[Craft](../craft.md)** (C, Python, MIT, mature, inactive since 2017) +- **[CrossUO](../crossuo.md)** (C, C++, GPL-3.0, mature) - **[Curse of War](../curse_of_war.md)** (C, C++, GPL-3.0, mature, inactive since 2014) - **[Cytadela](../cytadela.md)** (C++, GPL-3.0, beta, inactive since 2013) - **[D-Fend Reloaded](../d-fend_reloaded.md)** (Pascal, GPL-3.0, mature, inactive since 2015) @@ -86,6 +88,7 @@ - **[Fish Fillets - Next Generation](../fish_fillets-next_generation.md)** (C++, GPL-2.0, mature) - **[Flare](../flare.md)** (C++, Java, GPL-3.0, mature) - **[FlightGear](../flightgear.md)** (C++, GPL-2.0, mature) +- **[flixel-gdx](../flixel-gdx.md)** (Java, 3-clause BSD, beta, inactive since 2017) - **[Free Mars](../free_mars.md)** (Java, GPL-3.0, mature) - **[freeablo](../freeablo.md)** (C++, GPL-3.0, beta) - **[Freedoom](../freedoom.md)** (Not applicable, Not applicable, beta) @@ -140,6 +143,7 @@ - **[Me and My Shadow](../me_and_my_shadow.md)** (C++, GPL-3.0, beta) - **[Mega Mario](../mega_mario.md)** (C++, LGPL-2.1, mature, inactive since 2012) - **[MicroWar 2.0](../microwar_20.md)** (Python, 3-clause BSD, mature, inactive since 2009) +- **[Mindustry](../mindustry.md)** (Java, GPL-3.0, mature) - **[Minetest](../minetest.md)** (C, C++, Lua, LGPL-2.1, mature) - **[mini2Dx](../mini2dx.md)** (Java, C#, Apache-2.0, mature) - **[Mininim](../mininim.md)** (C, GPL-3.0, beta, inactive since 2017) @@ -195,17 +199,22 @@ - **[Pingus](../pingus.md)** (C++, GPL-3.0, mature) - **[Pink Pony](../pink_pony.md)** (C++, GPL-3.0, mature, inactive since 2017) - **[PixelLight](../pixellight.md)** (C, C++, MIT, mature, inactive since 2012) +- **[PLIB](../plib.md)** (C++, LGPL-2.0, mature, inactive since 2012) - **[PokerTH](../pokerth.md)** (C++, AGPL-3.0, mature, inactive since 2017) - **[Powerslide remake](../powerslide_remake.md)** (C++, MIT, beta) - **[Privateer - Gemini Gold](../privateer-gemini_gold.md)** (C++, GPL-2.0, mature, inactive since 2012) - **[Procedural Map Generator](../procedural_map_generator.md)** (C++, MIT, mature, inactive since 2018) +- **[Psyco](../psyco.md)** (C, MIT, mature, inactive since 2008) - **[Pygame---Alien-Invasion](../pygame-alien-invasion.md)** (Python, GPL-3.0, beta, inactive since 2018) - **[PyKaraoke](../pykaraoke.md)** (Python, LGPL-2.1, beta, inactive since 2011) +- **[pyscroll](../pyscroll.md)** (Python, LGPL-3.0, mature, inactive since 2018) - **[PySol](../pysol.md)** (Python, GPL-2.0, mature, inactive since 2004) +- **[PyTMX](../pytmx.md)** (Python, LGPL-3.0, mature) - **[QuakeSpasm](../quakespasm.md)** (C, GPL-2.0, mature) - **[Rabbit Escape](../rabbit_escape.md)** (Java, GPL-2.0, mature) - **[Race Into Space](../race_into_space.md)** (C, C++, GPL-2.0, mature) - **[raylib](../raylib.md)** (C, C++, zlib, mature) +- **[ReShade](../reshade.md)** (C++, 3-clause BSD, mature) - **[ResidualVM](../residualvm.md)** (C++, GPL-2.0, beta) - **[rFXGen](../rfxgen.md)** (C, zlib, mature) - **[Rigs of Rods](../rigs_of_rods.md)** (C, C++, AngelScript, GPL-3.0, mature) diff --git a/statistics.md b/statistics.md index 4c2007dc..55024385 100644 --- a/statistics.md +++ b/statistics.md @@ -1,17 +1,17 @@ [comment]: # (autogenerated content, do not edit) # Statistics -analyzed 1079 entries on 2019-09-26 15:40:24 +analyzed 1088 entries on 2019-10-04 14:21:44 ## State -- mature: 601 (55.7%) -- beta: 476 (44.1%) -- inactive: 516 (47.8%) +- mature: 609 (56.0%) +- beta: 477 (43.8%) +- inactive: 520 (47.8%) ##### Inactive State -Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Bacon2D (2018), Bastet (2018), Dedalus (2018), gist-txt (2018), GoldenEye: Source (2018), Inexor (2018), Lionheart Remake (2018), Lords of the Fey (2018), Nuvie (2018), Open Flood (2018), Open Rodent's Revenge (2018), OpenFire (2018), OpenMC2 (2018), OpenTyrian (2018), Orbium (2018), pacman-canvas (2018), Pentagram (2018), POSTAL 1 Open Source (2018), Procedural Map Generator (2018), ProQuake 4 (2018), Pushover (2018), pycraft (2018), Pygame---Alien-Invasion (2018), Space Harrier Clone (2018), super-methane-brothers-gx (2018), TrueCraft (2018), Undum (2018), Vocaluxe (2018), Wario-Land-3 (2018), Wizardry Legacy (2018), Zod Engine (2018), alive (2017), Angry Birds in Python (2017), BitRiot (2017), Blobby Volley 2 (2017), Breakout-VR (2017), chainreaction (2017), Clumsy Bird (2017), Craft (2017), CrappyBird (2017), CrystalQuest (2017), Data Storm (2017), Der Clou! (2017), Eat The Whistle (2017), Executive Man (2017), Free Space Colonization (2017), freegish (2017), FreeSynd (2017), GLtron (2017), Grimsonland (2017), Iceball (2017), IO Reboot (2017), Iris2 (2017), javascript-E.T. (2017), jsFO (2017), Just another Tetris™ clone (2017), LastTry (2017), Lemmini (2017), LGeneral (2017), Manic Digger (2017), Marblez (2017), Mininim (2017), NOVA PINBALL (2017), Open Cube (2017), Open Jumpgate (2017), OpenCrystalCaves (2017), OpenGGS (2017), OpenITG (2017), OpenSR (2017), OpenTriad (2017), Pink Pony (2017), PokerTH (2017), Project Carrot (2017), rpgboss (2017), Scrolling Game Development Kit 2 (2017), sensitive-js (2017), shadow-of-the-beast-html5 (2017), Shadowgrounds (2017), snake (2017), Tank: Zone of Death (2017), Tapir (2017), Total Annihilation 3D (2017), Tressette (2017), Tumbly Towers (2017), TUSSLE (2017), Zone of Control (2017), 3d.city (2016), Atlantis (2016), Atomic Tanks (2016), Atrinik (2016), Birth of the Empires (2016), Castle of the Winds (2016), Dark Destiny (2016), Dingo-Engine (2016), DNT (2016), Duck Marines (2016), Dungeon Monkey Eternal (2016), Escape Towards The Unknown (2016), FreeRCT (2016), HexGL (2016), Hexoshi (2016), Hocoslamfy (2016), HoverRace (2016), Hypatia (2016), Infiniminer (2016), JaNaG - Java Name Generator (2016), jewelthief (2016), l-echo (2016), ladder (2016), lttp-phaser (2016), Mice Men: Remix (2016), Open Yahtzee (2016), Polis (2016), PrBoom+ (2016), Prescription Wars (2016), ransack (2016), skifree.js (2016), Strife: Veteran Edition (2016), TORCS, The Open Racing Car Simulator (2016), Tremulous (2016), uMario (2016), uninvited (2016), Veraball (2016), Wizznic! (2016), xu4 (2016), Yet Another Engine (2016), Aleph One (2015), ativayeban (2015), Atomiks (2015), Aussenposten (2015), Ball And Wall (2015), Battleround (2015), BlakedAwesomenaughts (2015), Blitwizard (2015), Boulder Dash (2015), CorEngine (2015), D-Fend Reloaded (2015), D2X-XL (2015), Dash Engine (2015), Delta Engine (2015), DeSmuME (2015), Egoboo (2015), erampage (2015), Free Heroes 2 (2015), FreeBlocks (2015), Freekick 3 (2015), H-Craft Championship (2015), Hardwar (2015), KnightOfWor (2015), Libre Pinball (2015), Liquid War (2015), M.E.W.L. (2015), Micropolis (2015), Minesweeper (in C) (2015), movbizz (2015), Open Zelda (2015), OpenCity (2015), OpenGL Test Drive Remake (2015), OpenLiero (2015), OpenRaider (2015), Paper Isaac (2015), PyBreak360 (2015), pyORPG (2015), Q-Gears (2015), Return of Dr. Destructo (2015), Roguish (2015), RPG-X (2015), Scrabble3D (2015), SS13 Remake (2015), starshatter-open (2015), Tenes Empanadas Graciela (2015), The Endless Dungeons (2015), The Epic of Heroes (2015), Tile World (2015), Torrega Race (2015), twin-e (2015), TwinEngine (2015), Witch Blast (2015), XScavenger (2015), Airstrike (2014), Annex: Conquer the World (2014), Argentum Online (2014), Battles of Antargis (2014), Berusky II (2014), BlockOut II (2014), c64-nuclearreaction (2014), Cart Life (2014), CatacombSDL (2014), Curse of War (2014), DarkPlaces (2014), Deity (2014), Dune Dynasty (2014), EternalWinterWars (2014), FAR Colony (2014), FQuake3 (2014), FreeFalcon (2014), Fujo (2014), Gorillas (2014), Grobots (2014), Gusty's Serpents (2014), Hale (2014), Heroes of Wing Commander (2014), Hovertank3D (2014), Keen Dreams (2014), Kingdoms (2014), Knights (2014), Lips of Suna (2014), Lose Your Marbles (2014), Maxit (2014), Open RPG Maker (2014), Open Tibia (2014), OpenC1 (2014), OpenRoads (2014), OpenTitus (2014), Radakan (2014), rpge (2014), sandbox Game Maker (2014), Scorched3D (2014), SDL Game Engine 2D (2014), SDL Sopwith (2014), Sintel The Game (2014), Spooker Framework (2014), Star-Wars-III (2014), Summoning Wars (2014), Supercars III (2014), SuperFoulEgg (2014), Supremacy (2014), Taggem (2014), Turious (2014), Turn of War (2014), TurokEX (2014), Vamos (2014), VDrift (2014), WWW (2014), X-Moto (2014), Xenowar (2014), adventure engine (2013), Battle City (2013), Berusky (2013), Bos Wars (2013), BurgerSpace (2013), C-evo (2013), Candy Box 2 (2013), Cosmosmash (2013), Cytadela (2013), Decker (2013), DemiGod (2013), Dope Wars (2013), Dungeon Mapper (2013), Fluid Table Tennis (2013), Forsaken (2013), Gnomescroll (2013), Grail (2013), HHexen (2013), HoDoKu (2013), HolySpirit (2013), HTML5 Pacman (2013), Iron Seed (2013), MechCommander 2 Omnitech (2013), Mpango (2013), Murder In The Public Domain (2013), OpenRPG (2013), Phantasy Star Rebirth (2013), Rescue! Max (2013), Room for Change (2013), SoftPixel Engine (2013), Source of Tales (2013), The Bub's Brothers (2013), Theme Park Builder 3D CAD (2013), Trinity Reign (2013), TTDPatch (2013), Ultimate Stunts (2013), xBaK (2013), Zero Ballistics (2013), 4D-TRIS (2012), Afternoon Stalker (2012), Artillery Duel Reloaded (2012), Batrachians (2012), Billiards (2012), Biniax (2012), BlackNova Traders (2012), Blitzkrieg (2012), Cataclysm (2012), Celestron (2012), CommandoJS (2012), Conquests (2012), DarkCity (2012), DOOM (2012), DOOM-iOS (2012), Frozen Bubble (2012), Goblin Camp (2012), Hexwar (2012), Mari0 (2012), Mega Mario (2012), Mocha Doom (2012), OpenArena (2012), orona (2012), PARPG (2012), PixelLight (2012), Privateer - Gemini Gold (2012), Rise of the Triad for Linux (2012), SDL Bomber (2012), splexhd (2012), Stunt Car Racer Remake (2012), Thousand Parsec (2012), Toppler (2012), TROPHY (2012), Tux Football (2012), UFO2000 (2012), Wizards Magic (2012), XorCurses (2012), Abuse (2011), Battlefield Java (2011), Brain Workshop (2011), Danger from the Deep (2011), Dawn (2011), Digbuild (2011), FreePrince (2011), GalaxyMage Redux (2011), Kobold's Quest 2 (2011), KQ Lives (2011), One Way To Go (2011), Open Syobon Action (2011), OpenBlox (2011), OpenMOO2 (2011), PyKaraoke (2011), Siege of Avalon : Open Source (2011), Skifree-HTML5-clone (2011), Skrupel - Tribute Compilation (2011), Smash Battle (2011), Song of Albion (2011), Super Methane Brothers (2011), The Rush (2011), The Ur-Quan Masters (2011), Tux of Math Command (2011), UlDunAd (2011), World of Phaos (2011), X-Force: Fight For Destiny (2011), AI Wars (2010), Arashi-JS (2010), Between (2010), Bombermaaan (2010), Bombic2 (2010), Crimson Fields (2010), Dragon History - Dračí Historie (2010), Heroes of Wesnoth (2010), Labyrinth of Worlds (2010), Libre: The Open Source Card Game (2010), Linwarrior 3D (2010), Mercenary Commander (2010), Monsters and Mushrooms (2010), nXtank (2010), Open Creatures (2010), OpenHoMM (2010), RacerJS (2010), Slay (2010), SpaceTrader for Java (2010), Stargus (2010), Syndicate Wars Port (2010), UltraStar (2010), WebChess (2010), xDuke (2010), XPilot (2010), XPilot NG (2010), XSera (2010), XSwing Plus (2010), Zaz (2010), Alien Assault Traders (2009), Annchienta (2009), Ardentryst (2009), Balder2D (2009), Ball and Paddle (2009), Battery (2009), Battle Tanks (2009), Beat Harvester (2009), bratwurst (2009), Cadaver (2009), Crown and Cutlass (2009), Dark Oberon (2009), Defendguin (2009), Duel Commander (2009), Duke3D (2009), Ecksdee (2009), F-1 Spirit (2009), Fall of Imiryn (2009), Fallen Spire (2009), Freenukum Jump'n Run (2009), FreeTrain (2009), Froggix (2009), Glest (2009), Goblin Hack (2009), MicroWar 2.0 (2009), Netrek (2009), ORIENT (2009), SDL Asylum (2009), Secret Maryo Chronicles (2009), Space Trader for Windows (2009), World of Heroes (2009), Yo Frankie! (2009), 4D Maze Game (2008), A Planet's Revenge (2008), Amphetamine (2008), Attal: Lords of doom (2008), Avanor (2008), BRIQUOLO (2008), Duke3d_w32 (2008), FreeRails (2008), Freestars (2008), Frets on Fire (2008), Mars, Land of No Mercy (2008), Meritous (2008), Open Game Engine (2008), S.C.O.U.R.G.E. (2008), Sengoku: Warring States of Japan (2008), Slot-Racers (2008), Space Opera (2008), 2H4U (2007), Adanaxis (2007), Ajax3d (2007), Armies (2007), Brutal Chess (2007), Eos, Dawn of Light: A Space Opera (2007), ika (2007), kiki the nano bot (2007), Pang Zero (2007), SharpKonquest (2007), SilverTree (2007), SLASH'EM (2007), Transfusion (2007), Underworld Adventures (2007), World Builder (2007), Betrayer's Moon Tactics (2006), Boson (2006), Castle-Combat (2006), GPL Arcade Volleyball (2006), Grabble (2006), GUSANOS (2006), Jake2 (2006), JQuest (2006), Linley's Dungeon Crawl (2006), Metal Mech (2006), OpenMortal (2006), Rogue Clone IV (2006), RPDungeon - computer aided role playing (2006), StarBlastrix (2006), Thrust (2006), A7Xpg (2005), Abe's Amazing Adventure (2005), Bombic (2005), Crack Attack! (2005), GalaxyNG (2005), H-World (2005), Heart of the Alien (2005), JFDuke3D (2005), JonoF's Shadow Warrior Port (JFSW) (2005), Ladder (2005), Lincity (2005), Microracers (2005), Spice Trade (2005), Tumiki Fighters (2005), WAtomic (2005), Xconq (2005), ZAngband (2005), 3D Pong (2004), Aklabeth (2004), Colonization too (2004), Digger Remastered (2004), Gee Whiz (2004), GM Tools (2004), I Have No Tomatoes (2004), Jump'n'Bump (2004), Krystal Drop (2004), Nighthawk (2004), Noiz2sa (2004), NStars! (2004), Openglad (2004), PySol (2004), rRootage (2004), SolarWolf (2004), T-Bots (2004), Vorton (2004), Alex the Allegator 4 (2003), AntiChess (2003), Apricots (2003), Cat Mother Dead Justice (2003), Civil (2003), Freeciv Alpha Centauri project (2003), Ice Breaker (2003), Machinations (2003), PARSEC47 (2003), Pathological (2003), Pizza Business (2003), Planetary Hoppers (2003), Sopwith 3 (2003), The Clans (2003), Wargamer (2003), XArchon (2003), Anagramarama (2002), Batalla Naval (2002), Deathchase 3D (2002), Maelstrom (2002), Umbra (2002), Vectoroids (2002), 54321 (2001), Greenius' Civil War (2001), Tux Racer (2001), 3Dc (2000), ACM (2000), Circus Linux! (2000), Operation Citadel (2000), xdigger (1999), ICBM3D (1998) +Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Bacon2D (2018), Bastet (2018), Dedalus (2018), gist-txt (2018), GoldenEye: Source (2018), Inexor (2018), Lionheart Remake (2018), Lords of the Fey (2018), Nuvie (2018), Open Flood (2018), Open Rodent's Revenge (2018), OpenFire (2018), OpenMC2 (2018), OpenTyrian (2018), Orbium (2018), pacman-canvas (2018), Pentagram (2018), POSTAL 1 Open Source (2018), Procedural Map Generator (2018), ProQuake 4 (2018), Pushover (2018), pycraft (2018), Pygame---Alien-Invasion (2018), pyscroll (2018), Space Harrier Clone (2018), super-methane-brothers-gx (2018), TrueCraft (2018), Undum (2018), Vocaluxe (2018), Wario-Land-3 (2018), Wizardry Legacy (2018), Zod Engine (2018), alive (2017), Angry Birds in Python (2017), BitRiot (2017), Blobby Volley 2 (2017), Breakout-VR (2017), chainreaction (2017), Clumsy Bird (2017), Craft (2017), CrappyBird (2017), CrystalQuest (2017), Data Storm (2017), Der Clou! (2017), Eat The Whistle (2017), Executive Man (2017), flixel-gdx (2017), Free Space Colonization (2017), freegish (2017), FreeSynd (2017), GLtron (2017), Grimsonland (2017), Iceball (2017), IO Reboot (2017), Iris2 (2017), javascript-E.T. (2017), jsFO (2017), Just another Tetris™ clone (2017), LastTry (2017), Lemmini (2017), LGeneral (2017), Manic Digger (2017), Marblez (2017), Mininim (2017), NOVA PINBALL (2017), Open Cube (2017), Open Jumpgate (2017), OpenCrystalCaves (2017), OpenGGS (2017), OpenITG (2017), OpenSR (2017), OpenTriad (2017), Pink Pony (2017), PokerTH (2017), Project Carrot (2017), rpgboss (2017), Scrolling Game Development Kit 2 (2017), sensitive-js (2017), shadow-of-the-beast-html5 (2017), Shadowgrounds (2017), snake (2017), Tank: Zone of Death (2017), Tapir (2017), Total Annihilation 3D (2017), Tressette (2017), Tumbly Towers (2017), TUSSLE (2017), Zone of Control (2017), 3d.city (2016), Atlantis (2016), Atomic Tanks (2016), Atrinik (2016), Birth of the Empires (2016), Castle of the Winds (2016), Dark Destiny (2016), Dingo-Engine (2016), DNT (2016), Duck Marines (2016), Dungeon Monkey Eternal (2016), Escape Towards The Unknown (2016), FreeRCT (2016), HexGL (2016), Hexoshi (2016), Hocoslamfy (2016), HoverRace (2016), Hypatia (2016), Infiniminer (2016), JaNaG - Java Name Generator (2016), jewelthief (2016), l-echo (2016), ladder (2016), lttp-phaser (2016), Mice Men: Remix (2016), Open Yahtzee (2016), Polis (2016), PrBoom+ (2016), Prescription Wars (2016), ransack (2016), skifree.js (2016), Strife: Veteran Edition (2016), TORCS, The Open Racing Car Simulator (2016), Tremulous (2016), uMario (2016), uninvited (2016), Veraball (2016), Wizznic! (2016), xu4 (2016), Yet Another Engine (2016), Aleph One (2015), ativayeban (2015), Atomiks (2015), Aussenposten (2015), Ball And Wall (2015), Battleround (2015), BlakedAwesomenaughts (2015), Blitwizard (2015), Boulder Dash (2015), CorEngine (2015), D-Fend Reloaded (2015), D2X-XL (2015), Dash Engine (2015), Delta Engine (2015), DeSmuME (2015), Egoboo (2015), erampage (2015), Free Heroes 2 (2015), FreeBlocks (2015), Freekick 3 (2015), H-Craft Championship (2015), Hardwar (2015), KnightOfWor (2015), Libre Pinball (2015), Liquid War (2015), M.E.W.L. (2015), Micropolis (2015), Minesweeper (in C) (2015), movbizz (2015), Open Zelda (2015), OpenCity (2015), OpenGL Test Drive Remake (2015), OpenLiero (2015), OpenRaider (2015), Paper Isaac (2015), PyBreak360 (2015), pyORPG (2015), Q-Gears (2015), Return of Dr. Destructo (2015), Roguish (2015), RPG-X (2015), Scrabble3D (2015), SS13 Remake (2015), starshatter-open (2015), Tenes Empanadas Graciela (2015), The Endless Dungeons (2015), The Epic of Heroes (2015), Tile World (2015), Torrega Race (2015), twin-e (2015), TwinEngine (2015), Witch Blast (2015), XScavenger (2015), Airstrike (2014), Annex: Conquer the World (2014), Argentum Online (2014), Battles of Antargis (2014), Berusky II (2014), BlockOut II (2014), c64-nuclearreaction (2014), Cart Life (2014), CatacombSDL (2014), Curse of War (2014), DarkPlaces (2014), Deity (2014), Dune Dynasty (2014), EternalWinterWars (2014), FAR Colony (2014), FQuake3 (2014), FreeFalcon (2014), Fujo (2014), Gorillas (2014), Grobots (2014), Gusty's Serpents (2014), Hale (2014), Heroes of Wing Commander (2014), Hovertank3D (2014), Keen Dreams (2014), Kingdoms (2014), Knights (2014), Lips of Suna (2014), Lose Your Marbles (2014), Maxit (2014), Open RPG Maker (2014), Open Tibia (2014), OpenC1 (2014), OpenRoads (2014), OpenTitus (2014), Radakan (2014), rpge (2014), sandbox Game Maker (2014), Scorched3D (2014), SDL Game Engine 2D (2014), SDL Sopwith (2014), Sintel The Game (2014), Spooker Framework (2014), Star-Wars-III (2014), Summoning Wars (2014), Supercars III (2014), SuperFoulEgg (2014), Supremacy (2014), Taggem (2014), Turious (2014), Turn of War (2014), TurokEX (2014), Vamos (2014), VDrift (2014), WWW (2014), X-Moto (2014), Xenowar (2014), adventure engine (2013), Battle City (2013), Berusky (2013), Bos Wars (2013), BurgerSpace (2013), C-evo (2013), Candy Box 2 (2013), Cosmosmash (2013), Cytadela (2013), Decker (2013), DemiGod (2013), Dope Wars (2013), Dungeon Mapper (2013), Fluid Table Tennis (2013), Forsaken (2013), Gnomescroll (2013), Grail (2013), HHexen (2013), HoDoKu (2013), HolySpirit (2013), HTML5 Pacman (2013), Iron Seed (2013), MechCommander 2 Omnitech (2013), Mpango (2013), Murder In The Public Domain (2013), OpenRPG (2013), Phantasy Star Rebirth (2013), Rescue! Max (2013), Room for Change (2013), SoftPixel Engine (2013), Source of Tales (2013), The Bub's Brothers (2013), Theme Park Builder 3D CAD (2013), Trinity Reign (2013), TTDPatch (2013), Ultimate Stunts (2013), xBaK (2013), Zero Ballistics (2013), 4D-TRIS (2012), Afternoon Stalker (2012), Artillery Duel Reloaded (2012), Batrachians (2012), Billiards (2012), Biniax (2012), BlackNova Traders (2012), Blitzkrieg (2012), Cataclysm (2012), Celestron (2012), CommandoJS (2012), Conquests (2012), DarkCity (2012), DOOM (2012), DOOM-iOS (2012), Frozen Bubble (2012), Goblin Camp (2012), Hexwar (2012), Mari0 (2012), Mega Mario (2012), Mocha Doom (2012), OpenArena (2012), orona (2012), PARPG (2012), PixelLight (2012), PLIB (2012), Privateer - Gemini Gold (2012), Rise of the Triad for Linux (2012), SDL Bomber (2012), splexhd (2012), Stunt Car Racer Remake (2012), Thousand Parsec (2012), Toppler (2012), TROPHY (2012), Tux Football (2012), UFO2000 (2012), Wizards Magic (2012), XorCurses (2012), Abuse (2011), Battlefield Java (2011), Brain Workshop (2011), Danger from the Deep (2011), Dawn (2011), Digbuild (2011), FreePrince (2011), GalaxyMage Redux (2011), Kobold's Quest 2 (2011), KQ Lives (2011), One Way To Go (2011), Open Syobon Action (2011), OpenBlox (2011), OpenMOO2 (2011), PyKaraoke (2011), Siege of Avalon : Open Source (2011), Skifree-HTML5-clone (2011), Skrupel - Tribute Compilation (2011), Smash Battle (2011), Song of Albion (2011), Super Methane Brothers (2011), The Rush (2011), The Ur-Quan Masters (2011), Tux of Math Command (2011), UlDunAd (2011), World of Phaos (2011), X-Force: Fight For Destiny (2011), AI Wars (2010), Arashi-JS (2010), Between (2010), Bombermaaan (2010), Bombic2 (2010), Crimson Fields (2010), Dragon History - Dračí Historie (2010), Heroes of Wesnoth (2010), Labyrinth of Worlds (2010), Libre: The Open Source Card Game (2010), Linwarrior 3D (2010), Mercenary Commander (2010), Monsters and Mushrooms (2010), nXtank (2010), Open Creatures (2010), OpenHoMM (2010), RacerJS (2010), Slay (2010), SpaceTrader for Java (2010), Stargus (2010), Syndicate Wars Port (2010), UltraStar (2010), WebChess (2010), xDuke (2010), XPilot (2010), XPilot NG (2010), XSera (2010), XSwing Plus (2010), Zaz (2010), Alien Assault Traders (2009), Annchienta (2009), Ardentryst (2009), Balder2D (2009), Ball and Paddle (2009), Battery (2009), Battle Tanks (2009), Beat Harvester (2009), bratwurst (2009), Cadaver (2009), Crown and Cutlass (2009), Dark Oberon (2009), Defendguin (2009), Duel Commander (2009), Duke3D (2009), Ecksdee (2009), F-1 Spirit (2009), Fall of Imiryn (2009), Fallen Spire (2009), Freenukum Jump'n Run (2009), FreeTrain (2009), Froggix (2009), Glest (2009), Goblin Hack (2009), MicroWar 2.0 (2009), Netrek (2009), ORIENT (2009), SDL Asylum (2009), Secret Maryo Chronicles (2009), Space Trader for Windows (2009), World of Heroes (2009), Yo Frankie! (2009), 4D Maze Game (2008), A Planet's Revenge (2008), Amphetamine (2008), Attal: Lords of doom (2008), Avanor (2008), BRIQUOLO (2008), Duke3d_w32 (2008), FreeRails (2008), Freestars (2008), Frets on Fire (2008), Mars, Land of No Mercy (2008), Meritous (2008), Open Game Engine (2008), Psyco (2008), S.C.O.U.R.G.E. (2008), Sengoku: Warring States of Japan (2008), Slot-Racers (2008), Space Opera (2008), 2H4U (2007), Adanaxis (2007), Ajax3d (2007), Armies (2007), Brutal Chess (2007), Eos, Dawn of Light: A Space Opera (2007), ika (2007), kiki the nano bot (2007), Pang Zero (2007), SharpKonquest (2007), SilverTree (2007), SLASH'EM (2007), Transfusion (2007), Underworld Adventures (2007), World Builder (2007), Betrayer's Moon Tactics (2006), Boson (2006), Castle-Combat (2006), GPL Arcade Volleyball (2006), Grabble (2006), GUSANOS (2006), Jake2 (2006), JQuest (2006), Linley's Dungeon Crawl (2006), Metal Mech (2006), OpenMortal (2006), Rogue Clone IV (2006), RPDungeon - computer aided role playing (2006), StarBlastrix (2006), Thrust (2006), A7Xpg (2005), Abe's Amazing Adventure (2005), Bombic (2005), Crack Attack! (2005), GalaxyNG (2005), H-World (2005), Heart of the Alien (2005), JFDuke3D (2005), JonoF's Shadow Warrior Port (JFSW) (2005), Ladder (2005), Lincity (2005), Microracers (2005), Spice Trade (2005), Tumiki Fighters (2005), WAtomic (2005), Xconq (2005), ZAngband (2005), 3D Pong (2004), Aklabeth (2004), Colonization too (2004), Digger Remastered (2004), Gee Whiz (2004), GM Tools (2004), I Have No Tomatoes (2004), Jump'n'Bump (2004), Krystal Drop (2004), Nighthawk (2004), Noiz2sa (2004), NStars! (2004), Openglad (2004), PySol (2004), rRootage (2004), SolarWolf (2004), T-Bots (2004), Vorton (2004), Alex the Allegator 4 (2003), AntiChess (2003), Apricots (2003), Cat Mother Dead Justice (2003), Civil (2003), Freeciv Alpha Centauri project (2003), Ice Breaker (2003), Machinations (2003), PARSEC47 (2003), Pathological (2003), Pizza Business (2003), Planetary Hoppers (2003), Sopwith 3 (2003), The Clans (2003), Wargamer (2003), XArchon (2003), Anagramarama (2002), Batalla Naval (2002), Deathchase 3D (2002), Maelstrom (2002), Umbra (2002), Vectoroids (2002), 54321 (2001), Greenius' Civil War (2001), Tux Racer (2001), 3Dc (2000), ACM (2000), Circus Linux! (2000), Operation Citadel (2000), xdigger (1999), ICBM3D (1998) ## Code Languages @@ -19,21 +19,21 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco - C++ (35.5%) - C (24.3%) -- Java (8.2%) -- Python (6.9%) -- JavaScript (6.2%) +- Java (8.3%) +- Python (7.0%) +- JavaScript (6.1%) - Lua (4.7%) -- C# (3.4%) +- C# (3.3%) - Pascal (1.5%) - PHP (1.4%) - Objective-C (0.8%) - TypeScript (0.6%) - Assembly (0.5%) - GDScript (0.5%) -- D (0.4%) +- D (0.3%) +- Perl (0.3%) - AngelScript (0.3%) - Haxe (0.3%) -- Perl (0.3%) - Rust (0.3%) - CoffeeScript (0.2%) - Haskell (0.2%) @@ -80,22 +80,22 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco ##### Licenses frequency -- GPL-2.0 (34.1%) -- GPL-3.0 (25.4%) +- GPL-2.0 (33.8%) +- GPL-3.0 (25.3%) - MIT (16.2%) - Custom (3.5%) - Apache-2.0 (2.7%) -- zlib (2.4%) +- zlib (2.5%) +- 3-clause BSD (2.1%) - ? (2.1%) -- 3-clause BSD (1.9%) - LGPL-2.1 (1.5%) -- AGPL-3.0 (1.4%) -- LGPL-3.0 (1.1%) +- AGPL-3.0 (1.3%) +- LGPL-3.0 (1.3%) - 2-clause BSD (0.9%) - Public domain (0.7%) -- MPL-2.0 (0.5%) - LGPL-2.0 (0.5%) -- WTFPL (0.5%) +- MPL-2.0 (0.5%) +- WTFPL (0.4%) - CC0 (0.4%) - CC-BY-NC (0.3%) - GPL (0.3%) @@ -133,7 +133,7 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco ##### Keywords frequency -- remake (17.1%) +- remake (17.0%) - strategy (8.2%) - action (6.9%) - role playing (5.6%) @@ -144,18 +144,18 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco - open content (3.2%) - puzzle (3.1%) - simulation (2.9%) -- shooter (2.9%) +- shooter (2.8%) - framework (2.6%) - arcade (2.3%) - turn-based (1.4%) - adventure (1.3%) -- platform (1.2%) - 2D (1.2%) +- platform (1.2%) +- library (1.2%) - real time (1.1%) -- library (1.1%) +- tool (1.1%) - roguelike (1.0%) - skill (1.0%) -- tool (1.0%) - racing (0.8%) - first-person (0.8%) - online (0.7%) @@ -165,8 +165,8 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco - 3D (0.6%) - space (0.6%) - free content (0.5%) +- sandbox (0.5%) - singleplayer (0.5%) -- sandbox (0.4%) - text-based (0.4%) - voxel (0.4%) - music (0.4%) @@ -292,6 +292,7 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco - rendering (0.0%) - requires additional content (0.0%) - requires content (0.0%) +- requires online access (0.0%) - requires original engine (0.0%) - requires original game content (0.0%) - role-playing (0.0%) @@ -308,32 +309,33 @@ Spludlow Tetris (XX), WarMUX (XX), Orbit-Hopper (2019), AssaultCube (2018), Baco - tank (0.0%) - tetris (0.0%) - tetris-like (0.0%) +- tower defense (0.0%) - transport (0.0%) - tux (0.0%) ## Entries without download or play fields -427: 3D Pong, 3Dc, 4D Maze Game, 4D-TRIS, 54321, a2x, ACM, Adanaxis, Advanced Strategic Command, adventure engine, AI Wars, Airstrike, Alimer, alive, Amphetamine, Anagramarama, Ancient Beast, Angry Birds in Python, Antares, antiyoy, Apricots, aquastax, Arcane-Engine, Armor Alley, AssaultCube, Athenaeum, ativayeban, Atomix, Atrinik, Bacon2D, Ball and Paddle, Ball And Wall, Ballerburg SDL, Barony, Bastet, Battle City, Battleround, Battles of Antargis, Beat Harvester, Berusky II, BitRiot, BlakedAwesomenaughts, Blitwizard, Blob Wars : Attrition, boardgame.io, Bombic2, Bombman, BOOM: Remake, Box2D, bratwurst, Breakout-VR, Bridge Command, BrowserQuest, Bt Builder, C3DE, c64-nuclearreaction, Cabbages and Kings, Castle Game Engine, Castle of the Winds in Elm, Cataclysm, CatacombSDL, CaveExpress, CavePacker, cc94, CCCP, CETech, chainreaction, Chocolate Duke3D, Choria, Chronoshift, Civilization: Call To Power 2 Source Project, CivOne, ClanLib, Classic Blades of Exile, coab, Colossal Cave Adventure, CommandoJS, Core War, Craft, CrappyBird, Crown, CrystalQuest, Cubosphere, D2X-XL, Dark Destiny, Dash Engine, Data Storm, Dawn, Deathchase 3D, Dedalus, DelverEngine, DemiGod, DesktopAdventures, Devilution, DevilutionX, DGEngine, diablo-js, Digbuild, Digital: A Love Story, Dingo-Engine, DirectX12GameEngine, Do It Yourself Doom With SDL, DOOM, Dragon Hunt, DreeRally, Duke3D, Dune 2 - The Maker, Dungeon Monkey Eternal, Dungeon Quest, DwarfCorp, Ecksdee, Endgame: Singularity, EnTT Pacman, EPOH, erampage, EternalWinterWars, Evil Cult, F.LF, Fallen Spire, Falling Time, Fantasy Map Generator, Fanwor, FAR Colony, Flex Engine, fonline, FQuake3, Free in the Dark (engine), freeablo, freeaoe, FreeBlocks, Freeciv-web, FreeFalcon, freegish, Freekick 3, Freeminer, FreeRCT, FreeSiege, Freestars, Frets on Fire X, Friking Shark, Fujo, GalaxyMage Redux, GameCake, GameLV, GDHexGrid, GeonBit.UI, ges-code, Gigalomania, gist-txt, GL4ES, glPortal, Gnomescroll, Goblin Camp, GoldenEye: Source, Gorc, Gorillas, Gorillas-rs, Grail, Greenius' Civil War, Griefly, Grobots, H-Craft Championship, Hardwar, HarfBuzz, Harris, Hematite, Heroes of Wesnoth, Hex Game, heXon, Hextris, Hexwar, Hocoslamfy, Hovertank3D, HTML5 Pacman, Hypatia, Iceball, ika, Inexor, IO Reboot, Iris2, Jagged Alliance 2 Stracciatella, javascript-E.T., Jazz² Resurrection, JediOutcastLinux, Jet-Story, jewelthief, JiGS Interactive Game System, Julius, Jump'n'Bump, Just another Tetris™ clone, KAtomic, Keen Dreams, KeeperRL, KGoldrunner, Kingdoms, KittenMaxit, KnightOfWor, ladder, Land of Fire, LastTry, Lemmings.ts, Lemmini, LGeneral, libpng, Libre Pinball, Lincity, Lionheart Remake, Lips of Suna, Lix, Lords of the Fey, LordsAWar!, lttp-phaser, LÖVE, M.E.W.L., MAGE - Matthias Advanced Game Engine, Marblez, Mario Objects, MechCommander 2 Omnitech, Memory Game, Mercenary Commander, Meritous, Micropolis, micropolisJS, MineCraft-One-Week-Challenge, Minesweeper (in C), Mininim, Mirror Magic, mk.js, mkxp, Monsters and Mushrooms, Morpheus Web Remake, movbizz, Mr.Boom, Nazara Engine, NBlood, Netacka, NFSIISE, Noiz2sa, Nuncabola, Nuvie, NXEngine-evo, Octaforge, Odamex, Omnispeak, One Way To Go, Open AL Soft, Open Creatures, Open Cube, Open Fodder, Open Hexagon, Open Jumpgate, Open Legend RPG, Open Panzer, Open RSC, Open Soccer Star, Open Zelda, openage, openblack, OpenC1, OpenClaw, OpenCrystalCaves, OpenDominion, openDOW, OpenFire, OpenGL Test Drive Remake, OpenHoW, OpenITG, OpenKeeper, OpenLiero, OpenMC2, OpenMoM, OpenNFS, OpenNotrium, OpenRW, OpenSC2K, OpenSkyscraper, OpenSoccer, OpenSR, OpenSWE1R, OpenTESArena, OpenTriad, OpenVIII, OPMon, Orbit-Hopper, Orbium, orona, Ostrich Riders, Our Personal Space, Outpost HD, ouzel, Panel Attack, Paper Isaac, PARSEC47, Pathological, Pax Britannica, Penumbra, Polis, POSTAL 1 Open Source, Powerslide remake, pq2, Prescription Wars, Procedural Map Generator, Pthreads-win32, Pygame---Alien-Invasion, pyORPG, Quartz Engine, RacerJS, Ragel, ransack, RBDOOM-3-BFG, Reflection Keen, ReQbert, Return of Dr. Destructo, rFXGen, Rigs of Rods, Riiablo, Rise of the Triad for Linux, rock-raiders-remake, Roguish, Room for Change, RPG Paper Maker, rpge, rRootage, Scorched Moon, Scrabble3D, SDLPoP, sensitive-js, Sentient Storage, shadow-of-the-beast-html5, Shadowgrounds, Siege of Avalon : Open Source, Simple-Solitaire, Sine, Sintel The Game, Skifree-HTML5-clone, Slime Volleyball, Slot-Racers, Smash, snake, Song of Albion, Source of Tales, Sourcehold, Space Harrier Clone, Space Nerds In Space, Space Station 13, Spartan Engine, splexhd, Spooker Framework, Spring: 1944, SS13 Remake, Star Ruler 2, star-control2, Star-Wars-III, starshatter-open, Stendhal, Strife: Veteran Edition, sundog, Supaxl, super-methane-brothers-gx, SuperFoulEgg, SuperStarfighter, SWP, Taggem, Tank: Zone of Death, Tanks of Freedom, Tapir, Tenes Empanadas Graciela, Terasology, terrarium, Tetris (in C and NCURSES), The Powder Toy, thiefcatcher, Thunder Engine, Thyme, Tile World, Tiny Wings, TOMB5, Torrega Race, Total Annihilation 3D, Train, Trinity Reign, TrueCraft, TTDPatch, Tumbly Towers, Turious, Turn of War, TurokEX, TVTower, twin-e, Twine, TwinEngine, Tyrian Remake, TyrQuake, UA_source, UFO2000, UlDunAd, uMario, UnCiv, Undum, uninvited, VCMI, VDrift, Veloren, VGC, VQEngine, WallBall, War Of Kingdom, warcraft-remake, Wario-Land-3, WarMUX, Waste's Edge, WebFun, Wizznic!, wkbre, WWW, Xenowar, XorCurses, XSera, XZ Utils, Yamagi Quake II, yaml-cpp, Yet Another Engine, Zatacka X, Zelda: Mystery of Solarus DX, Zetawar, zlib, zorkClone +432: 3D Pong, 3Dc, 4D Maze Game, 4D-TRIS, 54321, a2x, ACM, Adanaxis, Advanced Strategic Command, adventure engine, AI Wars, Airstrike, Alimer, alive, Amphetamine, Anagramarama, Ancient Beast, Angry Birds in Python, Antares, antiyoy, Anura, Apricots, aquastax, Arcane-Engine, Armor Alley, AssaultCube, Athenaeum, ativayeban, Atomix, Atrinik, Bacon2D, Ball and Paddle, Ball And Wall, Ballerburg SDL, Barony, Bastet, Battle City, Battleround, Battles of Antargis, Beat Harvester, Berusky II, BitRiot, BlakedAwesomenaughts, Blitwizard, Blob Wars : Attrition, boardgame.io, Bombic2, Bombman, BOOM: Remake, Box2D, bratwurst, Breakout-VR, Bridge Command, BrowserQuest, Bt Builder, C3DE, c64-nuclearreaction, Cabbages and Kings, Castle Game Engine, Castle of the Winds in Elm, Cataclysm, CatacombSDL, CaveExpress, CavePacker, cc94, CCCP, CETech, chainreaction, Chocolate Duke3D, Choria, Chronoshift, Civilization: Call To Power 2 Source Project, CivOne, ClanLib, Classic Blades of Exile, coab, Colossal Cave Adventure, CommandoJS, Core War, Craft, CrappyBird, CrossUO, Crown, CrystalQuest, Cubosphere, D2X-XL, Dark Destiny, Dash Engine, Data Storm, Dawn, Deathchase 3D, Dedalus, DelverEngine, DemiGod, DesktopAdventures, Devilution, DevilutionX, DGEngine, diablo-js, Digbuild, Digital: A Love Story, Dingo-Engine, DirectX12GameEngine, Do It Yourself Doom With SDL, DOOM, Dragon Hunt, DreeRally, Duke3D, Dune 2 - The Maker, Dungeon Monkey Eternal, Dungeon Quest, DwarfCorp, Ecksdee, Endgame: Singularity, EnTT Pacman, EPOH, erampage, EternalWinterWars, Evil Cult, F.LF, Fallen Spire, Falling Time, Fantasy Map Generator, Fanwor, FAR Colony, Flex Engine, flixel-gdx, fonline, FQuake3, Free in the Dark (engine), freeablo, freeaoe, FreeBlocks, Freeciv-web, FreeFalcon, freegish, Freekick 3, Freeminer, FreeRCT, FreeSiege, Freestars, Frets on Fire X, Friking Shark, Fujo, GalaxyMage Redux, GameCake, GameLV, GDHexGrid, GeonBit.UI, ges-code, Gigalomania, gist-txt, GL4ES, glPortal, Gnomescroll, Goblin Camp, GoldenEye: Source, Gorc, Gorillas, Gorillas-rs, Grail, Greenius' Civil War, Griefly, Grobots, H-Craft Championship, Hardwar, HarfBuzz, Harris, Hematite, Heroes of Wesnoth, Hex Game, heXon, Hextris, Hexwar, Hocoslamfy, Hovertank3D, HTML5 Pacman, Hypatia, Iceball, ika, Inexor, IO Reboot, Iris2, Jagged Alliance 2 Stracciatella, javascript-E.T., Jazz² Resurrection, JediOutcastLinux, Jet-Story, jewelthief, JiGS Interactive Game System, Julius, Jump'n'Bump, Just another Tetris™ clone, KAtomic, Keen Dreams, KeeperRL, KGoldrunner, Kingdoms, KittenMaxit, KnightOfWor, ladder, Land of Fire, LastTry, Lemmings.ts, Lemmini, LGeneral, libpng, Libre Pinball, Lincity, Lionheart Remake, Lips of Suna, Lix, Lords of the Fey, LordsAWar!, lttp-phaser, LÖVE, M.E.W.L., MAGE - Matthias Advanced Game Engine, Marblez, Mario Objects, MechCommander 2 Omnitech, Memory Game, Mercenary Commander, Meritous, Micropolis, micropolisJS, MineCraft-One-Week-Challenge, Minesweeper (in C), Mininim, Mirror Magic, mk.js, mkxp, Monsters and Mushrooms, Morpheus Web Remake, movbizz, Mr.Boom, Nazara Engine, NBlood, Netacka, NFSIISE, Noiz2sa, Nuncabola, Nuvie, NXEngine-evo, Octaforge, Odamex, Omnispeak, One Way To Go, Open AL Soft, Open Creatures, Open Cube, Open Fodder, Open Hexagon, Open Jumpgate, Open Legend RPG, Open Panzer, Open RSC, Open Soccer Star, Open Zelda, openage, openblack, OpenC1, OpenClaw, OpenCrystalCaves, OpenDominion, openDOW, OpenFire, OpenGL Test Drive Remake, OpenHoW, OpenITG, OpenKeeper, OpenLiero, OpenMC2, OpenMoM, OpenNFS, OpenNotrium, OpenRW, OpenSC2K, OpenSkyscraper, OpenSoccer, OpenSR, OpenSWE1R, OpenTESArena, OpenTriad, OpenVIII, OPMon, Orbit-Hopper, Orbium, orona, Ostrich Riders, Our Personal Space, Outpost HD, ouzel, Panel Attack, Paper Isaac, PARSEC47, Pathological, Pax Britannica, Penumbra, Polis, POSTAL 1 Open Source, Powerslide remake, pq2, Prescription Wars, Procedural Map Generator, Pthreads-win32, Pygame---Alien-Invasion, pyORPG, pyscroll, PyTMX, Quartz Engine, RacerJS, Ragel, ransack, RBDOOM-3-BFG, Reflection Keen, ReQbert, Return of Dr. Destructo, rFXGen, Rigs of Rods, Riiablo, Rise of the Triad for Linux, rock-raiders-remake, Roguish, Room for Change, RPG Paper Maker, rpge, rRootage, Scorched Moon, Scrabble3D, SDLPoP, sensitive-js, Sentient Storage, shadow-of-the-beast-html5, Shadowgrounds, Siege of Avalon : Open Source, Simple-Solitaire, Sine, Sintel The Game, Skifree-HTML5-clone, Slime Volleyball, Slot-Racers, Smash, snake, Song of Albion, Source of Tales, Sourcehold, Space Harrier Clone, Space Nerds In Space, Space Station 13, Spartan Engine, splexhd, Spooker Framework, Spring: 1944, SS13 Remake, Star Ruler 2, star-control2, Star-Wars-III, starshatter-open, Stendhal, Strife: Veteran Edition, sundog, Supaxl, super-methane-brothers-gx, SuperFoulEgg, SuperStarfighter, SWP, Taggem, Tank: Zone of Death, Tanks of Freedom, Tapir, Tenes Empanadas Graciela, Terasology, terrarium, Tetris (in C and NCURSES), The Powder Toy, thiefcatcher, Thunder Engine, Thyme, Tile World, Tiny Wings, TOMB5, Torrega Race, Total Annihilation 3D, Train, Trinity Reign, TrueCraft, TTDPatch, Tumbly Towers, Turious, Turn of War, TurokEX, TVTower, twin-e, Twine, TwinEngine, Tyrian Remake, TyrQuake, UA_source, UFO2000, UlDunAd, uMario, UnCiv, Undum, uninvited, VCMI, VDrift, Veloren, VGC, VQEngine, WallBall, War Of Kingdom, warcraft-remake, Wario-Land-3, WarMUX, Waste's Edge, WebFun, Wizznic!, wkbre, WWW, Xenowar, XorCurses, XSera, XZ Utils, Yamagi Quake II, yaml-cpp, Yet Another Engine, Zatacka X, Zelda: Mystery of Solarus DX, Zetawar, zlib, zorkClone ## Entries with a code repository not on a popular site -45: Abe's Amazing Adventure, Ball and Paddle, Batalla Naval, Billiards, Blender game engine, Crack Attack!, DarkPlaces, Deathchase 3D, Duke3D, Fanwor, FreeRails, FreeType, GNU FreeDink, GUSANOS, Hexoshi, KAtomic, KGoldrunner, Libre: The Open Source Card Game, Libxml2, LordsAWar!, Mechanized Assault & eXploration Reloaded, Mocha Doom, Netrek, NetStatsBaseball, Nexuiz, NStars!, Open AL Soft, Open Rails, pkg-config, PrBoom+, ProQuake 4, Ragel, Rise of the Triad for Linux, Rocks'n'Diamonds, Simple DirectMedia Layer, SolarWolf, Tales of Maj'Eyal, The Dark Mod, Turious, Waste's Edge, WebChess, Wolfpack Empire, X-Moto, XPilot NG, XZ Utils +43: Abe's Amazing Adventure, Ball and Paddle, Batalla Naval, Billiards, Blender game engine, Crack Attack!, DarkPlaces, Duke3D, Fanwor, FreeRails, FreeType, GNU FreeDink, GUSANOS, Hexoshi, KAtomic, KGoldrunner, Libre: The Open Source Card Game, Libxml2, LordsAWar!, Mechanized Assault & eXploration Reloaded, Mocha Doom, Netrek, NetStatsBaseball, Nexuiz, NStars!, Open AL Soft, Open Rails, pkg-config, PrBoom+, ProQuake 4, Ragel, Rise of the Triad for Linux, Rocks'n'Diamonds, Simple DirectMedia Layer, Tales of Maj'Eyal, The Dark Mod, Turious, Waste's Edge, WebChess, Wolfpack Empire, X-Moto, XPilot NG, XZ Utils ## Code dependencies -With code dependency field 367 (34.0%) +With code dependency field 371 (34.1%) ##### Code dependencies frequency - SDL (19.6%) -- SDL2 (9.8%) -- pygame (7.3%) +- SDL2 (9.7%) +- pygame (7.5%) - OpenGL (4.5%) - SFML (2.8%) +- libGDX (2.4%) - OpenAL (2.4%) -- Allegro (2.3%) -- Qt (2.3%) -- libGDX (2.1%) +- Allegro (2.2%) +- Qt (2.2%) - MonoGame (1.3%) - numpy (1.3%) - pillow (1.3%) @@ -342,11 +344,11 @@ With code dependency field 367 (34.0%) - WebGL (1.1%) - zlib (1.1%) - Unity (0.9%) -- Blender game engine (0.8%) -- Godot engine (0.8%) -- libpng (0.8%) -- LÖVE (0.8%) -- Mono (0.8%) +- Blender game engine (0.7%) +- Godot engine (0.7%) +- libpng (0.7%) +- LÖVE (0.7%) +- Mono (0.7%) - Boost (0.6%) - Freetype (0.6%) - GTK (0.6%) @@ -412,8 +414,8 @@ With code dependency field 367 (34.0%) - JavaFX (0.2%) - jMonkeyEngine (0.2%) - jogl (0.2%) -- jQuery (0.2%) - JQuery (0.2%) +- jQuery (0.2%) - LambdaHack (0.2%) - libdx (0.2%) - libopenmpt (0.2%) @@ -481,8 +483,8 @@ With code dependency field 367 (34.0%) - Urho3D (0.2%) - utfcpp (0.2%) - VDrift Engine (0.2%) -- Vorbis (0.2%) - vorbis (0.2%) +- Vorbis (0.2%) - Vulkan (0.2%) - WildMidi (0.2%) - Xaw3d (0.2%) @@ -493,18 +495,18 @@ With code dependency field 367 (34.0%) ## Build systems -Build systems information available for 34.0% of all projects. +Build systems information available for 34.2% of all projects. -##### Build systems frequency (367) +##### Build systems frequency (372) -- CMake (50.7%) +- CMake (50.3%) - Make (19.9%) -- Autoconf (9.5%) -- Gradle (6.3%) +- Autoconf (9.7%) +- Gradle (6.5%) - Scons (2.7%) - Maven (1.9%) - setup.py (1.9%) -- VisualStudio (1.6%) +- VisualStudio (1.9%) - Custom (1.1%) - QMake (1.1%) - premake (0.8%) @@ -517,24 +519,24 @@ Build systems information available for 34.0% of all projects. - Rake (0.3%) - Xcode project (0.3%) -##### C and C++ projects without build system information (382) +##### C and C++ projects without build system information (384) -2H4U, 3D Pong, 3Dc, 54321, Abuse, ACM, Adanaxis, Afternoon Stalker, Airstrike, Aklabeth, Aleph One, alive, Amphetamine, Anagramarama, Angband, Antares, Armagetron Advanced, Armies, ativayeban, Atlantis, Atomic Tanks, Atomiks, Atomix, Attal: Lords of doom, AutoREALM, Avanor, Ball and Paddle, Barony, Batrachians, Battle City, Battle Tanks, Battles of Antargis, Between, Biniax, Birth of the Empires, Blitwizard, Blob Wars : Attrition, Blobby Volley 2, Blobwars: Metal Blob Solid, BlockOut II, Bombermaaan, Bombic2, Boost (C++ Libraries), Bos Wars, Boson, Bridge Command, BRIQUOLO, Brutal Chess, Bt Builder, BurgerSpace, c64-nuclearreaction, Cadaver, Cat Mother Dead Justice, Cataclysm, Catch Challenger, cc94, CCCP, CETech, Circus Linux!, Civilization: Call To Power 2 Source Project, Classic Blades of Exile, Classic RBDOOM-3-BFG, Clonepoint, Colonization too, Conquests, Core War, CorEngine, Cosmosmash, Crossfire, Crown and Cutlass, Crypto++, Cytadela, D2X-XL, Daimonin, Danger from the Deep, Dark Oberon, DarkPlaces, Data Storm, Dave Gnukem, Dawn, Dear ImGui, Deathchase 3D, Defendguin, Deliantra, DeSmuME, Digger Remastered, DOOM, Doom Legacy, DOOM-iOS, DreeRally, Duel Commander, Duke3D, Duke3d_w32, Dune Dynasty, Dune Legacy, Dungeon Craft, Dungeon Crawl Stone Soup, Dungeon Mapper, DXX-Rebirth, Ecksdee, EDuke32, Endless Sky, ENIGMA (development environment), EnTT Pacman, Epiar, erampage, Erebus, Escape Towards The Unknown, Eternal Lands, Evol Online, Exult, ezQuake, F-1 Spirit, Fall of Imiryn, Fanwor, Flex Engine, Forsaken, Free Heroes 2, Free in the Dark (engine), Free Space Colonization, Freeciv Alpha Centauri project, FreeFalcon, Freekick 3, Freeminer, Freenukum Jump'n Run, FreePrince, FreeRails, Freestars, Galaxy Forces V2, GalaxyNG, GameLV, GDash, Gee Whiz, Gigalomania, Globulation 2, GLtron, GM Tools, Gnomescroll, GNU FreeDink, Goblin Camp, Goblin Hack, Golly, GPL Arcade Volleyball, Greenius' Civil War, Grit Game Engine, Grobots, GUSANOS, Gusty's Serpents, H-Craft Championship, H-World, Hammer of Thyrion, Harris, Haxima, Heart of the Alien, Heroes of Wesnoth, Hex Game, HolySpirit, Hovertank3D, I Have No Tomatoes, ICBM3D, Ice Breaker, Inexor, iortcw, Irrlicht Engine, Iter Vehemens ad Necem, Jagged Alliance 2 Stracciatella, Jet-Story, JFDuke3D, JonoF's Shadow Warrior Port (JFSW), Jump'n'Bump, KAtomic, Keen Dreams, KeeperRL, KGoldrunner, kiki the nano bot, Knights, KQ Lives, Krystal Drop, l-echo, Labyrinth of Worlds, LGames, LGeneral, libGDX, libpng, Libxml2, Lightweight Java Game Library, Lincity, LinCity-NG, Linley's Dungeon Crawl, Linwarrior 3D, Lips of Suna, Lix, Lua, Lumix Engine, LZMA SDK, M.E.W.L., Machinations, Mars, Land of No Mercy, Maxit, MechCommander 2 Omnitech, Mega Mario, Meridian 59, Meritous, MineCraft-One-Week-Challenge, Minesweeper (in C), Mirror Magic, Moria, Mr.Boom, Naev, NBlood, NetHack, NetPanzer, Netrek, Neverball, Nexuiz, NFSIISE, Nighthawk, NLarn, Noiz2sa, Oolite, Open AL, Open Fodder, Open Hexagon, Open Horizon, Open Jumpgate, Open Meridian, Open Rodent's Revenge, Open RPG Maker, Open Syobon Action, Open Yahtzee, Open Zelda, openage, OpenArena, OpenCity, OpenCrystalCaves, OpenDUNE, OpenDungeons, OpenFire, OpenGGS, OpenGL Test Drive Remake, Openglad, OpenHoMM, OpenLara, OpenLiero, OpenMC2, OpenMW, OpenNFS, OpenNotrium, OpenSSL, OpenTitus, OpenTyrian, Operation Citadel, Orbit-Hopper, Orx, Other-Life, ouzel, Panda 3D, Pax Britannica, Phantasy Star Rebirth, Pioneers, Pizza Business, pkg-config, PlaneShift, PokerTH, POSTAL 1 Open Source, pq2, PrBoom+, Procedural Map Generator, Project Carrot, ProQuake 4, Pthreads-win32, pycraft, pygame, Qt, QuakeSpasm, Ragel, RBDOOM-3-BFG, Red Eclipse, Reflection Keen, REGoth, ResidualVM, Return to the Roots, rFXGen, Rise of the Triad for Linux, Rockbot, Rocks'n'Diamonds, Rogue Clone IV, Rolisteam, rRootage, S.C.O.U.R.G.E., sandbox Game Maker, Scorched3D, SDL Asylum, SDL Bomber, SDL Game Engine 2D, SDL Sopwith, Secret Maryo Chronicles, Sengoku: Warring States of Japan, Seven Kingdoms: Ancient Adversaries, sfall, Shockolate, Simutrans, Sine, SLADE, Slime Volleyball, Smash Battle, Song of Albion, Space Harrier Clone, SpaceZero, splexhd, Star Ruler 2, star-control2, StarBlastrix, starshatter-open, Strife: Veteran Edition, Stunt Car Racer Remake, Summoning Wars, sundog, Super Methane Brothers, SuperFoulEgg, SuperTux, SuperTuxKart, SWIG, Syndicate Wars Port, T-Bots, Tales of Maj'Eyal, Tank: Zone of Death, Tapir, Tenes Empanadas Graciela, The Clans, The Endless Dungeons, The Epic of Heroes, The Legend of Edgar, The Powder Toy, The Secret Chronicles of Dr. M., Theme Park Builder 3D CAD, Thousand Parsec, Thrust, Tile World, TinTin++, Tiny Wings, Toppler, TORCS, The Open Racing Car Simulator, TowerJumper, Trackballs, Transfusion, Tremulous, TTDPatch, Turious, TurokEX, Tux Racer, twin-e, UFO2000, Underworld Adventures, UnNetHack, VCMI, Vega Strike, Vocaluxe, War Of Kingdom, Wargamer, Wargus, WarMUX, Witch Blast, Wizznic!, Wolfpack Empire, WorldForge, wxWidgets, X-Moto, XArchon, Xconq, xdigger, xDuke, Xenowar, Xonotic, XPilot, XPilot NG, XScavenger, XSera, XZ Utils, ZAngband, Zelda Classic, Zod Engine +2H4U, 3D Pong, 3Dc, 54321, Abuse, ACM, Adanaxis, Afternoon Stalker, Airstrike, Aklabeth, Aleph One, alive, Amphetamine, Anagramarama, Angband, Antares, Anura, Armagetron Advanced, Armies, ativayeban, Atlantis, Atomic Tanks, Atomiks, Atomix, Attal: Lords of doom, AutoREALM, Avanor, Ball and Paddle, Barony, Batrachians, Battle City, Battle Tanks, Battles of Antargis, Between, Biniax, Birth of the Empires, Blitwizard, Blob Wars : Attrition, Blobby Volley 2, Blobwars: Metal Blob Solid, BlockOut II, Bombermaaan, Bombic2, Boost (C++ Libraries), Bos Wars, Boson, Bridge Command, BRIQUOLO, Brutal Chess, Bt Builder, BurgerSpace, c64-nuclearreaction, Cadaver, Cat Mother Dead Justice, Cataclysm, Catch Challenger, cc94, CCCP, CETech, Circus Linux!, Civilization: Call To Power 2 Source Project, Classic Blades of Exile, Classic RBDOOM-3-BFG, Clonepoint, Colonization too, Conquests, Core War, CorEngine, Cosmosmash, Crossfire, Crown and Cutlass, Crypto++, Cytadela, D2X-XL, Daimonin, Danger from the Deep, Dark Oberon, DarkPlaces, Data Storm, Dave Gnukem, Dawn, Dear ImGui, Deathchase 3D, Defendguin, Deliantra, DeSmuME, Digger Remastered, DOOM, Doom Legacy, DOOM-iOS, DreeRally, Duel Commander, Duke3D, Duke3d_w32, Dune Dynasty, Dune Legacy, Dungeon Craft, Dungeon Crawl Stone Soup, Dungeon Mapper, DXX-Rebirth, Ecksdee, EDuke32, Endless Sky, ENIGMA (development environment), EnTT Pacman, Epiar, erampage, Erebus, Escape Towards The Unknown, Eternal Lands, Evol Online, Exult, ezQuake, F-1 Spirit, Fall of Imiryn, Fanwor, Flex Engine, Forsaken, Free Heroes 2, Free in the Dark (engine), Free Space Colonization, Freeciv Alpha Centauri project, FreeFalcon, Freekick 3, Freeminer, Freenukum Jump'n Run, FreePrince, FreeRails, Freestars, Galaxy Forces V2, GalaxyNG, GameLV, GDash, Gee Whiz, Gigalomania, Globulation 2, GLtron, GM Tools, Gnomescroll, GNU FreeDink, Goblin Camp, Goblin Hack, Golly, GPL Arcade Volleyball, Greenius' Civil War, Grit Game Engine, Grobots, GUSANOS, Gusty's Serpents, H-Craft Championship, H-World, Hammer of Thyrion, Harris, Haxima, Heart of the Alien, Heroes of Wesnoth, Hex Game, HolySpirit, Hovertank3D, I Have No Tomatoes, ICBM3D, Ice Breaker, Inexor, iortcw, Irrlicht Engine, Iter Vehemens ad Necem, Jagged Alliance 2 Stracciatella, Jet-Story, JFDuke3D, JonoF's Shadow Warrior Port (JFSW), Jump'n'Bump, KAtomic, Keen Dreams, KeeperRL, KGoldrunner, kiki the nano bot, Knights, KQ Lives, Krystal Drop, l-echo, Labyrinth of Worlds, LGames, LGeneral, libGDX, libpng, Libxml2, Lightweight Java Game Library, Lincity, LinCity-NG, Linley's Dungeon Crawl, Linwarrior 3D, Lips of Suna, Lix, Lua, Lumix Engine, LZMA SDK, M.E.W.L., Machinations, Mars, Land of No Mercy, Maxit, MechCommander 2 Omnitech, Mega Mario, Meridian 59, Meritous, MineCraft-One-Week-Challenge, Minesweeper (in C), Mirror Magic, Moria, Mr.Boom, Naev, NBlood, NetHack, NetPanzer, Netrek, Neverball, Nexuiz, NFSIISE, Nighthawk, NLarn, Noiz2sa, Oolite, Open AL, Open Fodder, Open Hexagon, Open Horizon, Open Jumpgate, Open Meridian, Open Rodent's Revenge, Open RPG Maker, Open Syobon Action, Open Yahtzee, Open Zelda, openage, OpenArena, OpenCity, OpenCrystalCaves, OpenDUNE, OpenDungeons, OpenFire, OpenGGS, OpenGL Test Drive Remake, Openglad, OpenHoMM, OpenLara, OpenLiero, OpenMC2, OpenMW, OpenNFS, OpenNotrium, OpenSSL, OpenTitus, OpenTyrian, Operation Citadel, Orbit-Hopper, Orx, Other-Life, ouzel, Panda 3D, Pax Britannica, Phantasy Star Rebirth, Pioneers, Pizza Business, pkg-config, PlaneShift, PokerTH, POSTAL 1 Open Source, pq2, PrBoom+, Procedural Map Generator, Project Carrot, ProQuake 4, Psyco, Pthreads-win32, pycraft, pygame, Qt, QuakeSpasm, Ragel, RBDOOM-3-BFG, Red Eclipse, Reflection Keen, REGoth, ResidualVM, Return to the Roots, rFXGen, Rise of the Triad for Linux, Rockbot, Rocks'n'Diamonds, Rogue Clone IV, Rolisteam, rRootage, S.C.O.U.R.G.E., sandbox Game Maker, Scorched3D, SDL Asylum, SDL Bomber, SDL Game Engine 2D, SDL Sopwith, Secret Maryo Chronicles, Sengoku: Warring States of Japan, Seven Kingdoms: Ancient Adversaries, sfall, Shockolate, Simutrans, Sine, SLADE, Slime Volleyball, Smash Battle, Song of Albion, Space Harrier Clone, SpaceZero, splexhd, Star Ruler 2, star-control2, StarBlastrix, starshatter-open, Strife: Veteran Edition, Stunt Car Racer Remake, Summoning Wars, sundog, Super Methane Brothers, SuperFoulEgg, SuperTux, SuperTuxKart, SWIG, Syndicate Wars Port, T-Bots, Tales of Maj'Eyal, Tank: Zone of Death, Tapir, Tenes Empanadas Graciela, The Clans, The Endless Dungeons, The Epic of Heroes, The Legend of Edgar, The Powder Toy, The Secret Chronicles of Dr. M., Theme Park Builder 3D CAD, Thousand Parsec, Thrust, Tile World, TinTin++, Tiny Wings, Toppler, TORCS, The Open Racing Car Simulator, TowerJumper, Trackballs, Transfusion, Tremulous, TTDPatch, Turious, TurokEX, Tux Racer, twin-e, UFO2000, Underworld Adventures, UnNetHack, VCMI, Vega Strike, Vocaluxe, War Of Kingdom, Wargamer, Wargus, WarMUX, Witch Blast, Wizznic!, Wolfpack Empire, WorldForge, wxWidgets, X-Moto, XArchon, Xconq, xdigger, xDuke, Xenowar, Xonotic, XPilot, XPilot NG, XScavenger, XSera, XZ Utils, ZAngband, Zelda Classic, Zod Engine -##### C and C++ projects with a build system different from CMake (185) +##### C and C++ projects with a build system different from CMake (186) -Alimer, Allegro, Annchienta, Arx Libertatis, AstroMenace, Atrinik, Ballerburg SDL, BitRiot, Blender game engine, Block Attack - Rise of the Blocks, BOOM: Remake, BStone, C-Dogs SDL, CaesarIA, Cannonball, CatacombSDL, CaveExpress, CavePacker, Chocolate Doom, Choria, Chronoshift, COCOS2D-X, Colobot: Gold Edition, Commander Genius, CorsixTH, Craft, Cubosphere, Curse of War, DesktopAdventures, DevilutionX, DGEngine, dhewm3, DNT, DOOM Retro, Doom64EX, Doomsday Engine, Doxygen, DreamChess, Dust Racing 2D, EasyRPG Player, Eat The Whistle, ECWolf, Egoboo, EmptyEpsilon, ET: Legacy, Etterna, Falling Time, Falltergeist, FIFE, Flare, FlightGear, fonline, freeablo, freeaoe, FreeBlocks, FreeOrion, FreeRCT, Freeserf, FreeSiege, FreeSynd, FreeType, Friking Shark, GemRB, ges-code, GL4ES, glPortal, GoldenEye: Source, Gorc, Grail, Griefly, GZDoom, Hardwar, HarfBuzz, Hedgewars, heXon, HoverRace, Iceball, irrlamb, JediOutcastLinux, Julius, Librelancer, Lugaru, LÖVE, Mana, Maratis, Me and My Shadow, Mechanized Assault & eXploration Reloaded, MegaGlest, Minetest, mkxp, Nuvie, NXEngine-evo, Odamex, OGRE3D, Open AL Soft, Open Apocalypse, Open Creatures, Open Game Engine, Open Surge, Open Tibia, openblack, OpenBlok, OpenClaw, OpenClonk, OpenGothic, OpenHoW, OpenJK, OpenLieroX, OpenLoco, OpenMoM, OpenOMF, OpenRaider, OpenRCT2, OpenRW, OpenSkyscraper, OpenSpades, OpenSR, OpenSWE1R, OpenTESArena, OpenTomb, OpenXcom, OPMon, PainTown, Performous, Pingus, PixelLight, Polycode, Powerslide remake, Privateer - Gemini Gold, Q-Gears, Quartz Engine, Race Into Space, raylib, Return of Dr. Destructo, Rigel Engine, Rigs of Rods, Ryzom Core, SDLPoP, Shadowgrounds, Simple and Fast Multimedia Library, Simple DirectMedia Layer, SoftPixel Engine, Solarus, Sonic Robo Blast 2, Sourcehold, Speed Dreams, Spring, StepMania, Stunt Rally, super-methane-brothers-gx, TES3MP, The Battle for Wesnoth, The Butterfly Effect, The Eternity Engine, The Rush, thiefcatcher, Thrive, Thyme, TOMB5, Total Annihilation 3D, Trinity Reign, Tux Football, Tux of Math Command, UFO: Alien Invasion, uMario, Unvanquished, urde, Urho3D, Valyria Tear, VGC, Violetland, Visual Pinball, Voxelands, Warzone 2100, Widelands, Wizardry Legacy, wkbre, Wyrmsun, xoreos, xu4, Yamagi Quake II, yaml-cpp, ZDoom, Zero Ballistics, zlib +Alimer, Allegro, Annchienta, Arx Libertatis, AstroMenace, Atrinik, Ballerburg SDL, BitRiot, Blender game engine, Block Attack - Rise of the Blocks, BOOM: Remake, BStone, C-Dogs SDL, CaesarIA, Cannonball, CatacombSDL, CaveExpress, CavePacker, Chocolate Doom, Choria, Chronoshift, COCOS2D-X, Colobot: Gold Edition, Commander Genius, CorsixTH, Craft, CrossUO, Cubosphere, Curse of War, DesktopAdventures, DevilutionX, DGEngine, dhewm3, DNT, DOOM Retro, Doom64EX, Doomsday Engine, Doxygen, DreamChess, Dust Racing 2D, EasyRPG Player, Eat The Whistle, ECWolf, Egoboo, EmptyEpsilon, ET: Legacy, Etterna, Falling Time, Falltergeist, FIFE, Flare, FlightGear, fonline, freeablo, freeaoe, FreeBlocks, FreeOrion, FreeRCT, Freeserf, FreeSiege, FreeSynd, FreeType, Friking Shark, GemRB, ges-code, GL4ES, glPortal, GoldenEye: Source, Gorc, Grail, Griefly, GZDoom, Hardwar, HarfBuzz, Hedgewars, heXon, HoverRace, Iceball, irrlamb, JediOutcastLinux, Julius, Librelancer, Lugaru, LÖVE, Mana, Maratis, Me and My Shadow, Mechanized Assault & eXploration Reloaded, MegaGlest, Minetest, mkxp, Nuvie, NXEngine-evo, Odamex, OGRE3D, Open AL Soft, Open Apocalypse, Open Creatures, Open Game Engine, Open Surge, Open Tibia, openblack, OpenBlok, OpenClaw, OpenClonk, OpenGothic, OpenHoW, OpenJK, OpenLieroX, OpenLoco, OpenMoM, OpenOMF, OpenRaider, OpenRCT2, OpenRW, OpenSkyscraper, OpenSpades, OpenSR, OpenSWE1R, OpenTESArena, OpenTomb, OpenXcom, OPMon, PainTown, Performous, Pingus, PixelLight, Polycode, Powerslide remake, Privateer - Gemini Gold, Q-Gears, Quartz Engine, Race Into Space, raylib, Return of Dr. Destructo, Rigel Engine, Rigs of Rods, Ryzom Core, SDLPoP, Shadowgrounds, Simple and Fast Multimedia Library, Simple DirectMedia Layer, SoftPixel Engine, Solarus, Sonic Robo Blast 2, Sourcehold, Speed Dreams, Spring, StepMania, Stunt Rally, super-methane-brothers-gx, TES3MP, The Battle for Wesnoth, The Butterfly Effect, The Eternity Engine, The Rush, thiefcatcher, Thrive, Thyme, TOMB5, Total Annihilation 3D, Trinity Reign, Tux Football, Tux of Math Command, UFO: Alien Invasion, uMario, Unvanquished, urde, Urho3D, Valyria Tear, VGC, Violetland, Visual Pinball, Voxelands, Warzone 2100, Widelands, Wizardry Legacy, wkbre, Wyrmsun, xoreos, xu4, Yamagi Quake II, yaml-cpp, ZDoom, Zero Ballistics, zlib ## Platform -Platform information available for 77.4% of all projects. +Platform information available for 79.0% of all projects. ##### Platforms frequency -- Windows (34.7%) -- Linux (32.0%) -- macOS (19.0%) -- Web (6.7%) +- Windows (34.8%) +- Linux (31.9%) +- macOS (19.1%) +- Web (6.6%) - Android (6.5%) -- iOS (1.1%) +- iOS (1.2%) diff --git a/tools/archives.json b/tools/archives.json index 9c403964..2509c2bb 100644 --- a/tools/archives.json +++ b/tools/archives.json @@ -99,6 +99,7 @@ "https://github.com/AndO3131/lgeneral.git", "https://github.com/Andrettin/Wyrmgus.git", "https://github.com/Anthonymcqueen21/Pygame---Alien-Invasion.git", + "https://github.com/Anuken/Mindustry.git", "https://github.com/Arantis/Meridian59_112.git", "https://github.com/Argentum-Online/Argentum-Online.git", "https://github.com/ArmageddonGames/ZeldaClassic.git", @@ -352,6 +353,7 @@ "https://github.com/antionio/game-off-2013.git", "https://github.com/anttisalonen/freekick3.git", "https://github.com/anttisalonen/kingdoms.git", + "https://github.com/anura-engine/anura.git", "https://github.com/aperture-software/colditz-escape.git", "https://github.com/apsillers/Taggem.git", "https://github.com/apsillers/lords-of-the-fey.git", @@ -366,6 +368,8 @@ "https://github.com/basicallydan/skifree.js.git", "https://github.com/benjaminfoo/OpenTriad.git", "https://github.com/bibendovsky/bstone.git", + "https://github.com/bitcraft/PyTMX.git", + "https://github.com/bitcraft/pyscroll.git", "https://github.com/bladecoder/bladecoder-adventure-engine.git", "https://github.com/blakeohare/pyweek-sentientstorage.git", "https://github.com/blockattack/blockattack-game.git", @@ -401,6 +405,8 @@ "https://github.com/cortex-command-community/Cortex-Command-Community-Project-Source.git", "https://github.com/craftworkgames/infiniminer.git", "https://github.com/crawl/crawl.git", + "https://github.com/crosire/reshade.git", + "https://github.com/crossuo/crossuo.git", "https://github.com/cthielen/Epiar.git", "https://github.com/cubei/FlappyCow.git", "https://github.com/cubosphere/cubosphere-code.git", @@ -461,6 +467,7 @@ "https://github.com/fasterthanlime/isaac-paper.git", "https://github.com/fastrgv/AdaVenture.git", "https://github.com/fifengine/fifengine.git", + "https://github.com/flixel-gdx/flixel-gdx.git", "https://github.com/fofix/fofix.git", "https://github.com/fogleman/Craft.git", "https://github.com/fph/bastet.git", @@ -862,6 +869,7 @@ "https://gitlab.com/osgames/dark-oberon.git", "https://gitlab.com/osgames/darkcity.git", "https://gitlab.com/osgames/darkdestiny.git", + "https://gitlab.com/osgames/deathchase3d.git", "https://gitlab.com/osgames/deity.git", "https://gitlab.com/osgames/deliantra.git", "https://gitlab.com/osgames/devana.git", @@ -948,6 +956,7 @@ "https://gitlab.com/osgames/slaygame.git", "https://gitlab.com/osgames/snowstorm.git", "https://gitlab.com/osgames/softpixelengine.git", + "https://gitlab.com/osgames/solarwolf.git", "https://gitlab.com/osgames/sopwith3.git", "https://gitlab.com/osgames/spaceopera.git", "https://gitlab.com/osgames/spicetrade.git", @@ -1008,6 +1017,7 @@ "https://svn.code.sf.net/p/lgames/code/", "https://svn.code.sf.net/p/pio/code/", "https://svn.code.sf.net/p/planeshift/code/", + "https://svn.code.sf.net/p/plib/code/", "https://svn.code.sf.net/p/privateer/code/", "https://svn.code.sf.net/p/quakespasm/code/", "https://svn.code.sf.net/p/spacezero/code/", diff --git a/tools/backlog.txt b/tools/backlog.txt index d2b11eb9..e3e681ee 100644 --- a/tools/backlog.txt +++ b/tools/backlog.txt @@ -36,10 +36,12 @@ http://openapoc.pmprog.co.uk/ http://pathfinder.wikia.com/wiki/Pathfinder_Roleplaying_Game http://phaser.io/ http://playir.com/ -http://plib.sourceforge.net/ -http://psyco.sourceforge.net/ http://pyglet.org/ http://pyopengl.sourceforge.net/ +https://appimage.github.io/categories/Game +https://github.com/gnFur/Monofoxe +https://github.com/moonwards1/Moonwards-Virtual-Moon +http://pypy.org/ http://rcbasic.com/ http://retrospec.sgn.net http://sam.zoy.org/monsterz/ @@ -157,13 +159,10 @@ https://freegamer.blogspot.com (maybe there is something interesting) https://futurepinball.com/ https://gamejolt.com/ (search there) https://gdevelop-app.com/ -https://github.com/anura-engine/anura +https://github.com/amerkoleci/Vortice.Windows https://github.com/ao-libre/ao-cliente https://github.com/atphalix/nexuiz https://github.com/azhirnov/FrameGraph -https://github.com/bitcraft/pyscroll -https://github.com/bitcraft/PyTMX -https://github.com/born2snipe/flixel-gdx https://github.com/bsmr-games (also contains copies) https://github.com/CatacombGames/ https://github.com/Chluverman/android-gltron @@ -176,8 +175,6 @@ https://github.com/collections/tools-for-open-source (maybe we can apply some) https://github.com/collections/web-games (only OS) https://github.com/Cortrah/SpaceOperaDesign, https://github.com/Cortrah/SpaceOperaRuby/blob/master/design/turnstyles.md https://github.com/cping/LGame -https://github.com/crosire/reshade -https://github.com/crossuo/crossuo https://github.com/DaanVanYperen/artemis-odb-contrib https://github.com/DeflatedPickle/FAOSDance https://github.com/Donerkebap13/DonerComponents @@ -190,9 +187,11 @@ https://github.com/fallahn/xygine https://github.com/fegennari/3DWorld https://github.com/flathub (all repositories which are games there) https://github.com/FUSEEProjectTeam/Fusee +https://github.com/fynnfluegge/oreon-engine https://github.com/gamearians https://github.com/GamedevFramework/gf https://github.com/grantjenks/free-python-games (check all) +https://github.com/Hotride/OrionUO https://github.com/hparcells/cards-against-humanity https://github.com/i42output/neoGFX https://github.com/id-Software @@ -200,6 +199,7 @@ https://github.com/JohanLi/uncharted-waters-2 https://github.com/junkdog/artemis-odb https://github.com/LgLinus/StrategyGame https://github.com/libretro/libretro-prboom +https://github.com/ligurio/awesome-ttygames https://github.com/MarcoLizza/tofu-engine https://github.com/mewo2/terrain https://github.com/morganbengtsson/mos @@ -216,6 +216,7 @@ https://github.com/pld-linux https://github.com/pld-linux/nexuiz/blob/master/nexuiz.spec https://github.com/psuong/ig-developer-console https://github.com/qiciengine/qiciengine +https://github.com/Renanse/Ardor3D https://github.com/rizwan3d/MotoGameEngine https://github.com/rlguy/FantasyMapGenerator https://github.com/RoxasShadow/Sottaceto @@ -234,6 +235,7 @@ https://github.com/Tinob/Ishiiruka (https://github.com/shiiion/Ishiiruka, https: https://github.com/TomBebb/awe https://github.com/Wargus/stratagus https://github.com/wesnoth/haldric +https://github.com/Zal0/ZGB https://gitlab.com/LibreGames https://gitlab.com/nyov/nyovs-nexuiz https://gitlab.com/vgstation/vgstation-old (and vgstation in general) @@ -381,6 +383,7 @@ https://www.reddit.com/r/opensourcegames/comments/celw6c/top_3_open_source_pinba https://www.renpy.org/ (also all projects linked there) https://www.scirra.com/construct2 https://www.tapatalk.com/groups/imperilist/ +https://www.tuxfamily.org/ (if there are games) https://www.wurfelengine.net/ https://wxpython.org/ https://zope.readthedocs.io/en/latest/ \ No newline at end of file diff --git a/tools/libregamewiki_import.py b/tools/libregamewiki_import.py index 1e46d72c..4d9c32de 100644 --- a/tools/libregamewiki_import.py +++ b/tools/libregamewiki_import.py @@ -5,11 +5,14 @@ Also parse rejected games (https://libregamewiki.org/Libregamewiki:Rejected_game Unique left column names in the game info boxes: ['Code license', 'Code licenses', 'Developer', 'Developers', 'Engine', 'Engines', 'Genre', 'Genres', 'Libraries', 'Library', 'Media license', 'Media licenses', 'P. language', 'P. languages', 'Platforms'] + +TODO there are games on LGW which are not part of the Games category but part of XXX-Games sub-categories """ import os import requests import json +import re from bs4 import BeautifulSoup from utils import constants, utils, osg @@ -210,6 +213,39 @@ def lower_case_content(entries, field): entries[index] = entry return entries + +def remove_parenthized_content(entries, fields): + if not isinstance(fields, tuple): + fields = (fields, ) + for index, entry in enumerate(entries): + for field in fields: + if field in entry: + content = entry[field] + if not isinstance(content, list): + content = [content] + content = [re.sub(r'\([^)]*\)', '', c) for c in content] # remove parentheses content + content = [x.strip() for x in content] + content = list(set(content)) + entry[field] = content + entries[index] = entry + return entries + + +def ignore_nonnumbers(entries, fields): + if not isinstance(fields, tuple): + fields = (fields, ) + for index, entry in enumerate(entries): + for field in fields: + if field in entry: + content = entry[field] + if not isinstance(content, list): + content = [content] + content = [x for x in content if x.isdigit()] + entry[field] = content + entries[index] = entry + return entries + + def clean_lgw_content(): # paths @@ -257,6 +293,7 @@ def clean_lgw_content(): print('mandatory lgw fields: {}'.format(sorted(list(mandatory_fields)))) # content replacements + entries = remove_parenthized_content(entries, ('assets license', 'code language', 'code license', 'engine', 'genre', 'last active', 'library')) entries = remove_prefix_suffix(entries, ('code license', 'assets license'), ('"', 'GNU', ), ('"', '[3]', '[2]', '[1]', 'only')) entries = replace_content(entries, ('code license', 'assets license'), 'GPL', ('General Public License', )) entries = replace_content(entries, ('code license', 'assets license'), 'GPLv2', ('GPL v2', 'GPL version 2.0', 'GPL 2.0')) @@ -267,6 +304,8 @@ def clean_lgw_content(): entries = replace_content(entries, ('code license', 'assets license'), 'zlib', ('zlib/libpng license', )) entries = replace_content(entries, ('code license', 'assets license'), 'BSD', ('Original BSD License', )) entries = replace_content(entries, ('code license', 'assets license'), 'CC-BY-SA-3.0', ('Creative Commons Attribution-ShareAlike 3.0 Unported License', 'CC-BY-SA 3.0', 'CC BY-SA 3.0')) + entries = replace_content(entries, ('code license', 'assets license'), 'CC-BY-SA', ('CC BY-SA',)) + entries = replace_content(entries, ('code license', 'assets license'), 'MIT', ('MIT License',)) entries = replace_content(entries, 'platform', 'macOS', ('Mac', )) entries = remove_prefix_suffix(entries, 'code language', (), ('[3]', '[2]', '[1]')) entries = ignore_content(entries, 'code language', ('HTML5', 'HTML', 'English', 'XML', 'WML')) @@ -282,6 +321,9 @@ def clean_lgw_content(): entries = replace_content(entries, 'library', 'pygame', ('Pygame', )) entries = replace_content(entries, 'library', 'Qt', ('QT', )) entries = ignore_content(entries, 'library', ('C++', 'Lua', 'Mozilla Firefox')) + entries = ignore_nonnumbers(entries, 'last active') + entries = ignore_content(entries, 'last active', ('2019', )) + entries = ignore_content(entries, 'platform', ('DOS', )) # list for every unique field # fields = sorted(list(unique_fields)) diff --git a/tools/libregamewiki_synchronization.py b/tools/libregamewiki_synchronization.py index 6c674b94..f7c7ae63 100644 --- a/tools/libregamewiki_synchronization.py +++ b/tools/libregamewiki_synchronization.py @@ -19,34 +19,20 @@ linux-packages - > free text (info) name -> name platform -> platform +TODO also ignore our rejected entries """ import json -from utils.osg import * - - -def get_unique_field_content(field, entries): - """ - - """ - unique_content = {} - for entry in entries: - for element in entry.get(field, []): - unique_content[element] = unique_content.get(element, 0) + 1 - unique_content = list(unique_content.items()) - unique_content.sort(key=lambda x: -x[1]) - unique_content = ['{}({})'.format(k, v) for k, v in unique_content] - return unique_content - +import os +from utils import constants, utils, osg name_replacements = {'Eat the Whistle': 'Eat The Whistle', 'Scorched 3D': 'Scorched3D', 'Silver Tree': 'SilverTree', 'Blob Wars Episode 1 : Metal Blob Solid': 'Blobwars: Metal Blob Solid', 'Adventure': 'Colossal Cave Adventure', 'Fall Of Imiryn': 'Fall of Imiryn', 'Liquid War 6': 'Liquid War', 'Gusanos': 'GUSANOS', 'Corewars': 'Core War', 'FLARE': 'Flare', 'Vitetris': 'vitetris', 'Powder Toy': 'The Powder Toy', 'Asylum': 'SDL Asylum', - 'Atanks': 'Atomic Tanks'} + 'Atanks': 'Atomic Tanks', 'HeXon': 'heXon', 'Unnethack': 'UnNetHack', 'Nova Pinball': 'NOVA PINBALL', 'Jump n Bump': "Jump'n'Bump"} ignored_names = ['Hetris', '8 Kingdoms', 'Antigravitaattori', 'Arena of Honour', 'Arkhart', 'Ascent of Justice', 'Balazar III', 'Balder3D', 'Barbie Seahorse Adventures', 'Barrage', 'Gnome Batalla Naval', 'User:AVRS/sandbox'] - def list_compare(a, b, k): """ @@ -64,24 +50,20 @@ if __name__ == "__main__": maximal_newly_created_entries = 40 # paths - root_path = os.path.realpath(os.path.join(os.path.dirname(__file__), os.path.pardir)) + import_path = os.path.join(constants.root_path, 'tools', 'lgw-import') + lgw_entries_file = os.path.join(import_path, '_lgw.cleaned.json') # import lgw import - json_path = os.path.join(root_path, os.pardir, 'lgw_import.json') - text = read_text(json_path) + text = utils.read_text(lgw_entries_file) lgw_entries = json.loads(text) - # perform replacements and disregarding + # perform name replacements lgw_entries = [x for x in lgw_entries if x['name'] not in ignored_names] for index, lgw_entry in enumerate(lgw_entries): if lgw_entry['name'] in name_replacements: lgw_entry['name'] = name_replacements[lgw_entry['name']] if 'code language' in lgw_entry: languages = lgw_entry['code language'] - languages = ['Python' if x.startswith('Python') else x for x in languages] - languages = ['PHP' if x.startswith('PHP') else x for x in languages] - languages = ['Lua' if x.lower().startswith('lua') else x for x in languages] - languages = ['JavaScript' if x.lower().startswith('javascript') else x for x in languages] h = [] for l in languages: for g in ('/', 'and'): @@ -91,71 +73,13 @@ if __name__ == "__main__": if type(l) == str: l = [l] h.extend(l) - languages = ['C++' if x.startswith('C++') else x for x in h] - languages = ['C' if x.startswith('C ') or x.startswith('C[') else x for x in languages] - languages = [x for x in languages if x not in ignored_languages] + languages = h if languages: lgw_entry['code language'] = languages else: del lgw_entry['code language'] - if 'categories' in lgw_entry: - categories = lgw_entry['categories'] - categories = [x for x in categories if not x.startswith('Game')] - categories = [x for x in categories if not x.startswith('Article')] - categories = [x for x in categories if not x.startswith('Page')] - categories = [x for x in categories if x not in ignored_categories] - categories = [x.lower() if len(x) > 2 else x for x in categories] - if categories: - lgw_entry['categories'] = categories - else: - del lgw_entry['categories'] - if 'genre' in lgw_entry: - genres = lgw_entry['genre'] - genres = [x for x in genres if len(x) > 0] - genres = [x.lower() for x in genres] - genres = [x[:-5] if x.endswith(' game') else x for x in genres] - genres = [x[:-5] if x.endswith(' games') else x for x in genres] - genres = [genre_replacements[x] if x in genre_replacements else x for x in genres] - for h in ('platform',): - genres = [h if x.startswith(h) else x for x in genres] - if genres: - lgw_entry['genre'] = genres - else: - del lgw_entry['genre'] - if 'library' in lgw_entry: - libraries = lgw_entry['library'] - libraries = [library_replacements[x] if x in library_replacements else x for x in libraries] - lgw_entry['library'] = libraries - if 'code license' in lgw_entry: - licenses = lgw_entry['code license'] - licenses = [x.strip() for x in licenses] # strip - licenses = [x[1:] if x.startswith('"') else x for x in licenses] # cut " at the beginning - licenses = [x[:-1] if x.endswith('"') else x for x in licenses] # cut " at the end - licenses = [x[4:] if x.startswith('GNU ') else x for x in licenses] - licenses = [x[:-3] if x.endswith('[1]') or x.endswith('[2]') else x for x in licenses] - licenses = [x[:-8] if x.lower().endswith(' license') else x for x in licenses] - licenses = [x.strip() for x in licenses] # strip - #licenses = ['GPL-2.0' if x.startswith('GPLv2') or x.startswith('GPL v2') or x.startswith('GPL 2') else x for x in licenses] - #licenses = ['GPL-3.0' if x.startswith('GPLv3') or x.startswith('GPL v3') or x.startswith('GPL 3') or x.startswith('GPL v.3') else x for x in licenses] - licenses = ['Public domain' if x.lower().startswith('public domain') else x for x in licenses] - lgw_entry['code license'] = licenses - if 'assets license' in lgw_entry: - licenses = lgw_entry['assets license'] - licenses = [x.strip() for x in licenses] # strip - licenses = [x[1:] if x.startswith('"') else x for x in licenses] # cut " at the beginning - licenses = [x[:-1] if x.endswith('"') else x for x in licenses] # cut " at the end - licenses = [x[4:] if x.startswith('GNU ') else x for x in licenses] - licenses = [x[:-3] if x.endswith('[1]') or x.endswith('[2]') else x for x in licenses] - licenses = [x[:-8] if x.lower().endswith(' license') else x for x in licenses] - licenses = [x.strip() for x in licenses] # strip - licenses = ['GPL-2.0' if x.startswith('GPLv2') or x.startswith('GPL v2') or x.startswith('GPL 2') else x for x in licenses] - licenses = ['GPL-3.0' if x.startswith('GPLv3') or x.startswith('GPL v3') or x.startswith('GPL 3') or x.startswith('GPL v.3') else x for x in licenses] - licenses = ['Public domain' if x.lower().startswith('public domain') else x for x in licenses] - lgw_entry['assets license'] = licenses - lgw_entries[index] = lgw_entry - # check for unique field names unique_fields = set() for lgw_entry in lgw_entries: @@ -163,23 +87,14 @@ if __name__ == "__main__": print('unique lgw fields: {}'.format(sorted(list(unique_fields)))) # which fields are mandatory + mandatory_fields = unique_fields.copy() for lgw_entry in lgw_entries: - remove_fields = [field for field in unique_fields if field not in lgw_entry] - unique_fields -= set(remove_fields) - print('mandatory lgw fields: {}'.format(sorted(list(unique_fields)))) - - # unique contents - print('{}: {}'.format('platform', get_unique_field_content('platform', lgw_entries))) - print('{}: {}'.format('code language', get_unique_field_content('code language', lgw_entries))) - print('{}: {}'.format('categories', get_unique_field_content('categories', lgw_entries))) - print('{}: {}'.format('genre', get_unique_field_content('genre', lgw_entries))) - print('{}: {}'.format('library', get_unique_field_content('library', lgw_entries))) - print('{}: {}'.format('code license', get_unique_field_content('code license', lgw_entries))) - print('{}: {}'.format('assets license', get_unique_field_content('assets license', lgw_entries))) - print('{}: {}'.format('engine', get_unique_field_content('engine', lgw_entries))) + remove_fields = [field for field in mandatory_fields if field not in lgw_entry] + mandatory_fields -= set(remove_fields) + print('mandatory lgw fields: {}'.format(sorted(list(mandatory_fields )))) # read our database - our_entries = assemble_infos(c.entries_path) + our_entries = osg.assemble_infos() print('{} entries with us'.format(len(our_entries))) # just the names @@ -194,7 +109,7 @@ if __name__ == "__main__": #print('similar names') #for lgw_name in lgw_names: # for our_name in our_names: - # if game_name_similarity(lgw_name, our_name) > similarity_threshold: + # if osg.game_name_similarity(lgw_name, our_name) > similarity_threshold: # print('{} - {}'.format(lgw_name, our_name)) newly_created_entries = 0 @@ -234,11 +149,11 @@ if __name__ == "__main__": # determine file name print('create new entry for {}'.format(lgw_name)) - file_name = canonical_game_name(lgw_name) + '.md' - target_file = os.path.join(entries_path, file_name) + file_name = osg.canonical_game_name(lgw_name) + '.md' + target_file = os.path.join(constants.entries_path, file_name) if os.path.isfile(target_file): print('warning: file {} already existing, save under slightly different name'.format(file_name)) - target_file = os.path.join(entries_path, file_name[:-3] + '-duplicate.md') + target_file = os.path.join(constants.entries_path, file_name[:-3] + '-duplicate.md') if os.path.isfile(target_file): continue # just for safety reasons @@ -300,5 +215,5 @@ if __name__ == "__main__": entry += '\n## Building\n' # finally write to file - write_text(target_file, entry) + # utils.write_text(target_file, entry) newly_created_entries += 1 \ No newline at end of file diff --git a/tools/osgameclones_synchronization.py b/tools/osgameclones_synchronization.py index 1854dfcd..1684d9b9 100644 --- a/tools/osgameclones_synchronization.py +++ b/tools/osgameclones_synchronization.py @@ -32,10 +32,13 @@ info -> after fields updated not used images not used video: not used + +TODO also ignore our rejected entries """ import ruamel_yaml as yaml -from utils.osg import * +import os +from utils import constants, utils, osg # should change on osgameclones osgc_name_aliases = {'4DTris': '4D-TRIS', 'fheroes2': 'Free Heroes 2', 'DrCreep': 'The Castles of Dr. Creep', 'Duke3d_win32': 'Duke3d_w32', 'erampage (EDuke32 fork)': 'erampage', 'GNOME Atomix': 'Atomix', 'Head over Heels 2': 'Head over Heels', @@ -64,10 +67,10 @@ def unique_field_contents(entries, field): for entry in entries: if field in entry: field_content = entry[field] - if type(field_content) is str: - unique_content.add(field_content) - else: + if type(field_content) is list: unique_content.update(field_content) + else: + unique_content.add(field_content) unique_content = sorted(list(unique_content), key=str.casefold) return unique_content @@ -98,7 +101,26 @@ if __name__ == "__main__": osgc_entries.extend(_) print('{} entries in osgameclones'.format(len(osgc_entries))) - print('osgc-languages: {}'.format(unique_field_contents(osgc_entries, 'lang'))) + # which fields do they have + osgc_fields = set() + for osgc_entry in osgc_entries: + osgc_fields.update(osgc_entry.keys()) + print('unique osgc-fields: {}'.format(osgc_fields)) + + for field in osgc_fields: + if field in ('video', 'feed', 'url', 'repo', 'info', 'updated', 'images', 'name', 'originals'): + continue + content = [entry[field] for entry in osgc_entries if field in entry] + # flatten + flat_content = [] + for c in content: + if isinstance(c, list): + flat_content.extend(c) + else: + flat_content.append(c) + statistics = utils.unique_elements_and_occurrences(flat_content) + statistics.sort(key=str.casefold) + print('\n{}: {}'.format(field, ', '.join(statistics))) # eliminate the ignored entries osgc_entries = [x for x in osgc_entries if x['name'] not in osgc_ignored_entries] @@ -146,7 +168,7 @@ if __name__ == "__main__": print('osgc-content: {}'.format(unique_field_contents(osgc_entries, 'content'))) # read our database - our_entries = assemble_infos(c.entries_path) + our_entries = osg.assemble_infos() print('{} entries with us'.format(len(our_entries))) # just the names @@ -160,7 +182,7 @@ if __name__ == "__main__": # find similar names among the rest for osgc_name in osgc_names: for our_name in our_names: - if game_name_similarity(osgc_name, our_name) > similarity_threshold: + if osg.game_name_similarity(osgc_name, our_name) > similarity_threshold: print('{} - {}'.format(osgc_name, our_name)) newly_created_entries = 0 @@ -231,9 +253,9 @@ if __name__ == "__main__": urls = osgc_entry['url'] if type(urls) == str: urls = [urls] - urls = [strip_url(url) for url in urls] + urls = [utils.strip_url(url) for url in urls] our_urls = our_entry['home'] - our_urls = [strip_url(url) for url in our_urls] + our_urls = [utils.strip_url(url) for url in our_urls] for url in urls: if url not in our_urls: p += ' home url {} missing\n'.format(url) @@ -311,11 +333,11 @@ if __name__ == "__main__": # determine file name print('create new entry for {}'.format(osgc_name)) - file_name = canonical_game_name(osgc_name) + '.md' - target_file = os.path.join(entries_path, file_name) + file_name = osg.canonical_game_name(osgc_name) + '.md' + target_file = os.path.join(constants.entries_path, file_name) if os.path.isfile(target_file): print('warning: file {} already existing, save under slightly different name'.format(file_name)) - target_file = os.path.join(entries_path, file_name[:-3] + '-duplicate.md') + target_file = os.path.join(constants.entries_path, file_name[:-3] + '-duplicate.md') if os.path.isfile(target_file): continue # just for safety reasons @@ -393,7 +415,7 @@ if __name__ == "__main__": entry += '\n## Building\n' # finally write to file - # write_text(target_file, entry) + # utils.write_text(target_file, entry) newly_created_entries += 1 diff --git a/tools/rejected.txt b/tools/rejected.txt index ac176c9a..acb7468c 100644 --- a/tools/rejected.txt +++ b/tools/rejected.txt @@ -57,6 +57,7 @@ MultiGame (https://github.com/whendricso/MultiGame): Commercial New RAW (http://sourceforge.net/projects/newraw/, http://svn.code.sf.net/p/newraw/code/): Early development, requires original content, abandoned Open General (http://www.open-general.com/, https://sourceforge.net/projects/opengeneral/, https://svn.code.sf.net/p/opengeneral/code/): Proprietary license (see credits.txt) OpenDeathValley (https://github.com/OpenDeathValley/OpenDeathValley.git): No instructions, no releases, no website, not much code +OpenMB (https://github.com/cookgreen/OpenMB): Very early development stage, maybe later OpenOutcast (https://sourceforge.net/projects/ocmod/): Very early development, no release, short svn history, abandoned OpenPop (http://openpopulous.sourceforge.net/, https://sourceforge.net/projects/openpopulous/, https://svn.code.sf.net/p/openpopulous/code/): Very early development openStrato (https://github.com/gerdl/openStrato.git): Not much code, no release or demo site, short code history, abandoned diff --git a/tools/utils/utils.py b/tools/utils/utils.py index 2f627ec4..9379db3f 100644 --- a/tools/utils/utils.py +++ b/tools/utils/utils.py @@ -301,7 +301,10 @@ def unique_elements_and_occurrences(elements): """ unique_elements = {} for element in elements: - unique_elements[element] = unique_elements.get(element, 0) + 1 + try: + unique_elements[element] = unique_elements.get(element, 0) + 1 + except Exception as e: + print(e) unique_elements = list(unique_elements.items()) unique_elements.sort(key=lambda x: -x[1]) unique_elements = ['{}({})'.format(k, v) for k, v in unique_elements]