Update import nethack logfile script
- Add a few roles to the ROLES mapping - Check if the logfile changed before writing it (avoid updating the timestamp if no changes were made)
This commit is contained in:
parent
d2ab14f649
commit
9e11021ae3
2 changed files with 122 additions and 484 deletions
|
@ -1,478 +1,8 @@
|
||||||
{
|
{
|
||||||
"generated": "2022-11-20T09:20:44.083781",
|
"generated": "2022-11-20T09:59:06.983143",
|
||||||
"logfile": [
|
"logfile": [
|
||||||
{
|
{
|
||||||
"score": 0,
|
"score": 1395,
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 1,
|
|
||||||
"descriptive": "Level 1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-05",
|
|
||||||
"start_date": "2022-04-05",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 1,
|
|
||||||
"hp": {
|
|
||||||
"n": 15,
|
|
||||||
"max": 15
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 0,
|
|
||||||
"cause": "quit"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 1309,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 7,
|
|
||||||
"descriptive": "Level 7"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-05",
|
|
||||||
"start_date": "2022-04-05",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 7,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 46
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by a pony"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 148,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 2,
|
|
||||||
"descriptive": "Level 2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-05",
|
|
||||||
"start_date": "2022-04-05",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Mon-Hum-Fem-Neu",
|
|
||||||
"max_level": 2,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 20
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Mon",
|
|
||||||
"descriptive": "Monk"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Neu",
|
|
||||||
"descriptive": "Neutral"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by a water moccasin"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 2,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 1,
|
|
||||||
"descriptive": "Level 1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-05",
|
|
||||||
"start_date": "2022-04-05",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Mon-Hum-Fem-Neu",
|
|
||||||
"max_level": 1,
|
|
||||||
"hp": {
|
|
||||||
"n": 8,
|
|
||||||
"max": 14
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Mon",
|
|
||||||
"descriptive": "Monk"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Neu",
|
|
||||||
"descriptive": "Neutral"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 0,
|
|
||||||
"cause": "quit"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 370,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 4,
|
|
||||||
"descriptive": "Level 4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-07",
|
|
||||||
"start_date": "2022-04-05",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 4,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 28
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by a coyote, while fainted from lack of food"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 0,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 1,
|
|
||||||
"descriptive": "Level 1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-09",
|
|
||||||
"start_date": "2022-04-09",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 1,
|
|
||||||
"hp": {
|
|
||||||
"n": 15,
|
|
||||||
"max": 15
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 0,
|
|
||||||
"cause": "quit"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 737,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 4,
|
|
||||||
"descriptive": "Level 4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-10",
|
|
||||||
"start_date": "2022-04-04",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Rog-Hum-Fem-Cha",
|
|
||||||
"max_level": 4,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 31
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Rog",
|
|
||||||
"descriptive": "Rogue"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Cha",
|
|
||||||
"descriptive": "Chaotic"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by a dwarf, while fainted from lack of food"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 1460,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 6,
|
|
||||||
"descriptive": "Level 6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-04-18",
|
|
||||||
"start_date": "2022-04-12",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 6,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 58
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by a killer bee"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 1500,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 2,
|
|
||||||
"name": "The Gnomish Mines",
|
|
||||||
"level": {
|
|
||||||
"n": 6,
|
|
||||||
"descriptive": "Level 6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-05-06",
|
|
||||||
"start_date": "2022-04-19",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 8,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 53
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by a dwarf"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 1136,
|
|
||||||
"dungeon": {
|
|
||||||
"n": 0,
|
|
||||||
"name": "The Dungeons of Doom",
|
|
||||||
"level": {
|
|
||||||
"n": 6,
|
|
||||||
"descriptive": "Level 6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"end_date": "2022-05-10",
|
|
||||||
"start_date": "2022-05-09",
|
|
||||||
"character": {
|
|
||||||
"name": "Eryn",
|
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
|
||||||
"max_level": 7,
|
|
||||||
"hp": {
|
|
||||||
"n": 0,
|
|
||||||
"max": 39
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"short": "Sam",
|
|
||||||
"descriptive": "Samurai"
|
|
||||||
},
|
|
||||||
"race": {
|
|
||||||
"short": "Hum",
|
|
||||||
"descriptive": "Human"
|
|
||||||
},
|
|
||||||
"gender": {
|
|
||||||
"short": "Fem",
|
|
||||||
"descriptive": "Female"
|
|
||||||
},
|
|
||||||
"alignment": {
|
|
||||||
"short": "Law",
|
|
||||||
"descriptive": "Lawful"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"death": {
|
|
||||||
"n": 1,
|
|
||||||
"cause": "killed by an invisible Uruk-hai"
|
|
||||||
},
|
|
||||||
"system": {
|
|
||||||
"hostname": "electra",
|
|
||||||
"user_id": 501,
|
|
||||||
"nethack_version": "3.6.6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"score": 1413,
|
|
||||||
"dungeon": {
|
"dungeon": {
|
||||||
"n": 2,
|
"n": 2,
|
||||||
"name": "The Gnomish Mines",
|
"name": "The Gnomish Mines",
|
||||||
|
@ -481,19 +11,19 @@
|
||||||
"descriptive": "Level 5"
|
"descriptive": "Level 5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"end_date": "2022-05-25",
|
"end_date": "2022-11-19",
|
||||||
"start_date": "2022-05-15",
|
"start_date": "2022-11-18",
|
||||||
"character": {
|
"character": {
|
||||||
"name": "Eryn",
|
"name": "Eryn",
|
||||||
"descriptor": "Eryn-Sam-Hum-Fem-Law",
|
"descriptor": "Eryn-Kni-Hum-Fem-Law",
|
||||||
"max_level": 5,
|
"max_level": 5,
|
||||||
"hp": {
|
"hp": {
|
||||||
"n": 0,
|
"n": 0,
|
||||||
"max": 58
|
"max": 45
|
||||||
},
|
},
|
||||||
"role": {
|
"role": {
|
||||||
"short": "Sam",
|
"short": "Kni",
|
||||||
"descriptive": "Samurai"
|
"descriptive": "Knight"
|
||||||
},
|
},
|
||||||
"race": {
|
"race": {
|
||||||
"short": "Hum",
|
"short": "Hum",
|
||||||
|
@ -510,7 +40,101 @@
|
||||||
},
|
},
|
||||||
"death": {
|
"death": {
|
||||||
"n": 1,
|
"n": 1,
|
||||||
"cause": "killed by a killer bee"
|
"cause": "killed by a black naga hatchling"
|
||||||
|
},
|
||||||
|
"system": {
|
||||||
|
"hostname": "electra",
|
||||||
|
"user_id": 501,
|
||||||
|
"nethack_version": "3.6.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"score": 0,
|
||||||
|
"dungeon": {
|
||||||
|
"n": 0,
|
||||||
|
"name": "The Dungeons of Doom",
|
||||||
|
"level": {
|
||||||
|
"n": 1,
|
||||||
|
"descriptive": "Level 1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"end_date": "2022-11-19",
|
||||||
|
"start_date": "2022-11-19",
|
||||||
|
"character": {
|
||||||
|
"name": "Eryn",
|
||||||
|
"descriptor": "Eryn-Arc-Hum-Fem-Neu",
|
||||||
|
"max_level": 1,
|
||||||
|
"hp": {
|
||||||
|
"n": 13,
|
||||||
|
"max": 13
|
||||||
|
},
|
||||||
|
"role": {
|
||||||
|
"short": "Arc",
|
||||||
|
"descriptive": "Archaeologist"
|
||||||
|
},
|
||||||
|
"race": {
|
||||||
|
"short": "Hum",
|
||||||
|
"descriptive": "Human"
|
||||||
|
},
|
||||||
|
"gender": {
|
||||||
|
"short": "Fem",
|
||||||
|
"descriptive": "Female"
|
||||||
|
},
|
||||||
|
"alignment": {
|
||||||
|
"short": "Neu",
|
||||||
|
"descriptive": "Neutral"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"death": {
|
||||||
|
"n": 0,
|
||||||
|
"cause": "quit"
|
||||||
|
},
|
||||||
|
"system": {
|
||||||
|
"hostname": "electra",
|
||||||
|
"user_id": 501,
|
||||||
|
"nethack_version": "3.6.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"score": 246,
|
||||||
|
"dungeon": {
|
||||||
|
"n": 0,
|
||||||
|
"name": "The Dungeons of Doom",
|
||||||
|
"level": {
|
||||||
|
"n": 3,
|
||||||
|
"descriptive": "Level 3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"end_date": "2022-11-19",
|
||||||
|
"start_date": "2022-11-19",
|
||||||
|
"character": {
|
||||||
|
"name": "Eryn",
|
||||||
|
"descriptor": "Eryn-Val-Hum-Fem-Law",
|
||||||
|
"max_level": 4,
|
||||||
|
"hp": {
|
||||||
|
"n": 0,
|
||||||
|
"max": 21
|
||||||
|
},
|
||||||
|
"role": {
|
||||||
|
"short": "Val",
|
||||||
|
"descriptive": "Valkyrie"
|
||||||
|
},
|
||||||
|
"race": {
|
||||||
|
"short": "Hum",
|
||||||
|
"descriptive": "Human"
|
||||||
|
},
|
||||||
|
"gender": {
|
||||||
|
"short": "Fem",
|
||||||
|
"descriptive": "Female"
|
||||||
|
},
|
||||||
|
"alignment": {
|
||||||
|
"short": "Law",
|
||||||
|
"descriptive": "Lawful"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"death": {
|
||||||
|
"n": 1,
|
||||||
|
"cause": "killed by a wand"
|
||||||
},
|
},
|
||||||
"system": {
|
"system": {
|
||||||
"hostname": "electra",
|
"hostname": "electra",
|
||||||
|
|
|
@ -45,11 +45,14 @@ RACES = {
|
||||||
}
|
}
|
||||||
|
|
||||||
ROLES = {
|
ROLES = {
|
||||||
|
'Arc': 'Archaeologist',
|
||||||
|
'Kni': 'Knight',
|
||||||
'Mon': 'Monk',
|
'Mon': 'Monk',
|
||||||
'Pri': 'Priest',
|
'Pri': 'Priest',
|
||||||
'Ran': 'Ranger',
|
'Ran': 'Ranger',
|
||||||
'Rog': 'Rogue',
|
'Rog': 'Rogue',
|
||||||
'Sam': 'Samurai',
|
'Sam': 'Samurai',
|
||||||
|
'Val': 'Valkyrie',
|
||||||
}
|
}
|
||||||
|
|
||||||
GENDERS = {
|
GENDERS = {
|
||||||
|
@ -64,7 +67,7 @@ ALIGNMENTS = {
|
||||||
|
|
||||||
def parse_args(argv, *a, **kw):
|
def parse_args(argv, *a, **kw):
|
||||||
parser = argparse.ArgumentParser(*a, **kw)
|
parser = argparse.ArgumentParser(*a, **kw)
|
||||||
parser.add_argument('-o', '--output',help='Path to the output file')
|
parser.add_argument('-o', '--output', help='Path to the output file')
|
||||||
parser.add_argument('logfile', help='Path to the Nethack log file to convert')
|
parser.add_argument('logfile', help='Path to the Nethack log file to convert')
|
||||||
args = parser.parse_args(argv)
|
args = parser.parse_args(argv)
|
||||||
return args
|
return args
|
||||||
|
@ -133,15 +136,26 @@ def main(argv):
|
||||||
'logfile': records,
|
'logfile': records,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
logfile_has_changed = False
|
||||||
output_path = args.output
|
output_path = args.output
|
||||||
|
output_file = None
|
||||||
|
|
||||||
if output_path and output_path != '-':
|
if output_path and output_path != '-':
|
||||||
output_file = open(output_path, 'w')
|
with open(output_path, 'r') as existing_logfile:
|
||||||
|
existing_logfile_object = json.load(existing_logfile)
|
||||||
|
logfile_has_changed = existing_logfile_object.get('logfile', {}) != records
|
||||||
|
|
||||||
|
if logfile_has_changed:
|
||||||
|
output_file = open(output_path, 'w')
|
||||||
else:
|
else:
|
||||||
output_file = sys.stdout
|
output_file = sys.stdout
|
||||||
|
|
||||||
json.dump(output_object, output_file, indent=2)
|
if output_file:
|
||||||
output_file.write('\n')
|
json.dump(output_object, output_file, indent=2)
|
||||||
output_file.close()
|
output_file.write('\n')
|
||||||
|
output_file.close()
|
||||||
|
else:
|
||||||
|
print('No changes to logfile')
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue