4.30 star(s) 51 Votes

HueJass123

Member
Jun 13, 2022
222
340
This dude has released several keychains, 5 standing figurines, shirts and hoodies and gotten sponsored by some automatic dildo company, is getting $10000 a month and he still hasnt finished the first act in 2+ years.
 

Metamaterial

Member
Apr 29, 2020
182
299
This dude has released several keychains, 5 standing figurines, shirts and hoodies and gotten sponsored by some automatic dildo company, is getting $10000 a month and he still hasnt finished the first act in 2+ years.
It gets worse; judging by the names of one of the new (unimported) posts, he's planning on turning it into a gacha game.
 
  • Wow
Reactions: anonzie

floran

Member
May 20, 2020
346
673
This dude has released several keychains, 5 standing figurines, shirts and hoodies and gotten sponsored by some automatic dildo company, is getting $10000 a month and he still hasnt finished the first act in 2+ years.
Technically only 1 Standee and 1 Tshirt are in the store...
So just like the game even the store is unfinished :ROFLMAO:
 

Metamaterial

Member
Apr 29, 2020
182
299
All I have to work with until Kemono's finally fixed.
We're so back. Anyway, from the Patreon...

2024-04-13
Illustration.png
You don't have permission to view the spoiler content. Log in or register now.

2024-05-01
16435D71-052F-48C0-A4F8-D23619721418.jpg
You don't have permission to view the spoiler content. Log in or register now.

Cathy Standee 2.0 n.png
You don't have permission to view the spoiler content. Log in or register now.

Lol. Lmao, even.
Screenshot 2024-05-02 011006.png
 

Axis3123

Active Member
Apr 1, 2020
594
506
" But collecting coins by playing levels and buying them outright is boring "
You know what's really fun? Having to roll a dice and hoping I get the thing I want.
Yeah, why gacha of all things? Luck is never fun (unless your name is roguelikes), and on a yiff game? Pretty silly.
...wait wait wait, why gacha? They have a fully functional store with currency, permanent hearts, songs, pin ups, etc. What could they exclusivize here?
 

floran

Member
May 20, 2020
346
673
Gacha is kinda fun if is free (No microtransactions) and you get points by playing a game you are replaying over and over anyway.
Once I already unlock a hands-free mode I rarely reply the same song and mods don't give points so Gacha doesn't work in any angle in this game.
I fear that komdog money milking mind is thinking on adding gacha and then buy points, the downloading mods from the game itself already proves they could add microtransactions.

I was thinking on eventually buy the game once it went on a big sale but like hell I would support microtransactions
 

Falcon_Cheif

New Member
Mar 17, 2018
5
2
anyone have a version thatll work with the cum mod? i think the newest is 3.512, ive heard the pateron ver is incompatable
 

WSYMPP

Newbie
Jan 15, 2022
61
42
This game is absolute fucking torture so here's a script to autoplay without all the gay "please complete this level and get 2 stars" nonsense.
Code:
import os
import shutil
import filecmp
import tkinter as tk
from tkinter import filedialog

def create_backup(cfg_file_path, backup_path):
    shutil.copy(cfg_file_path, backup_path)

def validate_files_identical(cfg_file_path, backup_path):
    return filecmp.cmp(cfg_file_path, backup_path)

def undo_modify_cfg_file(cfg_file_path, backup_path):
    try:
        with open(backup_path, 'r') as backup_file:
            backup_content = backup_file.read()

        with open(cfg_file_path, 'w') as cfg_file:
            cfg_file.write(backup_content)

        result = validate_files_identical(cfg_file_path, backup_path)
        if result:
            os.remove(backup_path)
            result_label.config(text="Undo successful! Backup deleted.")
        else:
            result_label.config(text="Undo failed! Files are not identical. Skipping folder.")

    except FileNotFoundError:
        result_label.config(text="Error: Backup file not found.")
    except Exception as e:
        result_label.config(text=f"Error: {str(e)}")

def undo_process_folders():
    parent_directory = entry_directory.get()
    if parent_directory:
        undo_process_folders_helper(parent_directory)
    else:
        result_label.config(text="Please select a valid parent directory.")

