<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:36:29] <Amanda> %choose slightly early
zzzmews?
L2[00:36:29] <MichiBot> Amanda: Hm. I
can't choose. Ask me again in a couple of minutes.
L3[00:36:39] <Amanda> Hrm
L4[00:36:43] <Amanda> Zzzmews
L5[00:37:12] * Amanda
pawhugs Elfi, meows about her day and the entire history of her
"a" ket
L6[00:38:03] <Amanda> Night girls
L7[01:14:40]

<Brisingr
Aerowing> %splash @Forecaster
L8[01:14:43] <MichiBot> You fling a
dangerous titanium potion (New!) that splashes onto @Forecaster.
@Forecaster sees their face etched into one of the shards of the
broken bottle.
L9[01:16:20] <CompanionCube> %tonkout
L10[01:16:21] <MichiBot> Blast!
CompanionCube! You beat your own previous record of 3 hours, 16
minutes and 35 seconds (By 26 minutes and 33 seconds)! I hope
you're happy!
L11[01:16:22] <MichiBot> CompanionCube has
tonked out! Tonk has been reset! They gained 0.003 tonk points!
plus 0.004 bonus points for consecutive hours! Current score:
0.74821, Position #2 Need 0.10184 more points to pass Spider
EveryOS!
L12[01:16:30] <CompanionCube> %drink
L13[01:16:30] <MichiBot> You drink a hairy
rock potion (New!). CompanionCube feels slightly stronger.
L14[01:46:13]

<Renno>
@Izzy it seems I've managed to make an item price calculator
for Thirdcraft
L15[01:46:30]

<Renno>
built ontop of the crafting system of course
L16[02:04:01] ⇦
Quits: Hawk777 (~Hawk777@2001:569:7cae:7e00:b840:483e:a279:8297)
(Quit: Leaving.)
L17[02:06:27] *** Joins: Hawk777
(~Hawk777@2001:569:7cae:7e00:ceed:bbd:4575:8fde) Hawk777
L18[03:19:45]

<Vaur>
%tonk
L19[03:19:46] <MichiBot> Dad-Sizzle! Vaur!
You beat CompanionCube's previous record of <0 (By 2
hours, 3 minutes and 25 seconds)! I hope you're happy!
L20[03:19:47] <MichiBot> Vaur's new
record is 2 hours, 3 minutes and 25 seconds! Vaur also gained
0.00206 tonk points for stealing the tonk. Position #4. Need
0.04359 more points to pass Forecaster!
L21[03:43:21]

<Brisingr
Aerowing> %splash @Forecaster
L22[03:43:23] <MichiBot> You fling a
fragrant crimson potion (New!) that splashes onto @Forecaster.
@Forecaster gets a sudden urge to monologue after being hit by the
potion.
L23[04:24:31] <Corded> > <nadja>
In other news 1.20.4 might just become the Minecraft versio…
L24[04:24:31]

<LilyflowerFDL> No love for .1?
<:pensivenik:1289128414007267390>
L25[04:24:45]

<LilyflowerFDL> Who was doing the OC1 port
actually
L26[04:24:56]

<LilyflowerFDL> Wasn't it
@walksanator
L27[04:25:03]

<LilyflowerFDL> ~~Who I am currently in VC
with fixing a Hexcasting bug~~
L28[04:40:38]

<Forecaster> %sip
L29[04:40:39] <MichiBot> You drink a
resonating sapphire potion (New!). A bard starts playing a lute
behind Forecaster. They don't stop.
L30[05:31:53] <CompanionCube>
%tonkout
L31[05:31:53] <MichiBot> Dagnammit!
CompanionCube! You beat Vaur's previous record of 2 hours, 3
minutes and 25 seconds (By 8 minutes and 41 seconds)! I hope
you're happy!
L32[05:31:54] <MichiBot> CompanionCube has
stolen the tonkout! Tonk has been reset! They gained 0.002 tonk
points! plus 0.001 bonus points for consecutive hours! (Reduced to
50% because stealing) Current score: 0.75171. Position #2 Need
0.09834 more points to pass Spider EveryOS!
L33[05:32:02] <CompanionCube> %drink
L34[05:32:03] <MichiBot> You drink a knifey
tan potion (New!). CompanionCube feels slightly slower.
L35[06:00:13]

