synchronization inspirations between entries and inspirations list
This commit is contained in:
parent
469f9fa690
commit
cd67ffe536
@ -2,92 +2,110 @@
|
|||||||
Maintenance of inspirations.md and synchronization with the inspirations in the entries.
|
Maintenance of inspirations.md and synchronization with the inspirations in the entries.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import time
|
from utils import osg, osg_ui
|
||||||
from utils import constants as c, utils, osg, osg_ui
|
|
||||||
from utils import osg_wikipedia
|
|
||||||
|
|
||||||
|
valid_duplicates = ('Age of Empires', 'ARMA', 'Catacomb', 'Civilization', 'Company of Heroes', 'Descent', 'Duke Nukem', 'Dungeon Keeper',
|
||||||
|
'Final Fantasy', 'Heroes of Might and Magic', 'Jazz Jackrabbit', 'Marathon', 'Master of Orion', 'Quake',
|
||||||
|
'RollerCoaster Tycoon', 'Star Wars Jedi Knight', 'The Settlers', 'Ultima', 'Ship Simulator')
|
||||||
|
|
||||||
def check_for_duplicates():
|
class InspirationMaintainer:
|
||||||
"""
|
|
||||||
|
|
||||||
:param inspirations:
|
def __init__(self):
|
||||||
:return:
|
self.inspirations = None
|
||||||
"""
|
self.entries = None
|
||||||
print('\nduplicate check')
|
|
||||||
inspiration_names = [x['name'] for x in inspirations]
|
|
||||||
for index, name in enumerate(inspiration_names):
|
|
||||||
for other_name in inspiration_names[index+1:]:
|
|
||||||
if osg.name_similarity(name, other_name) > 0.8:
|
|
||||||
print(' {} - {} is similar'.format(name, other_name))
|
|
||||||
|
|
||||||
def test():
|
def read_inspirations(self):
|
||||||
# assemble info
|
self.inspirations = osg.read_inspirations()
|
||||||
t0 = time.process_time()
|
print('{} inspirations read'.format(len(self.inspirations)))
|
||||||
entries = osg.read_entries()
|
|
||||||
print('took {}s'.format(time.process_time()-t0))
|
|
||||||
t0 = time.process_time()
|
|
||||||
# entries = osg.assemble_infos()
|
|
||||||
# osg.write_entries(entries)
|
|
||||||
print('took {}s'.format(time.process_time()-t0))
|
|
||||||
|
|
||||||
|
def write_inspirations(self):
|
||||||
# assemble inspirations info from entries
|
if not self.inspirations:
|
||||||
entries_inspirations = {}
|
print('inspirations not yet loaded')
|
||||||
for entry in entries:
|
return
|
||||||
entry_name = entry['name']
|
osg.write_inspirations(self.inspirations)
|
||||||
keywords = entry['keywords']
|
|
||||||
entry_inspirations = [x for x in keywords if x.startswith('inspired by')]
|
|
||||||
if entry_inspirations:
|
|
||||||
entry_inspirations = entry_inspirations[0][len('inspired by'):]
|
|
||||||
entry_inspirations = entry_inspirations.split('+')
|
|
||||||
entry_inspirations = [x.strip() for x in entry_inspirations]
|
|
||||||
for entry_inspiration in entry_inspirations:
|
|
||||||
if entry_inspiration in entries_inspirations:
|
|
||||||
entries_inspirations[entry_inspiration].append(entry_name)
|
|
||||||
else:
|
|
||||||
entries_inspirations[entry_inspiration] = [ entry_name ]
|
|
||||||
print('{} inspirations in the entries'.format(len(entries_inspirations)))
|
|
||||||
|
|
||||||
# first check if all inspiration in entries are also in inspirations
|
|
||||||
inspiration_names = [x['name'] for x in inspirations]
|
|
||||||
for inspiration, entries in entries_inspirations.items():
|
|
||||||
if inspiration not in inspiration_names:
|
|
||||||
print('new inspiration {} for games {}'.format(inspiration, ', '.join(entries)))
|
|
||||||
similar_names = [x for x in inspiration_names if osg.name_similarity(inspiration, x) > 0.8]
|
|
||||||
if similar_names:
|
|
||||||
print(' similar names {}'.format(', '.join(similar_names)))
|
|
||||||
|
|
||||||
# now the other way around
|
|
||||||
for index, name in enumerate(inspiration_names):
|
|
||||||
if name not in entries_inspirations:
|
|
||||||
print('potential removed inspiration {} from games {}'.format(name, inspirations[index]['inspired entries']))
|
|
||||||
similar_names = [x for x in entries_inspirations.keys() if osg.name_similarity(name, x) > 0.8]
|
|
||||||
if similar_names:
|
|
||||||
print(' similar names {}'.format(', '.join(similar_names)))
|
|
||||||
|
|
||||||
|
|
||||||
def read_inspirations():
|
|
||||||
inspirations = osg.read_inspirations_info()
|
|
||||||
print('{} inspirations in the inspirations database'.format(len(inspirations)))
|
|
||||||
|
|
||||||
def write_inspirations():
|
|
||||||
osg.write_inspirations_info(inspirations)
|
|
||||||
print('inspirations written')
|
print('inspirations written')
|
||||||
|
|
||||||
if __name__ == "__main__":
|
def check_for_duplicates(self):
|
||||||
inspirations = osg.read_inspirations_info()
|
if not self.inspirations:
|
||||||
osg.write_inspirations_info(inspirations)
|
print('inspirations not yet loaded')
|
||||||
|
return
|
||||||
|
inspiration_names = list(self.inspirations.keys())
|
||||||
|
for index, name in enumerate(inspiration_names):
|
||||||
|
for other_name in inspiration_names[index + 1:]:
|
||||||
|
if any((name.startswith(x) and other_name.startswith(x) for x in valid_duplicates)):
|
||||||
|
continue
|
||||||
|
if osg.name_similarity(name, other_name) > 0.8:
|
||||||
|
print(' {} - {} is similar'.format(name, other_name))
|
||||||
|
print('duplicates checked')
|
||||||
|
|
||||||
inspirations = None
|
def check_for_orphans(self):
|
||||||
entries = None
|
if not self.inspirations:
|
||||||
|
print('inspirations not yet loaded')
|
||||||
|
return
|
||||||
|
for inspiration in self.inspirations.values():
|
||||||
|
if not inspiration['inspired entries']:
|
||||||
|
print(' {} has no inspired entries'.format(inspiration['name']))
|
||||||
|
print('orphanes checked')
|
||||||
|
|
||||||
|
def check_for_missing_inspirations_in_entries(self):
|
||||||
|
if not self.inspirations:
|
||||||
|
print('inspirations not yet loaded')
|
||||||
|
return
|
||||||
|
if not self.entries:
|
||||||
|
print('entries not yet loaded')
|
||||||
|
return
|
||||||
|
for inspiration in self.inspirations.values():
|
||||||
|
inspiration_name = inspiration['name']
|
||||||
|
for entry_name in inspiration['inspired entries']:
|
||||||
|
x = [x for x in self.entries if x['title'] == entry_name]
|
||||||
|
assert len(x) <= 1
|
||||||
|
if not x:
|
||||||
|
print('Entry "{}" listed in inspiration "{}" but this entry does not exist'.format(entry_name, inspiration_name))
|
||||||
|
else:
|
||||||
|
entry = x[0]
|
||||||
|
if 'inspirations' not in entry or inspiration_name not in entry['inspirations']:
|
||||||
|
print('Entry "{}" listed in inspiration "{}" but not listed in this entry'.format(entry_name, inspiration_name))
|
||||||
|
print('missed inspirations checked')
|
||||||
|
|
||||||
|
def update_inspired_entries(self):
|
||||||
|
if not self.inspirations:
|
||||||
|
print('inspirations not yet loaded')
|
||||||
|
return
|
||||||
|
if not self.entries:
|
||||||
|
print('entries not yet loaded')
|
||||||
|
return
|
||||||
|
# loop over all inspirations and delete inspired entries
|
||||||
|
for inspiration in self.inspirations.values():
|
||||||
|
inspiration['inspired entries'] = []
|
||||||
|
# loop over all entries and add to inspirations of entry
|
||||||
|
for entry in self.entries:
|
||||||
|
entry_name = entry['title']
|
||||||
|
for inspiration in entry.get('inspirations', []):
|
||||||
|
if inspiration in self.inspirations:
|
||||||
|
self.inspirations[inspiration]['inspired entries'].append(entry_name)
|
||||||
|
else:
|
||||||
|
self.inspirations[inspiration] = {'name': inspiration, 'inspired entries': [entry_name]}
|
||||||
|
print('inspired entries updated')
|
||||||
|
|
||||||
|
def read_entries(self):
|
||||||
|
self.entries = osg.read_entries()
|
||||||
|
print('{} entries read'.format(len(self.entries)))
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
|
||||||
|
m = InspirationMaintainer()
|
||||||
|
|
||||||
actions = {
|
actions = {
|
||||||
'Read inspirations': read_inspirations,
|
'Read inspirations': m.read_inspirations,
|
||||||
'Write inspirations': write_inspirations,
|
'Write inspirations': m.write_inspirations,
|
||||||
'Check for duplicates': check_for_duplicates,
|
'Check for duplicates': m.check_for_duplicates,
|
||||||
|
'Check for orphans': m.check_for_orphans,
|
||||||
|
'Check for inspirations not listed': m.check_for_missing_inspirations_in_entries,
|
||||||
|
'Update inspirations from entries': m.update_inspired_entries,
|
||||||
|
'Read entries': m.read_entries
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
osg_ui.run_simple_button_app('Maintenance inspirations', actions)
|
osg_ui.run_simple_button_app('Maintenance inspirations', actions)
|
||||||
|
|
||||||
|
|
||||||
|
@ -476,7 +476,7 @@ def write_developer_info(developers):
|
|||||||
utils.write_text(developer_file, content)
|
utils.write_text(developer_file, content)
|
||||||
|
|
||||||
|
|
||||||
def read_inspirations_info():
|
def read_inspirations():
|
||||||
"""
|
"""
|
||||||
Reads the info list about the games originals/inspirations from inspirations.md using the Lark parser grammar
|
Reads the info list about the games originals/inspirations from inspirations.md using the Lark parser grammar
|
||||||
in grammar_listing.lark
|
in grammar_listing.lark
|
||||||
@ -508,17 +508,23 @@ def read_inspirations_info():
|
|||||||
duplicate_names = (name for name in names if names.count(name) > 1)
|
duplicate_names = (name for name in names if names.count(name) > 1)
|
||||||
duplicate_names = set(duplicate_names) # to avoid duplicates in duplicate_names
|
duplicate_names = set(duplicate_names) # to avoid duplicates in duplicate_names
|
||||||
if duplicate_names:
|
if duplicate_names:
|
||||||
print('Warning: duplicate inspiration names: {}'.format(', '.join(duplicate_names)))
|
raise RuntimeError('Duplicate inspiration names: {}'.format(', '.join(duplicate_names)))
|
||||||
|
|
||||||
|
# convert to dictionary
|
||||||
|
inspirations = {x['name']: x for x in inspirations}
|
||||||
|
|
||||||
return inspirations
|
return inspirations
|
||||||
|
|
||||||
|
|
||||||
def write_inspirations_info(inspirations):
|
def write_inspirations(inspirations):
|
||||||
"""
|
"""
|
||||||
Given an internal list of inspirations, write it into the inspirations file
|
Given an internal dictionary of inspirations, write it into the inspirations file
|
||||||
:param inspirations:
|
:param inspirations:
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
|
# convert dictionary to list
|
||||||
|
inspirations = list(inspirations.values())
|
||||||
|
|
||||||
# comment
|
# comment
|
||||||
content = '{}\n'.format(generic_comment_string)
|
content = '{}\n'.format(generic_comment_string)
|
||||||
|
|
||||||
@ -544,7 +550,7 @@ def write_inspirations_info(inspirations):
|
|||||||
field = field.capitalize()
|
field = field.capitalize()
|
||||||
# lists get special treatment
|
# lists get special treatment
|
||||||
if isinstance(value, list):
|
if isinstance(value, list):
|
||||||
value.sort(key=str.casefold)
|
value.sort(key=str.casefold) # sorted alphabetically
|
||||||
value = [x if not ',' in x else '"{}"'.format(x) for x in value] # surround those with a comma with quotation marks
|
value = [x if not ',' in x else '"{}"'.format(x) for x in value] # surround those with a comma with quotation marks
|
||||||
value = ', '.join(value)
|
value = ', '.join(value)
|
||||||
content += '- {}: {}\n'.format(field, value)
|
content += '- {}: {}\n'.format(field, value)
|
||||||
|
@ -2,9 +2,17 @@
|
|||||||
Simple UI helpers with PyQt
|
Simple UI helpers with PyQt
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
import sys
|
||||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||||
|
|
||||||
|
|
||||||
|
def exception_hook(type, value, traceback):
|
||||||
|
"""
|
||||||
|
Use sys.__excepthook__, the standard hook.
|
||||||
|
"""
|
||||||
|
sys.__excepthook__(type, value, traceback)
|
||||||
|
|
||||||
|
|
||||||
def run_simple_button_app(title, actions):
|
def run_simple_button_app(title, actions):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@ -12,6 +20,9 @@ def run_simple_button_app(title, actions):
|
|||||||
:param actions:
|
:param actions:
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
|
# fix PyQt5 eating exceptions (see http://stackoverflow.com/q/14493081/1536976)
|
||||||
|
sys.excepthook = exception_hook
|
||||||
|
|
||||||
# create app
|
# create app
|
||||||
app = QtWidgets.QApplication([])
|
app = QtWidgets.QApplication([])
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# F.LF
|
# F.LF
|
||||||
|
|
||||||
- Home: http://project-f.github.io/, https://web.archive.org/web/20190629133825/https://www.projectf.hk/F.LF/
|
- Home: http://project-f.github.io/, https://web.archive.org/web/20190629133825/https://www.projectf.hk/F.LF/
|
||||||
- Inspirations: Little Fighter 2 (http://lf2.net/)
|
- Inspirations: Little Fighter 2
|
||||||
- State: mature
|
- State: mature
|
||||||
- Platform: Web
|
- Platform: Web
|
||||||
- Keywords: framework, clone, content commercial, requires original content
|
- Keywords: framework, clone, content commercial, requires original content
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# FreeRCT
|
# FreeRCT
|
||||||
|
|
||||||
- Home: https://web.archive.org/web/*/http://www.freerct.org/, http://freerct.blogspot.com/
|
- Home: https://web.archive.org/web/*/http://www.freerct.org/, http://freerct.blogspot.com/
|
||||||
- Inspirations: RollerCoaster Tycoon (1 and 2)
|
- Inspirations: RollerCoaster Tycoon, RollerCoaster Tycoon 2
|
||||||
- State: beta, inactive since 2016
|
- State: beta, inactive since 2016
|
||||||
- Keywords: strategy, remake
|
- Keywords: strategy, remake
|
||||||
- Code repository: https://github.com/FreeRCT/FreeRCT.git
|
- Code repository: https://github.com/FreeRCT/FreeRCT.git
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# MiniPacman
|
# MiniPacman
|
||||||
|
|
||||||
- Home: https://github.com/fastrgv/MiniPacman
|
- Home: https://github.com/fastrgv/MiniPacman
|
||||||
- Inspirations: Pacman
|
- Inspirations: Pac-Man
|
||||||
- State: mature
|
- State: mature
|
||||||
- Download: https://github.com/fastrgv/MiniPacman/releases
|
- Download: https://github.com/fastrgv/MiniPacman/releases
|
||||||
- Platform: Windows, Linux, macOS
|
- Platform: Windows, Linux, macOS
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Not Pacman
|
# Not Pacman
|
||||||
|
|
||||||
- Home: https://stabyourself.net/notpacman/
|
- Home: https://stabyourself.net/notpacman/
|
||||||
- Inspirations: Pacman
|
- Inspirations: Pac-Man
|
||||||
- State: mature, inactive since 2013
|
- State: mature, inactive since 2013
|
||||||
- Platform: Windows, Linux, macOS
|
- Platform: Windows, Linux, macOS
|
||||||
- Keywords: action, open content
|
- Keywords: action, open content
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
- Code language: C, C++
|
- Code language: C, C++
|
||||||
- Code license: LGPL-2.1
|
- Code license: LGPL-2.1
|
||||||
|
|
||||||
Remake of Creatures.
|
|
||||||
Restarted in 2020.
|
Restarted in 2020.
|
||||||
|
|
||||||
## Building
|
## Building
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
- Home: https://www.openttd.org/
|
- Home: https://www.openttd.org/
|
||||||
- Media: https://en.wikipedia.org/wiki/OpenTTD
|
- Media: https://en.wikipedia.org/wiki/OpenTTD
|
||||||
- Inspirations: Transport Tycoon Deluxe
|
- Inspirations: Transport Tycoon
|
||||||
- State: mature
|
- State: mature
|
||||||
- Download: https://www.openttd.org/downloads/openttd-releases/latest.html
|
- Download: https://www.openttd.org/downloads/openttd-releases/latest.html
|
||||||
- Keywords: simulation, can use original content, open content (swappable), remake
|
- Keywords: simulation, can use original content, open content (swappable), remake
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Pacman
|
# Pacman
|
||||||
|
|
||||||
- Home: https://github.com/ebuc99/pacman
|
- Home: https://github.com/ebuc99/pacman
|
||||||
- Inspirations: Pacman
|
- Inspirations: Pac-Man
|
||||||
- State: beta
|
- State: beta
|
||||||
- Download: https://github.com/ebuc99/pacman/releases, https://github.com/ebuc99/pacman_win/releases
|
- Download: https://github.com/ebuc99/pacman/releases, https://github.com/ebuc99/pacman_win/releases
|
||||||
- Keywords: arcade
|
- Keywords: arcade
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
# Seven Kingdoms: Ancient Adversaries
|
# Seven Kingdoms: Ancient Adversaries
|
||||||
|
|
||||||
- Home: https://7kfans.com/
|
- Home: https://7kfans.com/
|
||||||
- Media: <https://en.wikipedia.org/wiki/Seven_Kingdoms_(video_game)>
|
|
||||||
- Inspirations: Seven Kingdoms: Ancient Adversaries
|
- Inspirations: Seven Kingdoms: Ancient Adversaries
|
||||||
- State: mature
|
- State: mature
|
||||||
- Download: https://www.7kfans.com/wiki/index.php/Download, https://sourceforge.net/projects/skfans/files/, https://github.com/the3dfxdude/7kaa/releases
|
- Download: https://www.7kfans.com/wiki/index.php/Download, https://sourceforge.net/projects/skfans/files/, https://github.com/the3dfxdude/7kaa/releases
|
||||||
|
363
inspirations.md
363
inspirations.md
@ -1,5 +1,5 @@
|
|||||||
[comment]: # (partly autogenerated content, edit with care, read the manual before)
|
[comment]: # (partly autogenerated content, edit with care, read the manual before)
|
||||||
# Inspirations [510]
|
# Inspirations [552]
|
||||||
|
|
||||||
## 1010! [1]
|
## 1010! [1]
|
||||||
|
|
||||||
@ -19,9 +19,9 @@
|
|||||||
- Inspired entries: Open Horizon
|
- Inspired entries: Open Horizon
|
||||||
- Media: https://en.wikipedia.org/wiki/Ace_Combat:_Assault_Horizon
|
- Media: https://en.wikipedia.org/wiki/Ace_Combat:_Assault_Horizon
|
||||||
|
|
||||||
## Ace of Spades [2]
|
## Ace of Spades [3]
|
||||||
|
|
||||||
- Inspired entries: Iceball, OpenSpades
|
- Inspired entries: BetterSpades, Iceball, OpenSpades
|
||||||
- Media: <https://en.wikipedia.org/wiki/Ace_of_Spades_(video_game)>
|
- Media: <https://en.wikipedia.org/wiki/Ace_of_Spades_(video_game)>
|
||||||
|
|
||||||
## Achtung, die Kurve! [4]
|
## Achtung, die Kurve! [4]
|
||||||
@ -49,6 +49,10 @@
|
|||||||
- Inspired entries: Aklabeth
|
- Inspired entries: Aklabeth
|
||||||
- Media: https://en.wikipedia.org/wiki/Akalabeth:_World_of_Doom
|
- Media: https://en.wikipedia.org/wiki/Akalabeth:_World_of_Doom
|
||||||
|
|
||||||
|
## Albion [1]
|
||||||
|
|
||||||
|
- Inspired entries: SR
|
||||||
|
|
||||||
## Allegiance [1]
|
## Allegiance [1]
|
||||||
|
|
||||||
- Inspired entries: Free Allegiance
|
- Inspired entries: Free Allegiance
|
||||||
@ -59,6 +63,10 @@
|
|||||||
- Inspired entries: Unknown Horizons
|
- Inspired entries: Unknown Horizons
|
||||||
- Media: https://en.wikipedia.org/wiki/Anno_(series)
|
- Media: https://en.wikipedia.org/wiki/Anno_(series)
|
||||||
|
|
||||||
|
## Anno 1404 [1]
|
||||||
|
|
||||||
|
- Inspired entries: Goblin Camp
|
||||||
|
|
||||||
## Another World 2: Heart of the Alien [1]
|
## Another World 2: Heart of the Alien [1]
|
||||||
|
|
||||||
- Inspired entries: Heart of the Alien
|
- Inspired entries: Heart of the Alien
|
||||||
@ -131,13 +139,13 @@
|
|||||||
|
|
||||||
- Inspired entries: SDL Asylum
|
- Inspired entries: SDL Asylum
|
||||||
|
|
||||||
## Atomic Bomberman [1]
|
## Atomic Bomberman [2]
|
||||||
|
|
||||||
- Inspired entries: Bombman
|
- Inspired entries: BomberClone, Bombman
|
||||||
|
|
||||||
## Atomix [4]
|
## Atomix [5]
|
||||||
|
|
||||||
- Inspired entries: Atomiks, Atomix, KAtomic, WAtomic
|
- Inspired entries: Atomiks, Atomix, KAtomic, LMarbles, WAtomic
|
||||||
|
|
||||||
## Awesomenauts [1]
|
## Awesomenauts [1]
|
||||||
|
|
||||||
@ -163,9 +171,9 @@
|
|||||||
|
|
||||||
- Inspired entries: Brutal Chess
|
- Inspired entries: Brutal Chess
|
||||||
|
|
||||||
## Battle City [2]
|
## Battle City [3]
|
||||||
|
|
||||||
- Inspired entries: Battle City, Tank: Zone of Death
|
- Inspired entries: Battle City, Cattle Bity, Tank: Zone of Death
|
||||||
- Media: https://en.wikipedia.org/wiki/Battle_City
|
- Media: https://en.wikipedia.org/wiki/Battle_City
|
||||||
|
|
||||||
## Battle Isle series [2]
|
## Battle Isle series [2]
|
||||||
@ -254,9 +262,9 @@
|
|||||||
|
|
||||||
- Inspired entries: bratwurst
|
- Inspired entries: bratwurst
|
||||||
|
|
||||||
## Breakout [2]
|
## Breakout [4]
|
||||||
|
|
||||||
- Inspired entries: Breakout-VR, BRIQUOLO
|
- Inspired entries: Breakout-VR, BRIQUOLO, LBreakoutHD, SDL-Ball
|
||||||
|
|
||||||
## Bubble Bobble [1]
|
## Bubble Bobble [1]
|
||||||
|
|
||||||
@ -311,9 +319,9 @@
|
|||||||
|
|
||||||
- Inspired entries: Thunder&Lightning
|
- Inspired entries: Thunder&Lightning
|
||||||
|
|
||||||
## Castle of the Winds [1]
|
## Castle of the Winds [2]
|
||||||
|
|
||||||
- Inspired entries: Castle of the Winds in Elm
|
- Inspired entries: Castle of the Winds, Castle of the Winds in Elm
|
||||||
|
|
||||||
## Cataclysm [1]
|
## Cataclysm [1]
|
||||||
|
|
||||||
@ -379,17 +387,17 @@
|
|||||||
|
|
||||||
- Inspired entries: Colobot: Gold Edition
|
- Inspired entries: Colobot: Gold Edition
|
||||||
|
|
||||||
## Command & Conquer [1]
|
## Command & Conquer [2]
|
||||||
|
|
||||||
- Inspired entries: OpenRA
|
- Inspired entries: OpenRA, Vanilla-Conquer
|
||||||
|
|
||||||
## Command & Conquer: Generals [2]
|
## Command & Conquer: Generals [2]
|
||||||
|
|
||||||
- Inspired entries: OpenSAGE, Thyme
|
- Inspired entries: OpenSAGE, Thyme
|
||||||
|
|
||||||
## Command & Conquer: Red Alert [2]
|
## Command & Conquer: Red Alert [3]
|
||||||
|
|
||||||
- Inspired entries: Chronoshift, OpenRA
|
- Inspired entries: Chronoshift, OpenRA, Vanilla-Conquer
|
||||||
|
|
||||||
## Commander Keen Series [4]
|
## Commander Keen Series [4]
|
||||||
|
|
||||||
@ -437,7 +445,7 @@
|
|||||||
|
|
||||||
## Creatures [1]
|
## Creatures [1]
|
||||||
|
|
||||||
- Inspired entries: Open Creatures
|
- Inspired entries: openc2e
|
||||||
|
|
||||||
## Crimsonland [2]
|
## Crimsonland [2]
|
||||||
|
|
||||||
@ -475,9 +483,13 @@
|
|||||||
|
|
||||||
- Inspired entries: Performous, StepMania
|
- Inspired entries: Performous, StepMania
|
||||||
|
|
||||||
## Death Rally [1]
|
## Dark Forces [1]
|
||||||
|
|
||||||
- Inspired entries: Dreerally
|
- Inspired entries: The Force Engine
|
||||||
|
|
||||||
|
## Death Rally [2]
|
||||||
|
|
||||||
|
- Inspired entries: dRally, Dreerally
|
||||||
- Media: https://en.wikipedia.org/wiki/Death_Rally
|
- Media: https://en.wikipedia.org/wiki/Death_Rally
|
||||||
|
|
||||||
## Deathchase [1]
|
## Deathchase [1]
|
||||||
@ -534,9 +546,9 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenDominion
|
- Inspired entries: OpenDominion
|
||||||
|
|
||||||
## Doom [15]
|
## Doom [16]
|
||||||
|
|
||||||
- Inspired entries: Chocolate Doom, Classic RBDoom 3 BFG, Do It Yourself Doom With SDL, Doom Legacy, DOOM Retro, DOOM-iOS, Doomsday Engine, Freedoom, GZDoom, Mocha Doom, Odamex, PrBoom+, SLADE, The Eternity Engine, ZDoom
|
- Inspired entries: Chocolate Doom, Classic RBDoom 3 BFG, Do It Yourself Doom With SDL, DOOM, Doom Legacy, DOOM Retro, DOOM-iOS, Doomsday Engine, Freedoom, GZDoom, Mocha Doom, Odamex, PrBoom+, SLADE, The Eternity Engine, ZDoom
|
||||||
|
|
||||||
## Doom 3 [3]
|
## Doom 3 [3]
|
||||||
|
|
||||||
@ -554,6 +566,14 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenBOR
|
- Inspired entries: OpenBOR
|
||||||
|
|
||||||
|
## Dragon Wars [1]
|
||||||
|
|
||||||
|
- Inspired entries: Turn of War
|
||||||
|
|
||||||
|
## Driver 2 [1]
|
||||||
|
|
||||||
|
- Inspired entries: REDriver2
|
||||||
|
|
||||||
## Drugwars [2]
|
## Drugwars [2]
|
||||||
|
|
||||||
- Inspired entries: Dope Wars, Prescription Wars
|
- Inspired entries: Dope Wars, Prescription Wars
|
||||||
@ -562,9 +582,9 @@
|
|||||||
|
|
||||||
- Inspired entries: Dave Gnukem, Freenukum
|
- Inspired entries: Dave Gnukem, Freenukum
|
||||||
|
|
||||||
## Duke Nukem 3D [6]
|
## Duke Nukem 3D [8]
|
||||||
|
|
||||||
- Inspired entries: Chocolate Duke3D, Duke3D, Duke3d_w32, EDuke32, JFDuke3D, xDuke
|
- Inspired entries: Chocolate Duke3D, Duke3D, Duke3d_w32, DukeGDX, EDuke32, JFDuke3D, Rednukem, xDuke
|
||||||
|
|
||||||
## Duke Nukem II [1]
|
## Duke Nukem II [1]
|
||||||
|
|
||||||
@ -578,18 +598,18 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenRA
|
- Inspired entries: OpenRA
|
||||||
|
|
||||||
## Dungeon Keeper [1]
|
## Dungeon Keeper [2]
|
||||||
|
|
||||||
- Inspired entries: OpenDungeons
|
- Inspired entries: Goblin Camp, OpenDungeons
|
||||||
|
|
||||||
## Dungeon Keeper 2 [2]
|
## Dungeon Keeper 2 [2]
|
||||||
|
|
||||||
- Inspired entries: KeeperRL, OpenKeeper
|
- Inspired entries: KeeperRL, OpenKeeper
|
||||||
- Media: https://en.wikipedia.org/wiki/Dungeon_Keeper_2
|
- Media: https://en.wikipedia.org/wiki/Dungeon_Keeper_2
|
||||||
|
|
||||||
## Dwarf Fortress [1]
|
## Dwarf Fortress [3]
|
||||||
|
|
||||||
- Inspired entries: Veloren
|
- Inspired entries: DwarfCorp, Goblin Camp, Veloren
|
||||||
|
|
||||||
## E.T. the Extra-Terrestrial [1]
|
## E.T. the Extra-Terrestrial [1]
|
||||||
|
|
||||||
@ -620,6 +640,14 @@
|
|||||||
|
|
||||||
- Inspired entries: Pioneer
|
- Inspired entries: Pioneer
|
||||||
|
|
||||||
|
## Elona [1]
|
||||||
|
|
||||||
|
- Inspired entries: ElonaFoobar
|
||||||
|
|
||||||
|
## Empire [1]
|
||||||
|
|
||||||
|
- Inspired entries: Xconq
|
||||||
|
|
||||||
## Enduro [1]
|
## Enduro [1]
|
||||||
|
|
||||||
- Inspired entries: Enduro tribute
|
- Inspired entries: Enduro tribute
|
||||||
@ -632,9 +660,9 @@
|
|||||||
|
|
||||||
- Inspired entries: ResidualVM
|
- Inspired entries: ResidualVM
|
||||||
|
|
||||||
## Escape Velocity [2]
|
## Escape Velocity [3]
|
||||||
|
|
||||||
- Inspired entries: Endless Sky, Naev
|
- Inspired entries: Endless Sky, Naev, Nox Imperii
|
||||||
|
|
||||||
## F-1 Spirit [1]
|
## F-1 Spirit [1]
|
||||||
|
|
||||||
@ -674,13 +702,17 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenFire
|
- Inspired entries: OpenFire
|
||||||
|
|
||||||
|
## Five Nights at Freddy's [1]
|
||||||
|
|
||||||
|
- Inspired entries: OpenFNaF
|
||||||
|
|
||||||
## Flag Catcher [1]
|
## Flag Catcher [1]
|
||||||
|
|
||||||
- Inspired entries: Gift Grabber
|
- Inspired entries: Gift Grabber
|
||||||
|
|
||||||
## Flappy Bird [4]
|
## Flappy Bird [5]
|
||||||
|
|
||||||
- Inspired entries: Clumsy Bird, CrappyBird, Flappy Cow, Hocoslamfy
|
- Inspired entries: Clumsy Bird, CrappyBird, Flappy Cow, Floppy Birb, Hocoslamfy
|
||||||
|
|
||||||
## Flying Shark [1]
|
## Flying Shark [1]
|
||||||
|
|
||||||
@ -698,11 +730,19 @@
|
|||||||
|
|
||||||
- Inspired entries: Forsaken
|
- Inspired entries: Forsaken
|
||||||
|
|
||||||
|
## Freeciv [1]
|
||||||
|
|
||||||
|
- Inspired entries: Freeciv-web
|
||||||
|
|
||||||
## Freelancer [1]
|
## Freelancer [1]
|
||||||
|
|
||||||
- Inspired entries: Librelancer
|
- Inspired entries: Librelancer
|
||||||
- Media: <https://en.wikipedia.org/wiki/Freelancer_(video_game)>
|
- Media: <https://en.wikipedia.org/wiki/Freelancer_(video_game)>
|
||||||
|
|
||||||
|
## Freeserf [1]
|
||||||
|
|
||||||
|
- Inspired entries: Freeserf.net
|
||||||
|
|
||||||
## Frets on Fire [1]
|
## Frets on Fire [1]
|
||||||
|
|
||||||
- Inspired entries: Frets on Fire X
|
- Inspired entries: Frets on Fire X
|
||||||
@ -910,6 +950,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Cubosphere
|
- Inspired entries: Cubosphere
|
||||||
|
|
||||||
|
## Kye [2]
|
||||||
|
|
||||||
|
- Inspired entries: Python Kye, Xye
|
||||||
|
|
||||||
## Ladder [2]
|
## Ladder [2]
|
||||||
|
|
||||||
- Inspired entries: ladder, Ladder
|
- Inspired entries: ladder, Ladder
|
||||||
@ -954,6 +998,7 @@
|
|||||||
## Little Fighter 2 [1]
|
## Little Fighter 2 [1]
|
||||||
|
|
||||||
- Inspired entries: F.LF
|
- Inspired entries: F.LF
|
||||||
|
- Media: http://lf2.net/
|
||||||
|
|
||||||
## Lode Runner [2]
|
## Lode Runner [2]
|
||||||
|
|
||||||
@ -1000,6 +1045,14 @@
|
|||||||
|
|
||||||
- Inspired entries: Krystal Drop
|
- Inspired entries: Krystal Drop
|
||||||
|
|
||||||
|
## Magus [1]
|
||||||
|
|
||||||
|
- Inspired entries: Rot Magus
|
||||||
|
|
||||||
|
## Mah-Jong [1]
|
||||||
|
|
||||||
|
- Inspired entries: Mah-Jong
|
||||||
|
|
||||||
## Marathon [1]
|
## Marathon [1]
|
||||||
|
|
||||||
- Inspired entries: Aleph One
|
- Inspired entries: Aleph One
|
||||||
@ -1082,6 +1135,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Dust Racing 2D, Microracers, Yorg
|
- Inspired entries: Dust Racing 2D, Microracers, Yorg
|
||||||
|
|
||||||
|
## micropolis [1]
|
||||||
|
|
||||||
|
- Inspired entries: Divercity
|
||||||
|
|
||||||
## Microprose Falcon 4.0 Combat Simulator [1]
|
## Microprose Falcon 4.0 Combat Simulator [1]
|
||||||
|
|
||||||
- Inspired entries: FreeFalcon
|
- Inspired entries: FreeFalcon
|
||||||
@ -1098,22 +1155,38 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenMC2
|
- Inspired entries: OpenMC2
|
||||||
|
|
||||||
|
## Might and Magic VI: The Mandate of Heaven [1]
|
||||||
|
|
||||||
|
- Inspired entries: World of Might and Magic
|
||||||
|
|
||||||
|
## Might and Magic VII: For Blood and Honor [1]
|
||||||
|
|
||||||
|
- Inspired entries: World of Might and Magic
|
||||||
|
|
||||||
|
## Might and Magic VIII: Day of the Destroyer [1]
|
||||||
|
|
||||||
|
- Inspired entries: World of Might and Magic
|
||||||
|
|
||||||
## Millipede [1]
|
## Millipede [1]
|
||||||
|
|
||||||
- Inspired entries: Monsters and Mushrooms
|
- Inspired entries: Monsters and Mushrooms
|
||||||
|
|
||||||
## Minecraft [13]
|
## Minecraft [15]
|
||||||
|
|
||||||
- Inspired entries: Chunk Stories, Craft, Digbuild, Gnomescroll, Hematite, Manic Digger, MineCraft-One-Week-Challenge, Minetest, pycraft, Terasology, TrueCraft, Veloren, Voxelands
|
- Inspired entries: Chunk Stories, Craft, Digbuild, DwarfCorp, Gnomescroll, Hematite, Manic Digger, MineCraft-One-Week-Challenge, minecraft-weekend, Minetest, pycraft, Terasology, TrueCraft, Veloren, Voxelands
|
||||||
|
|
||||||
## Minesweeper [4]
|
## Minesweeper [5]
|
||||||
|
|
||||||
- Inspired entries: Mines, Minesweeper (in C), Minesweeper.Zone, proxx
|
- Inspired entries: Isometric-Minesweeper, Mines, Minesweeper (in C), Minesweeper.Zone, proxx
|
||||||
|
|
||||||
## Missile Command [2]
|
## Missile Command [2]
|
||||||
|
|
||||||
- Inspired entries: ICBM3D, Penguin Command
|
- Inspired entries: ICBM3D, Penguin Command
|
||||||
|
|
||||||
|
## Moai [1]
|
||||||
|
|
||||||
|
- Inspired entries: adventure engine
|
||||||
|
|
||||||
## moon-patrol [1]
|
## moon-patrol [1]
|
||||||
|
|
||||||
- Inspired entries: Moon-buggy
|
- Inspired entries: Moon-buggy
|
||||||
@ -1210,14 +1283,18 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenOMF
|
- Inspired entries: OpenOMF
|
||||||
|
|
||||||
## Osu! Tatakae! Ouendan [1]
|
## Osu! Tatakae! Ouendan [2]
|
||||||
|
|
||||||
- Inspired entries: osu!
|
- Inspired entries: opsu!, osu!
|
||||||
|
|
||||||
## Oubliette [1]
|
## Oubliette [1]
|
||||||
|
|
||||||
- Inspired entries: Liberal Crime Squad
|
- Inspired entries: Liberal Crime Squad
|
||||||
|
|
||||||
|
## Outlaws [1]
|
||||||
|
|
||||||
|
- Inspired entries: The Force Engine
|
||||||
|
|
||||||
## Outpost [1]
|
## Outpost [1]
|
||||||
|
|
||||||
- Inspired entries: Outpost HD
|
- Inspired entries: Outpost HD
|
||||||
@ -1230,13 +1307,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Enigma
|
- Inspired entries: Enigma
|
||||||
|
|
||||||
## Pac-Man [5]
|
## Pac-Man [8]
|
||||||
|
|
||||||
- Inspired entries: EnTT Pacman, Ghostly, HTML5 Pacman, Pac Go, pacman-canvas
|
- Inspired entries: EnTT Pacman, Ghostly, HTML5 Pacman, MiniPacman, Not Pacman, Pac Go, Pacman, pacman-canvas
|
||||||
|
- Media: https://en.wikipedia.org/wiki/Pac-Man
|
||||||
## Pacman [1]
|
|
||||||
|
|
||||||
- Inspired entries: MiniPacman
|
|
||||||
|
|
||||||
## Panzer General [2]
|
## Panzer General [2]
|
||||||
|
|
||||||
@ -1268,6 +1342,10 @@
|
|||||||
|
|
||||||
- Inspired entries: OPMon, Tuxemon
|
- Inspired entries: OPMon, Tuxemon
|
||||||
|
|
||||||
|
## Pong [1]
|
||||||
|
|
||||||
|
- Inspired entries: PSY PONG 3D
|
||||||
|
|
||||||
## Portal [1]
|
## Portal [1]
|
||||||
|
|
||||||
- Inspired entries: glPortal
|
- Inspired entries: glPortal
|
||||||
@ -1280,9 +1358,13 @@
|
|||||||
|
|
||||||
- Inspired entries: sandspiel, The Powder Toy
|
- Inspired entries: sandspiel, The Powder Toy
|
||||||
|
|
||||||
## Powerslave [1]
|
## Powermonger [1]
|
||||||
|
|
||||||
- Inspired entries: Powerslave EX
|
- Inspired entries: Battles of Antargis
|
||||||
|
|
||||||
|
## Powerslave [3]
|
||||||
|
|
||||||
|
- Inspired entries: PCExhumed, Powerslave EX, PowerslaveGDX
|
||||||
|
|
||||||
## Powerslide [1]
|
## Powerslide [1]
|
||||||
|
|
||||||
@ -1292,6 +1374,10 @@
|
|||||||
|
|
||||||
- Inspired entries: FreePrince, Mininim, SDLPoP
|
- Inspired entries: FreePrince, Mininim, SDLPoP
|
||||||
|
|
||||||
|
## Prince of Persia 2 [1]
|
||||||
|
|
||||||
|
- Inspired entries: Prince-Monogame
|
||||||
|
|
||||||
## Progress Quest [2]
|
## Progress Quest [2]
|
||||||
|
|
||||||
- Inspired entries: pq2, progress-quest
|
- Inspired entries: pq2, progress-quest
|
||||||
@ -1320,9 +1406,9 @@
|
|||||||
|
|
||||||
- Inspired entries: Jake2, Yamagi Quake II
|
- Inspired entries: Jake2, Yamagi Quake II
|
||||||
|
|
||||||
## Quake 3 [4]
|
## Quake 3 [5]
|
||||||
|
|
||||||
- Inspired entries: FQuake3, ioquake3, OpenArena, QuakeJS
|
- Inspired entries: FQuake3, ioquake3, OpenArena, Quake3e, QuakeJS
|
||||||
|
|
||||||
## Railroad Tycoon [1]
|
## Railroad Tycoon [1]
|
||||||
|
|
||||||
@ -1334,11 +1420,11 @@
|
|||||||
|
|
||||||
## RARS [1]
|
## RARS [1]
|
||||||
|
|
||||||
- Inspired entries: "The Open Racing Car Simulator, TORCS"
|
- Inspired entries: "TORCS, The Open Racing Car Simulator"
|
||||||
|
|
||||||
## Redneck Rampage [1]
|
## Redneck Rampage [3]
|
||||||
|
|
||||||
- Inspired entries: erampage
|
- Inspired entries: erampage, RedneckGDX, Rednukem
|
||||||
|
|
||||||
## Rescue! [1]
|
## Rescue! [1]
|
||||||
|
|
||||||
@ -1365,6 +1451,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Rise of the Triad for Linux
|
- Inspired entries: Rise of the Triad for Linux
|
||||||
|
|
||||||
|
## Risk [2]
|
||||||
|
|
||||||
|
- Inspired entries: Domination, Tenes Empanadas Graciela
|
||||||
|
|
||||||
## Rodent's Revenge [1]
|
## Rodent's Revenge [1]
|
||||||
|
|
||||||
- Inspired entries: Open Rodent's Revenge
|
- Inspired entries: Open Rodent's Revenge
|
||||||
@ -1373,9 +1463,9 @@
|
|||||||
|
|
||||||
- Inspired entries: FreeRCT, OpenRCT2
|
- Inspired entries: FreeRCT, OpenRCT2
|
||||||
|
|
||||||
## RollerCoaster Tycoon 2 [1]
|
## RollerCoaster Tycoon 2 [2]
|
||||||
|
|
||||||
- Inspired entries: OpenRCT2
|
- Inspired entries: FreeRCT, OpenRCT2
|
||||||
|
|
||||||
## RPG Maker [3]
|
## RPG Maker [3]
|
||||||
|
|
||||||
@ -1406,9 +1496,18 @@
|
|||||||
|
|
||||||
- Inspired entries: One Way To Go, sensitive-js
|
- Inspired entries: One Way To Go, sensitive-js
|
||||||
|
|
||||||
## Seven Kingdoms [1]
|
## Septerra Core: Legacy of the Creator [1]
|
||||||
|
|
||||||
|
- Inspired entries: SR
|
||||||
|
|
||||||
|
## Settlers [1]
|
||||||
|
|
||||||
|
- Inspired entries: Battles of Antargis
|
||||||
|
|
||||||
|
## Seven Kingdoms: Ancient Adversaries [1]
|
||||||
|
|
||||||
- Inspired entries: Seven Kingdoms: Ancient Adversaries
|
- Inspired entries: Seven Kingdoms: Ancient Adversaries
|
||||||
|
- Media: <https://en.wikipedia.org/wiki/Seven_Kingdoms_(video_game)>
|
||||||
|
|
||||||
## sfxr [1]
|
## sfxr [1]
|
||||||
|
|
||||||
@ -1429,14 +1528,17 @@
|
|||||||
## Ship Simulator 2006 [1]
|
## Ship Simulator 2006 [1]
|
||||||
|
|
||||||
- Inspired entries: Bridge Command
|
- Inspired entries: Bridge Command
|
||||||
|
- Media: <https://en.wikipedia.org/wiki/Ship_Simulator_(video_game)>
|
||||||
|
|
||||||
## Ship Simulator 2008 [1]
|
## Ship Simulator 2008 [1]
|
||||||
|
|
||||||
- Inspired entries: Bridge Command
|
- Inspired entries: Bridge Command
|
||||||
|
- Media: <https://en.wikipedia.org/wiki/Ship_Simulator_(video_game)>
|
||||||
|
|
||||||
## Ship Simulator Extremes [1]
|
## Ship Simulator Extremes [1]
|
||||||
|
|
||||||
- Inspired entries: Bridge Command
|
- Inspired entries: Bridge Command
|
||||||
|
- Media: <https://en.wikipedia.org/wiki/Ship_Simulator_(video_game)>
|
||||||
|
|
||||||
## Shobon Action [1]
|
## Shobon Action [1]
|
||||||
|
|
||||||
@ -1466,9 +1568,9 @@
|
|||||||
|
|
||||||
- Inspired entries: Danger from the Deep
|
- Inspired entries: Danger from the Deep
|
||||||
|
|
||||||
## SimCity [8]
|
## SimCity [9]
|
||||||
|
|
||||||
- Inspired entries: 3d.city, Citybound, Cytopia, Lincity, LinCity-NG, Micropolis, micropolisJS, OpenCity
|
- Inspired entries: 3d.city, Citybound, Cytopia, Divercity, Lincity, LinCity-NG, Micropolis, micropolisJS, OpenCity
|
||||||
- Media: <https://en.wikipedia.org/wiki/SimCity_(1989_video_game)>
|
- Media: <https://en.wikipedia.org/wiki/SimCity_(1989_video_game)>
|
||||||
|
|
||||||
## SimCity 2000 [1]
|
## SimCity 2000 [1]
|
||||||
@ -1512,18 +1614,22 @@
|
|||||||
|
|
||||||
- Inspired entries: Slot-Racers
|
- Inspired entries: Slot-Racers
|
||||||
|
|
||||||
## Snake [2]
|
## Snake [5]
|
||||||
|
|
||||||
- Inspired entries: Gusty's Serpents, snake
|
- Inspired entries: Armagetron Advanced, GLtron, Gusty's Serpents, KSnakeDuel, snake
|
||||||
|
|
||||||
## Sokoban [1]
|
## Sokoban [7]
|
||||||
|
|
||||||
- Inspired entries: CavePacker
|
- Inspired entries: AdaGate, CavePacker, GJID, JSoko, Simple Sokoban, SokoSolve, Xye
|
||||||
|
|
||||||
## Solar Fox [1]
|
## Solar Fox [1]
|
||||||
|
|
||||||
- Inspired entries: SolarWolf
|
- Inspired entries: SolarWolf
|
||||||
|
|
||||||
|
## Solomon's Key [1]
|
||||||
|
|
||||||
|
- Inspired entries: OpenSolomonsKey
|
||||||
|
|
||||||
## Sonic the Hedgehog [2]
|
## Sonic the Hedgehog [2]
|
||||||
|
|
||||||
- Inspired entries: Open Surge, Sonic Robo Blast 2
|
- Inspired entries: Open Surge, Sonic Robo Blast 2
|
||||||
@ -1580,18 +1686,18 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenSWE1R
|
- Inspired entries: OpenSWE1R
|
||||||
|
|
||||||
## Star Wars Jedi Knight II: Jedi Outcast [1]
|
## Star Wars Jedi Knight II: Jedi Outcast [2]
|
||||||
|
|
||||||
- Inspired entries: JediOutcastLinux
|
- Inspired entries: JediOutcastLinux, OpenJK
|
||||||
|
|
||||||
## Star Wars Jedi Knight: Dark Forces II [1]
|
## Star Wars Jedi Knight: Dark Forces II [1]
|
||||||
|
|
||||||
- Inspired entries: Gorc
|
- Inspired entries: Gorc
|
||||||
- Media: https://en.wikipedia.org/wiki/Star_Wars_Jedi_Knight:_Dark_Forces_II
|
- Media: https://en.wikipedia.org/wiki/Star_Wars_Jedi_Knight:_Dark_Forces_II
|
||||||
|
|
||||||
## Star Wars Jedi Knight: Jedi Academy [1]
|
## Star Wars Jedi Knight: Jedi Academy [2]
|
||||||
|
|
||||||
- Inspired entries: OpenJK
|
- Inspired entries: JediAcademyLinux, OpenJK
|
||||||
- Media: https://en.wikipedia.org/wiki/Star_Wars_Jedi_Knight:_Jedi_Academy
|
- Media: https://en.wikipedia.org/wiki/Star_Wars_Jedi_Knight:_Jedi_Academy
|
||||||
|
|
||||||
## Star Wars: Galactic Battlegrounds [1]
|
## Star Wars: Galactic Battlegrounds [1]
|
||||||
@ -1646,9 +1752,9 @@
|
|||||||
|
|
||||||
- Inspired entries: sundog, SunDog Resurrection
|
- Inspired entries: sundog, SunDog Resurrection
|
||||||
|
|
||||||
## Supaplex [3]
|
## Supaplex [4]
|
||||||
|
|
||||||
- Inspired entries: Rocks'n'Diamonds, splexhd, Supaxl
|
- Inspired entries: OpenSupaplex, Rocks'n'Diamonds, splexhd, Supaxl
|
||||||
|
|
||||||
## Super Cars [1]
|
## Super Cars [1]
|
||||||
|
|
||||||
@ -1662,13 +1768,13 @@
|
|||||||
|
|
||||||
- Inspired entries: Open Hexagon
|
- Inspired entries: Open Hexagon
|
||||||
|
|
||||||
## Super Mario [4]
|
## Super Mario [5]
|
||||||
|
|
||||||
- Inspired entries: Mario Objects, Mega Mario, SuperTux, uMario
|
- Inspired entries: Mario Objects, Mega Mario, ReTux, SuperTux, uMario
|
||||||
|
|
||||||
## Super Methane Brothers [2]
|
## Super Methane Brothers [2]
|
||||||
|
|
||||||
- Inspired entries: Super Methane Brothers, super-methane-brothers-gx
|
- Inspired entries: Super Methane Brothers, Super Methane Brothers for Wii and GameCube
|
||||||
|
|
||||||
## Super Metroid [1]
|
## Super Metroid [1]
|
||||||
|
|
||||||
@ -1679,11 +1785,15 @@
|
|||||||
- Inspired entries: irrlamb, Neverball, Nuncabola, Veraball
|
- Inspired entries: irrlamb, Neverball, Nuncabola, Veraball
|
||||||
- Media: <https://en.wikipedia.org/wiki/Super_Monkey_Ball_(video_game)>
|
- Media: <https://en.wikipedia.org/wiki/Super_Monkey_Ball_(video_game)>
|
||||||
|
|
||||||
## Super Smash Bros. [2]
|
## Super Smash Bros. [3]
|
||||||
|
|
||||||
- Inspired entries: Super Tilt Bro, TUSSLE
|
- Inspired entries: Smash, Super Tilt Bro, TUSSLE
|
||||||
- Media: https://en.wikipedia.org/wiki/Super_Smash_Bros.
|
- Media: https://en.wikipedia.org/wiki/Super_Smash_Bros.
|
||||||
|
|
||||||
|
## Super ZZT [3]
|
||||||
|
|
||||||
|
- Inspired entries: Reconstruction of Super ZZT, Roton, Zeta
|
||||||
|
|
||||||
## Supreme Commander [1]
|
## Supreme Commander [1]
|
||||||
|
|
||||||
- Inspired entries: Zero-K
|
- Inspired entries: Zero-K
|
||||||
@ -1720,6 +1830,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Gang Garrison 2, Open Fortress
|
- Inspired entries: Gang Garrison 2, Open Fortress
|
||||||
|
|
||||||
|
## TekWar [1]
|
||||||
|
|
||||||
|
- Inspired entries: TekwarGDX
|
||||||
|
|
||||||
## Tempest [1]
|
## Tempest [1]
|
||||||
|
|
||||||
- Inspired entries: Arashi-JS
|
- Inspired entries: Arashi-JS
|
||||||
@ -1733,9 +1847,13 @@
|
|||||||
|
|
||||||
- Inspired entries: OpenGL Test Drive Remake
|
- Inspired entries: OpenGL Test Drive Remake
|
||||||
|
|
||||||
## Tetris [9]
|
## TetraVex [1]
|
||||||
|
|
||||||
- Inspired entries: 4D-TRIS, Hextris, Just another Tetris™ clone, NullpoMino, OpenBlok, Quadrapassel, Spludlow Tetris, Tetris (in C and NCURSES), vitetris
|
- Inspired entries: TetraVex
|
||||||
|
|
||||||
|
## Tetris [16]
|
||||||
|
|
||||||
|
- Inspired entries: 2H4U, 4D-TRIS, Bastet, Cuyo, Gottet, Hextris, Just another Tetris™ clone, LTris, NullpoMino, OpenBlok, Quadrapassel, Spludlow Tetris, T^3, Tetris (in C and NCURSES), vitetris, Xultris
|
||||||
- Media: https://en.wikipedia.org/wiki/Tetris
|
- Media: https://en.wikipedia.org/wiki/Tetris
|
||||||
|
|
||||||
## Tetris Attack [4]
|
## Tetris Attack [4]
|
||||||
@ -1754,6 +1872,10 @@
|
|||||||
|
|
||||||
- Inspired entries: The Castles of Dr. Creep
|
- Inspired entries: The Castles of Dr. Creep
|
||||||
|
|
||||||
|
## The Clans [1]
|
||||||
|
|
||||||
|
- Inspired entries: The Clans
|
||||||
|
|
||||||
## The Clue! [1]
|
## The Clue! [1]
|
||||||
|
|
||||||
- Inspired entries: Der Clou!
|
- Inspired entries: Der Clou!
|
||||||
@ -1792,9 +1914,9 @@
|
|||||||
|
|
||||||
- Inspired entries: The-Trail
|
- Inspired entries: The-Trail
|
||||||
|
|
||||||
## The Settlers [1]
|
## The Settlers [2]
|
||||||
|
|
||||||
- Inspired entries: Freeserf
|
- Inspired entries: Freeserf, Freeserf.net
|
||||||
|
|
||||||
## The Settlers II [2]
|
## The Settlers II [2]
|
||||||
|
|
||||||
@ -1867,6 +1989,7 @@
|
|||||||
## Transport Tycoon [3]
|
## Transport Tycoon [3]
|
||||||
|
|
||||||
- Inspired entries: OpenTTD, Simutrans, TTDPatch
|
- Inspired entries: OpenTTD, Simutrans, TTDPatch
|
||||||
|
- Media: https://en.wikipedia.org/wiki/Transport_Tycoon
|
||||||
|
|
||||||
## Tremulous [1]
|
## Tremulous [1]
|
||||||
|
|
||||||
@ -1914,7 +2037,7 @@
|
|||||||
|
|
||||||
- Inspired entries: Anteform, Minima
|
- Inspired entries: Anteform, Minima
|
||||||
|
|
||||||
## Ultima IV [1]
|
## Ultima IV: Quest of the Avatar [1]
|
||||||
|
|
||||||
- Inspired entries: xu4
|
- Inspired entries: xu4
|
||||||
|
|
||||||
@ -1927,19 +2050,31 @@
|
|||||||
|
|
||||||
- Inspired entries: Haxima
|
- Inspired entries: Haxima
|
||||||
|
|
||||||
## Ultima VI [1]
|
## Ultima Underworld [1]
|
||||||
|
|
||||||
|
- Inspired entries: UnderworldExporter
|
||||||
|
|
||||||
|
## Ultima Underworld 2: Labyrinth of Worlds [1]
|
||||||
|
|
||||||
|
- Inspired entries: Labyrinth of Worlds
|
||||||
|
|
||||||
|
## Ultima Underworld II: Labyrinth of Worlds [1]
|
||||||
|
|
||||||
|
- Inspired entries: UnderworldExporter
|
||||||
|
|
||||||
|
## Ultima V: Warriors of Destiny [1]
|
||||||
|
|
||||||
|
- Inspired entries: Ultima 5 Redux
|
||||||
|
|
||||||
|
## Ultima VI: The False Prophet [1]
|
||||||
|
|
||||||
- Inspired entries: Nuvie
|
- Inspired entries: Nuvie
|
||||||
|
|
||||||
## Ultima VII [1]
|
|
||||||
|
|
||||||
- Inspired entries: Exult
|
|
||||||
|
|
||||||
## Ultima VII: The Black Gate [1]
|
## Ultima VII: The Black Gate [1]
|
||||||
|
|
||||||
- Inspired entries: Exult
|
- Inspired entries: Exult
|
||||||
|
|
||||||
## Ultima VIII [1]
|
## Ultima VIII: Pagan [1]
|
||||||
|
|
||||||
- Inspired entries: Pentagram
|
- Inspired entries: Pentagram
|
||||||
|
|
||||||
@ -1951,6 +2086,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Vocaluxe
|
- Inspired entries: Vocaluxe
|
||||||
|
|
||||||
|
## Undertale [1]
|
||||||
|
|
||||||
|
- Inspired entries: UndertaleModTool
|
||||||
|
|
||||||
## Uninvited [1]
|
## Uninvited [1]
|
||||||
|
|
||||||
- Inspired entries: uninvited
|
- Inspired entries: uninvited
|
||||||
@ -1963,6 +2102,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Alimer
|
- Inspired entries: Alimer
|
||||||
|
|
||||||
|
## V-Wing [1]
|
||||||
|
|
||||||
|
- Inspired entries: Luola
|
||||||
|
|
||||||
## Visual Pinball [1]
|
## Visual Pinball [1]
|
||||||
|
|
||||||
- Inspired entries: Visual Pinball
|
- Inspired entries: Visual Pinball
|
||||||
@ -1971,26 +2114,38 @@
|
|||||||
|
|
||||||
- Inspired entries: Train
|
- Inspired entries: Train
|
||||||
|
|
||||||
## VVVVVV [1]
|
## VVVVVV [2]
|
||||||
|
|
||||||
- Inspired entries: WWW
|
- Inspired entries: VVVVVV, WWW
|
||||||
- Media: https://en.wikipedia.org/wiki/VVVVVV
|
- Media: https://en.wikipedia.org/wiki/VVVVVV
|
||||||
|
|
||||||
|
## Warcraft [1]
|
||||||
|
|
||||||
|
- Inspired entries: Battles of Antargis
|
||||||
|
|
||||||
## Warcraft II [2]
|
## Warcraft II [2]
|
||||||
|
|
||||||
- Inspired entries: Dark Oberon, Wargus
|
- Inspired entries: Dark Oberon, Wargus
|
||||||
|
|
||||||
## Warcraft: Orcs & Humans [1]
|
## Warcraft: Orcs & Humans [3]
|
||||||
|
|
||||||
- Inspired entries: warcraft-remake
|
- Inspired entries: SR, War1, warcraft-remake
|
||||||
|
|
||||||
|
## Wargamer:Napoleon 1813 [1]
|
||||||
|
|
||||||
|
- Inspired entries: Wargamer
|
||||||
|
|
||||||
## Wario Land 3 [1]
|
## Wario Land 3 [1]
|
||||||
|
|
||||||
- Inspired entries: Wario-Land-3
|
- Inspired entries: Wario-Land-3
|
||||||
|
|
||||||
## Warlords II [1]
|
## WarioWare [1]
|
||||||
|
|
||||||
- Inspired entries: FreeLords
|
- Inspired entries: Librerama
|
||||||
|
|
||||||
|
## Warlords II [2]
|
||||||
|
|
||||||
|
- Inspired entries: FreeLords, LordsAWar!
|
||||||
- Media: <https://en.wikipedia.org/wiki/Warlords_(game_series)>
|
- Media: <https://en.wikipedia.org/wiki/Warlords_(game_series)>
|
||||||
|
|
||||||
## Warrior Kings [1]
|
## Warrior Kings [1]
|
||||||
@ -2025,6 +2180,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Ecksdee, H-Craft Championship, HexGL, The Rush
|
- Inspired entries: Ecksdee, H-Craft Championship, HexGL, The Rush
|
||||||
|
|
||||||
|
## Witchaven [1]
|
||||||
|
|
||||||
|
- Inspired entries: WitchavenGDX
|
||||||
|
|
||||||
## Wizard of Wor [1]
|
## Wizard of Wor [1]
|
||||||
|
|
||||||
- Inspired entries: KnightOfWor
|
- Inspired entries: KnightOfWor
|
||||||
@ -2034,9 +2193,9 @@
|
|||||||
|
|
||||||
- Inspired entries: Wizardry Legacy
|
- Inspired entries: Wizardry Legacy
|
||||||
|
|
||||||
## Wolfenstein 3D [1]
|
## Wolfenstein 3D [2]
|
||||||
|
|
||||||
- Inspired entries: ECWolf
|
- Inspired entries: ECWolf, Wolf3dX
|
||||||
|
|
||||||
## Wolfenstein: Enemy Territory [1]
|
## Wolfenstein: Enemy Territory [1]
|
||||||
|
|
||||||
@ -2046,6 +2205,10 @@
|
|||||||
|
|
||||||
- Inspired entries: Nuvie
|
- Inspired entries: Nuvie
|
||||||
|
|
||||||
|
## Worms [3]
|
||||||
|
|
||||||
|
- Inspired entries: Atomic Tanks, GUSANOS, OpenLieroX
|
||||||
|
|
||||||
## Worms Series [2]
|
## Worms Series [2]
|
||||||
|
|
||||||
- Inspired entries: Hedgewars, WarMUX
|
- Inspired entries: Hedgewars, WarMUX
|
||||||
@ -2054,13 +2217,17 @@
|
|||||||
|
|
||||||
- Inspired entries: Open Apocalypse, OpenXcom, UFO2000, UFO: Alien Invasion, X-Force: Fight For Destiny, Xenowar
|
- Inspired entries: Open Apocalypse, OpenXcom, UFO2000, UFO: Alien Invasion, X-Force: Fight For Destiny, Xenowar
|
||||||
|
|
||||||
## X-COM: Terror from the Deep [6]
|
## X-COM: Terror from the Deep [7]
|
||||||
|
|
||||||
- Inspired entries: Open Apocalypse, OpenXcom, UFO2000, UFO: Alien Invasion, X-Force: Fight For Destiny, Xenowar
|
- Inspired entries: Open Apocalypse, OpenXcom, SR, UFO2000, UFO: Alien Invasion, X-Force: Fight For Destiny, Xenowar
|
||||||
|
|
||||||
## X-COM: UFO Defense [6]
|
## X-COM: UFO Defense [7]
|
||||||
|
|
||||||
- Inspired entries: Open Apocalypse, OpenXcom, UFO2000, UFO: Alien Invasion, X-Force: Fight For Destiny, Xenowar
|
- Inspired entries: Open Apocalypse, OpenXcom, SR, UFO2000, UFO: Alien Invasion, X-Force: Fight For Destiny, Xenowar
|
||||||
|
|
||||||
|
## X-Moto [1]
|
||||||
|
|
||||||
|
- Inspired entries: Bloboats
|
||||||
|
|
||||||
## XKobo [1]
|
## XKobo [1]
|
||||||
|
|
||||||
@ -2078,6 +2245,14 @@
|
|||||||
|
|
||||||
- Inspired entries: XPilot NG
|
- Inspired entries: XPilot NG
|
||||||
|
|
||||||
|
## Yandere Simulator [1]
|
||||||
|
|
||||||
|
- Inspired entries: OpenYandere
|
||||||
|
|
||||||
|
## Yu-Gi-Oh! [1]
|
||||||
|
|
||||||
|
- Inspired entries: Heroes of Civilizations
|
||||||
|
|
||||||
## Z [2]
|
## Z [2]
|
||||||
|
|
||||||
- Inspired entries: Zed Online, Zod Engine
|
- Inspired entries: Zed Online, Zod Engine
|
||||||
|
Loading…
x
Reference in New Issue
Block a user