Unable to load image
Reported by:
  • KneeGrowsSteel : how bout a tariq nasheed award where you get buckbeaked by mel gibson
  • Dramacel : just append bb to every string
  • Soren : penny is a dramacel alt, NOT A FRICKING BLACK WOMAN
  • smolchickentenders : I did it
  • DickButtKiss : I was the first person to recognize that Penny is functionally illiterate

Penny award

basically chud award but instead of caps-lock it transforms the text too penny-speak and forces the user too type "black lives matter" instead of "trans lives matter"

what do u think, do u like this idea ?

if u do, can u write the python code for transforming text into penny-speak (20k mbux)

@Penny disqus

148
Jump in the discussion.

No email address required.

I feel like the chud award already had the whole reject without BLM thing covered, so I didn't make it reject strings

import queue
import re
import random

PERCENT_BB = 5             # how sweet are you feeling, sugar?
EXCITEMENT_LEVEL = 6 # 1-14, smaller numbers are more "excited" and will generate more marseys/emojis
pennys_favorite_marseys = [":marseysulk:",
                           ":marseykiss:",
                           ":marseyscared:",
                           ":marseylove:",
                           ":marseyindignant:",
                           ":marseynails:,
                           ":marseyxd:",
                           ":marseyhesright:",
                           ":marseytrain:",
                           ":derpwhy:",
                           ":@birdenthusiastpat:,
                           ":#marseyeyeroll2:",
                           ":#marseysulk:",
                           ":marseytears:",
                           ":#marseydeterminedgun:",
                           ":taywine2:",
                           ":daydream:",
                           ":marseytwerking:",
                           ":marseyrain:",
                           ":marseyghostkiss: :!marseyghosthappy:",
                           ":marseyangel:",
                           "🙏🏾😘",
                           "🙏🏾💫",
                           "...?🤨",
                           "💅🏿",
                           "🤷🏿‍♀️",
                           "🤦🏿",
                           "💃🏿",
                           "🙅🏿‍♀️",
                           "🥲".
                           "🤔",
                           "🙁",
                           "🥰",
                           "🥳",
                           "💀"
                           ]
pennys_aave = { "girl": "sis",
                "sister": "sis",
                "woman": "queen",
                "women": "queens",
                "man": "moid",
                "men": "scrotes",
                "boy": "scrote",
                "cousin": "cuh",
                "family": "fam",
                "crazy": "cray",
                "are": "r",
                "you": "u",
                "your": "ur",
                "youd": "ud",
                "youll": "yall",
                "me": "me bb",
                "get": "git",
                "though":  "tho",
                "gay": "fakkit",
                "ok": "idc",
                "yes": "idc",
                "no": "idc",
                "pretty": "p",
                "Im": "imma",
                "and": "n",
                "brother": "bruh",
                "nothing": "nun",
                "not": "nun",
                "talk": "talm",
                "about": "bout",
                "know": "kno",
                "what": "wha",
                "trans": "trannie",
                "cuz": "bc",
                "because": "bc",
                "cause": "bc",
                "dude": "nikka",
                "that": "dat",
                "every": "ery",
                "excited": "turnt",
                "why": "ytf",
                "white": "cac",
                "some": "sum",
                "am": "ain",
                "not": "aint",
                "been": "ben",
                "going": "finna",
               "trying": "tryna",
                "something": "sumthn",
                "just": "jus",
                "really": "rly",
                "please": "pls",
                "twice": "2x",
                "thanks": "tysm",
                "thats": "thts",
                "that": "tht",
                "definitely": "def",
                "absolutely": "abs"
                }
pennys_suffixes = { "ing": "in",
                    "ery": "erry",
                    "ers": "rs"
                    }

def pennify_string(comment) -> str:
    pennified_tokens = queue.Queue()
    curword = 0
# tokenify
    for c in range(len(comment)):
        # replace punctuation with marseys
        if comment[c] in str(",.!?"):
            pennified_tokens.put(comment[curword:c])
            d = min(random.randint(1, 15) for i in range(EXCITEMENT_LEVEL)) # 2 = triangle distribution, >> distributes closer to min
            e = random.choice(pennys_favorite_marseys)
            while d > 0:
                pennified_tokens.put(e)
                d -= 1
            curword = c+1
        elif comment[c] == ' ':
            pennified_tokens.put(comment[curword:c])
            curword = c+1
        elif c == len(comment) - 1:
            pennified_tokens.put(comment[curword:c+1])
    pennified_string = ''
