For Townscaper, an application providing additional keyboard shortcuts, tools to manipulate .scape files, screen recording
Major release with a lot of contents and optimizations. Most important one are :
Details :
Town_capture : "_grab" modified to be more flexible on "raw" option
Town_clipper : corvoxToSparse updated to avoid error when no voxels where in the corvox dictionary
Town_cooker :
Town_waiter :
GUI :
A new directory was created to have all templates .json and .png gathered for "Load"
Write menu is added with a bunch of options. Not the most useful function but you can explore it to get surprising results
See v2.0-beta1
It's a bêta version So many things added ! Bugs correction:
New features and changes
It's now possible to use command-line to launch some command using the very early Townshell command-line syntax. Not tested much so do not expect much
main.py has been reorganized to have appropriate import at the right position. Utility class has been transfered to Town_waiter
Logging is now multiprocessing compatible, initLogging replace logging initializing in Town_table
logging to console via stream has been deleted
Town_waiter has been splited into Town_logger, Town_tool and Town_waiter. Town_tool contains all basic custom functions frequently used. Town_logger contains all functions related to logging
Town_capture has been added as a major add-on to Townshell, featuring a whole new menu (capture.py and capture.kv). It allows the user to take video screenshots from Townscaper while automatically moving the mouse.
Multiprocessing was implemented to raise the performance of the screen recording and perform some parallellism. However it's still being optimized. To sum it up, there is a process moving the mouse, another fetching the screen as fast as possible and puting everything to queues and a process packing all that's in the queue in one video file then compressing it. These two last parts are not optimized and therefore the process can be long and requires a lot of RAM usage. That's the major point that needs to be fixed before the definitive release 2.0. To prevent the computer of the user from burning to hell, the RAM usage is monitored and will stop the recording as soon as it reaches a specified value
To create the video with encoding H264 cv2 library and openh264-1.8.0-win64.dll are used
To compress the video ffmpeg is used, these features might change for full release since they are responsible for the huge size of Townshell exe
To perform the screenshot very quickly, https://github.com/BoboTiG/python-mss was used, a modified version of windows.py was created to capture only Townscaper and get some other stuff
Showcase is the main function moving the mouse, it's aware of the size of Townscaper screen and move accordingly with a bunch of settings available. It can stop registering at any time if an event is set or a keyboard specified key is taped
The new GUI menu has been added
I've added a Gui to TownShell to make it more user-friendly and easy to pick for a casual Townscaper player. Almost all previous features are included and more have been added. The included functions are now :
Keyboards shortcuts are also available
See README this is the first official release