Giter Site home page Giter Site logo

henry232323 / pesterchum-discord Goto Github PK

View Code? Open in Web Editor NEW
27.0 7.0 3.0 2.96 MB

A Discord client mimicking the Pesterchum chat client from Homestuck, Uses a lot of code from my Pesterchum Client

License: MIT License

Python 59.06% CSS 31.25% JavaScript 9.69%
pesterchum homestuck discord-client discord

pesterchum-discord's Introduction

Looking for Contributors!

I no longer have the time to maintain this project, if you are interested in contributing let me know!

Pesterchum-Discord

A Discord client mimicking the Pesterchum chat client from Homestuck, for the few people who are still interested in that.

If you have any questions either contact me the github or add me at Henry#8808 on Discord.

This app is NOT an all-in-one client! It is meant to enhance RP and anything else you wish to do with it, however it is recommended you still use regular Discord for technical functions.

Warning: This is not supported by Discord, if you misuse this client to spam etc, you are likely to get your account banned. Discord does not allow other clients

Donate

If you like what I've made, consider buying me a coffee

Install

The release download is distributed as a .zip file. Unzip the file and inside will be a file called pesterchum.exe If there is an update, updater.exe will launch in a console. It doesn't install anywhere, its fairly portable. It is not yet for OSX/Linux, contact me if anyone is interested in supporting it.

If you are running an older version and would like to update (> v1.0.6) you can enable the auto updater by going into your cfg/options.json and changing the value "auto_update": false to "auto_update": true

Updating

Auto updating by default is disabled, but can be enabled in settings, if you would rather manually install the new update, copy and replace the following files and folders into the old installation discord, pesterchum.exe, updater.exe, python3.6.zip, python3.6.dll, asyncio, pywintypes36.dll If there are new themes or quirks, copy the relevant files / folders into the pyquirks folder and the themes folder

Tokens

The Discord API no longer allows use of login credentials! Once you update to v1.3.0 or later you MUST use a token. All accounts have tokens, here's how to find yours.

Quirks

Pesterchum-Discord lets you do custom quirks using Regex! (Regular Expression) for help on quirks (they work identically) check out illuminatedWax's quirk info on the original Pesterchum. Misspeller has not yet been added. Works similarly to how its documented here, you do NOT need to add the function.command = "name"

Add custom quirk commands by going to the pyquirks folder and removing quirk_funcs.pyc and replacing it with your own quirk_funcs.py (if you want parts from the original just grab the source)

Bugs

Please report all bugs in the issues. If the application is not starting or crashes on startup, try starting it again, if that fails, delete cfg/auth, cfg/config.json, cfg/options.json (and if else fails try removing quirks.json too)

Themes

While I've made every theme available so far, they're easy (ish) for anyone to make. If you'd like me to add a theme, just send a pull request or message me. If you want to make a theme, best chance is to reverse engineer the already available (in the source) .ui files of an existing theme.

All themes have several main parts:

theme.json
{
 "name": "Pesterchum",
 "ui_path": "ui",
 "inherits": "Pesterchum 2.5",
 "css": "pesterchum.css"
}

This file is found in the theme folder. Name the folder whatever you'd like, that doesn't matter, for example this is in the themes/Pesterchum folder. In your folder there are several things.

  • A folder (designated in the theme.json) with your UI's in it, this one has its in themes/Pesterchum/ui as designated in the file "ui_path": "ui"
  • All your image files, look at the other themes for examples. These must be .png's, eventually I'll map out where every image is needed, for now its pretty easy to figure out.
  • Your css / styles, this is the file that is used to decorate your theme, just like a webpage, and is designated in your theme.json, in this one it is set to the path themes/Pesterchum/pesterchum.css with the line "css": "pesterchum.css" Look at example css to figure out how to use IDs and Classes in your css to match with the UIs, for example the main window can be targeted with .Gui or .QMainWindow

The theme.json will designate four things, like mentioned above

  • name The name of the theme (as displayed in the options)
  • ui_path The relative path in the folder to find the ui's
  • inherits Which theme's css it will inherit (for example Pesterchum inherits Pesterchum 2.5)
  • css The relative path to the css file with the themes styles

Make sure all relative paths do not start with a /

Another note, in order to designate the associated mood with the button, the mood button must be checkable and called moodButton# where # is a number between 0 and 22 designating to the position in this list minus 1

["chummy", "rancorous", "offline", "pleasant", "distraught",
"pranky", "smooth", "ecstatic", "relaxed", "discontent",
"devious", "sleek", "detestful", "mirthful", "manipulative",
"vigorous", "perky", "acceptant", "protective", "mystified",
"amazed", "insolent", "bemused"]

For example moodButton0 would be the button for "Chummy" or moodButton2 would reference Offline / Abscond. The text on the button will remain and does not matter.

Pesterchum 2.5

PesterchumPreview2

Trollian 2.5

TrollianPreview

Pesterchum

PesterchumPreview

Serious Business

DadPreview

sbahj

sbahjPreview

pesterchum-discord's People

Contributors

henry232323 avatar kyb3r avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

pesterchum-discord's Issues

Trying to get this to work... failed to log in.