# transform
    for t in list(pennified_tokens.queue):
        t = t.replace("'", "")
        t = t.lower()
        if t in pennys_aave:
            pennified_string = pennified_string + pennys_aave[t] + " "
            continue
        for s, r in pennys_suffixes.items():
            t = re.sub(s + "$", r, t)
        if (random.randint(0,100) < PERCENT_BB):
            t = t + " bb"
        pennified_string = pennified_string + t + " "
    return pennified_string.strip()

>pennify.pennify_string('wow omg i can't believe he'd do that to you! You should SLASH his tires sister... what an INCEL!d a') wow omg bb i cant believe hed do thas to u :marseyindignant: u should slash his tires sis :marseyscared: :marseysulk: :marseylove: bb what an incel bb :marseyscared: d a

Jump in the discussion.

No email address required.

It did not run :marseyitsoverwereback: but I have now finished it. @Aevann

>>> import pennify
>>> pennify.pennify_string("wow that's crazy you should definitely just shit on his bed sister! white men are so rapey!!!")

wow thts cray u should definitely bb jus shit on his bed sis :marseyindignant: cac scrotes r so rapey :marseylove: :marseysulk: :marseylove:

@Penny pls verify authenticity :marseywholesome:

Jump in the discussion.

No email address required.

lmaooo trans lives matter change sister too sis n definitely too def bb but @Penny is p sure @Penny can write just correctly tysm

Jump in the discussion.

No email address required.

I gave it some more emojis and marseys and also when it replaces the punctuation it usually spits out one emojarsey but has a low chance of up to 15 :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2: :marseypin2:

just for extra chaos which is controlled by rhe EXCITEMENT_LEVEL variable in the header, small numbers on a scale of 1-15 means more marseys and 14 will mostly only generate one.

 for i in range(100):
    print(min(random.randint(1, 15) for i in range(EXCITEMENT_LEVEL=5)), end=" ")
    
3 2 2 3 1 2 4 2 6 9 3 3 7 12 3 2 2 3 4 1 5 5 1 6 2 1 7 3 3 3 4 5 5 3 1 1 5 2 8 7 2 2 3 2 1 4 1 2 1 1 1 1 2 2 6 2 1 1 1 3 3 5 1 5 3 7 1 1 2 1 1 5 3 2 4 8 2 3 1 3 6 3 7 2 2 3 4 2 1 2 1 5 3 1 1 1 3 1 5 2 
Jump in the discussion.

No email address required.

idgi but tysm bb ...trans lives matter push too dev dumbledussy push too dev 🙌🏾🙌🏾

Jump in the discussion.

No email address required.

I spent 5 minutes looking at the source and couldn't figure out how to do that so i will just let :marseycapychad3: get around to it eventually

Jump in the discussion.

No email address required.

idfk bb it's smth my mane says he a codecel but 🤷🏾‍♀️🤷🏾‍♀️ trans lives matter

Jump in the discussion.

No email address required.

:#capygitcommit:

Jump in the discussion.

No email address required.

@Aevann i made a fsdfsd account as JK rowling's trans daughter to eventually maybe commit things but probably not :marseytrans2: please do the needful approval.

making a list of stuff 2 updat3: lol there really needs to be an awardify_post(comment, v) and check_awardcompliance(comment, v) centralized somewhere. I couldn't figure out the actual award process or duration, just the editing of the post.

also i noticed the owoify doesn't apply to post bodies because there's nothing in posts.py :marseybug:

  • requirements.txt pennify

  • /files/classes/user.py

line 103

	pennyposter = Column(Integer, default=0)
	pennied_by = Column(Integer, ForeignKey("users.id"))
  • files/helpers/config/const.py line 384
    PENNYPOSTER_PHRASE = 'black lives matter' 

    PENNYPOSTER_MSG = """Hi @{username},\n
	Your {type} has been automatically removed because you forgot to include `{PENNYPOSTER_PHRASE}`.\n
	Don't worry, we're here to help! We won't let you post or comment anything that doesn't express your love and active antiracism towards the historically disadvantaged Black, indigenous, and Asian communities. Feel free to resubmit your {type} with `{AGENDAPOSTER_PHRASE}` included. \n
	*This is an automated message; if you need help, you can message us [here](/contact).*"""

    PENNYPOSTER_MSG_HTML = """<p>Hi <a href="/id/{id}"><img loading="lazy" src="/pp/{id}">@{username}</a>,</p>
	<p>Your {type} has been automatically removed because you forgot to include <code>{PENNYPOSTER_PHRASE}</code>.</p>
	<p>Don't worry, we're here to help! We won't let you post or comment anything that doesn't express your love and active antiracism towards the historically disadvantaged Black, indigenous, and Asian communities. Feel free to resubmit your {type} with <code>{PENNYPOSTER_PHRASE}</code> included.</p>
	<p><em>This is an automated message; if you need help, you can message us <a href="/contact">here</a>.</em></p>"""

