cromulant/README.md

100 lines
2.3 KiB
Markdown
Raw Normal View History

2024-07-20 11:24:24 +00:00
# Cromulant
2024-07-21 11:10:02 +00:00
![](https://i.imgur.com/5yIX4hl.jpeg)
![](https://i.imgur.com/hjykbiJ.jpeg)
2024-07-20 11:24:24 +00:00
## What is this?
2024-07-20 11:16:02 +00:00
This is a kind of toy you can use for your amusement.
2024-07-21 12:01:20 +00:00
You start with random ants from a list of 1000 names.
2024-07-20 11:16:02 +00:00
2024-07-21 07:18:23 +00:00
The ants will produce random updates.
2024-07-20 11:16:02 +00:00
The updates can be random non-sensical sentences.
The ants can score triumphs or take hits.
You can adjust the speed of the updates.
## Game Loop
2024-07-21 13:00:05 +00:00
You start a new game with 25 to 250 ants.
2024-07-21 07:25:48 +00:00
2024-07-21 12:01:20 +00:00
You get to read funny updates from the ants.
2024-07-20 11:16:02 +00:00
You watch who gets the most triumphs or the most hits.
The ant with the highest score is shown in the footer.
2024-07-21 07:18:23 +00:00
Ants get merged and replaced over time.
2024-07-21 06:27:44 +00:00
2024-07-21 10:21:01 +00:00
All of this happens automatically.
2024-07-21 13:44:00 +00:00
You can manually trigger terminations or merges by
clicking or middle clicking the images on the left.
2024-07-20 11:29:48 +00:00
## Usage
2024-07-21 07:18:23 +00:00
Just open it and place it somewhere in your monitor.
2024-07-20 11:29:48 +00:00
2024-07-20 15:31:01 +00:00
## Installation
```sh
pipx install git+https://github.com/madprops/cromulant --force
```
2024-07-20 11:16:02 +00:00
## Algorithm
2024-07-20 12:55:15 +00:00
A random ant is picked based on weights (oldest update date weighs more).
2024-07-21 07:21:20 +00:00
Then a random number between 0 and 12 is picked.
2024-07-20 11:22:21 +00:00
For each number an action happens to produce an update.
2024-07-20 15:26:40 +00:00
The top score is calculated as (Triumph - Hits).
2024-07-22 04:05:17 +00:00
If multiple ants have the same score, the oldest one wins.
2024-07-20 15:26:40 +00:00
2024-07-21 06:55:37 +00:00
For merge, the words of each name are used.
They get filled with random words if less than 2 words.
One word from each set is picked randomly.
The triumph and hits get combined.
The original ants get terminated and the merged one hatches.
2024-07-21 07:28:06 +00:00
An extra random ant is hatched to fill the gap.
2024-07-21 06:55:37 +00:00
2024-07-20 11:26:29 +00:00
## Technology
This is made with python + qt (pyside6)
2024-07-20 11:47:50 +00:00
## The name
2024-07-20 11:50:53 +00:00
I read the word `cromulent` being used somewhere which turned out to be invented by The Simpsons.
2024-07-20 11:47:50 +00:00
[It's in the dictionary now](https://www.merriam-webster.com/wordplay/what-does-cromulent-mean)
2024-07-20 11:50:53 +00:00
I created a new programming project to practice/study and tried to use that word for the name but made a typo.
2024-07-20 11:47:50 +00:00
2024-07-20 11:50:53 +00:00
I liked the typo and made a game about ants.
2024-07-20 11:47:50 +00:00
2024-07-20 11:59:19 +00:00
## Propaganda
2024-07-20 11:22:21 +00:00
![](cromulant/img/logo_1.jpg)
![](cromulant/img/logo_2.jpg)
![](cromulant/img/logo_3.jpg)
2024-07-20 11:59:19 +00:00
![](cromulant/img/logo_4.jpg)
## Assets
![](cromulant/img/icon_1.jpg)
![](cromulant/img/icon_2.jpg)
![](cromulant/img/icon_3.jpg)
![](cromulant/img/icon_4.jpg)
## Soundtrack
[March of The Cyber Ants](cromulant/audio/March%20of%20the%20Cyber%20Ants.mp3)