#voice-chat-text-0

1 messages Β· Page 206 of 1

somber heath
#

@trim roost πŸ‘‹

turbid ridge
#

in all fairness to the server they didn't make the requirements that high so that's a good thing

#

in all honesty I've been in this server for the length of time that I have because I was just waiting until I could be bothered to meet the requirements

#

just "I see" is at the same time the worst response and the best response I've ever heard

#

also I feel that typing is far more difficult to use overall because if I'm just speaking then I can say what I wanna say in a shorter period of time and without the ability to read over and edit it giving it more of a sincere feel

#

I can definitly see your point but I mean for people who don't have those problems which is more than not

#

come to think of it how did you even check my message count?

#

so it shall seem

#

I honestly bairly ever use that

#

longer than 3 days I'll tell you that

#

I don't use messages on discord servers

#

only in debates will I actually type

#

also yes OpalMist is correct

ebon mist
#

meow

#

good

turbid ridge
#

I'm gonna go silent for a while but I can still hear

ebon mist
#

he doing well

#

he need a vet visit but he fine opal

#

check up

#

he's yearly

#

so what are you all working on

#

??

#

lol

somber heath
#

@whole bear πŸ‘‹

ebon mist
#

yo

#

are ther ponys??

astral coral
#

hello

somber heath
#

@long nimbus πŸ‘‹

astral coral
#

can't talk need 50 messages 😒

#

programming a game in pygame

ebon mist
#

cool i get deer out hear!
hay dos any know what the python discord lib is?

vocal basin
astral coral
#

import discord ?

vocal basin
#

discord module comes from discord.py package

somber heath
#

@humble thicket πŸ‘‹

vocal basin
#

!d discord

wise cargoBOT
#

In order to work with the library and the Discord API in general, we must first create a Discord Bot account.

Creating a Bot account is a pretty straightforward process.

ebon mist
#

for a discord bot ??

vocal basin
wise cargoBOT
vocal basin
#

this for making discord bots

ebon mist
#

thanks

vocal basin
#

as for other API interactions -- idk

#

(Applications API)

astral coral
#

I'm just gonna type nonesense about what I'm doing atm till I reach 50 messages πŸ˜„ sorry for any spam

#

(will be python related)

#

Trying to make a menu system for a "game template" then work on fixing socketing

vocal basin
#

socketing as in TCP?

astral coral
#

UDP

#

import socket XD

vocal basin
#

asyncio supports TCP/UDP too

#

but idk if it interacts well with pygame

astral coral
#

oooo I'm still learning Python I guess xD

#

its a basic socket package, it allows you to send data over a network

#

application layer

#

yeah

#

128.000.00

somber heath
#

@craggy sundial πŸ‘‹

astral coral
#

my menu system should allow the user to type in a server ip and then broadcast to clients

#

tbh I'm just rammbling to get 50 messages XD

#

yeah, I program TCP on different engines, this is just for simplicity

#

or what I figured was simpler

#

MMORPGS?? you think?

#

AHHHHHHHHH okay, I think socket does TCP

#

I

craggy sundial
#

Anyone know to set up properly stripe web sockets ?

#

My order is saving different id number in the database

somber heath
#

@neon perch πŸ‘‹

neon perch
#

Hey y'all

turbid ridge
#

this vc filled up

astral coral
#

but no one can talk xD

neon perch
#

I'm hoping to get voice verified soon

somber heath
#

!voice

wise cargoBOT
#
Voice verification

Can’t talk in voice chat? Check out #voice-verification to get access. The criteria for verifying are specified there.

turbid ridge
#

I'm starting to think that the vc verification isn't so bad

neon perch
#

That's understandable

astral coral
#

yeah, no. I understand XD

turbid ridge
#

I just scream louder if they don't shut up

neon perch
#

It sucks when bad apples have to spoil it for people who just want to have a normal conversation

turbid ridge
#

it's not bad it's just not good

neon perch
#

I am however having trouble aggregating my data into 1 minute intervals with pandas, think you guys could take a look?

turbid ridge
#

people here just seem really calm compared to the people I usually talk to

neon perch
#

fo sho

#

bet

#

Yep, that's exactly right

#

It might take me a second to respond through typing

#

OH also, been trying to use pypy but I can't get pandas to work on it

#

Would be super rad but I think maybe pandas doesn't work with it?

#

that's true

#

I use asyncio to loop

#

I appreciate the help and what not

vocal basin
neon perch
#

I was going between timestamp and datetime object

neon perch
#

Cause I have this

            # Convert the timestamp into a datetime object with UTC time
            timestamp = datetime.utcfromtimestamp(timestamp / 1000)
#

I should probably post the whole code instead of that little snippet

#

I will check that out Opal

#

a little bit

#

maybe we could use python to filter the music xD

somber heath
#

@unique osprey πŸ‘‹

neon perch
#

I'm American too, I feel it. However I did get plastered one day and learned French. Should have been Python haha

#

Interesting lives we all live eh

neon perch
#

lmaoooo

#

I need to watch more shows. Mostly just watch trailer park boys.

astral coral
#

oh god XD

neon perch
astral coral
#

XD

#

is there a way to keep a while loop going without messing with the rest of the outide code?

neon perch
#

I hear you

astral coral
#

yeah

astral coral
#
     data, (ip , port)= sock.recvfrom(1024) # buffer size is 1024 bytes
     client_no = [ip for i, ip in enumerate(UDP_C_IP) if i == ip]
     if client_no > 0:   
        recvdata[client_no] = data
#

I need this to run along side pygame

neon perch
#

Asyncio sounds right yeah

astral coral
#

this code needs changing anyway

#

hmmm okay I'll look into it

neon perch
#

I don't think so. I believe you need to have all your imports on that file

astral coral
#

loop.run_forever()

#

???

#

will that run asycronically?

#

forgive spelling

#

man I just madde up a word xD

#

you know what I mean XD

somber heath
#

Asynchronously.

astral coral
#

yeah lol

#

sorry 1 sec, figuring out how stupid I am XD

gray gust
#

hi all πŸ‘‹

wind raptor
#

!stream 1147845388599054418

wise cargoBOT
#

βœ… @modest condor can now stream until <t:1698242980:f>.

haughty fog
#

example for s-lang

astral coral
#

I found a async' TCP simple config

#

question: can async functions work on pygame main loop?

#

will they interefer?

#

?I mean will I have to async the main loop with the network loop, or can I just have the network loop asynced

vocal basin
#