Alright so, I found my token using these instructions https://discordhelp.net/discord-token , since the instructions in the readme seemed to be outdated and pasted it into the box and I got a failed to connect message.
I'm assuming this client needs to be updated or something? I ran the updater and tried again but got the same result.
I use windows 10 and I also had discord open on the same machine. The token I got was a hella long alphanumeric string (which I will not share because that's basically asking to be hacked) so I figure I used the right thing.

Trouble installing?

When I extract the files into a new folder and run "pesterchum.py" it opens the console for a second and then closes immediately.
There is no "pesterchum.exe" the Install section said there was, so im not really sure what to do.

Crash on message send

The program crashes as soon as I send a message. I put the correct token and can see my friends, but it stops working when i send something.

Deleted Messages Not Registered, and a Few Minor Issues

now that the recent update has allowed me to look closer at the program im able to spot a few issues that are, while less detrimental to the function of the program, still exist!

the main issue, and the only one that needs solving in my eyes, is that messages that are deleted from discord arent removed from the pesterchum client. this wouldnt be a huge issue if not for certain bots like pluralkit, which function by deleting messages from channels and re-sending them under different names; in the pesterchum client, this becomes kind of a massive cluttered mess really quickly!!!


there are a few other minor issues here, that don't need fixing quite as badly but would be good quality of life:

  • occasional crashes on regular discord client use: probably unfixable, due to discords insistence on making cool projects like this not work, but... well, thats all ive noticed about it, really. if you tab into a normal discord client while pesterchum is running, it will sometimes/eventually cause a crash.

  • line breaks posted from discords main client: the pesterchum client just turns these into spaces! not sure if thats fixable but it would be nice for formatting/readability

  • window resizing: while you can resize the windows in the program, the text boxes, ui, etc. will not grow with the window; it just produces a lot of yellow space. i wouldnt be surprised if this is unfixable due to the nature of custom themes, but it would be nice to look into!

  • discord formatting: not much of an issue, but i do wonder how hard it would be to have the program recognize, say, two asterisks on the same line, remove them, and put the text in between in italics? with backslashes ignoring the following character in that check, being removed in the process? it would allow the program to be better used alongside people not using it!

Crash on block, new messages not visible, and some other misc issues

Tested on Windows 10 using the Trollian 2.5 and Pesterchum themes.
When I press the block button with no user selected, nothing happens. Unsurprisingly, but a pop up would be a nice QoL feature. When a user is selected, though, pesterchum crashes and the user isn't blocked.

Also, when sending a message, message sends (which can be seen in Discord) but doesn't update in pesterchum. Replies also dont appear. Tested when messaging a user, bot, group dm, and discord server. The only way to force the messages to load is to close and reopen the chat window. OR, if the messaging window pops up (from being messaged) it works as intended sometimes. If you receive a message from user A, you can start messaging user B and it will work fine, though. (tested with tabbed conversations on, might have something to do with that)
In general when the messages break and stop appearing, restarting pesterchum fixes that temporarily.

Other Stuff That Might Just Not Be Implemented Yet

  • Offline users have moods other than offline. (Suggested fix, if you can get the online/idle/DND/invisible/offline status of a user, show (random valid mood) for online and idle, rancorous/detestful for DND, and offline for invisible and offline. It'd be cool for there to be a way to use ones status in discord to set mood, but I'm not sure how doable that is.)
  • Embeds and images show as empty messages from the user if there's no additional text. (I.e. PP: )
  • Quirk changes aren't saved if pesterchum crashes. Doesn't happen if you make a change > exit pesterchum > open pesterchum > pesterchum crashes. Not sure if there's an easy fix, but uh, thats a thing.
  • The Add Chum button causes pesterchum to crash.
  • At the top of the memo list, theres a blank memo. Clicking it causes pesterchum to crash.

Suggestions For Cool Features

  • Being able to nickname users (e.g. user Joe#1111 > funUsername, to be lore compliant) would be really nice, especially if said nickname was tied to the users discord ID (1696415383375056969) rather than their handle (Joe#1111) so you wouldn't have to remake it if they change their handle.
  • Being able to set the text colours of each user would be awesome, especially if it saved in the same way as above. Bonus if it also applied to the colour selector on the main screen.
  • Speaking of the colour selector, clicking it doesn't do anything beyond selecting it (I.e. no pop up) which is probably just indicative of nothing being implemented there yet, but it'd be nice if it did something.
  • Group DMs are shown in the same place as messages to a single user, I suggest either moving them to the Memos section, or having them be in a separate group in the chumroll. Also, Group DMs probably shouldn't have moods haha.
  • Clicking your handle on the main screen could bring up an interface to change your nickname (either on a Discord level or just locally)

Hopefully all of that is helpful, its 4 am and I'm desperately hoping this isn't abandonware. Have a nice day, and all my complaining aside, im a big fan of what you've made here.

Cannot find the 'pesterchum.exe' file

I have downloaded the file and unzipped it but there appears to be no sign of the 'pesterchum.exe' anywhere in any of the folders. There is a 'pesterchum.py' file but it seems to do nothing

Memo Issues

Whenever I change tabs in a memo the userlist disappears and new messages don't appear.
This happens no matter which memo I'm in.

Picture demonstrating the issue
Similar picture in different memo

Python error

After extracting all files and trying to run the Pesterchum executable file i'm presented with an error saying "Python error in main script" and shows me every instance of the find and load command "". I'm running windows 10 and my Discord client is fully updated. Any idea how to fix that?

can't find exe file

it says to install, there should be a pesterchum.exe file upon unzipping, but there... isn't?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.