def undo_process_folders_helper(parent_directory):
    for root, dirs, files in os.walk(parent_directory):
        if 'notescopy.cfg' in files:
            cfg_file_path = os.path.join(root, 'notes.cfg')
            backup_path = os.path.join(root, 'notescopy.cfg')

            undo_modify_cfg_file(cfg_file_path, backup_path)

    # Resize the window after undoing folders
    resize_window()

def create_backup(cfg_file_path, backup_path):
    shutil.copy(cfg_file_path, backup_path)

def modify_cfg_file(cfg_file_path):
    try:
        backup_path = cfg_file_path.replace('notes.cfg', 'notescopy.cfg')

        if not os.path.exists(backup_path):
            create_backup(cfg_file_path, backup_path)

            with open(cfg_file_path, 'r') as file:
                content = file.read()

            # Modify the content using string replace
            content = content.replace('"input_type": 1,', '"input_type": 0,')
            content = content.replace('"input_type": 2,', '"input_type": 0,')
            content = content.replace('"input_type": 3,', '"input_type": 0,')
            content = content.replace('"note_modifier": 0,', '"note_modifier": 1,')
            content = content.replace('"note_modifier": 2,', '"note_modifier": 1,')
            # Add more replacements if needed for other values of x

            with open(cfg_file_path, 'w') as file:
                file.write(content)

            result_label.config(text="File modified successfully!\nBackup created at: {}".format(backup_path))
        else:
            with open(cfg_file_path, 'r') as file:
                content = file.read()

            # Modify the content using string replace
            content = content.replace('"input_type": 1,', '"input_type": 0,')
            content = content.replace('"input_type": 2,', '"input_type": 0,')
            content = content.replace('"input_type": 3,', '"input_type": 0,')
            content = content.replace('"note_modifier": 0,', '"note_modifier": 1,')
            content = content.replace('"note_modifier": 2,', '"note_modifier": 1,')
            # Add more replacements if needed for other values of x

            with open(cfg_file_path, 'w') as file:
                file.write(content)

            result_label.config(text="Skipping folder. File modified at: {}".format(cfg_file_path))

    except FileNotFoundError:
        result_label.config(text="Error: File not found.")
    except Exception as e:
        result_label.config(text=f"Error: {str(e)}")

def process_folders(parent_directory):
    for root, dirs, files in os.walk(parent_directory):
        if 'notes.cfg' in files:
            cfg_file_path = os.path.join(root, 'notes.cfg')
            backup_path = os.path.join(root, 'notescopy.cfg')

            modify_cfg_file(cfg_file_path)

    # Resize the window after processing folders
    resize_window()

def browse_directory():
    directory_path = filedialog.askdirectory(title="Select Parent Directory")
    if directory_path:
        entry_directory.delete(0, tk.END)
        entry_directory.insert(0, directory_path)

def process_folders_and_modify():
    parent_directory = entry_directory.get()
    if parent_directory:
        process_folders(parent_directory)
    else:
        result_label.config(text="Please select a valid parent directory.")

# Function to resize the window
def resize_window():
    root.update_idletasks()
    root.geometry("")

# Create the main window
root = tk.Tk()
root.title("CFG File Modifier")

# Create and place widgets
label_directory = tk.Label(root, text="Parent Directory:")
label_directory.grid(row=0, column=0, pady=10)

entry_directory = tk.Entry(root, width=40)
entry_directory.grid(row=0, column=1, pady=10)

button_browse_directory = tk.Button(root, text="Browse", command=browse_directory)
button_browse_directory.grid(row=0, column=2, pady=10)

button_process_folders = tk.Button(root, text="Process Folders", command=process_folders_and_modify)
button_process_folders.grid(row=1, column=1, pady=10)

button_undo = tk.Button(root, text="Undo", command=undo_process_folders)
button_undo.grid(row=2, column=1, pady=10)

result_label = tk.Label(root, text="")
result_label.grid(row=3, column=1, pady=10)

# Call the resize_window function to set the initial size
resize_window()

# Run the main loop
root.mainloop()
It's python, just save it as python, go into the game's directory (where the exe is) as the process folder.
 
4.30 star(s) 51 Votes