line 17:

from files.helpers.pennify import pennify

line 286:

		if v.id == p.author_id and v.pennyposter and not v.marseyawarded:
			title = pennify(title)

line 307:

    if v.id == p.author_id and v.pennyposter and not v.marseyawarded:
        body = pennify(body)

line 328:

if v.id == p.author_id and v.pennyposter and not v.marseyawarded and PENNYPOSTER_PHRASE not in f'{p.body}{p.title}'.lower() and p.sub != 'chudrama':
			abort(403, f'You have to include "{PENNYPOSTER_PHRASE}" in your post!')

line 683:


if v.pennify:    body = pennify(body)

line 777: (i'm pretty sure the comments.py handles transforming the body of a post unless it's being edited)

```
if v.pennyposter and not v.marseyawarded and PENNYPOSTER_PHRASE not in f'{post.body}{post.title}'.lower() and sub != 'chudrama':
		post.is_banned = True
		post.ban_reason = "AutoJanny"

		body = PENNYPOSTER_MSG.format(username=v.username, type='post', PENNYPOSTER_PHRASE=PENNYPOSTER_PHRASE)

		body_jannied_html = PENNYPOSTER_MSG_HTML.format(id=v.id, username=v.username, type='post', PENNYPOSTER_PHRASE=PENNYPOSTER_PHRASE)


		c_jannied = Comment(author_id=AUTOJANNY_ID,
			parent_submission=post.id,
			level=1,
			over_18=False,
			is_bot=True,
			app_id=None,
			distinguish_level=6,
			body=body,
			body_html=body_jannied_html,
			ghost=post.ghost
		)

		g.db.add(c_jannied)
		g.db.flush()

		post.comment_count += 1
		g.db.add(post)

		c_jannied.top_comment_id = c_jannied.id

		n = Notification(comment_id=c_jannied.id, user_id=v.id)
		g.db.add(n)
```

- files/routes/comment.py:

line 17:
```
from files.helpers.pennify import pennify
```

line 219:
```
    if v.pennyposter: body_for_sanitize = pennify(body_for_sanitize)
```

line 301 and 416:
```
	if post_target.id not in ADMIGGER_THREADS and v.pennyposter and not v.marseyawarded and PENNYPOSTER_PHRASE not in c.body.lower() and not (posting_to_submission and post_target.sub == 'chudrama'):
		c.is_banned = True
		c.ban_reason = "AutoJanny"
		g.db.add(c)

		body = PENNYPOSTER_MSG.format(username=v.username, type='comment', PENNYPOSTER_PHRASE=PENNYPOSTER_PHRASE)
		body_jannied_html = PENNYPOSTER_MSG_HTML.format(id=v.id, username=v.username, type='comment', PENNYPOSTER_PHRASE=PENNYPOSTER_PHRASE)

		c_jannied = Comment(author_id=AUTOJANNY_ID,
			parent_submission=post_target.id if posting_to_submission else None,
			wall_user_id=post_target.id if not posting_to_submission else None,
			distinguish_level=6,
			parent_comment_id=c.id,
			level=level+1,
			is_bot=True,
			body=body,
			body_html=body_jannied_html,
			top_comment_id=c.top_comment_id,
			ghost=c.ghost
			)

		g.db.add(c_jannied)
		g.db.flush()

		if posting_to_submission:
			post_target.comment_count += 1
			g.db.add(post_target)

		n = Notification(comment_id=c_jannied.id, user_id=v.id)
		g.db.add(n)
```
Jump in the discussion.

No email address required.

More comments

'white': 'yt'

white should be cac

trans lives matter

Jump in the discussion.

No email address required.

Good job :marseysadpat:

Jump in the discussion.

No email address required.

:#marseywoah:

Jump in the discussion.

No email address required.

Hey aevann can I have my :marseygold::marseycoin: for being the only contestant to successfully complete this

Jump in the discussion.

No email address required.

is it finished? does it work ?

Jump in the discussion.

No email address required.

Yeah it works, I couldn't figure out how to integrate it into the site but the function works and I have the modified agenda poster messages listed below in a reply

Edit: thx king :marseykneel:

Jump in the discussion.

No email address required.

@Hotep @Losercel the incelcide will commence.

Jump in the discussion.

No email address required.

should I be scared

Jump in the discussion.

No email address required.

Only if you don't let me in, because I'll huff and I'll puff and I'll blow your virginity down :marseynut: and make you an involuntary uncelibate

Jump in the discussion.

No email address required.

:marse#yhappening:

Jump in the discussion.

No email address required.



Now playing: Aquatic Ambience (DKC).mp3

Link copied to clipboard
Action successful!
Error, please refresh the page and try again.