<Renno>
@Izzy this is probably another configuration problem but minitel is
not working. I'm doing connection:send("test") and
the other side has a while loop constantly reading from the
connection and then printing it but there is nothing being
printed
L36[06:00:56]

<Renno>
says it has an established connection, but that's all it
does
L37[06:01:40] <Izzy> so you opened a
socket
L38[06:01:44] <Izzy> then used :send on
that socket?
L39[06:03:00] <Izzy> I'm kinda in the
middle of stuff but there's no :send, try :write
L40[06:03:21]

<Renno> I
am using :write
L41[06:03:40]

<Renno>
that was a typo
L42[06:03:42] <Izzy> let's see your
code then
L44[06:08:52] <Izzy> if only I knew what
conn was for the server
L45[06:09:32]

<Renno> ...
the same thing?
L46[06:09:52] <Izzy> open()ing at each
other is nonsensical
L47[06:10:08]

<Renno>
it's obviously opened by minitel.listen..
L48[06:10:38] <Izzy> you say that, but
it's not obvious, because there's also flisten, and how
am I supposed to know how you're doing it correctly if you
don't actually include the code?
L49[06:10:47] <Izzy> I can't run this
to test it
L50[06:10:59]

<Renno> If
I sent the verbatim code I think it would exceed the limits of the
message
L51[06:11:14]

<Renno> and
you would have to heavily modify it to test it
L52[06:11:31]

<Renno>
I've tried with net.listen and net.flisten
L53[06:11:32]

<Renno>
same result
L54[06:12:01] <Izzy> a) pastebin? it's
ending up there if you send more than like 3 lines at once b) if
it's too impractical to test the actual code, show me some
test code instead
L55[06:12:46]

<Renno>
that's basically the test code
L56[06:13:02] <Izzy> and yet it won't
run and as such cannot demonstrate any issues
L57[06:13:17]

<Renno>
I'm even messing with it rn in the lua terminal with just
minitel.listen(5990) and minitel.open("server",
5990)
L58[06:13:21]

<Renno>
connection objects are created
L59[06:13:44]

<Renno> I
use conn:write("this is a test") on one side, then go the
other and do print(conn:read()) (which prints nothing)
L62[06:15:03]

<Renno>
connection object with no error
L63[06:15:13]

<Renno>
connection state is open on both sides
L64[06:18:12]

<Renno>
pretty confusing though how the ports are not 5990 though
L65[06:18:29]

<Renno>
they are both showing what seem to be random ports
L66[06:18:58] <Izzy> yup, initial port is
used for negotiating a new port to talk to each other on
L68[06:26:43]

<Renno>
Well the version I'm using is downloaded straight from github
through oppm
L69[06:26:50]

<Renno> As
you can see the connection is accepted
L70[06:28:16] <Izzy> I mean, I can't
see that, but I'll take your word for it as that's what I
did for my test there
L71[06:33:30]

<Renno> I
did the same test
L72[06:33:51] <Izzy> tangentially, little
monitor is a robot, right? how's that hooked up?
L73[06:34:04]

<Forecaster> maybe you have an issue in
your hardware, are you in creative?
L74[06:43:21] <Corded> > <Izzy>
tangentially, little monitor is a robot, right? how's that
…
L75[06:43:21]

<Renno>
Wdym how is the robot hooked up
L76[06:43:58] <Corded> >
<Forecaster> maybe you have an issue in your hardware, are
you in creati…
L77[06:43:59]

<Renno> I
am in creative, but I'm curious what you could mean other than
duplicate modems
L78[06:44:06]

<Renno>
(They aren't duplicate)
L79[06:44:12] <Izzy> how is the network
hooked up?
L80[06:44:14]

<Forecaster> that's what I meant
yeah
L81[06:50:46]

<Renno> It
isn't hooked up
L82[06:51:01]

<Renno>
It's a computer in a field 1 block away from the robot
L83[06:51:13]

<Renno>
Each with a wireless card
L84[06:54:17]

<Forecaster> does a regular broadcast
work?
L85[06:54:39]

<Renno>
Yes
L86[07:00:28]

<Renno>
Normal modem events and components calls are all functional and
I've been able to pass data that way
L87[07:00:41]

<Renno>
It's only when using minitel does it stop working
L88[07:19:49]

<Vaur>
%tonk
L89[07:19:50] <MichiBot> Eureka! Vaur! You
beat CompanionCube's previous record of <0 (By 1 hour, 47
minutes and 56 seconds)! I hope you're happy!
L90[07:19:51] <MichiBot> Vaur's new
record is 1 hour, 47 minutes and 56 seconds! Vaur also gained
0.0018 tonk points for stealing the tonk. Position #4. Need 0.04179
more points to pass Forecaster!
L91[07:21:22] ⇦
Quits: Hawk777 (~Hawk777@2001:569:7cae:7e00:ceed:bbd:4575:8fde)
(Quit: Leaving.)
L92[07:27:14] <Corded> >
<LilyflowerFDL> No love for .1?
<:pensivenik:1289128414007267390>
L93[07:27:14]

