SMP
Challenge
Minecraft SMP forensic log parsing challenge. Extract block update coordinates and reconstruct visual clue.
Solution
Key solve code:
import regex as re
import matplotlib.pyplot as plt
def parse_data(filename):
positions = []
with open(filename, 'r') as file:
data = file.readlines()
for i, line in enumerate(data):
if "Block Update" in line:
try:
x = int(re.findall(r'-?\d+', data[i+4])[0])
y = int(re.findall(r'-?\d+', data[i+5])[0])
z = int(re.findall(r'-?\d+', data[i+6])[0])
positions.append((x, y, z))
except:
pass
return positions
os.system("cat ./smp.log | grep \"Block Update\" -A 8 > parsed_file.txt")
coords = parse_data("./parsed_file.txt")
Flag
gigem{w3_l0v3_pl1y1n_mc_smp}