behold_a_man
Educated
- Joined
- Nov 26, 2022
- Messages
- 221
So, I made a tool for automapping. I used it for the first two Might & Magic titles; I'm not sure whether it'll be useful for anything else (but I guess it might be). I don't want to brag about it in that thread anymore, so I'll dump everything about it here.
1) The repository is present at:
https://github.com/codexianbeholdaman/mapper
I left my maps to show how they can be created here:
https://github.com/codexianbeholdaman/maps_for_mapper
Example maps in the application look like
Note that the application was never meant to be pretty. It has two parts:
1) mapper part: what you see above. You can create a map, then save it in a file (clicking the 'Save' button) and load it. It should work without any hassle. The available options are:
Note that maps are saved in the JSON format and are easily viewable.
I wanted to be able to do as much as possible without switching context between a game and a mapper and to document my playthroughs. Unlike some current tools for mapping, I don't access game files or their processes.
I described everything (or at least I think so) in detail in the README.md file. I might expand the application in some time; hopefully I won't have to brick existing saves. I think I will allow maps of different sizes (and configurations) and create automated tests first if I'm going to do something. I don't plan to merge 'auto' and 'mapper' parts anytime soon; for that, I would probably need to use something like NW.js, and on my system, Chromium is as fast as ketchup.
If you can't run the app or just want to spew out some vitriol towards this application, well, I guess this is the appropriate place to vent.
1) The repository is present at:
https://github.com/codexianbeholdaman/mapper
I left my maps to show how they can be created here:
https://github.com/codexianbeholdaman/maps_for_mapper
Example maps in the application look like
Note that the application was never meant to be pretty. It has two parts:
1) mapper part: what you see above. You can create a map, then save it in a file (clicking the 'Save' button) and load it. It should work without any hassle. The available options are:
a) Scripts: allows automatically switching maps with 'y' presses (if an arrow lies on a correct field), traps (which you see in the last image), or movement through the edge of a map, moving to some other map.
b) 'Shorthand' and 'General' sections' aims are to document a cell and set a visible description of it.
c) The 'Images' section allows one to crudely insert an image for future reference.
d) Borders and whether the cell is usable (white on pictures) or not (dark grey on the last map) can be set manually.
e) One can also set the terrain types (they are not mutually exclusive).
f) I added 'Ground Truth mode' to disallow changes made by arrow misclicks.
g) The 'Order' part allows to order maps (by clicking the button 'Order'): first by the content of 'Order', second by the map name, both lexicographically.
h) Fly moves an arrow to another map. If an arrow is not set (as in the images above), an arrow automatically points to the north.
2) auto part: all it does is capturing a keystroke (which is impossible in a normal browser if the window is not in context) and sending mapped keystrokes to a browser. It should not work at all unless you have Linux - but it's around ~10 lines of code, and Windows should have even better tools (autohotkey) to make this work. It is a 'listener.py' file in a repo.Note that maps are saved in the JSON format and are easily viewable.
I wanted to be able to do as much as possible without switching context between a game and a mapper and to document my playthroughs. Unlike some current tools for mapping, I don't access game files or their processes.
I described everything (or at least I think so) in detail in the README.md file. I might expand the application in some time; hopefully I won't have to brick existing saves. I think I will allow maps of different sizes (and configurations) and create automated tests first if I'm going to do something. I don't plan to merge 'auto' and 'mapper' parts anytime soon; for that, I would probably need to use something like NW.js, and on my system, Chromium is as fast as ketchup.
If you can't run the app or just want to spew out some vitriol towards this application, well, I guess this is the appropriate place to vent.