<Nadja> It
already runs on 1.20.1, this is so it works on neoforge so I can
port to 1.21.1
L94[07:29:27]

<LilyflowerFDL> Oh, neat
L95[07:38:36] <Corded> > <Renno>
It's only when using minitel does it stop working
L96[07:38:36]

<RedstoneParkour> would it be possible for
you to run `dmesg` on the server while trying and then post the
output?
L97[08:00:58] *** Joins: Vexatos
(~Vexatos@p200300eaef164700b36d9ffd10b0c274.dip0.t-ipconnect.de)
Vexatos
L98[08:00:58] zsh
sets mode: +v on Vexatos
L99[08:15:30] <Corded> >
<RedstoneParkour> would it be possible for you to run
`dmesg` on the server w…
L100[08:15:30]

<Renno> I
can try but I'm going to try getting new modems in there
fire
L101[08:15:32]

<Renno> *
first
L102[08:26:22] <Corded> >
<RedstoneParkour> would it be possible for you to run
`dmesg` on the server w…
L103[08:26:23]

<Renno>
it's shown on dmesg
L104[08:28:05]

<Renno> yea
its still not showing on the minitel read
L105[08:44:20]

<Renno> but
yea I'm pretty sure the issue is that it establishes a
connection and then chooses a random port *on each side*
L106[08:44:44]

<Renno> the
client and server are both opened on the same port of 5990, but
they both show different ones when I look at the connection
object
L107[08:46:01]

<RedstoneParkour> weird
L108[08:46:59]

<RedstoneParkour> can you show the dmesg
of the handshake on the server and client?
L109[08:47:34]

<Renno> how
am I supposed to run dmesg on either at the time of doing the
connection when the connection forming functions are
blocking?
L110[08:50:17] <Corded> >
<Renno> how am I supposed to run dmesg on either at the time
of doi…
L111[08:50:17]

<RedstoneParkour> you run dmesg in the
background
L112[08:50:33]

<Renno>
dmesg is blocking too
L113[08:55:02]

<Renno>
mmmm rebooted several times and tested again, this time the ports
match on each side but data still isn't making it
L114[08:55:15]

<RedstoneParkour> use a hack to run dmesg
in the background
L115[08:55:38]

<Renno>
...?
L116[08:55:45]

<RedstoneParkour>
`require("thread").create(function(...) return
os.execute(...) end,...):detach()`
L117[08:55:53]

<RedstoneParkour> put it in a script
L118[08:58:23]

<Renno>
what's that supposed to do?
L120[08:59:21]

<RedstoneParkour> ah
L121[08:59:22]

<Renno>
it's clearly a minitel problem
L122[08:59:35]

<RedstoneParkour> yeah i want to log
events
L123[09:00:51]

<RedstoneParkour> anyways: run that script
as `runbg sh; sleep 20` then quickly type `dmesg > log.txt` then
wait for the 20second timeout
L124[09:01:11]

<Renno> why
tho
L125[09:01:21]

<Renno>
that screenshot I just sent clearly shows its getting the
message
L126[09:01:43]

<RedstoneParkour> yeah but what's its
response?
L127[09:01:49]

<Renno>
response?
L128[09:01:59]

<Renno> why
would there be a response?
L129[09:02:53]

<Renno> I
just said it's a minitel issue
L130[09:03:07]

<Renno>
because it's not getting the data properly put into the
connection object..
L131[09:07:39]

<RedstoneParkour> hmm
L132[09:09:16]

<RedstoneParkour> anyways i'm busy rn
so can't help you
L133[09:09:24]

<Renno>
fair
L134[09:09:36]

<Renno>
probably going to have to just use my own network library
L135[09:32:46]

<Renno>
also to whoever is in charge of the official mod: why is the latest
1.8.7 not been fixed yet? this error handling problem is really not
good
L136[09:44:33]

