196 lines
11 KiB
Python
196 lines
11 KiB
Python
# Developed for module tiericide, this script will quickly print out a market
|
|
# conversion map based on patch notes, as well as database conversion mapping.
|
|
|
|
import argparse
|
|
import os.path
|
|
import sqlite3
|
|
import sys
|
|
|
|
# Add eos root path to sys.path so we can import ourselves
|
|
path = os.path.dirname(__file__)
|
|
sys.path.append(os.path.realpath(os.path.join(path, "..")))
|
|
|
|
# change to correct conversion
|
|
|
|
rename_phrase = " renamed to "
|
|
conversion_phrase = " converted to "
|
|
|
|
text = """
|
|
Supplemental EM Ward Amplifier converted to 'Basic' EM Shield Amplifier
|
|
Supplemental Explosive Deflection Amplifier converted to 'Basic' Explosive Shield Amplifier
|
|
Supplemental Kinetic Deflection Amplifier converted to 'Basic' Kinetic Shield Amplifier
|
|
Supplemental Thermal Dissipation Amplifier converted to 'Basic' Thermal Shield Amplifier
|
|
Basic EM Ward Amplifier renamed to 'Basic' EM Shield Amplifier
|
|
Basic Thermal Dissipation Amplifier renamed to 'Basic' Thermal Shield Amplifier
|
|
Basic Kinetic Deflection Amplifier renamed to 'Basic' Kinetic Shield Amplifier
|
|
Basic Explosive Deflection Amplifier renamed to 'Basic' Explosive Shield Amplifier
|
|
EM Ward Amplifier I renamed to EM Shield Amplifier I
|
|
Explosive Deflection Amplifier I renamed to Explosive Shield Amplifier I
|
|
Explosive Deflection Amplifier II renamed to Explosive Shield Amplifier II
|
|
Thermal Dissipation Amplifier I renamed to Thermal Shield Amplifier I
|
|
Thermal Dissipation Amplifier II renamed to Thermal Shield Amplifier II
|
|
Kinetic Deflection Amplifier I renamed to Kinetic Shield Amplifier I
|
|
Kinetic Deflection Amplifier II renamed to Kinetic Shield Amplifier II
|
|
EM Ward Amplifier II renamed to EM Shield Amplifier II
|
|
Upgraded Explosive Deflection Amplifier I renamed to Compact Explosive Shield Amplifier
|
|
Upgraded Thermal Dissipation Amplifier I renamed to Compact Thermal Shield Amplifier
|
|
Upgraded EM Ward Amplifier I renamed to Compact EM Shield Amplifier
|
|
Upgraded Kinetic Deflection Amplifier I renamed to Compact Kinetic Shield Amplifier
|
|
Domination Explosive Deflection Amplifier renamed to Domination Explosive Shield Amplifier
|
|
Dread Guristas Explosive Deflection Amplifier renamed to Dread Guristas Explosive Shield Amplifier
|
|
Domination Thermal Dissipation Amplifier renamed to Domination Thermal Shield Amplifier
|
|
Dread Guristas Thermal Dissipation Amplifier renamed to Dread Guristas Thermal Shield Amplifier
|
|
Domination Kinetic Deflection Amplifier renamed to Domination Kinetic Shield Amplifier
|
|
Dread Guristas Kinetic Deflection Amplifier renamed to Dread Guristas Kinetic Shield Amplifier
|
|
Domination EM Ward Amplifier renamed to Domination EM Shield Amplifier
|
|
Dread Guristas EM Ward Amplifier renamed to Dread Guristas EM Shield Amplifier
|
|
Hakim's Modified Explosive Deflection Amplifier renamed to Hakim's Modified Explosive Shield Amplifier
|
|
Tobias' Modified Explosive Deflection Amplifier renamed to Tobias' Modified Explosive Shield Amplifier
|
|
Hakim's Modified Thermal Dissipation Amplifier renamed to Hakim's Modified Thermal Shield Amplifier
|
|
Tobias' Modified Thermal Dissipation Amplifier renamed to Tobias' Modified Thermal Shield Amplifier
|
|
Hakim's Modified Kinetic Deflection Amplifier renamed to Hakim's Modified Kinetic Shield Amplifier
|
|
Tobias' Modified Kinetic Deflection Amplifier renamed to Tobias' Modified Kinetic Shield Amplifier
|
|
Hakim's Modified EM Ward Amplifier renamed to Hakim's Modified EM Shield Amplifier
|
|
Tobias' Modified EM Ward Amplifier renamed to Tobias' Modified EM Shield Amplifier
|
|
Kaikka's Modified Explosive Deflection Amplifier renamed to Kaikka's Modified Explosive Shield Amplifier
|
|
Thon's Modified Explosive Deflection Amplifier renamed to Thon's Modified Explosive Shield Amplifier
|
|
Vepas' Modified Explosive Deflection Amplifier renamed to Vepas' Modified Explosive Shield Amplifier
|
|
Estamel's Modified Explosive Deflection Amplifier renamed to Estamel's Modified Explosive Shield Amplifier
|
|
Kaikka's Modified Thermal Dissipation Amplifier renamed to Kaikka's Modified Thermal Shield Amplifier
|
|
Thon's Modified Thermal Dissipation Amplifier renamed to Thon's Modified Thermal Shield Amplifier
|
|
Vepas' Modified Thermal Dissipation Amplifier renamed to Vepas' Modified Thermal Shield Amplifier
|
|
Estamel's Modified Thermal Dissipation Amplifier renamed to Estamel's Modified Thermal Shield Amplifier
|
|
Kaikka's Modified Kinetic Deflection Amplifier renamed to Kaikka's Modified Kinetic Shield Amplifier
|
|
Thon's Modified Kinetic Deflection Amplifier renamed to Thon's Modified Kinetic Shield Amplifier
|
|
Vepas' Modified Kinetic Deflection Amplifier renamed to Vepas' Modified Kinetic Shield Amplifier
|
|
Estamel's Modified Kinetic Deflection Amplifier renamed to Estamel's Modified Kinetic Shield Amplifier
|
|
Kaikka's Modified EM Ward Amplifier renamed to Kaikka's Modified EM Shield Amplifier
|
|
Thon's Modified EM Ward Amplifier renamed to Thon's Modified EM Shield Amplifier
|
|
Vepas' Modified EM Ward Amplifier renamed to Vepas' Modified EM Shield Amplifier
|
|
Estamel's Modified EM Ward Amplifier renamed to Estamel's Modified EM Shield Amplifier
|
|
Caldari Navy EM Ward Amplifier renamed to Caldari Navy EM Shield Amplifier
|
|
Caldari Navy Kinetic Deflection Amplifier renamed to Caldari Navy Kinetic Shield Amplifier
|
|
Caldari Navy Thermal Dissipation Amplifier renamed to Caldari Navy Thermal Shield Amplifier
|
|
Caldari Navy Explosive Deflection Amplifier renamed to Caldari Navy Explosive Shield Amplifier
|
|
Republic Fleet EM Ward Amplifier renamed to Republic Fleet EM Shield Amplifier
|
|
Republic Fleet Kinetic Deflection Amplifier renamed to Republic Fleet Kinetic Shield Amplifier
|
|
Republic Fleet Thermal Dissipation Amplifier renamed to Republic Fleet Thermal Shield Amplifier
|
|
Republic Fleet Explosive Deflection Amplifier renamed to Republic Fleet Explosive Shield Amplifier
|
|
Pithum C-Type Explosive Deflection Amplifier renamed to Pithum C-Type Explosive Shield Amplifier
|
|
Pithum C-Type Thermal Dissipation Amplifier renamed to Pithum C-Type Thermal Shield Amplifier
|
|
Pithum C-Type Kinetic Deflection Amplifier renamed to Pithum C-Type Kinetic Shield Amplifier
|
|
Pithum C-Type EM Ward Amplifier renamed to Pithum C-Type EM Shield Amplifier
|
|
Pithum B-Type Explosive Deflection Amplifier renamed to Pithum B-Type Explosive Shield Amplifier
|
|
Pithum B-Type Thermal Dissipation Amplifier renamed to Pithum B-Type Thermal Shield Amplifier
|
|
Pithum B-Type Kinetic Deflection Amplifier renamed to Pithum B-Type Kinetic Shield Amplifier
|
|
Pithum B-Type EM Ward Amplifier renamed to Pithum B-Type EM Shield Amplifier
|
|
Pithum A-Type Explosive Deflection Amplifier renamed to Pithum A-Type Explosive Shield Amplifier
|
|
Pithum A-Type Thermal Dissipation Amplifier renamed to Pithum A-Type Thermal Shield Amplifier
|
|
Pithum A-Type Kinetic Deflection Amplifier renamed to Pithum A-Type Kinetic Shield Amplifier
|
|
Pithum A-Type EM Ward Amplifier renamed to Pithum A-Type EM Shield Amplifier
|
|
Gistum C-Type Explosive Deflection Amplifier renamed to Gistum C-Type Explosive Shield Amplifier
|
|
Gistum B-Type Explosive Deflection Amplifier renamed to Gistum B-Type Explosive Shield Amplifier
|
|
Gistum C-Type Thermal Dissipation Amplifier renamed to Gistum C-Type Thermal Shield Amplifier
|
|
Gistum B-Type Thermal Dissipation Amplifier renamed to Gistum B-Type Thermal Shield Amplifier
|
|
Gistum C-Type Kinetic Deflection Amplifier renamed to Gistum C-Type Kinetic Shield Amplifier
|
|
Gistum B-Type Kinetic Deflection Amplifier renamed to Gistum B-Type Kinetic Shield Amplifier
|
|
Gistum C-Type EM Ward Amplifier renamed to Gistum C-Type EM Shield Amplifier
|
|
Gistum B-Type EM Ward Amplifier renamed to Gistum B-Type EM Shield Amplifier
|
|
Gistum A-Type Explosive Deflection Amplifier renamed to Gistum A-Type Explosive Shield Amplifier
|
|
Gistum A-Type Thermal Dissipation Amplifier renamed to Gistum A-Type Thermal Shield Amplifier
|
|
Gistum A-Type Kinetic Deflection Amplifier renamed to Gistum A-Type Kinetic Shield Amplifier
|
|
Gistum A-Type EM Ward Amplifier renamed to Gistum A-Type EM Shield Amplifier
|
|
'Whiskey' Explosive Deflection Amplifier renamed to 'Whiskey' Explosive Shield Amplifier
|
|
'High Noon' Thermal Dissipation Amplifier renamed to 'High Noon' Thermal Shield Amplifier
|
|
'Cactus' Modified Kinetic Deflection Amplifier renamed to 'Cactus' Modified Kinetic Shield Amplifier
|
|
'Prospector' EM Ward Amplifier renamed to 'Prospector' EM Shield Amplifier
|
|
"""
|
|
|
|
def main(old, new):
|
|
# Open both databases and get their cursors
|
|
old_db = sqlite3.connect(os.path.expanduser(old))
|
|
old_cursor = old_db.cursor()
|
|
new_db = sqlite3.connect(os.path.expanduser(new))
|
|
new_cursor = new_db.cursor()
|
|
|
|
renames = {}
|
|
conversions = {}
|
|
|
|
for x in text.splitlines():
|
|
x = x.strip()
|
|
if not x:
|
|
continue
|
|
if conversion_phrase in x:
|
|
c = x.split(conversion_phrase)
|
|
container = conversions
|
|
elif rename_phrase in x:
|
|
c = x.split(rename_phrase)
|
|
container = renames
|
|
else:
|
|
print("Unknown format: {}".format(x))
|
|
sys.exit()
|
|
|
|
old_name, new_name = c[0], c[1]
|
|
old_item, new_item = None, None
|
|
|
|
if "Blueprint" in old_name or "Blueprint" in new_name:
|
|
print("Blueprint: Skipping this line: %s"%x)
|
|
continue
|
|
|
|
# gather item info
|
|
new_cursor.execute('SELECT "typeID" FROM "invtypes" WHERE "typeName" = ?', (new_name,))
|
|
for row in new_cursor:
|
|
new_item = row[0]
|
|
break
|
|
|
|
old_cursor.execute('SELECT "typeID" FROM "invtypes" WHERE "typeName" = ?', (old_name,))
|
|
for row in old_cursor:
|
|
old_item = row[0]
|
|
break
|
|
|
|
if not old_item:
|
|
print("Error finding old item in {} -> {}".format(old_name, new_name))
|
|
if not new_item:
|
|
print("Error finding new item in {} -> {}".format(old_name, new_name))
|
|
|
|
if not container.get((new_item,new_name), None):
|
|
container[(new_item,new_name)] = []
|
|
|
|
|
|
container[(new_item,new_name)].append((old_item, old_name))
|
|
|
|
print(" # Renamed items")
|
|
|
|
for new, old in renames.items():
|
|
if len(old) != 1:
|
|
print("Incorrect length, key: {}, value: {}".format(new, old))
|
|
sys.exit()
|
|
old = old[0]
|
|
|
|
print(" \"{}\": \"{}\",".format(old[1], new[1]))
|
|
|
|
# Convert modules
|
|
print("\n # Converted items")
|
|
|
|
for new, olds in conversions.items():
|
|
for old in olds:
|
|
print(" \"{}\": \"{}\",".format(old[1], new[1]))
|
|
|
|
print()
|
|
print()
|
|
|
|
for new, old in conversions.items():
|
|
print(" {}: ( # {}".format(new[0], new[1]))
|
|
for item in old:
|
|
print(" {}, # {}".format(item[0], item[1]))
|
|
print(" ),")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument("-o", "--old", type=str)
|
|
parser.add_argument("-n", "--new", type=str)
|
|
args = parser.parse_args()
|
|
|
|
main(args.old, args.new)
|