Arcomage online with custom art
I launched an online version of the Arcomage card game with custom images on the cards.
You can play Arcomage with updated art online in browser here: korchy.github.io/arcomage-hd/
I launched an online version of the Arcomage card game with custom images on the cards.
You can play Arcomage with updated art online in browser here: korchy.github.io/arcomage-hd/
Drevodel – Telegram bot, assistant for woodworkers who are engaged in carpentry, work on laser CNC/CNC milling machines.
Drevodel – Telegram bot, assistant for woodworkers working on laser/CNC milling machinesRead More »
An ArcoMage cards template has been added to ArtCards.
This is a mini-game built-in into the classic Might and Magic game series, combining elements of a card game and tower defense.
For filling ArtCards with content, I am gradually mastering AI generation of pictures using neural networks.
I created a telegram channel for this matter, in which I add notes about my generations: https://t.me/ArtCards_Interplanety
I used ComfyUI as the shell, which seems to be the most advanced and versatile tool.
Those who understand neural networks are unlikely to find anything interesting in it, but for those who are just starting to get into the generation of images with neural networks, my notes may be useful.
When using images with a transparent background, there are usually no problems with visible margins when configuring the card. However, if you use images with backgrounds and the aspect ratio of the image does not match the aspect ratio of the element in the template, unwanted margins may appear. In this case, you can use the “stretch” function to scale the image relative to the template element so that the margins do not appear.
ArtCards – online service for creating playing cards with unusual, beautiful pictures.
ArtCards – configurator of playing cards with unusual beautiful picturesRead More »
The Custom Attribute extension for the Inkscape graphic editor allows adding custom attributes in the form of “name=value” pairs to selected objects of the current SVG document.
In Python, the aioschedule library is often used to execute tasks at certain intervals, for example, when developing Telegram bots.
Unfortunately, the aioschedule package has not been updated for several years and has lost compatibility with the latest versions of Python. When used in Python 3.11, an error is thrown at the time of tasks execution
Passing coroutines is forbidden, use tasks explicitly.
The Batch Guides extension for the Inkscape 2D graphics editor provides the ability to simultaneously manage all guides (guidelines).
Lately, it has become impossible to launch the Internet Explorer browser on Windows 10/11. If try to launch it, the IE browser automatically closed and launch the MS Edge browser instead of the Internet Explorer.
But if you still need to use the Internet Explorer browser, you can start it from the vbs script.
Launching the Internet Explored browser on Windows 10/11Read More »
StarIce – a simple CRM with which you can quickly create a contract with your partner from a template, add technical tasks to the contract, set a deadline for them, and receive confirmation from the partner by sending him an open link.
To chek if list A is completely included in list B – all elements of list A are present in list B, we can use the “superset” and “subset” methods of the standard Python “set” class.
Converting lists to sets also allows us not to worry about checking for duplicates if they exist in the compared lists.
The “subset” method acts on a smaller set and checks if it is in a larger set.
1 2 3 4 5 6 7 8 9 |
A = ['a', 'x', 'z'] A1 = ['a', 'x', 'z', 99] B = list('abcdefghijklmnopqrstuvwxyz') # ['a', 'b', ..., 'z'] print(set(A).issubset(set(B))) # True print(set(A1).issubset(set(B))) # False |
Unduplicator – an online tool for finding and removing duplicate words.
This tool will help you quickly find and remove all repeated words or terms in text or in a text list, dividing it into elements according to the specified separators.
When designing an HTML page, sometimes it is necessary to make a fixed-width sidebar on the right side of the page with dynamically filling all the remaining space on the left.
It is easiest to make this using the markup with tables, but it is quite possible with common “<div>” elements as well.
HTML-CSS: Creating a fixed-width column on the right side of the pageRead More »
To get information about the operating system, on which our code is executed, we can use the “platform” module.
The system() method of this moduel returns the text name of the operating system:
1 2 3 4 5 |
import platform print(platform.system()) # Windows |
Python: get information about current operating systemRead More »
WP2D – a WordPress plugin for automatically submitting post announcements from WordPress to the Discord channel when publishing posts.
The plugin is free. You can support it on Gumroad:
A Webhook URL is an address link that points to the server channel in Discord.
It looks like this:
1 |
https://discord.com/api/webhooks/880147380966321/HycCH_DMzkD5zXASVVvj3QRXHUnxs0pxuRzSbBs_UH7p71PS_AXD002Mq |
You can send POST requests to this URL to automatically create posts in this Discord channel.
It is a powerful tool that can be used, for example, for newsletters on a channel, or cross-posting from social networks.
Copy Permalink to Clipboard – A WordPress plugin that adds a “to Clipboard” button next to the post link fields to the posts editor interface. Clicking on it copies the full post permalink to the clipboard.
The plugin is free. You can support or download it from Gumroad:
To make a button in the taskbar, by clicking on which all open windows will be minimized in Windows 10:
Button to minimize all windows to the taskbar in Windows 10Read More »
InputHint – JQUERY/PHP plugin that adds hints with variants of the entered text to input fields, with the possibility of their selection by the user, and filling the field with text from the selected hint.
In order to reduce the size of a long text string, for example, to minimize traffic when sending some text data over the Internet, it can be compressed before sending and unzipped after receiving. The size of transmitted data is significantly reduced in comparison with sending text strings in their original format.
To zip a text string in memory, we can use the “zlib” module.
Let’s use the “compress” function to compress the string. This function takes a byte string as an input parameter and returns the compressed byte string.
1 2 3 4 5 6 7 8 9 10 11 12 |
import zlib long_text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.' print('long_text', len(long_text)) long_text_compressed = zlib.compress(long_text.encode('utf-8')) print('long_text_compressed', len(long_text_compressed)) # long_text 445 # long_text_compressed 270 |
As we can see with this simplest example, the line size has been reduced by more than one and a half times.