<Forecaster> nobody is in charge,
really
L137[10:39:11]

<Spider
EveryOS> %tonkout
L138[10:39:11] <MichiBot> Woooo! Spider
EveryOS! You beat Vaur's previous record of 1 hour, 47
minutes and 56 seconds (By 1 hour, 31 minutes and 24 seconds)! I
hope you're happy!
L139[10:39:12] <MichiBot> Spider EveryOS
has stolen the tonkout! Tonk has been reset! They gained 0.003 tonk
points! plus 0.002 bonus points for consecutive hours! (Reduced to
50% because stealing) Current score: 0.85605. Position #1
L140[11:07:42] ⇦
Quits: simon816 (~simon816@secondary.machine.simon816.com) (Quit:
ZNC 1.9.1 - https://znc.in)
L141[11:10:21] *** Joins: simon816
(~simon816@secondary.machine.simon816.com) simon816
L142[12:19:56] <Corded> >
<Renno> also to whoever is in charge of the official mod:
why is th…
L143[12:19:57]

<RedstoneParkour> you could try to bug
asie
L144[12:20:12]

<RedstoneParkour> but thats pretty much
it
L145[12:20:20]

<RedstoneParkour> also %tonk
L146[12:20:20] <MichiBot> Woah!
RedstoneParkour! You beat Spider EveryOS's previous record
of <0 (By 1 hour, 41 minutes and 9 seconds)! I hope you're
happy!
L147[12:20:21] <MichiBot>
RedstoneParkour's new record is 1 hour, 41 minutes and 9
seconds! RedstoneParkour also gained 0.00169 tonk points for
stealing the tonk. Position #5. Need 0.11825 more points to pass
Vaur!
L148[12:28:18]

<RedstoneParkour> %sip
L149[12:28:19] <MichiBot> You drink a
forbidden octiron potion (New!). RedstoneParkour is suddenly more
aware of cute things nearby until someone turns on a lamp and then
off again.
L150[14:16:55]

<Forecaster> %tonk also
L151[14:16:56] <MichiBot> Kapow!
Forecaster! You beat RedstoneParkour's previous record of 1
hour, 41 minutes and 9 seconds (By 15 minutes and 27 seconds)! I
hope you're happy!
L152[14:16:57] <MichiBot>
Forecaster's new record is 1 hour, 56 minutes and 36 seconds!
Forecaster also gained 0.00052 (0.00026 x 2) tonk points for
stealing the tonk. Position #3. Need 0.26925 more points to pass
CompanionCube!
L153[14:38:03]

<Brisingr
Aerowing> %splash @Forecaster
L154[14:38:04] <MichiBot> You fling a
rising aegisalt potion (New!) that splashes onto @Forecaster.
@Forecaster smells something burning.
L155[14:38:08]

<Vaur>
%sip
L156[14:38:08] <MichiBot> You drink a
searing lime potion (New!). Vaur feels much better!
L157[14:44:46]

<Forecaster> My firewood!
L158[15:34:38] *** Joins: Hawk777
(~Hawk777@2001:569:7cae:7e00:112a:f077:1772:ff50) Hawk777
L159[15:42:56]

<RedstoneParkour> %sip
L160[15:42:56] <MichiBot> You drink a
wonderful aqua potion (New!). RedstoneParkour feels slightly
faster.
L161[15:55:44] <Amanda> %splash
@Forecaster with mutable ruby potion
L162[15:55:45] <MichiBot> You fling a
mutable ruby potion (New!) that splashes onto @Forecaster.
@Forecaster turns into an aether robot girl until someone stops
looking at them.
L163[16:27:56]

<Forecaster> Beep boop
L164[17:09:24] <Amanda> Hrm
L165[17:10:05] <Amanda> stephan48: do you
know if k8s/k3s automatically cleans up old images from a node?
I'm getting disk alerts from one of my k3s nodes, and
it's like 90% in the containerd overlayfs dir
L166[17:10:26] <stephan48> i am unsure but
would say, probably not
L167[17:12:07] <Amanda>
"maximum-dead-containers - Maximum number of old containers to
retain. When set to -1 (the default), no limit applies.
"
L168[17:12:13] <Amanda> Well that's
probably not helping
L170[17:19:21] <stephan48> mh.
L171[17:19:50] <Amanda> ( I trigger at
80%, it only starts a GC at 85% disk usage )
L172[17:22:50]

<Vaur>
%tonk
L173[17:22:50] <MichiBot> Eureka! Vaur!
You beat Forecaster's previous record of 1 hour, 56 minutes
and 36 seconds (By 1 hour, 9 minutes and 18 seconds)! I hope
you're happy!
L174[17:22:51] <MichiBot> Vaur's new
record is 3 hours, 5 minutes and 54 seconds! Vaur also gained
0.00232 (0.00116 x 2) tonk points for stealing the tonk. Position
#4. Need 0.03999 more points to pass Forecaster!
L175[17:27:26]

<RedstoneParkour> %sip
L176[17:27:27] <MichiBot> You drink a
powdery citrus potion (New!). RedstoneParkour gains the ability to
summon safety pins until they eat a pie.
L177[17:30:19]

<Vaur>
sip
L178[17:30:29]

<Vaur>
%sip
L179[17:30:32] <MichiBot> You drink a
cloudy boneboo potion (New!). Vaur turns into a sheep boy until
they sneeze.
L180[18:09:38] <Amanda> Wow, changing it
to use 80% instead of 85% and suddenly the node that was
complaining is down to 55% usage
L181[18:47:31]

<Forecaster> 55% is the new 80%!
L182[19:45:50] ⇦
Quits: Hawk777 (~Hawk777@2001:569:7cae:7e00:112a:f077:1772:ff50)
(Quit: Leaving.)
L183[20:36:19]

<Forecaster> Almost at 50% of the station
construction, and this time only about a week in
L184[20:43:15]

<Forecaster> with 3 weeks left that's
plenty of time to finish this time
L185[20:55:17]

<Renno> I
believe I may have discovered a substantial error in the event
library but I'm not yet sure
L186[20:56:17]

<Renno>
When using CBOR to serialize data it successfully serializes and
deserializes, but it looks like when the deserialized table is
passed through an event.pushSignal the listener that receives the
table receives the table as completely empty
L187[20:59:50]

<Renno> And
now having verified the memory id of the table, the listener is is
receiving a different (and empty) table than the one I passed
through.
L188[21:01:09]

<Brisingr
Aerowing> Are you trying to push the actual table? The event
system doesn't support that IIRC.
L189[21:01:15]

<Renno> It
clearly does
L190[21:01:24]

<Brisingr
Aerowing> Only basic types like strings and numbers
L191[21:01:32]

<Renno>
because when I serialize it with the native library and then
reserialize it and pass the reserialized table, it comes through
identically
L192[21:01:41]

<Renno>
fully intact
L193[21:02:01]

<Renno>
unserialized*
L194[21:02:09]

<Brisingr
Aerowing> Hm
L195[21:02:45]

<Renno>
something between event.push and event.listen is serializing the
table and then deserializing it again, and for whatever reason
it's incompatible with tables that were created by the CBOR
library (despite it being a legit table)
L196[21:03:59]

<Brisingr
Aerowing> I wonder if the CBOR library is adding values the
event system doesn't support.
L197[21:04:21]

<Brisingr
Aerowing> Since it requires only the basic types. No functions /
threads / etc.
L198[21:04:55]

<Renno> the
table only contains keys and strings
L199[21:05:14]

<Brisingr
Aerowing> What CBOR library are you using?
L200[21:05:28]

<Renno> are
you asking for a link to it?
L201[21:05:37]

<Brisingr
Aerowing> Yes
L202[21:06:09]

<Brisingr
Aerowing> I haven't done much with OC recently, though I
usually used lua-cbor
L204[21:07:51]

<Brisingr
Aerowing> What does pretty printing the resulting deserialized
table output?
L205[21:08:05]

<Brisingr
Aerowing> Might show something
L206[21:08:14]

<Renno> at
which stage
L207[21:08:20]

<Renno> you
mean, decoded?
L208[21:08:38]

<Renno> and
by pretty print you mean with
serialization.serialize(decoded,100)?
L209[21:09:10]

<Brisingr
Aerowing> Are you sending the CBOR encoded table through the
event, or the table obtained after deserializing it?
L210[21:09:25]

<Brisingr
Aerowing> If the second option, print that one.
L211[21:09:39]

<Renno> a
CBOR encoded table is a string
L212[21:09:45]

<Renno> it
would be received as a string on the other side
L213[21:09:49]

<Renno> I
said that it is a table object
L214[21:10:00]

<Renno> I
am sending the CBOR ***decoded*** table
L215[21:10:34]

<Brisingr
Aerowing> Let me set up an instance and test something.
L216[21:11:02]

<Renno> and
as I said, I have printed it
L217[21:11:05]

<Renno>
that's how I know it's empty
L218[21:11:08]

<Renno> and
broken
L219[21:17:30]

<Renno> yea
passing the encoded string into the listener and decoding to the
table there works just the same as passing
unserialize(serialize(cbor.decode(msg))) into event.push
L220[21:32:10]

<Brisingr
Aerowing> I just made a simple script that sends a table that
was encoded and then decoded with CBOR through an event, and it
printed normally.
L222[21:45:05]

<Renno>
weird
L223[21:45:45]

<Renno> I
literally print the decoded table right before the event push and
then print it on the other side of the event.listen andi t's
straight up empty
L224[21:45:50]

<Renno> but
your example works
L225[21:46:32]

<Renno>
okay I tested yours again with some modification
L226[21:46:47]

<Renno>
it's a shallow copy
L227[21:47:04]

<Renno> any
index that points to a table is not included
L229[21:48:34]

<Brisingr
Aerowing> Well that's a clue
L230[21:49:19]

<Forecaster> I'm starting to think
something is wrong with your game
L231[21:50:25]

<Forecaster> Or you're unlucky
L232[21:51:14]

<Brisingr
Aerowing> Nope. Got the same result with a nested table.
L233[21:52:25]

<Brisingr
Aerowing> OK. Testing without CBOR serialization involved
results in nested tables being removed.
L234[21:52:37]

<Brisingr
Aerowing> This is a bug in the event library.
L235[21:52:40]

<Brisingr
Aerowing> Most likelu
L236[21:52:44]

<Brisingr
Aerowing> *likely
L237[21:52:58]

<Brisingr
Aerowing> Or in some underlying component
L238[21:53:25] <Corded> >
<Forecaster> I'm starting to think something is wrong
with your game
L239[21:53:26]

<Renno>
I'm just that good at trying to make things that I find out
the stuff I'm building on top of has problems lol
L240[21:54:43]

<Brisingr
Aerowing> Ah. This is intentional
L241[21:54:56]

<Brisingr
Aerowing> To avoid having to implement infinite loop
detection
L243[21:55:04] <MichiBot>
Title:
pushing signals with subtables returns no subtable
| Posted
by: Kirill0170
| Posted: Wed Nov 06 13:02:41 PST 2024
| Status: open
L244[21:55:21]

<Renno>
would be nice if we could
L245[21:55:23]

<Renno>
disable that
L246[21:55:26]

<Renno> or
bypass it
L247[21:55:57]

<Brisingr
Aerowing> I'd just send the serialized data.
L248[21:56:02]

<Renno>
right
L249[21:56:09]

<Renno>
annoyingly though that means I need to decode it twice
L250[21:56:23]

<Brisingr
Aerowing> Infinite loop detection is a rather difficult problem
to solve.
L251[21:56:35]

<Renno>
because there is important data included in the packet that used
for routing so it needs to be decoded for routing and then decoded
again in the callback its routed to
L252[21:58:57]

<Renno> it
might be worth making my own event thing for my network related
events
L253[22:06:07] <CompanionCube> %tonk
L254[22:06:07] <MichiBot> Dagnammit!
CompanionCube! You beat Vaur's previous record of 3 hours, 5
minutes and 54 seconds (By 1 hour, 37 minutes and 22 seconds)! I
hope you're happy!
L255[22:06:08] <MichiBot>
CompanionCube's new record is 4 hours, 43 minutes and 16
seconds! CompanionCube also gained 0.00648 (0.00162 x 4) tonk
points for stealing the tonk. Position #2. Need 0.09786 more points
to pass Spider EveryOS!
L256[23:38:22]

<Renno>
alright alright alright
L257[23:38:26]

<Renno>
custom even system created and working
L258[23:41:26] <CompanionCube>
%drink
L259[23:41:28] <MichiBot> You drink a
goopy coral potion (New!). The potion contained a computer virus!
CompanionCube hears a maniacal laugh as their cursor flips upside
down!
L262[23:48:33]

<Renno>
gatenet has grown from 17kb to 35kb but that's with an
integrated (minified) cbor library 😎
L263[23:48:33]

<Renno>
promise functionality has been increased substantially too