it might be a better idea to put async event loop in a separate thread
(which you'd send pygame events to via a queue)

astral coral
#

yeah I was thinking something like that, like I'm calling my async events before the main loop

#

so they don't keep getting initliased

vocal basin
#

outdated in terms of how it interacts with the event loop

#

get_event_loop is deprecated, iirc

#

!d asyncio.get_event_loop

wise cargoBOT
#

asyncio.get_event_loop()```
Get the current event loop.

When called from a coroutine or a callback (e.g. scheduled with call\_soon or similar API), this function will always return the running event loop.

If there is no running event loop set, the function will return the result of the `get_event_loop_policy().get_event_loop()` call.

Because this function has rather complex behavior (especially when custom event loop policies are in use), using the [`get_running_loop()`](https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.get_running_loop) function is preferred to [`get_event_loop()`](https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.get_event_loop) in coroutines and callbacks.

As noted above, consider using the higher-level [`asyncio.run()`](https://docs.python.org/3/library/asyncio-runner.html#asyncio.run) function, instead of using these lower level functions to manually create and close an event loop.
astral coral
#

asyncio.run_coroutine_threadsafe(event_queue.put(event), loop=loop)

vocal basin
#

asyncio queues aren't guaranteed to be threadsafe

astral coral
#

okay so I should use low level sockets?

vocal basin
vocal basin
astral coral
#

depends on the game,: X,Y, Firing, ITEMS

#

I'm setting up a template

#

jumping maybe

vocal basin
#

thousands or millions?

#

of messages

astral coral
#

probably not millions

vocal basin
#

would the connection be server-client or peer-to-peer?

#

do you want to have potential for web-compatibility?

astral coral
#

p2p

#

I mean surely its 8 players * 8 possible move * 2 possible functions?

#

or am I being stupid

vocal basin
#

and choose the protocol later

astral coral
#

eleborate? sorry

#

I'm still basic XD ^^'

vocal basin
#

most of the application shouldn't know that it's working with TCP/ZeroMQ/WebSockets/etc.

astral coral
#

I get transport layer

#

okay

#

I get ya

#

sorry

#

I saw some stuff on asyc about TLP

#

but just defaulted to TCP

#

because thats what I'm used too

#

sorry been coding all day, donnoh if I get or don't get what I'm thinking XD

#

class EchoServerProtocol(asyncio.Protocol):
    def connection_made(self, transport):
        peername = transport.get_extra_info('peername')
        print('Connection from {}'.format(peername))
        self.transport = transport

    def data_received(self, data):
        message = data.decode()
        print('Data received: {!r}'.format(message))

        print('Send: {!r}'.format(message))
        self.transport.write(data)

        print('Close the client socket')
        self.transport.close()

# TCP Client
class EchoClientProtocol(asyncio.Protocol):
    def __init__(self, message, on_con_lost):
        self.message = message
        self.on_con_lost = on_con_lost

    def connection_made(self, transport):
        transport.write(self.message.encode())
        print('Data sent: {!r}'.format(self.message))

    def data_received(self, data):
        print('Data received: {!r}'.format(data.decode()))

    def connection_lost(self, exc):
        print('The server closed the connection')
        self.on_con_lost.set_result(True)```
#

This is the TCP shit I copied

#

brb I'm going for a cigarette, maybe relax the mind a little

#

if you message I'll back track

astral coral
#
    animation_task = asyncio.ensure_future(animation(screen, ball))
    event_task = asyncio.ensure_future(handle_events(event_queue, ball)) ```
#

this is interesting

vocal basin
#

it'd be asyncio.create_task now instead of asyncio.ensure_future

#

and asyncio.to_thread instead of loop.run_in_executor

astral coral
#

ahhhh okay thank you

#

so if I'm right, which I know I'm not. astncio.to_thread to keep pygame "paused" while asyncio.create_task to keep the TCP network running

#

then I have to translate the messages to what I want in pygame

vocal basin
#

to_thread is needed because pygame.event.wait() call is blocking

#

(thread waiting on pygame events can't do much else)

astral coral
#
    while True:
        event = pygame.event.wait()
        asyncio.run_coroutine_threadsafe(event_queue.put(event), loop=loop)```
vocal basin
wise cargoBOT
#

main.py line 41

last_time, current_time = current_time, time.time()```
vocal basin
#

in the game it should be time.monotonic() or time.perf_counter()

#

because time.time() can go backwards or very far forwards suddenly, which is not good here

astral coral
#

sure

#

thanks for your help man!!!

vocal basin
wise cargoBOT
#

main.py line 33

asyncio.run_coroutine_threadsafe(event_queue.put(event), loop=loop)```
vocal basin
#

i.e. why I said .result() or something similar is needed

#

in very rare situations, tasks can get dropped by the event loop

#

which happens because of GC

#

therefore the program needs to hold onto the task until it's completed

#

another reason to wait for the run_coroutine_threadsafe to fully complete is to never schedule more than one task to push to the queue

#

because if the queue does fill up, the solution from the example would run out of memory

astral coral
#

sure

#

I'll share my code in a sec, just debugging

#
pygame.init()

# Set the width and height of the screen [width, height]
size = (640, 480)
screen = pygame.display.set_mode(size)
screen.fill(WHITE)

pygame.display.set_caption("...My Game...")

# Loop until the user clicks the close button.
done = True

# Used to manage how fast the screen updates
clock = pygame.time.Clock()

#----------------------------------------------------------------------------------------------------------------#
#Objects
#------------------------------------------------------------------------------------------------------------------#

#------------------------------------------------------------------------------------------------------------------#
async def server_main():
    # Get a reference to the event loop as we plan to use
    # low-level APIs.
    loop = asyncio.get_running_loop()

    server = await loop.create_server(
        lambda: EchoServerProtocol(),
        '127.0.0.1', 8888)

    async with server:
        await server.serve_forever()

async def client_main():

   # Get a reference to the event loop as we plan to use
    # low-level APIs.
    loop = asyncio.get_running_loop()

    on_con_lost = loop.create_future()
    message = 'Hello World!'

    transport, protocol = await loop.create_connection(lambda: EchoClientProtocol(message, on_con_lost),'127.0.0.1', 8888)

    # Wait until the protocol signals that the connection
    # is lost and close the transport.
    try:
        await on_con_lost
    finally:
        transport.close()
            
#
#----------------------------------------------------------------------------
#Pygame async ques
# 
# 
def pygame_event_loop(loop, event_queue):
    while True:
        event = pygame.event.wait()
        asyncio.run_coroutine_threadsafe(event_queue.put(event), loop=loop)


async def handle_events(event_queue):
    while done:
        event = await event_queue.get()
        if event.type == pygame.QUIT:
            done = False
            break


loop = asyncio.get_event_loop()
event_queue = asyncio.Queue()

pygame_task = asyncio.to_thread(None, pygame_event_loop( loop, event_queue))
event_task = asyncio.create_task(handle_events(event_queue))
try:
        loop.run_forever()
except KeyboardInterrupt:
        pass
finally:
        event_task.cancel()
        pygame_task.close()
    
pygame.quit()```
atomic stirrup
#

hello guys im new to coding in python

astral coral
#

hey

#
    while True:
        event = pygame.event.wait()
        asyncio.run_coroutine_threadsafe(event_queue.put(event), loop=loop)```
#

I think theres something wrong here

#

the game wont close

vocal basin
#
pygame_task = asyncio.to_thread(pygame_event_loop, loop, event_queue)
astral coral
#

1 sec

vocal basin
#

!d asyncio.to_thread

wise cargoBOT
#

coroutine asyncio.to_thread(func, /, *args, **kwargs)```
Asynchronously run function *func* in a separate thread.

Any \*args and \*\*kwargs supplied for this function are directly passed to *func*. Also, the current [`contextvars.Context`](https://docs.python.org/3/library/contextvars.html#contextvars.Context) is propagated, allowing context variables from the event loop thread to be accessed in the separate thread.

Return a coroutine that can be awaited to get the eventual result of *func*.

This coroutine function is primarily intended to be used for executing IO-bound functions/methods that would otherwise block the event loop if they were run in the main thread. For example:
astral coral
#

I had this error before, hence why I changed it

#

1 sec

vocal basin
#
async def main()
    loop = asyncio.get_running_loop()
    event_queue = asyncio.Queue()
    ...  # do task creation here

if __name__ == "__main__":
    asyncio.run(amain())
#

create_task expects to be called from async context

astral coral
#

aahhhhhhhhhhhhhhhh

#

I made that mistake before

#

1 sec

#

runs the game but doesn't close

#

1 sec I think I know the porblem

scarlet halo
#

yo

astral coral
#
    black = 0, 0, 0

    current_time = 0
    while True:
        last_time, current_time = current_time, time.time()
        await asyncio.sleep(1 / FPS - (current_time - last_time))  # tick
        ball.move()
        screen.fill(black)
        ball.draw(screen)
        pygame.display.flip()```
#

I haven't done the updating XD

noble solstice
#

Hii @vocal basin

turbid ridge
#

yo

noble solstice
#

Any good resources suggestion for dynamic programming?

turbid ridge
#

I have not a clue what I'm doing when it comes to programming

vocal basin
noble solstice
vocal basin
#

I'd expect codeforces after-the-round writeups to be quite useful
(people, often including authors of the problem, publish solutions with explanations)

noble solstice
#

and any resources for learning apart from practice?

vocal basin
#

I usually just look up things on case-by-case basis
(never really learned anything like this systematically)

#

Wikipedia is okay for learning about specific algorithms

#

(but not for comprehensive studying)

noble solstice
#

Okay Mate!

gray gust
noble solstice
astral coral
#

nah its not working :/

#

I'll figure it out soon enough

gray gust
#

whats not working?

astral coral
#

Im gonna go for now though need a break

#

XD

#

Thanks so much @vocal basin

gray gust
#

hello @warm jay

turbid ridge
#

yo

#

no

wise cargoBOT
#

:incoming_envelope: :ok_hand: applied timeout to @warm jay until <t:1698250941:f> (10 minutes) (reason: newlines spam - sent 188 newlines).

The <@&831776746206265384> have been alerted for review.

turbid ridge
#

what?

gray gust
#

lol

turbid ridge
#

that's honestly incredible

proud tangle
#

!unmute 879612178158714930

wise cargoBOT
#

:incoming_envelope: :ok_hand: pardoned infraction timeout for @warm jay.

proud tangle
#

!paste

wise cargoBOT
#
Pasting large amounts of code

If your code is too long to fit in a codeblock in Discord, you can paste your code here:
https://paste.pythondiscord.com/

After pasting your code, save it by clicking the Paste! button in the bottom left, or by pressing CTRL + S. After doing that, you will be navigated to the new paste's page. Copy the URL and post it here so others can see it.

turbid ridge
#

because you pasted too much code

vocal basin
turbid ridge
warm jay
#
#Main input function
while True:
    scr.listen()
    scr.onkey(q1, "q")
    scr.onkey(w1, "w")
    scr.onkey(e1, "e")
    scr.onkey(r1, "r")
    scr.onkey(t1, "t")
    scr.onkey(y1, "y")
    scr.onkey(u1, "u")
    scr.onkey(i1, "i")
    scr.onkey(o1, "o")
    scr.onkey(p1, "p")
    scr.onkey(a1, "a")
    scr.onkey(s1, "s")
    scr.onkey(d1, "d")
    scr.onkey(f1, "f")
    if scr.onkey(enter, "Return"):
        break
sc1.write(logi, font=('arial-bold', 15, 'normal'))
vocal basin
#

q1~f1 should probably be dictionary items, not variables

#

is the program freezing or the whole system?

#

does the program have any UI?

warm jay
#

turtle

warm jay
vocal basin
#

event handling should probably be in a separate thread

warm jay
#

this is the code

vocal basin
#

onkey generally should be called only once, if I understand it correctly

#

not in a loop

#

@rugged root I've signed the contract
Rust job might finally pay money

vocal basin
# vocal basin not in a loop

the reason why turtle hangs is:

  1. while True: and code inside it never yields control
  2. event loop is not started properly yet
vocal basin
warm jay
#

i try to enter hello and get this

vocal basin
#

yes, because your original code didn't define h and l handlers either

warm jay
#

oh sorry

#

i just realised now

vocal basin
#

@rugged root project

#

one is done, another in progress

vocal basin
gray gust
#

@vocal basin how is your experience with rust? I am planning to learn it

vocal basin
#

for me, easier to use than any other programming language

#

apart from compile times being eternity

warm jay
vocal basin
#

just like functions can take other functions as arguments (like onkey method does),
functions can return new functions

vocal basin
#

there are ways to rarely ever have to deal with lifetimes

#

quite useful while getting familiar with the language

#

and then, later on when you decide to optimise it via references, you can relatively easily modify the code

warm jay
#
scr.onkey(enter, "Return")
#Move turtle to password place
if ifq == True:
    sc1.lt(90)
    sc1.fd(50)
scr.listen()
turtle.done()
swift valley
#

YAML

warm jay
#

when i type up my thing and then display it

vocal basin
#

XML

warm jay
#

my turtle doesnt move

swift valley
#

YAML
YMAL
YMAC
YMCA

vocal basin
swift valley
#

C...M...Y...K?

vocal basin
#

for docs

swift valley
#

JSON not allowing trailing commas is painful

vocal basin
#

but that also has Markdown integration

gray gust
#

I also hear that rust doesn't have a Garbage collection.

vocal basin
#

you can build your own GC

swift valley
#

Although I guess:

{ "nothing": "is"
, "stopping": 
  [ "me"
  , "from"
  , "writing"
  , "a formatter"
  , "like this"
  ]
}
gray gust
#

do you know any good resource for gc

wise cargoBOT
#

I exist 😒

ebon mist
#

lol

gray gust
#

lol

rugged root
swift valley
#

It's a shame that @viscid lagoon is silent

#

eXtensible Markup Language?

vocal basin
#

SGML derivative

#

just as HTML

swift valley
#

I've somehow grown to tolerate XML config files

vocal basin
#

C# and Java are too tightly coupled to XML

gray gust
#

It's remind me old days of using SOAP

rugged root
#

Not familiar with that one

vocal basin
swift valley
#

That's what irks me about anti-indent folks

#

You indent anyways for readability???

#

As in devs who prefer brackets over whitespace sensitivity

rugged root
#

I was trying to figure out what SOUP was

#

Other than delicious

swift valley
#

Seriously, no one programs like this

void a()
{
b();
c();
d();
}
gray gust
#

ahh sorry πŸ˜…

vocal basin
#

put each token in its own column/row so it's easier to parse as a table

struct
            Example
      {
            field
       :
            Vec
        <
            String
         >
          ,
            other_field
       :
            HashMap
        <
            String
          ,
            String
         >
          ,
           }
swift valley
#

Speaking of whitespace, I remember writing this πŸ˜„

vocal basin
#

I sometimes format Python like it's Lisp because that's funny

#

or whatever this is

sum(starmap(lshift,
  map(itemgetter(slice(None, None, -1)),
    enumerate(reversed(list(map(attrgetter('val'),
      takewhile(bool,
        accumulate(repeat("next"), getattr, initial=head)))))))))
#

))))))))) means funny

rugged root
#

I haaaaaaate that

swift valley
#

Honestly, I forget every once in a while that I can write LISP

swift valley
# swift valley Honestly, I forget every once in a while that I _can_ write LISP

Granted, it's always cursed things like this:

(defun gotanda-toc-pairs (toc-entries)
  (let ((prefix-list nil)
        (result-list nil))
    (dolist (toc-entry toc-entries)
      (let ((level (car toc-entry))
            (text (cadr toc-entry)))
        (cond
         ((= level (length prefix-list))
          (push (+ 1 (pop prefix-list)) prefix-list))
         ((> level (length prefix-list))
          (while (/= level (length prefix-list))
            (push 1 prefix-list)))
         ((< level (length prefix-list))
          (while (/= level (length prefix-list))
            (pop prefix-list))
          (push (+ 1 (pop prefix-list)) prefix-list)))
        (push (list (mapconcat #'int-to-string (reverse prefix-list) ".") text) result-list)))
    (reverse result-list)))
#

(I don't remember writing this ever)

abstract lantern
#

Hey there.

abstract lantern
#

May I ask for tips and tricks?

#
s = str(input())
k = int(input())

if k >= 0:
    print(s * k)
if k < 0:
   # (1 / (k * (-1)))
    
else:
    print("Undefined")

So the point of this code is to make a string power. Like 2^2 or root power of 2.
Example
abc^3 = abcabcabc
abc^0 =
abcabc^-1 = abcabc
abcabc^-2 = abc
abcabc^-3 = Undefined

If the part with positive power is simple, the part with root is confusing, any ideas how can I make it work? I tried to use len() function for the string but quickly realized that it does not work as I need.

vocal basin
#

how did you implement the positive case?

#

ah

#

I'm "blind", sorry

#

it's in the code

abstract lantern
#

Yeah, a simle multiplication.

#

But the root is a problem.

vocal basin
#

(k * (-1)) can be replaced with -k

#

it also should probably be // not /

#

len(s) // -k then test for validity

#

@ebon mist you shouldn't

#

make it modular

#

reduce imports

#

it might be a "prelude"

#

but that's not pythonic

abstract lantern
#

But does't // just devide but unlike % it doesn't leave any remainder?

vocal basin
#

@rugged root possible but sometimes unidiomatic

#

where it is normal, is to re-export from submodules into the outer

whole bear
#

Yo

#

peeps

vocal basin
#

you generally shouldn't do it in a "binary" package, as far as I know

rugged root
#

Hey Char

vocal basin
#

you can put a uniform abstraction around the dependencies

rugged root
#

True

vocal basin
#

but that's a very different approach

#

in Rust re-export is important

swift valley
#

Rust's modules is great

rugged root
vocal basin
swift valley
#

Though I had to unlearn the notion of modules in Haskell

#

Since in Rust circular dependencies across modules are perfectly fine

vocal basin
#

can't Rust have that across crates somehow, theoretically?
given cargo can compile different crate versions at the same time

#

like, crate_a 2.0 depends on crate_b 1.0 which depends on crate_a 1.0

#

somehow

swift valley
#

πŸ‘»

vocal basin
swift valley
#

It's kinda better than this, at least

vocal basin
#

stacked graph I like because I made it

#

(another commit activity visualisation)

#

I should publish it

#

but I'm too lazy

rugged root
#

It's pretty at least

vocal basin
#

22 stage docker build

abstract lantern
vocal basin
#

stages, not steps

#

yeah, you need to validate the result

vocal basin
#

because it expects a linear history

abstract lantern
#

Oh wait...

vocal basin
#

what is the criterion for valid output?

vocal basin
#

hybrid_command

#

then it's synced

#

they're both on client and server to some extend

#

@rugged root iirc, there is a way but it's low-level

rugged root
#

To impelment the slash stuff? So the default is just to use hybrid?

swift valley
gray gust
#

i do

vocal basin
#

github has commit history

#

clone, then checkout

gray gust
#

yeah you have to checkout

swift valley
#
git clone https://github.com/example/example
git log --reverse  # See the first one
git checkout <the first entry from git log>
vocal basin
#

can there be multiple first commits?
or does it always need some common one to merge?

#

I remember always having to rebase in such situations

rugged root
#

Ah ha, gotcha

#

Thanks

gray gust
#

click on the commit link you will get the commit history

vocal basin
#

I wonder how they specify decorator mark in docs

rugged root
#

You can't sort the commit history from oldest to newest, though

vocal basin
#

based on dates you can

#

you can also best-effort sort topologically

#

but it will not be perfect, because merges

#
Decorators
~~~~~~~~~~~

.. autofunction:: discord.app_commands.command
    :decorator:
#

@ebon mist logging probably has support for custom loggers

#

log in Rust does

vocal basin
#

globals everywhere but it Just Worksℒ️

swift valley
#

That reminds me, I should add tracing to my project

#

I'm gonna need it for performance tracking

wind raptor
#

!stream 360284932469293056

wise cargoBOT
#

βœ… @ebon mist can now stream until <t:1698257660:f>.

wind raptor
#

!stream 737321460435124285

wise cargoBOT
#

βœ… @flint hill can now stream until <t:1698258294:f>.

toxic arch
#

why not use interactions-py 😦

#

why does your ide have spell check on @flint hill lol

rugged root
#

Be back on in a sec

toxic arch
#

guys you want to see this class im working on?

whole bear
swift valley
#

gtg, catching zs

wind raptor
#

!stream 373121697957543946

wise cargoBOT
#

βœ… @wind raptor can now stream until <t:1698258815:f>.

wind raptor
#

!stream 737321460435124285

wise cargoBOT
#

βœ… @flint hill can now stream until <t:1698258836:f>.

toxic arch
#

@flint hill

for x in range(num_count)
whole bear
#

compiler

toxic arch
#

compiler

#

@flint hill for the input strings put a : at the end, to make it look nicer

mortal burrow
#
#
# EXERCISE: In spacy_tokenizer, instead of returning the plain text,
# return the lemma_ attribute instead. How do the cosine similarity
# results differ? What if you filter out stop words as well?
#
def new_spacy_tokenizer(doc='', filter=lambda token: True):
  return [token.lemma_ for token in nlp(doc) if filter(token)]


vec2 = CountVectorizer(tokenizer=new_spacy_tokenizer, lowercase=False, binary=True)
new_callback = new_spacy_tokenizer(filter=lambda token: not token.is_punct)
vec3 = CountVectorizer(tokenizer=new_callback, lowercase=False, binary=True)

# fit transform corpus
binary_bow2 = vec2.fit_transform(corpus)
sentance2 = vec2.transform(s)

binary_bow3 = vec3.fit_transform(corpus)
sentance3 = vec3.transform(s)

# cosine_similarity increases when we use lemma_
print(f'Using lemma form {cosine_similarity(sentance2, binary_bow2)}')
print(f'Using lemma and filtering out punctuation {cosine_similarity(sentance2, binary_bow3)}')
#

InvalidParameterError: The 'tokenizer' parameter of CountVectorizer must be a callable or None. Got [] instead.

rugged root
#

Can you give the full error and traceback?

mortal burrow
#

So passing an argument to the callable is a no go?

rugged root
#

!e

from functools import partial

def multiply(x, y):
  return x * y

double = partial(multiply, x=2)
print(double(4))
wise cargoBOT
#

@rugged root :x: Your 3.12 eval job has completed with return code 1.

001 | Traceback (most recent call last):
002 |   File "/home/main.py", line 7, in <module>
003 |     print(double(4))
004 |           ^^^^^^^^^
005 | TypeError: multiply() got multiple values for argument 'x'
rugged root
#

One sec, screwed it up

#

!e

from functools import partial

def multiply(x, y):
  return x * y

double = partial(multiply, y=2)
print(double(4))
wise cargoBOT
#

@rugged root :white_check_mark: Your 3.12 eval job has completed with return code 0.

8
rugged root
#

Double checking I'm thinking of these the right way again

#

Haven't used them in a hot minute

#

!e

from functools import partial

def multiply(x, y):
  return x * y

double = partial(multiply, 2)
print(double(4))
wise cargoBOT
#

@rugged root :white_check_mark: Your 3.12 eval job has completed with return code 0.

8
toxic arch
#

haha

#

you said gooey

whole bear
#

@ebon mist try with the yield commented out

toxic arch
#

cause you both doing compilers

whole bear
#

no?

toxic arch
#

@ebon mist why not use interactions-py

#

instead of discord

rugged root
#

itertools, functools, collections

toxic arch
#

!pypi interactions-py

wise cargoBOT
toxic arch
#

it is?

#

they have their own discord server though

toxic arch
#

oh

#

!pypi discord-py-interactions

wise cargoBOT
toxic arch
#

why is there 2 of them

#

!paste

wise cargoBOT
#
Pasting large amounts of code

If your code is too long to fit in a codeblock in Discord, you can paste your code here:
https://paste.pythondiscord.com/

After pasting your code, save it by clicking the Paste! button in the bottom left, or by pressing CTRL + S. After doing that, you will be navigated to the new paste's page. Copy the URL and post it here so others can see it.

rugged root
toxic arch
#

do you have any suggestiosn to make it better?

#

i do programming as a hobyy

#

@ebon mist idk if its just me but i can barley understand you

rugged root
#

@whole bear Yo

toxic arch
#

its very bad mic

#

quality

whole bear
#

@rugged root Hey hey , sorry didn't answer i didn't know i have to voice verify lol

rugged root
#

No worries!

whole bear
#

Ohh okay okay thank you :>

#

Yeah it's kinda fun listening to people sometimes when u don't feel like talking but u wanna have company

rugged root
#

For sure

toxic arch
#

nah its

#

disabled

whole bear
#

Lemme try to verify this thing lol

#

oh i need 50 messages πŸ’€

#

Ohh okay okay

toxic arch
#

/verfy

whole bear
#

Got it lol

#

I wrote couple things asking people for what to do cuz i just started programming

#

still didn't get the answer i want :').

rugged root
#

Just started programming in general or just started with Python?

#

!resources A Byte of Python

wise cargoBOT
#
Resources

The Resources page on our website contains a list of hand-selected learning resources that we regularly recommend to both beginners and experts.

toxic arch
#

mods for what

whole bear
#

And i took a udemy course for python

rugged root
#

We've got a bunch of resources on our site. I typically recommend A Byte of Python for folks starting out

#

Yeah, Byte will be good

#

It'll help you kind of compare this to that with Java

#

(Java was also my first language, so I feel your pain)

whole bear
#

Aha

toxic arch
#

:ed29415f44d14b368728552dcaf476bf:

whole bear
#

I wanna get a job while studying yk what i mean

rugged root
#

For sure

whole bear
#

So i asked a lot what should i do to get that but never got a answer

mortal burrow
#

I'll talk to you guys later.

whole bear
#

:').

#

See ya!

rugged root
#

Honestly, I'm not sure about getting a job or making money on the side with programming.

#

I'm not a programmer by trade, I just do it as a hobby

whole bear
#

Ohhh

#

That's nice nice

#

Talk to you later guys :>

rugged root
#

@fallen laurel Yo

whole bear
#

could you help me please

fallen laurel
#

yeah

#

what

cold harness
#

@whole bear what are you coding?

whole bear
#

compiler

cold harness
#

sounds cool lol

#

can you elaborate

whole bear
#
start: _a

_a: _b
// andop: _b "and" _b
// orop: _b "or" _b
_b: _c (add|sub)*
add: "+" _c
sub: "-" _c
_c: _atom (mul|div|mod)*
mul: "*" _atom
div: "/" _atom
mod: "%" _atom

_atom: NUMBER
#

so this is the grammar to parse

#

yes

#

so this creates a structure which is weird

#

because

#

you would expect the tree to look like

add(mul(1, 2), 3)
#

but because i had to structure the grammar this way to remove ambiuity

#

its

_a(1, mul(2), add(3))
#

yea so the underscores were the issue

rugged root
#

They don't like the leading underscores?

whole bear
#

it removes the intermediate node

#

previously my grammar was something like this

expr: add | sub | mul
add: expr "+" expr
sub: expr "-" expr
mul: expr "*" expr
#

which is how i want the tree to look like

#

but this is ambigious so the shape is random everytime i parse the file

#

1 + 2 + 3
might get parsed as
add(1, add(2, 3))
or
add(add(1,2),3)

whole bear
vocal basin
whole bear
#

so it makes it impossible for
1 * 2 + 3 to get parsed as mul(1,add(2,3))

#

because you cannot have a add after the *

#

according to the grammar

#

this is alright but the code i had to convert the tree into the compiled output

#

that will not work anymore as the shape of the tree is changed drastically

vocal basin
#

I have a terrible idea
non-strictly-ordered operator precedence

whole bear
#
def add(self, args: list[Input]):
        if type(args[0]) is str and type(args[1]) is str:
            try:
                return str(number(args[0]) + number(args[1]))
            except ValueError:
                pass
        return Block.from_prototype(reporter_prototypes["add"], args)```
#

it was straight forward to just pass the two child nodes for this node to the function to compile

vocal basin
#
match args:
    case str(), str():
        ...
    case _:
        ...
#

Kaspersky had funny virus alert sound

whole bear
#

the only virus i have is systemd

rugged root
#

systemstd

vocal basin
#

the second one

whole bear
#

lol

vocal basin
#

the common joke being "I'm not as afraid of viruses as of this sound"

cold harness
#

dont worry child, there is a solution for it

vocal basin
#

systemv

whole bear
#

systempy when

cold harness
#

just manually start everything

vocal basin
cold harness
#

sudo ./gnome

#

@whole bear

#

i have it too

#

it works great

whole bear
#

?

cold harness
#

but the administration controls when the heating is on

#

oh you werent the one talking lol

rugged root
#

Yeah it's the American (me) being confused

vocal basin
gentle flint
#

District heating (also known as heat networks or teleheating) is a system for distributing heat generated in a centralized location through a system of insulated pipes for residential and commercial heating requirements such as space heating and water heating. The heat is often obtained from a cogeneration plant burning fossil fuels or biomass, ...

cold harness
#

even heat in my shower comes from central heating lol

#

and it. is. hot.

sour willow
#

haha

gray gust
#

lol

desert vector
#

the discussion has never been more intense

whole bear
#

can anyone help me ?

#

with A python file

mighty robin
#

πŸ•΅πŸ»

whole bear
wind raptor
#

Gotta go practice some 🎹. Cheers πŸ˜„

remote dock
#

can i get permition for talking or for speaking in this channel vc

#

can i get permition for speaking

#

yes bro

#

but i cannot talk

#

i have no permition for talking

#

ya

#

ooooo

earnest crag
#

cats

#

reltive path

#

file.text

#

FOLDERNAME/file.text

#

/

#

FOLDERNAME/file.text

kind tulip
#

Hello There

reef badger
#

πŸ™‚ hey πŸ‘‹

kind tulip
#

Ok, seems like I need to have 50 message to be able to talk

#

Ok

#

Is there a talking bot here?

reef badger
#

Yeah, just talk your heart out and get involved in the python stuff

kind tulip
#

Do you have a server just to store projects?

#

Great Idea

earnest crag
kind tulip
#

Are you more into Java right now or do you keep using Python?

#

Oh great

#

Tell me about some projects on AI

#

Ok, then It bounds the objects

#

You can create categories for specific situations

#

Cool

earnest crag
#

cat

kind tulip
#

That reminds me of setting delays in Assembler

#

So, the goal is to set an interruption to the infinite loops where the code will be executed?

#

Ohhh, now I understand

earnest crag
#

B -> A

#

A - C

#

C- b

kind tulip
#

Oh, so you do the thing frame by frame

#

Great

#

Yep, not complicate It that much

#

Ok

#

Today I was working on Adjacency matrixes

#

Yes sir

#

But I felt like I didn't understand how to use It in Python so I gave It a try

#

I used Scipy

#

Damn, I need to learn that

#

Mr ;

#

Yep

reef badger
#

Dooby dooby doo bop bop

kind tulip
#

I'm planning on digging deeper into Sci-kit

#

What would you recommend me to learn first?

#

As of now, Machine Learning or Data Science

#

I'll try It

#

Well, then I'll focus first on Data Science

#

Ok, so making little predictions with Datasets

#

Well, If you have a channel share It

#

Well I have to go. But I will ask you some questions later

#

Can I send you a friend request?

#

Ok Numpy

reef badger
#

yeah

somber heath
#

@white dockπŸ‘‹

white dock
#

hi

#

i can't speak i think

umbral cape
#

yes

somber heath
#

!voice

wise cargoBOT
#
Voice verification

Can’t talk in voice chat? Check out #voice-verification to get access. The criteria for verifying are specified there.

white dock
#

!voice

#

oh okay

#

so i was thinking on a python code that can encode stuff

#

using check digit or smth like that

#

and like PGN

#

it will have create a instruction on how to decode it with the right steps

#

and the decoding method is percedually generated so each time its different

#

so without the correct decoding method no one can decode it

#

does that work or is it just too stupid for it to work?

#

security?

#

but like does it work?

#

the thing i was talking about

#

okay

#

why?

#

ohhhhhhhhhhhhhhh okay

#

does chatgpt help when it comes to this

#

wwwwwwwwwwwwwwwwwwwwwwwwwwwwww

#

ok

#

i see i see

#

wwwwwwwwwwww

#

so its just to be used as a guide and not as the main source of information

#

tbh i remember one time i tried to make it make a procedual generated land in c# aand it just make a inverted land that does nothing

#

it very complacated

#

and hard to comprehend

#

fun fact my pfp is made by perlin noise i created in unity

#

why?

#

ah i know

#

but they reversed their decision didn't they

#

well its kinda easy to learn there

#

but like aren't unity basically the only place that uses c#

#

wwwwwwwwwwwwwwwwwww

#

tbh is it better to use unreal engine

#

i see

#

alright imma go download unreal engine brb

somber heath
#

@wooden harness πŸ‘‹

wooden harness
somber heath
#

!voice πŸ‘‡

wise cargoBOT
#
Voice verification

Can’t talk in voice chat? Check out #voice-verification to get access. The criteria for verifying are specified there.

wooden harness
#

πŸ₯² not eligible to get verified for voice chat

somber heath
#

This is the associated text channel for the voice chat 0.

#

So you can still take part.

#

@gaunt terrace πŸ‘‹

gaunt terrace
#

Whats up

#

whats the name for @vale scarab

#

hm

gaunt terrace
vale scarab
gaunt terrace
#

Im a big cat guye so biased fs

#

gotta be spelt Lyte

#

Lolll

#

prob

#

peace decentcolors

#

whatchu up to rn @somber heath

#

ah

#

Im working on a website rn note i have no html css experience lol

#

Im assuming python is ur goto?

#

Anything in particular?

#

Lol nice

#

Im in a data analytics class where we like train models and stuff

#

Its pretty cool although i feel like i have nowhere near the amount of programming experience as most in this disc

#

makes sense

#

I just got voice verefied but i dont think i can unmtue

prime bobcat
#

hello

#

just wanted to hear your asmr voice while i learn python

#

im very new so im trying physics exercices :c

prime bobcat
#

the last one let me show you

#

`#Gravity Formula
#Fgrav = (Gm1m2)/d2

G=6.67*(10**-11) #Universal Gravitational Constant 6.673 x 10-11 Nm2/kg2[4]
M1=5.98*(1024) #Mass of the object
M2=104 #Mass of the planet
D=6.38*(10
6) #Distance between the two objects. Object/Center of the planet

Step1=round(M1M2)
Step2=round(Step1
G)
Step3=round(D**2)
Step4=round(Step2/Step3)

print(Step4)`

#

my work doesnt let me practice often :c

#

i forgot almost 70% of what i learned

#

brb need to pee

somber heath
#

@verbal ocean @tepid plinth πŸ‘‹

verbal ocean
#

✌️

astral coral
#

GUTTENTAG

#

opps caps lock

#

nothing feels quite like it when you scream German at 7am in the morning ... and say day instead of morning ¬¬

somber heath
#

@deft lodge πŸ‘‹

somber heath
#

@devout lily πŸ‘‹

warm jay
#
if ifq == True:
    print('HEllo')
    sc1.lt(90)
    sc1.fd(50)
scr.listen()
turtle.done()
spark kettle
#

Maybe seeing more of the code will help is understand

jolly pumice
#

ifq = False:

def some_func():
  global ifq
  ifq = True

def some_other_func():
  if ifq == True:
    print('HEllo')
    sc1.lt(90)
    sc1.fd(50)
  scr.listen()
  turtle.done()
warm jay
#
written = False
ifq = False

def enter():
    global written
    global ifq
    ifq = True
    if not written:
        sc1.write(logi, font=('arial-bold', 15, 'normal'))
        written = True
spark kettle
#

Is that the whole code

warm jay
#

not

spark kettle
#

Can i see all of it

warm jay
#

yeah but i got muted for posting too much oast time

#

i think i need a website

somber heath
wise cargoBOT
#
Pasting large amounts of code

If your code is too long to fit in a codeblock in Discord, you can paste your code here:
https://paste.pythondiscord.com/

After pasting your code, save it by clicking the Paste! button in the bottom left, or by pressing CTRL + S. After doing that, you will be navigated to the new paste's page. Copy the URL and post it here so others can see it.

somber heath
#

@whole bear πŸ‘‹

whole bear
#

πŸ™ƒ

somber heath
#

@iron musk πŸ‘‹

iron musk
#

@somber heath hello

somber heath
#

@umbral glade πŸ‘‹

turbid sandal
#

@somber heath hello what spoons??

somber heath
turbid sandal
#

ohj interrestting

somber heath
#

@mortal hull πŸ‘‹

mortal hull
#

hey man

#

dont have permission to speak lol

somber heath
wise cargoBOT
#
Voice verification

Can’t talk in voice chat? Check out #voice-verification to get access. The criteria for verifying are specified there.

mortal hull
#

@somber heath you use numpy or scikit before?

#

or are you familiar?

somber heath
#

I am.

#

I'm not an expert, but I dabble in Numpy.

mortal hull
#

I get you

#

do you understand how to use measure.regionprops?

#

Im having an issue understanding how the function itself works

somber heath
#

Scikit thing? No.

neon perch
#

hey mate

mortal hull
#

hi

#

boys I was told its not only about the number of messages in the server to get voice role

gray gust
#

hii

mortal hull
#

I know I have to be here for more than 3 days

neon perch
#

Have you guys ever used fb prophet?

#

I am working on a trading algo. Probably won't work but it's a fun project.

gray gust
mortal hull
somber heath
mortal hull
somber heath
#

!e py my_list = [] for letter in 'abc': my_list.append(letter) print(my_list)

wise cargoBOT
#

@somber heath :white_check_mark: Your 3.12 eval job has completed with return code 0.

['a', 'b', 'c']
somber heath
#

!e py my_list = [letter for letter in 'abc'] print(my_list)

wise cargoBOT
#

@somber heath :white_check_mark: Your 3.12 eval job has completed with return code 0.

['a', 'b', 'c']
somber heath
#

!e py my_list = [] for letter in 'abc': for number in '123': my_list.append(letter + number) print(my_list)

wise cargoBOT
#

@somber heath :white_check_mark: Your 3.12 eval job has completed with return code 0.

['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3']
somber heath
#

!e py my_list = [letter + number for letter in 'abc' for number in '123'] print(my_list)

wise cargoBOT
#

@somber heath :white_check_mark: Your 3.12 eval job has completed with return code 0.

['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3']
gray gust
#

in the doc

#

so just pass labels and img

noble solstice
#

Hello Good Peoples!

gray gust
#

original image with grayscale

#

without*

mortal hull
#

ty @gray gust

gray gust
#

properties = ['area', 'eccentricity', 'perimeter', 'intensity_mean']
for index in range(1, labels.max()):
label_i = shapes[index].label
contour = measure.find_contours(labels == label_i, 0.5)[0]
y, x = contour.T
hoverinfo = ''
for prop_name in properties:
hoverinfo += f'<b>{prop_name}: {getattr(shapes[index], prop_name):.2f}</b><br>'
fig.add_trace(go.Scatter(
x=x, y=y, name=label_i,
mode='lines', fill='toself', showlegend=False,
hovertemplate=hoverinfo, hoveron='points+fills'))

#

@mortal hull try above code

#

Its the same code in the doc

#

replace fig with y4

mortal hull
#

this is what I get

wind raptor
#
largest_area_shape = max([(shape['area'], shape) for shape in shapes])
mortal hull
mortal hull
#

outline = cv2.drawContours(maxArea["label"])

gray gust
#

drawContours takes 3 arguments

wind raptor
#

!stream 319593254674759681

wise cargoBOT
#

βœ… @mortal hull can now stream until <t:1698329215:f>.

somber heath
#

The Vies Sea.

rugged root
#

@violet edge Yo

violet edge
#

Im a newbie and it looks so crazy and then you say "yeah its pretty simple" haha

rugged root
#

Well

#

Bootstrap buttons are an easy asset to use

#

But understanding what's going on just comes with practice

#

Lots and lots of it

#

!pypi python-quickbooks

wise cargoBOT
rugged root
#

That was for me, I was just being lazy

#
#

Oh my god

#

Wait what's the file extension for them?

#
add(3, 2)!
add 3, 2!
(add (3, 2))!
add)3, 2(!
undone idol
#

toad

#

indeed

#

mustafa

rugged root
#

@slender sierra Yo

rugged root
#

@dull bay Yo

dull bay
#

don't have permission to talk :/

rugged root
#

That'll tell you what you need to know about the voice gate

#

@whole bear Yo

whole bear
#

hi

rugged root
#

How's it goin'

whole bear
#

good good u

#

?

rugged root
#

Eh, doing alright

whole bear
#

how do i get unmuted i have a question

rugged root
#

But what's your question?

whole bear
#

so im trying to run something and at first was there a trace back no modul named packing i pip installed that but now theres this

#

Traceback (most recent call last):
File "C:\Users\fadec\Downloads\Blank-Grabber-main (1)\Blank-Grabber-main\Blank Grabber\gui.py", line 14, in <module>
from pkg_resources import parse_version
ModuleNotFoundError: No module named 'pkg_resources'

#

its a error

#

when i ran it

#

...

vivid palm
#

!rule 5

wise cargoBOT
#

5. Do not provide or request help on projects that may violate terms of service, or that may be deemed inappropriate, malicious, or illegal.

vivid palm
whole bear
#

..

#

i think u gto the wrong one

#

its 100% school projecvt

#

...

#

it is

#

no its not

#

@rugged root dw its not what u think it is

#

fr

#

ok i have a diff question

#

are u gonna help me with

#

that?

#

ye alr

undone idol
#

don't blunder 3 mods brainmon

whole bear
#

nah ive done it before

#

how long have u been coding

#

?

#

is that u in ur pfp?

rugged root
#

Yeppers

undone idol
rugged root
undone idol
#

nice adams apple

#

flex ah cool

whole bear
#

when i try run sum in visual studio work idk where to go

#

@rugged root

undone idol
#

2024mod4 is indeed 0

whole bear
#

i dont see no run button

undone idol
#

select a interpreter

whole bear
#

how would i do that

#

?

rugged root
#

@severe canyon Yo

undone idol
#

its so nice that hemlock greets everyone!

severe canyon
rugged root
#

@ionic galleon Yo

undone idol
#

mhm 🀩

ionic galleon
severe canyon
#

Is this the hang out chat or is it for something else?

undone idol
#

indeed it is

severe canyon
#

Copythat

#

Wanting to learn list comprehension

Haven't touched it yet lol

undone idol
#

interesting

severe canyon
#

Confused when i first saw it lol

rugged root
#
ham = [i for i in range(5)]

# that does the same thing as say

spam = []
for i in range(5):
  spam.append(i)
undone idol
#

more like one liners

severe canyon
#

Any way to break down the dic comp?

#

So is it just for loops or can other stuff go inside for list comp?

#

All good πŸ‘

rugged root
#
meats = ["spam", "pork", "beef"]

meat_dict = {meat: index for index, meat in enumerate(meats)}

# would do the same thing as:

for i, meat in enumerate(meats):
  meat_dict[meat] = i
severe canyon
#

Lol

#

Wife's motto

#

Lol

undone idol
#

cya! gtg

severe canyon
#

Been working on a small dnd bot for discord. Kinda fun so far.

I'm not really experienced, only been learning for 3 months. Made it to classes finally. They are amazing

#

Ikr lol

#

I used to DM we have a sever setup but don't have time for it anymore. Gave it to my older brother. He just wanted some simple tools to kinds help along with down time stuff like

Hunting - all biomes
Crafting - all items and customs
Fishing - all biomes
Potion crafting - Homebrew
Herb/ Regents Collecting -Homebrew all biomes
Mine - metal all biomes
Chop - wood all biomes
Loot gen for quest Tiers - haven't started
Army Sim- haven't started yet
Town management- haven't started yet

Bout as much as he has planned and worked on so far.

Only been doing embeds no pics yet

#

πŸ˜”

#

Lmao

#

Give me homework teach!

#

Lol

#

Any projects you been working on lately?

rugged root
#

A unique multiplayer game built on a free Web API. The best sandbox platform to learn a new skill or apply your knowledge in a fun and meaningful way. Use any programming language with our RESTful API to control the most powerful fleet in universe.

severe canyon
#

Lol

How does that even go making a wrapper? Sounds hard

#

Ohhh

#

Time does fly when ur in it tbh

#

Me and my bud make jokes about it alot. Look up 5, work then look up again it's 8

#

Are u into dnd?

#

Dm or player?

#

Pathfinder?

#

Ohhh lol

#

Lol

How did ur last sesh play out with ur character

#

Dude... should get into again lol

rugged root
severe canyon
#

Yeah

#

Would be cool if dnd beyond had public api...

#

Yess

#

Which one 3?

rugged root
#

You seem like someone who also played Planescape: Torment back in the day

severe canyon
#

I played 1 and 2 - icewindale 1, 2

#

Never touched plane scape.

Wanted to play it

rugged root
#

It's on gog

severe canyon
#

How did planescape go

#

Story

rugged root
vocal basin
#

I doubt I can buy games anywhere outside Steam

severe canyon
#

Lol

rugged root
#

Quick quick summary, you wake up on a slab in a morgue with scars carved into your back. You cannot die. You simply wake back up after a while, however with fewer memories than you started with

#

The Planescape setting is just so great and vast

severe canyon
#

Interesting

rugged root
#

They brought it back with gusto in 5e

#

But Planescape: Torment is 2nd ed sooooo

severe canyon
#

Recommend more then baldurs gate?

#

Yeah makes sense

rugged root
#

Hope you like THAC0

severe canyon
#

Yeah lol

rugged root
#

There's the older Neverwinter Nights (not the MMO) games and Knights of the Old Republic (again, not the MMO)

severe canyon
#

Yeah haven't tried that one either

tall ridge
rugged root
#

They're mid to late 2000's so the graphics aren't amazing. NWN was 3.5ish. Mostly 3.0 rules

#

I'm glad to hear it

severe canyon
#

I grew up on those games, still think they are amazing

#

Not sure if u remember the awesome sword you can find in bg1, really OP. Imoen trying to runa way from her " Heya, it's me Imoen" on loop lol

rugged root
#

Yeah yeah

rugged root
tall ridge
#

I'm in recovery for games.... My life became unmanageable .
I also have a compulsion to ssh into production. I'm in a group for that.

severe canyon
vivid palm
rugged root
#

@pulsar falcon Yo

severe canyon
#

@rugged root You get on chat regularly?

Also if you ever want to come play txt based dnd in discord let me know. Sandbox westmarch style

rugged root
#

I'm usually only on here when I'm at work. When I'm home I focus on home

#

Only way I can stay sane

severe canyon
#

Yeah makes sense lol

#

Got 7 groups going atm

rugged root
#

Dude I can barely manage this one

severe canyon
#

Oh no lol

desert vector
#

but can hemlock run crysis

rugged root
#

I can indeed run and cry, sis

severe canyon
desert vector
#

but can you run and cry, sis 2

severe canyon
#

πŸ‘

#

Later

rugged root
desert vector
#

new funky mode

rugged root
#

!resources

wise cargoBOT
#
Resources

The Resources page on our website contains a list of hand-selected learning resources that we regularly recommend to both beginners and experts.

wind raptor
#

@leaden garden

leaden garden
alpine crow
leaden garden
alpine crow