<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:05:00] <BohemianHacks> at this point, I think the safest way to do it is scan the chunk from one side before entering, sweeping the camera at (0,0). This will get me a 2d height map from that side. Then go to the highest block + 1. Scan the whole chunk with the camera pointed down at (0,0). For all natural blocks that should get me a realistic height map. Water above sea level will still be an issue but geolyzer can pick that up with its derpy high hardness
L2[00:11:12] <BohemianHacks> idk, im one more hiccup away from just using ocsensors
L3[00:11:42] <BohemianHacks> trying really hard to be "legit" but its seems artificially hard for some things
L4[00:20:34] <BohemianHacks> Anyone have any input on ocsensors? do people feel its OP? does anyone care?
L5[01:05:47] <CompanionCube> %tonkout
L6[01:05:47] <MichiBot> Aw jeez! CompanionCube! You beat Forecaster's previous record of 5 hours, 43 minutes and 42 seconds (By 5 hours, 53 minutes and 42 seconds)! I hope you're happy!
L7[01:05:48] <MichiBot> CompanionCube has stolen the tonkout! Tonk has been reset! They gained 0.011 tonk points! plus 0.01 bonus points for consecutive hours! (Reduced to 50% because stealing) Current score: 1.66665
L8[01:06:14] <CompanionCube> %tonk
L9[01:06:14] <MichiBot> Jiminy Cricket! CompanionCube! You beat Forecaster's previous record of 5 hours, 43 minutes and 42 seconds (By 5 hours, 54 minutes and 9 seconds)! I hope you're happy!
L10[01:06:15] <MichiBot> CompanionCube's new record is 11 hours, 37 minutes and 52 seconds! CompanionCube also gained 0.0354 (0.0059 x 6) tonk points for stealing the tonk.
L11[01:06:22] <CompanionCube> ...
L12[01:08:39] <asie> Impressive.
L13[01:09:03] <Caitlyn> huh...
L14[01:09:33] <CompanionCube> Izaya: https://gitroyalty.com/ subscription software: package manager edition
L15[01:09:36] <Caitlyn> %tonkout
L16[01:09:36] <MichiBot> Jeepers! Caitlyn! You beat Forecaster's previous record of 5 hours, 43 minutes and 42 seconds (By 5 hours, 57 minutes and 31 seconds)! I hope you're happy!
L17[01:09:36] <Ariri> what..
L18[01:09:37] <MichiBot> Caitlyn has stolen the tonkout! Tonk has been reset! They gained 0.011 tonk points! plus 0.01 bonus points for consecutive hours! (Reduced to 50% because stealing) Current score: 0.026
L19[01:09:44] <Caitlyn> %restart
L20[01:09:45] ⇦ Quits: MichiBot (MichiBot!~MichiBot@eos.pc-logix.com) ()
L21[01:09:48] <Ariri> lol
L22[01:10:08] ⇨ Joins: MichiBot (MichiBot!~MichiBot@eos.pc-logix.com)
L23[01:10:08] zsh sets mode: +v on MichiBot
L24[01:10:16] <Ariri> MichiBad
L25[01:10:37] <Caitlyn> %tonk
L26[01:10:51] <MichiBot> Dagnabbit! Caitlyn! You beat Forecaster's previous record of 5 hours, 43 minutes and 42 seconds (By 5 hours, 58 minutes and 45 seconds)! I hope you're happy!
L27[01:10:52] <MichiBot> Caitlyn's new record is 11 hours, 42 minutes and 28 seconds! Caitlyn also gained 0.03588 (0.00598 x 6) tonk points for stealing the tonk.
L28[01:11:05] <Izaya> CompanionCube: well that's somewhere between concerning and horrifying
L29[01:11:08] <Ariri> Forecaster hacked it
L30[01:11:09] <CompanionCube> (side note: IP-based licensing? That's going to suck for most non-vuisness usage)
L31[01:11:22] <Caitlyn> %tonk
L32[01:11:23] <MichiBot> I'm sorry Caitlyn, you were not able to beat Caitlyn's record of 11 hours, 42 minutes and 28 seconds this time. 32 seconds were wasted! Missed by 11 hours, 41 minutes and 56 seconds!
L33[01:11:31] <Ariri> %blame @Forecaster
L34[01:11:32] * MichiBot blames @Forecaster for bridge fees
L35[01:11:39] <Caitlyn> Good luck fuckers! :p
L36[01:11:44] <Caitlyn> <3
L37[01:11:48] <Ariri> lmao MichiBot time travelling
L38[01:11:51] <CompanionCube> Caitlyn: you stole my tonk :(
L39[01:12:05] <Ariri> %tonk
L40[01:12:16] <Caitlyn> 15 minute command cooldown
L41[01:12:23] <Ariri> o
L42[01:26:47] <CompanionCube> https://www.jefftk.com/p/shared-cache-is-going-away heh
L43[01:31:33] <Izaya> caching proxies where applicable :3
L44[01:33:54] <FeherNeoH> Oh, shared cache, the thing that breaks everything when servers serve different files based on the referer
L45[01:34:12] <Izaya> why would they do that
L46[01:40:27] <FeherNeoH> because some servers do
L47[01:40:54] <FeherNeoH> "Hey, you can use a customized version of our lib if you register your site"
L48[01:45:20] <CompanionCube> sounds like they are breaking it by serving different files under the same URL
L49[01:45:38] <Izaya> ^
L50[01:45:45] <CompanionCube> Izaya: decentraleyes, anyone?
L51[01:46:14] <Izaya> I was thinking uh, fuckin, Disconnect
L52[01:46:18] <Izaya> the one that keeps CDN files
L53[01:53:59] <CompanionCube> i think that's what decentraleyes does
L54[02:00:47] ⇦ Quits: ben_mkiv (ben_mkiv!~ben_mkiv@i577BCFFD.versanet.de) (Ping timeout: 202 seconds)
L55[02:09:58] ⇦ Quits: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150) (Ping timeout: 190 seconds)
L56[02:11:51] ⇨ Joins: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150)
L57[02:34:06] ⇦ Quits: CarlenWhite (CarlenWhite!~CarlenWhi@25.sub-174-231-133.myvzw.com) (Ping timeout: 198 seconds)
L58[02:39:41] ⇨ Joins: CarlenWhite (CarlenWhite!~CarlenWhi@209.sub-174-231-1.myvzw.com)
L59[02:46:00] <Forecaster> %sip
L60[02:46:00] <MichiBot> You drink a prickly rainbow potion (New!). It tastes sour.
L61[02:52:26] ⇦ Quits: {Opsimath}Shawn ({Opsimath}Shawn!~shawn156@c-76-25-73-212.hsd1.co.comcast.net) (Read error: Connection reset by peer)
L62[02:57:39] <bpm140> %tonk
L63[02:57:40] <MichiBot> I'm sorry bpm140, you were not able to beat Caitlyn's record of 11 hours, 42 minutes and 28 seconds this time. 1 hour, 46 minutes and 17 seconds were wasted! Missed by 9 hours, 56 minutes and 11 seconds!
L64[02:58:07] <bpm140> I really messed up everything
L65[03:00:45] <FeherNeoH> %sip
L66[03:00:45] <MichiBot> You drink a resonating rainbow potion (New!). FeherNeoH looks up and sees the moon smile at them for a second.
L67[03:09:08] <Lizzy> %sip
L68[03:09:09] <MichiBot> You drink a porous white potion (New!). Lizzy turns into an ocean lizard bear until their next sip of water.
L69[03:09:17] <Lizzy> ffs MichiBot
L70[03:09:20] <Lizzy> %sip water
L71[03:09:20] <MichiBot> You drink some water. Wait... this isn't water... it's a slimy yellow potion!
L72[03:09:27] <Lizzy> %sip ^
L73[03:09:28] <MichiBot> Lizzy is suddenly wearings gloves they don't remember putting on.
L74[03:09:34] * Lizzy sighs
L75[03:11:20] ⇦ Quits: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150) (Quit: https://i.imgur.com/xacQ09F.mp4)
L76[03:12:44] <FeherNeoH> Oh, a Lizzy (ocean) lizard (bear)
L77[03:13:13] ⇨ Joins: ba7888b72413a16a (ba7888b72413a16a!~ba7888b72@66.109.211.150)
L78[03:13:49] ⇨ Joins: bauen1 (bauen1!~bauen1@x59cc8206.dyn.telefonica.de)
L79[03:17:44] <royalmustard> How do I decode utf8 to a normal string?
L80[03:17:58] <FeherNeoH> UTF8 === normal string
L81[03:18:34] <royalmustard> The problem is that when I try to extract a number from the string with regex, it returns a number that is not even in the string
L82[03:18:59] <royalmustard> the string is "len:40" and the regex returns 5
L83[03:19:31] <FeherNeoH> that sounds like it returns the position
L84[03:20:18] <FeherNeoH> what function do you use for it exactly?
L85[03:21:34] <royalmustard> string.find
L86[03:21:43] <royalmustard> oh
L87[03:22:26] <Forecaster> Lua doesn't have regex
L88[03:22:36] <Forecaster> if you want to use patterns though you want string.gmatch
L89[03:27:13] <royalmustard> string.match worked fine
L90[03:28:54] ⇦ Quits: bauen1 (bauen1!~bauen1@x59cc8206.dyn.telefonica.de) (Read error: Connection reset by peer)
L91[03:54:03] <Forecaster> I forget what the difference between match and gmatch is
L92[04:04:39] <Izaya> global match
L93[04:09:31] <Forecaster> ah, so /regex/g
L94[05:08:29] <BohemianHacks> welp, now ive hit the happy wall of memory management. Figured that was coming at some point. ?
L95[05:09:12] <BohemianHacks> Now to test a few different versions of the path finding algorithm. First thing is to stop using bloated vectors for each node.
L96[05:09:56] <BohemianHacks> Also need to teach it to climb, it can already avoid flying but doesn't pathfind up vertical surfaces. So it spends a long time looking for stairs, and the path gets huge.
L97[05:10:47] <BohemianHacks> Might end up going back to trying to premap the area and store it in a binary file in some way, then just reference that file later.
L98[05:12:35] <Izaya> a table with a metatable that actually r/ws to a file and keeps a cache in the main table
L99[05:14:29] <BohemianHacks> do you have an example of that?
L100[05:15:34] <Izaya> not presently
L101[05:15:42] <Izaya> the closest I've written is a table that is backed to the filesystem
L102[05:16:41] <BohemianHacks> I was planning on just doing file and treating it like a normal blob of memory with known offsets
L103[05:16:55] <BohemianHacks> then just do some index calculation and seek to the right place
L104[05:17:48] <BohemianHacks> even with lookup and transmitting from a server it might be about the same speed as the geolyzer is already ?
L105[05:18:23] <Izaya> big brain would be using minitel RPC :^)
L106[05:18:27] <Izaya> man I should like
L107[05:18:34] <Izaya> write the non-embedded server for that
L108[05:19:39] <BohemianHacks> still havent even messed with minitel or networking lmfao
L109[05:19:57] <BohemianHacks> other than using it for gps
L110[05:20:19] <BohemianHacks> been 100% sucked into the autonomous pathfinding and colonizing of areas
L111[05:20:43] <BohemianHacks> wouldnt think scanning and clearing a chunk would be such a big thing, but here I am
L112[05:22:32] <Izaya> whatcha clearing
L113[05:23:12] <BohemianHacks> everything
L114[05:23:19] <Izaya> well that works
L115[05:23:20] <Izaya> :D
L116[05:23:49] <BohemianHacks> trying to make fully autonomous robots/drones that build more robots and colonize the world
L117[05:24:19] <BohemianHacks> step 1 is clearing of chunks and building infrastructure
L118[05:24:37] <BohemianHacks> step 0 is reliable and robust pathfinding and scanning of the world
L119[05:26:41] <Izaya> > The Linux 5.5 kernel due out as stable in early 2020 will finally have mainline support for the MIPS-powered SGI Octane and Octane II workstations that originally ran with SGI's IRIX operating system about two decades ago...
L120[05:27:00] <BohemianHacks> basically I want to be able to start with a seed chunk that is flat and has a charger. the robot will scan, flatten, mine, and build in the neighboring chunks. Repeat until it has the resources and infrastructure to make a new robot.
L121[05:28:28] <BohemianHacks> added a couple custom recipes for things like blaze powder, and it will have to build various farms given a set of initial breeding stock. cows, villagers, chickens
L122[05:28:36] <BohemianHacks> trade with villagers to get ender pearls
L123[05:28:58] <BohemianHacks> tons of things to work out for the whole project, but im trying to take it all piece by piece so I dont lose my mind
L124[05:29:37] * Izaya nods
L125[05:31:23] <Izaya> Hmm...
L126[05:31:49] <Izaya> To include the functions for registering RPC servers as part of the RPC library, or to have a separate daemon...
L127[05:32:00] <FeherNeoH> Maybe I should make some kind of pathfinder too
L128[05:32:47] <BohemianHacks> the pathfinding itself isnt too hard, its the data source and checking of valid locations
L129[05:33:08] <BohemianHacks> would be super easy to write for drones or with hover upgrade 2
L130[05:33:52] <BohemianHacks> but im trying to get a baseline here for the toughest case: moving into an unknown chunk and preparing it for colonization
L131[05:34:11] <BohemianHacks> could have trees, caves, water, villages, mountains, etc
L132[05:35:01] <FeherNeoH> depending on the distance of it, I would probably use a 3d matrix with step-count distances calculated
L133[05:35:21] <FeherNeoH> from destination to startpoint
L134[05:35:38] <BohemianHacks> Im using standard a* for the actual pathfinding
L135[05:35:57] <BohemianHacks> and capping range at geolyzer range, for obvious reasons
L136[05:36:05] <FeherNeoH> yeah
L137[05:36:34] <BohemianHacks> cost calculation factors in turning even
L138[05:36:42] <FeherNeoH> so every sub-movement would be ~24 blocks
L139[05:36:46] <BohemianHacks> so it gives nice straight/fast paths
L140[05:37:13] <FeherNeoH> oh, energy costs included?
L141[05:37:44] <BohemianHacks> yeah, if you have used a* it basically has a theoretical "cost" function that could be anything
L142[05:37:59] <BohemianHacks> basically how much does it cost to go from one node to the next
L143[05:38:26] <BohemianHacks> in that you can factor in turning, digging, whatever really
L144[05:39:43] <BohemianHacks> then the nodes are scored based on cost + distance to the object, you sort the nodes in the queue by that score and explore the neighbors from whatever is at the top of the queue
L145[05:39:49] <BohemianHacks> until you reach your destination
L146[05:40:58] <BohemianHacks> biggest issue so far is just determining what nodes are pathable and now making it more memory efficient for long complex paths
L147[05:43:08] <BohemianHacks> anyways, thats enough rambling and coding for today
L148[06:18:38] <Forecaster> %sip
L149[06:18:38] <MichiBot> You drink a dull caterium potion (New!). The next remote Forecaster looks for is extra hard to find.
L150[06:19:00] <Forecaster> Fortunately I know exactly where my remotes are
L151[06:23:16] <FeherNeoH> %sip
L152[06:23:17] <MichiBot> You drink a sweet orange potion (New!). A bard behind FeherNeoH suddenly stops playing. They were most likely eaten by a monster.
L153[07:08:29] ⇨ Joins: flappy (flappy!~flappy@88-113-149-197.elisa-laajakaista.fi)
L154[07:16:05] ⇨ Joins: baschdel (baschdel!~baschdel@2a02:6d40:3625:6601:54fe:4e96:d22f:897c)
L155[08:15:58] ⇦ Quits: phroa (phroa!~phroa@173.254.236.155) (Ping timeout: 190 seconds)
L156[08:20:01] ⇨ Joins: phroa (phroa!~phroa@173.254.236.155)
L157[08:27:47] ⇨ Joins: Inari (Inari!~Pinkishu@pD9E8FB2B.dip0.t-ipconnect.de)
L158[08:28:26] <Ariri> %drink
L159[08:28:26] <MichiBot> You drink a gloopy water potion (New!). A bard starts playing a lute behind Ariri until their next sip of water.
L160[08:28:40] <Ariri> %drink water
L161[08:28:40] <MichiBot> You drink some water. Wait... this isn't water... it's a runny green potion!
L162[08:28:47] <FeherNeoH> %sip
L163[08:28:47] <MichiBot> You drink a dull dirt potion (New!). FeherNeoH's nose vanish until Sozin's Comet returns.
L164[08:28:51] <Ariri> ...
L165[08:29:08] <Ariri> michibot, never be a bartender
L166[08:29:24] <FeherNeoH> %sip runny green potion
L167[08:29:25] <MichiBot> FeherNeoH has no memory of drinking a potion.
L168[09:11:29] ⇦ Quits: AdorableCatgirl (AdorableCatgirl!~sam@pool-100-7-96-45.rcmdva.fios.verizon.net) (Ping timeout: 206 seconds)
L169[09:17:50] ⇨ Joins: AdorableCatgirl (AdorableCatgirl!~sam@pool-100-7-96-45.rcmdva.fios.verizon.net)
L170[09:43:47] <Forecaster> clearly michibot is an alchemist
L171[09:43:52] <Forecaster> %sip
L172[09:43:53] <MichiBot> You drink a basic black potion (New!). Forecaster gains an extra strand of hair on their face until they find true love.
L173[09:44:32] <Forecaster> fortunately I already have a face full of hair
L174[09:48:51] <Elfi> %quaff basic bitch potion
L175[09:48:51] <MichiBot> This doesn't seem to be a potion I recognize... Make sure it has an appearance and consistency keyword, and the word "potion" in it.
L176[09:49:01] <Elfi> It did nothing because I already am one
L177[09:49:02] <Elfi> ¯\_(ツ)_/¯
L178[09:49:06] <Elfi> %quaff
L179[09:49:06] <MichiBot> You drink a solid salmon potion (New!). Elfi gains knowledge about a random useless subject.
L180[09:53:07] <Forecaster> I guess I should specify valid keywords :P
L181[10:03:02] <Elfi> Nah
L182[10:03:48] <Elfi> I do need to submit a PR with the other starbound metals (or just set it to solarium) and grathnode/parameno from AT but
L183[10:03:48] <Elfi> eh
L184[10:04:16] <Forecaster> I could do it, I have IDEA set up again now
L185[10:06:09] <Elfi> I guess?
L186[10:06:19] <Elfi> If you wanna.
L187[10:06:23] <Forecaster> what's AT though
L188[10:06:26] <Elfi> Ar tonelico.
L189[10:06:40] <Forecaster> dunno what that is
L190[10:12:53] <Elfi> It's a niche JRPG series with fantastic worldbuilding
L191[10:13:25] <Elfi> It also has its share of tacked-on fanservice but it's largely irrelevant to the story. Except in Qoga, but we don't talk about Qoga.
L192[10:18:40] <Elfi> Story's nice despite it though. Same with the lore.
L193[10:21:26] ⇨ Joins: bauen1 (bauen1!~bauen1@ipbcc03b58.dynamic.kabel-deutschland.de)
L194[10:25:33] <Elfi> I could probably go on about why I don't like the fanservice, but Aquagon will inevitably Kool-Aid Man through the wall, scream about how I'm ruining the series for people by talking poorly about the fanservice, and then block me without any awareness of his hostility being what's turning people off from it
L195[10:25:43] <Elfi> ?
L196[10:26:00] <Forecaster> who's that?
L197[10:26:21] <Elfi> Kind of prominent contributor to the AT fan community, but also *very* opinionated and not very self-aware
L198[10:26:28] <Forecaster> ah
L199[10:26:36] <Elfi> He has a tendency to search for AT posts on Twitter and argue with people.
L200[10:26:53] <Forecaster> sounds like a fun person
L201[10:27:10] <Caitlyn> Well, hopefully they don't find the IRC logs.
L202[10:27:29] <Forecaster> does google index them? :P
L203[10:27:42] <Caitlyn> Yes,.
L204[10:27:48] <Caitlyn> s/,//
L205[10:27:49] <MichiBot> <Caitlyn> Yes.
L206[10:28:37] <Caitlyn> let's see...
L207[10:28:39] <Caitlyn> %g Ar tonelico site:irclogs.pc-logix.com
L208[10:28:40] <MichiBot> Caitlyn: Search failed
L209[10:28:42] <Caitlyn> nope.
L210[10:28:43] <Caitlyn> lol
L211[10:29:05] <Caitlyn> not sure how the %g command works really
L212[10:29:15] <Caitlyn> but if you search that string in google... you get 4 hits.
L213[10:29:36] <Caitlyn> Erm.. odd
L214[10:29:44] <Caitlyn> MichiBot's inventory is still empty
L215[10:30:00] <Caitlyn> %inv add Something
L216[10:30:00] * MichiBot summons 'Something' and adds to her inventory. This seems very sturdy.
L217[10:30:22] <Caitlyn> Ok, now it works.. likely left over stupid from the wrong owner on the DB file.
L218[10:30:28] <Caitlyn> had to restart so the DB could write.
L219[10:30:31] <Forecaster> huh, the jenkins server isn't building my commit
L220[10:30:39] <Caitlyn> Give it a minute
L221[10:30:55] <Forecaster> but it's been several minutes D:
L222[10:31:00] <Caitlyn> Give it an hour
L223[10:31:39] <Forecaster> but it's been several hours D:
L224[10:31:42] <Forecaster> or wait, no
L225[10:32:28] <Caitlyn> Jenkins UI is being super slow...
L226[10:32:32] <Caitlyn> and yet server load is .25
L227[10:32:54] <Caitlyn> ```Your Jenkins data directory /var/lib/jenkins (AKA JENKINS_HOME) is almost full. You should act on it before it gets completely full. ```
L228[10:32:54] <Forecaster> huh
L229[10:32:55] <Caitlyn> Oh
L230[10:32:57] <Caitlyn> neat.
L231[10:33:02] <AmandaC> That's some mission objective list: https://nc.ddna.co/s/m2gTMRFbgXkoebM
L232[10:33:28] <Forecaster> what is that from? Outer Worlds?
L233[10:33:30] <Caitlyn> ```/dev/sda1 280G 258G 7.9G 98% /```
L234[10:33:31] <Caitlyn> shit
L235[10:33:50] <Forecaster> ohno
L236[10:33:57] <AmandaC> @Forecaster X4
L237[10:34:10] <Forecaster> ah
L238[10:34:17] <Forecaster> another game I intend to play :P
L239[10:34:38] <Caitlyn> waaaait..
L240[10:34:39] <Caitlyn> wat.
L241[10:34:48] <Caitlyn> ESXi panel says that the primary disk is 400GB
L242[10:45:14] * Caitlyn shanks gparted
L243[10:48:11] <Forecaster> poor gparted
L244[10:49:58] <Caitlyn> theres 100GB at the end of this disk..
L245[10:50:00] ⇦ Quits: baschdel (baschdel!~baschdel@2a02:6d40:3625:6601:54fe:4e96:d22f:897c) (Ping timeout: 198 seconds)
L246[10:50:18] <Caitlyn> but I can't extend the partition because the swap partition is between the active, and the unallocated space
L247[10:50:32] <Forecaster> windows?
L248[10:51:07] <Caitlyn> Ubuntu 16.04
L249[10:51:27] <Caitlyn> swapoff: /dev/sda5: swapoff failed: Cannot allocate memory
L250[10:51:30] * Caitlyn flips table
L251[10:51:31] <Caitlyn> %table
L252[10:51:36] <Caitlyn> %fliptable
L253[10:51:36] <MichiBot> Caitlyn: (╯°□°)╯ ┻━┻
L254[10:51:36] <Forecaster> I tried doing that a while ago on windows and found it wouldn't let me do it unless the sectors were adjacent, I had to get a program that could do it
L255[10:51:59] <Caitlyn> yeah, gparted is being a little bitch cause swap is between the active and unallocated
L256[10:55:11] <Elfi> How big is your swap?
L257[10:55:12] <bauen1> Caitlyn: create a new swap partition at the end, enable it then disable the old one
L258[10:55:18] <Elfi> Yeah, I was about to say.
L259[10:57:26] <Caitlyn> Oh... derp.
L260[11:01:45] <Caitlyn> @Forecaster I manually kicked off the build, I'm not sure whats up..
L261[11:01:54] ⇨ Joins: baschdel (baschdel!~baschdel@2a02:6d40:3625:6601:54fe:4e96:d22f:897c)
L262[11:02:13] <Caitlyn> (pending—Finished waiting) Then... build it
L263[11:03:16] <AdorableCatgirl> so
L264[11:03:25] <AdorableCatgirl> i'm werking on my new version of my lua preprocessor
L265[11:03:31] <AdorableCatgirl> oh yeah, it's gamer time
L266[11:05:23] <AmandaC> Also: Thanks, I hate it: https://nc.ddna.co/s/bkk892WSqAPdaz8
L267[11:06:05] <Bob> wtf
L268[11:06:10] <AdorableCatgirl> cursed
L269[11:06:46] <AmandaC> Might be time to buy a new graphics card. my RTX 980 isn't happy with this game it seems
L270[11:08:40] <Forecaster> it complained about by GTX750 so I upgraded to a radeon RX570
L271[11:12:15] <AdorableCatgirl> B)
L272[11:13:10] * Inari feeds AmandaC a synthesized cheezburger
L273[11:13:51] * AmandaC eyes Inari wearialy
L274[11:13:57] <Inari> What
L275[11:14:21] <AmandaC> I don't trust any food you try and give me. Knowing you you sysnthesised it with fish guts or something.
L276[11:15:08] <Inari> Even if I did, it's still a proper cheeseburger
L277[11:25:06] <AmandaC> %8ball pasta?
L278[11:25:06] <MichiBot> AmandaC: I don't think that's a question...
L279[11:29:47] ⇦ Quits: cpw (cpw!~cpw@2607:f2c0:eb8a:500:983e:ecff:fe2a:4f7f) (Ping timeout: 204 seconds)
L280[11:46:53] <Caitlyn> ```/dev/sda1 379G 258G 104G 72% /
L281[11:46:54] <Caitlyn> ```
L282[11:46:57] <Caitlyn> damn it
L283[11:46:59] * Caitlyn mehs
L284[11:47:05] <Caitlyn> anyway 104GB is better than 7~
L285[11:47:28] <Caitlyn> %restart
L286[11:47:39] ⇦ Quits: MichiBot (MichiBot!~MichiBot@eos.pc-logix.com) ()
L287[11:48:09] ⇨ Joins: MichiBot (MichiBot!~MichiBot@eos.pc-logix.com)
L288[11:48:09] zsh sets mode: +v on MichiBot
L289[12:04:31] <Forecaster> %sip
L290[12:04:32] <MichiBot> You drink a resonating crimson potion (New!). Forecaster now knows how not to be seen.
L291[12:06:03] ⇦ Quits: baschdel (baschdel!~baschdel@2a02:6d40:3625:6601:54fe:4e96:d22f:897c) (Ping timeout: 198 seconds)
L292[12:07:50] <FeherNeoH> %sip
L293[12:07:57] <MichiBot> You drink a sedimented coral potion (New!). A genie appears out of the empty bottle, turns it into a pie, then vanishes.
L294[12:08:35] ⇨ Joins: ben_mkiv (ben_mkiv!~ben_mkiv@i577BCFFD.versanet.de)
L295[12:12:22] <Forecaster> http://tinyurl.com/y5crm8bx
L296[12:16:57] <Caitlyn> Oh... Movie Night!
L297[12:17:00] <Caitlyn> It's the 5th
L298[12:28:16] ⇨ Joins: cpw (cpw!~cpw@135-23-116-52.cpe.pppoe.ca)
L299[12:32:53] ⇨ Joins: baschdel (baschdel!~baschdel@2a02:6d40:3625:6601:54fe:4e96:d22f:897c)
L300[12:34:03] ⇦ Quits: cpw (cpw!~cpw@135-23-116-52.cpe.pppoe.ca) (Ping timeout: 202 seconds)
L301[12:36:46] <bauen1> os.clock() is seperate per computer, right ?
L302[12:37:33] ⇨ Joins: Vexatos (Vexatos!~Vexatos@port-92-192-228-195.dynamic.qsc.de)
L303[12:37:33] zsh sets mode: +v on Vexatos
L304[12:38:24] <Ocawesome101> @Forecaster lmao
L305[12:38:46] <Bob> its the time frm the launch of the program
L306[12:38:49] <Bob> or PC i don't recall
L307[12:38:56] <Bob> and yes its individual
L308[12:38:59] <Forecaster> it's per computer yes
L309[12:39:01] <Bob> os.time is shared
L310[12:39:20] <Forecaster> time is the world time
L311[12:39:26] <Forecaster> clock is the computer uptime
L312[12:39:31] ⇨ Joins: cpw (cpw!~cpw@69-165-220-173.dsl.teksavvy.com)
L313[12:59:12] <bauen1> nice
L314[13:08:25] <Caitlyn> %juggle
L315[13:08:25] * MichiBot juggles with Something
L316[13:08:26] * MichiBot doesn't drop anything
L317[13:08:27] <MichiBot> In yo face!
L318[13:08:35] <Caitlyn> %inv add Anything
L319[13:08:36] * MichiBot summons 'Anything' and adds to her inventory. I could get some good swings in with this.
L320[13:08:41] <Caitlyn> %juggle
L321[13:08:42] * MichiBot juggles with Anything, & Something
L322[13:08:43] * MichiBot doesn't drop anything
L323[13:08:44] <MichiBot> I'm awesome!
L324[13:08:54] <Caitlyn> Well... did you drop something instead?!
L325[13:28:18] * Inari hands Elfi a synthesized raisin
L326[13:32:56] <AdorableCatgirl> my lua pre+postprocessor can now compile itself
L327[13:32:57] <AdorableCatgirl> hell hel
L328[13:32:59] <AdorableCatgirl> *yeah
L329[13:33:01] ⇦ Quits: ben_mkiv (ben_mkiv!~ben_mkiv@i577BCFFD.versanet.de) (Killed (NickServ (GHOST command used by ben_mkiv|afk!~ben_mkiv@88.130.156.105)))
L330[13:33:07] ⇨ Joins: ben_mkiv|afk (ben_mkiv|afk!~ben_mkiv@88.130.156.105)
L331[13:34:35] <Inari> %sip
L332[13:34:35] <MichiBot> You drink a boiling purple potion (New!). Inari's favourite cup is now upside down.
L333[13:34:48] <Inari> %ohno
L334[13:34:49] <MichiBot> Inari: ohno
L335[14:00:55] <Caitlyn> Ooof...
L336[14:01:10] <Caitlyn> Tried to add RAM to one of my VMs, got told I need a $4,000 license to do so.
L337[14:01:44] <Inari> Hah
L338[14:01:49] <Forecaster> haha what
L339[14:02:11] <Caitlyn> Yep, hotswapping VM Hardware requires a $4,000 ESXi license.
L340[14:03:52] <bauen1> come to libvirt, we have cookies ...
L341[14:04:13] <Caitlyn> Funny enough, I left libvirt, for this :P
L342[14:04:24] <bauen1> why would you leave ._.
L343[14:04:36] <Caitlyn> When I got my new dedi, I just slapped the prebuilt ESXi image on it cause I needed box now
L344[14:12:27] <stephan48> bauen1: you can't really add more ram to a libvirt/qemu VM
L345[14:12:54] <stephan48> you can just adjust between min/max ram but maxmemory must be set correctly before VM start
L346[14:13:17] <Inari> I still do'nt understand why laptops don't come with cameras that have a physical switch
L347[14:13:34] <stephan48> they do... screwdriver and a hammer to the cameras eye
L348[14:13:44] <Inari> I mean
L349[14:13:49] <stephan48> but if you are intelligent and set a sensible value for maxmemory with some room for the future you are good to go
L350[14:13:50] <Inari> Thats clunky and does'nt sound easily switchable
L351[14:13:51] <Inari> :P
L352[14:14:00] <stephan48> naaaah
L353[14:14:03] <stephan48> depends on your usecase
L354[14:14:21] <Inari> Using the camera when I need it, but knowing it won't be used when I don't want to use it?
L355[14:14:30] <FeherNeoH> Inari: just put a switch on the USB power lane of the webcam if you are that concerned
L356[14:14:47] <Inari> @FeherNeoH sounds hard
L357[14:15:02] <FeherNeoH> personally I just disable the driver if not needed
L358[14:15:27] <Inari> I just see lots of people sticking something on them, then removing it when they use it, then sticking it back on
L359[14:15:31] <Inari> Seems unnecessary
L360[14:15:35] <Inari> Why not have a switch
L361[14:15:54] <FeherNeoH> again, just disable the driver
L362[14:16:09] <AdorableCatgirl> https://github.com/Adorable-Catgirl/LuaComp/releases/tag/v1.0.0
L363[14:16:33] <Inari> I don't think most people are competent enough for that
L364[14:16:40] <Inari> Plus, what prevents some software from re-enabling it?
L365[14:17:01] <FeherNeoH> are you looking for a solution for "most people" or yourself?
L366[14:17:19] <Inari> Both
L367[14:17:27] <Inari> A solution for most people will naturally includ eme
L368[14:17:27] <Inari> :p
L369[14:17:29] <AdorableCatgirl> OH
L370[14:17:35] <AdorableCatgirl> and don't minify luacomp
L371[14:17:45] <AdorableCatgirl> i dunno why, but it royally fucks itself
L372[14:17:52] <FeherNeoH> Most people would even unable to use the switch method even if it was built-in
L373[14:18:10] <FeherNeoH> I mean
L374[14:18:22] <Inari> How so?
L375[14:18:29] <FeherNeoH> I had people bringing laptops to me complaining that the webcam was broken
L376[14:18:35] <FeherNeoH> when it was just taped over
L377[14:18:35] <Inari> People seem capable of moving a little thing left and right
L378[14:18:57] <FeherNeoH> people are incapable of realizing they have to move a switch
L379[14:19:16] <Inari> If they're that incapable, I'm not sure how they manage to use a computer in the first place
L380[14:19:27] <FeherNeoH> I'm not sure either
L381[14:19:59] <FeherNeoH> but seeing the mess on some people's PCs... They can't use them, they only abuse them
L382[14:20:53] <FeherNeoH> too many people still believe that if something doesn't work the way they expect it to work, then hitting it helps
L383[14:20:56] <Inari> Anyway, a physical switch is the most secure way imo
L384[14:21:07] * stephan48 hits the wallsocket
L385[14:21:15] <FeherNeoH> most secure way is an external webcam you can just unplug
L386[14:21:35] <stephan48> abuse is a form of usage too
L387[14:21:52] <Inari> It's right in the word
L388[14:21:58] <Inari> ab\buse\b
L389[14:22:01] <Inari> The heck
L390[14:22:10] <Inari> You're supposed to stick a bold thing not \b, pls
L391[14:22:51] <FeherNeoH> here is my other "secure webcam" method
L392[14:23:01] <FeherNeoH> http://tinyurl.com/y4emga9a
L393[14:23:04] <FeherNeoH> "not having a driver"
L394[14:23:19] <Inari> I mean
L395[14:23:23] <Forecaster> or you can just do what I do and not care :D
L396[14:23:28] <Inari> Thats cool and all, but most laptop webcams are built in
L397[14:23:41] <FeherNeoH> don't buy laptops
L398[14:24:03] <FeherNeoH> I mean, a lot of those have soldered RAM/SSD
L399[14:24:05] <Inari> Right....
L400[14:24:12] <Inari> What would you buy instead :P
L401[14:24:13] <FeherNeoH> and 99.9% of them has soldered CPU
L402[14:24:29] <FeherNeoH> anything I can swap the components of
L403[14:24:39] <FeherNeoH> like 6yo+ laptops
L404[14:24:53] <Inari> I mean, I don't particularily care about swapping its components I guess
L405[14:24:58] <Inari> And I want it to be like
L406[14:24:59] <Inari> Not bad
L407[14:25:00] <Inari> :p
L408[14:25:33] <FeherNeoH> I wouldn't care either if I didn't know the pain of losing all my data because of dead RAM
L409[14:25:44] <Inari> How does that work
L410[14:26:03] <FeherNeoH> because noone even tries unsoldering the freaking SSD or replacing the RAM
L411[14:26:18] <Inari> I mean, seems easy enough for the SSD at least
L412[14:26:21] <Inari> Plus... backups?
L413[14:27:14] <FeherNeoH> I do have backups of SOME stuff, not everything
L414[14:27:29] <Inari> https://www.reddit.com/r/CubeWorld/comments/drpc43/expectation_vs_reality/
L415[14:27:47] <FeherNeoH> I mean, having n pieces of 10TB drives lying around just for storing the backups would be a pain
L416[14:28:29] <FeherNeoH> Just don't make me lose data unless it's the storage that dies
L417[14:28:40] <FeherNeoH> onboard SSD makes this difficult
L418[14:28:55] <FeherNeoH> and then pair it with onboard RAM and onboard CPU
L419[14:29:28] <FeherNeoH> good luck getting every chip of the SSD over to a compatible board
L420[14:30:08] <Forecaster> yeah the thing is that most consumers don't care about any of that, so putting down the expense of having swappable parts is not worth it for the manufacturers :P
L421[14:30:35] <Forecaster> they'd rather make them as compact as possible instead
L422[14:30:58] <Inari> Backblaze it
L423[14:30:59] <Inari> :D
L424[14:31:14] <Forecaster> %sip
L425[14:31:15] <MichiBot> You drink a porous aluminium potion (New!). Forecaster has no memory of drinking a potion.
L426[14:31:51] <FeherNeoH> @Forecaster does the same apply here too?
L427[14:31:52] <FeherNeoH> https://twitter.com/winocm/status/1190041000972079105
L428[14:31:54] <MichiBot> Thu Oct 31 18:00:59 CDT 2019 @winocm: Oh no. Product segmentation strikes again. <https://t.co/VTkSUxcJ9m&gt;
L429[14:32:15] <Forecaster> I don't know what that is
L430[14:32:17] <Forecaster> %tonkout
L431[14:32:18] <MichiBot> I'm sorry Forecaster, you were not able to beat Caitlyn's record of 11 hours, 42 minutes and 28 seconds this time. 11 hours, 34 minutes and 38 seconds were wasted! Missed by 7 minutes and 50 seconds!
L432[14:32:23] <Forecaster> dammit
L433[14:32:27] <CompanionCube> goddammit Forecaster
L434[14:32:28] <Forecaster> D:<
L435[14:32:49] <FeherNeoH> a server, with second CPU slot and the RAM slots for that not soldered on
L436[14:33:02] <FeherNeoH> one would expect servers to be expandable
L437[14:33:18] <Inari> Don't you usually expand servers by adding a second blade
L438[14:33:58] <Caitlyn> Ouch...
L439[14:34:52] <FeherNeoH> I have single-CPU configs here with same model having dual-CPU option too
L440[14:35:03] <FeherNeoH> the boards DO have the secondary slots
L441[14:35:57] <BohemianHacks> @Forecaster thats probably the most painful fail I have seen
L442[14:36:08] <Forecaster> there have been closer ones
L443[14:36:24] <Forecaster> pretty sure Caitlyn holds the record for that with seconds :P
L444[14:36:25] <BohemianHacks> off by <10 minutes with an almost 12 hour count
L445[14:37:02] <AdorableCatgirl> >make a useful thing
L446[14:37:05] <AdorableCatgirl> >nobody cares
L447[14:37:10] <AdorableCatgirl> ?
L448[14:37:19] <BohemianHacks> Why are you making useful things?
L449[14:37:29] <AdorableCatgirl> because i don't like writing a lot of code
L450[14:37:35] <AdorableCatgirl> so i wrote a lot of code to write less code
L451[14:37:36] <Forecaster> it's not useful to me, sorry
L452[14:37:51] <AdorableCatgirl> https://github.com/Adorable-Catgirl/LuaComp
L453[14:38:05] <BohemianHacks> not sure what you made @AdorableCatgirl
L454[14:38:08] <AdorableCatgirl> my big thing would be the macros <3
L455[14:38:40] <BohemianHacks> thats vaguely useful for me and actually something I was going to look for soon
L456[14:38:48] <BohemianHacks> mostly for drones
L457[14:39:01] <AdorableCatgirl> Preprocessor made w/ Lua that lets you use Lua code for --did you say "useful for drones"
L458[14:39:04] <AdorableCatgirl> because if so
L459[14:39:06] <AdorableCatgirl> i have the mod for you
L460[14:39:21] <AdorableCatgirl> https://github.com/ShadowKatStudios/OpenSolidState
L461[14:40:09] <BohemianHacks> I dont understand what that is for
L462[14:40:32] <BohemianHacks> just more memory in drones by taking up a card slot?
L463[14:41:50] <BohemianHacks> oh hey, this is exactly what I was wondering about for keeping code for drones clean: --#include "world.lua"
L464[14:41:53] <BohemianHacks> thats pretty handy
L465[14:42:14] ⇦ Quits: nos (nos!~nos@dsl-hkibng41-56730a-6.dhcp.inet.fi) (Remote host closed the connection)
L466[14:42:45] <AdorableCatgirl> well yeah, it adds a lot* more storage to a drone/uC/whatever else
L467[14:42:47] <AdorableCatgirl> @BohemianHacks
L468[14:42:59] <AdorableCatgirl> anywhere from 64k to 128k
L469[14:43:08] <BohemianHacks> If forced I might do that, but for now I try to stay "vanilla"
L470[14:43:27] <BohemianHacks> until frustration > fun I try not to deviate
L471[14:43:35] <AdorableCatgirl> I came up with it so I could put PsychOS 2 on a uC :P
L472[14:43:57] <BohemianHacks> can you boot over network or something?
L473[14:44:05] <BohemianHacks> load the OS into ram
L474[14:44:18] <AdorableCatgirl> one could comma but
L475[14:45:09] <BohemianHacks> also i have basically 0 knowledge of existing utilities on opencomputers
L476[14:45:40] <BohemianHacks> I only recently switched from computercraft and mostly write my own stuff. Im probably going to mess with minitel because I don't feel like writing a networking stack again
L477[14:45:51] <AdorableCatgirl> minitel is great
L478[14:45:56] <AdorableCatgirl> Izaya:
L479[14:46:03] <AdorableCatgirl> oops
L480[14:46:08] <AdorableCatgirl> anyways it's time to shill minitel
L481[14:46:15] <Kleadron> *what have you done8
L482[14:46:17] <Kleadron> *what have you done* [Edited]
L483[14:46:25] <AdorableCatgirl> https://github.com/ShadowKatStudios/OC-Minitel
L484[14:47:09] <BohemianHacks> not sure what other OSes offer that openos doesnt
L485[14:47:17] <BohemianHacks> so havent really looked at them
L486[14:47:32] <BohemianHacks> I use an external editor and mostly mess with robots and drones
L487[14:47:51] <AdorableCatgirl> well
L488[14:47:58] <AdorableCatgirl> minitel can fit into 64K
L489[14:48:08] <AdorableCatgirl> *PsychOS
L490[14:48:20] <AdorableCatgirl> i mean minitel can too, and it's included in PsychOS
L491[14:48:44] <BohemianHacks> so its smaller?
L492[14:49:15] <AdorableCatgirl> yea
L493[14:49:19] <AdorableCatgirl> much
L494[14:49:31] <AdorableCatgirl> OpenOS is like 350K last time i checked?
L495[14:49:36] <AdorableCatgirl> or was it 300K?
L496[14:50:49] <AdorableCatgirl> now the really cool stuff is custom BIOSes
L497[14:50:49] <BohemianHacks> might give it a go then
L498[14:51:07] <BohemianHacks> yeah i was watching the js one a little
L499[14:51:15] <AdorableCatgirl> that's architectures
L500[14:51:32] <BohemianHacks> oh
L501[14:52:22] <BohemianHacks> was thinking lua bios you craft in game, but you are right
L502[14:52:45] <AdorableCatgirl> i mean the lua bios is the bios
L503[14:52:52] <AdorableCatgirl> but there's others
L504[14:53:01] <AdorableCatgirl> like openloader and zorya
L505[14:53:15] <BohemianHacks> i mean technically all the drone code is a bios ?
L506[14:53:22] <AdorableCatgirl> fair nuff
L507[14:53:43] <BohemianHacks> what do the other ones offer?
L508[14:54:07] <AdorableCatgirl> openloader can let you install multiple OSes at once
L509[14:54:43] <AdorableCatgirl> zorya can let you boot more advanced OSes
L510[14:54:56] <AdorableCatgirl> tho zorya is memory hungry and requires a tiny bit of HDD space
L511[14:55:05] <AdorableCatgirl> on the upside, it looks like GRUB
L512[14:55:14] <BohemianHacks> thats kinda neat
L513[14:55:28] <BohemianHacks> what are "more advanced OSes"
L514[14:55:46] <AdorableCatgirl> http://tinyurl.com/yxpnx34u
L515[14:56:15] <AdorableCatgirl> oh, like Fuchas (tho fuchas comes with it's own loader too)
L516[14:56:38] <BohemianHacks> I feel like im polling an information console ?
L517[14:56:42] <AdorableCatgirl> and my own OS
L518[14:56:45] <AdorableCatgirl> but
L519[14:56:51] <AdorableCatgirl> my OS isn't ready yet
L520[14:56:53] <AdorableCatgirl> kek
L521[14:56:55] <BohemianHacks> https://tenor.com/view/knowmore-gif-9636468
L522[14:57:09] <AdorableCatgirl> i'm just here to S H I L L
L523[15:03:03] <bauen1> my os (also not ready yet) will feature a more sane vt100 implementation (already working) and a sandbox for userspace programs
L524[15:04:01] <bauen1> and you can (technically) pass around handles between programs (handles can be files, processes, sockets)
L525[15:13:19] <BohemianHacks> @AdorableCatgirl shill me something that gives better memory managed types ?
L526[15:13:34] <BohemianHacks> tables just eat all the ram
L527[15:14:13] <AdorableCatgirl> f
L528[15:15:02] <Forecaster> serialize the tables to strings! :D
L529[15:15:03] <BohemianHacks> probably going to end up using something that using strings as binary blobs and maps them
L530[15:15:30] <BohemianHacks> @Forecaster that +1
L531[15:16:21] <BohemianHacks> basically skipping the whole tabling process at all and just have a string of a set length. index the characters and convert.
L532[15:17:04] <BohemianHacks> should be a little more efficient for numbers and stuff and avoid parsing a a whole string -> table back and forth
L533[15:18:53] ⇦ Quits: Izaya (Izaya!~izaya@210-1-218-92-cpe.spintel.net.au) (Ping timeout: 190 seconds)
L534[15:22:21] ⇨ Joins: Izaya (Izaya!~izaya@210.1.218.92)
L535[15:22:49] <AdorableCatgirl> Izaya: ?
L536[15:22:51] ⇨ Joins: nos (nos!~nos@dsl-hkibng41-56730a-6.dhcp.inet.fi)
L537[15:31:59] ⇦ Quits: MajGenRelativity (MajGenRelativity!~MajGenRel@c-73-123-203-209.hsd1.ma.comcast.net) (Quit: Leaving)
L538[15:48:13] <AdorableCatgirl> i wonder if luacomp would work in OpenOS
L539[15:49:20] ⇨ Joins: MajGenRelativity (MajGenRelativity!~MajGenRel@c-73-123-203-209.hsd1.ma.comcast.net)
L540[15:54:39] ⇦ Quits: baschdel (baschdel!~baschdel@2a02:6d40:3625:6601:54fe:4e96:d22f:897c) (Ping timeout: 198 seconds)
L541[16:52:57] ⇦ Quits: ben_mkiv|afk (ben_mkiv|afk!~ben_mkiv@88.130.156.105) (Remote host closed the connection)
L542[17:02:04] <BohemianHacks> "Strings in Lua are immutable."
L543[17:02:13] <BohemianHacks> Why does this language hate me so much.
L544[17:02:18] <BohemianHacks> Why does this language hate me so much? [Edited]
L545[17:06:40] <AmandaC> Don't be silly
L546[17:07:01] <AmandaC> It doesn't hate you, it hates itself and is taking it out on you
L547[17:07:59] ⇦ Quits: bauen1 (bauen1!~bauen1@ipbcc03b58.dynamic.kabel-deutschland.de) (Ping timeout: 204 seconds)
L548[17:08:40] <BohemianHacks> new plan: use bitwise operators to treat a number like a binary blob
L549[17:10:04] <AmandaC> Numbers are binary blobs
L550[17:10:14] <BohemianHacks> exactly
L551[17:10:28] <BohemianHacks> but I mean for more efficiently storing non-numbers
L552[17:10:59] <BohemianHacks> at this point I feel like im implementing shitty C inside lua, which is running inside java
L553[17:11:50] <AmandaC> If it makes you feel any better, by default oc doesn't use a Java Lua vm
L554[17:13:03] ⇨ Joins: bauen1 (bauen1!~bauen1@ipbcc03b58.dynamic.kabel-deutschland.de)
L555[17:13:09] <BohemianHacks> thats good, the meta was poised to kill me
L556[17:13:31] <AmandaC> %inv list
L557[17:13:32] <MichiBot> AmandaC: Here's my inventory: http://michibot.pc-logix.com/inventory
L558[17:14:00] <AmandaC> %give MichiBot grandma's glass eyeball
L559[17:14:00] * MichiBot accepts grandma's glass eyeball and adds it to her inventory
L560[17:14:21] <AmandaC> %give MichiBot 80lbs of drywall
L561[17:14:21] * MichiBot accepts 80lbs of drywall and adds it to her inventory
L562[17:14:53] <AmandaC> %give MichiBot every single item from the March issue of skymall
L563[17:14:53] * MichiBot accepts every single item from the March issue of skymall and adds it to her inventory
L564[17:15:00] <BohemianHacks> %give purpose
L565[17:15:00] * MichiBot searches through her inventory for a bit. "I couldn't find anything..."
L566[17:15:27] <BohemianHacks> me too Michibot, me too
L567[17:15:50] <BohemianHacks> %give MichiBot purpose
L568[17:15:51] * MichiBot accepts purpose and adds it to her inventory
L569[17:16:41] <AmandaC> it's right here, michibot https://usercontent.irccloud-cdn.com/file/L1ejz1IR/Screenshot_20191105-181553.png
L570[17:25:18] <Lizzy> %invadd a soggy sock
L571[17:25:25] <Lizzy> %inv add a soggy sock
L572[17:25:25] * MichiBot summons 'a soggy sock' and adds to her inventory. I could get some good swings in with this.
L573[17:25:52] <Lizzy> %inv add Season 3 of Brexit
L574[17:25:53] * MichiBot summons 'Season 3 of Brexit' and adds to her inventory. I could get some good swings in with this.
L575[17:25:56] <Forecaster> %juggle
L576[17:25:56] * MichiBot juggles with every single item from the March issue of skymall, Something, & a soggy sock
L577[17:25:57] * MichiBot drops Something which takes 3 damage
L578[17:25:58] * MichiBot drops a soggy sock which takes 4 damage
L579[17:25:59] <MichiBot> I didn't do it!
L580[17:36:23] ⇦ Quits: flappy (flappy!~flappy@88-113-149-197.elisa-laajakaista.fi) (Ping timeout: 190 seconds)
L581[17:42:07] ⇨ Joins: flappy (flappy!~flappy@88-113-149-197.elisa-laajakaista.fi)
L582[17:47:28] ⇦ Quits: Inari (Inari!~Pinkishu@pD9E8FB2B.dip0.t-ipconnect.de) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/)
L583[17:49:49] ⇦ Quits: Vexatos (Vexatos!~Vexatos@port-92-192-228-195.dynamic.qsc.de) (Quit: Insert quantum chemistry joke here)
L584[17:51:01] <The_Stargazer> wait, what happened to michibot's inventory
L585[17:51:07] <The_Stargazer> was it reset or something?
L586[17:57:03] ⇨ Joins: schloops (schloops!webchat@d51A4D275.access.telenet.be)
L587[17:58:28] <AmandaC> Yup
L588[18:01:21] <Caitlyn> Yep, flushed the table, and then saved over the copy I had made..
L589[18:01:25] <Caitlyn> then uploaded over the original.
L590[18:01:55] <CompanionCube> shame about no backups :(
L591[18:03:25] <AdorableCatgirl> Code Block pastebined https://paste.pc-logix.com/efonebizah
L592[18:03:25] <AdorableCatgirl> sin
L593[18:04:13] <BohemianHacks> so numbers can only be shift filled with 32 bits. Its looking like the most memory efficient way I can store data is a 1d array of numbers.
L594[18:04:50] <BohemianHacks> wont bother flattening the table when stored to disk, ill just use the normal serialization
L595[18:05:08] <AdorableCatgirl> wait wot
L596[18:05:40] <AdorableCatgirl> the fuck you on about
L597[18:06:01] <BohemianHacks> filling an array with bitwise manipulated numbers to save ram
L598[18:06:05] <AdorableCatgirl> i mean like
L599[18:06:14] <AdorableCatgirl> are you on Lua 5.2 or 5.3
L600[18:06:28] <BohemianHacks> whatever 1.12 OC is
L601[18:06:37] <BohemianHacks> it has bit32 baked in
L602[18:06:39] <AdorableCatgirl> it can have both
L603[18:06:42] <AdorableCatgirl> and both do
L604[18:06:43] <AdorableCatgirl> uh
L605[18:06:54] <AdorableCatgirl> did you take the CPU out of the creative menu?
L606[18:07:02] <BohemianHacks> nope
L607[18:07:06] <AdorableCatgirl> so
L608[18:07:11] <AdorableCatgirl> you crafted the CPU, correct?
L609[18:07:14] <BohemianHacks> lua 5.2
L610[18:07:17] <AdorableCatgirl> yeah
L611[18:07:26] <BohemianHacks> I used transmutation tablet
L612[18:07:30] <AdorableCatgirl> lua 5.3 has 64-bit ints
L613[18:07:51] <BohemianHacks> same answer either way though
L614[18:07:59] <AdorableCatgirl> http://tinyurl.com/y27nkd2z
L615[18:08:07] <BohemianHacks> if I need to store a chunks worth of pathing data
L616[18:08:25] <BohemianHacks> so if I craft a cpu i get 5.3?
L617[18:08:31] <AdorableCatgirl> i mean
L618[18:08:38] <AdorableCatgirl> you can just take the CPU out and shift click it
L619[18:09:14] <BohemianHacks> wtf is this sorcery
L620[18:09:34] <BohemianHacks> well shit, that made my life way easier
L621[18:09:39] <AdorableCatgirl> yea
L622[18:09:43] ⇦ Quits: flappy (flappy!~flappy@88-113-149-197.elisa-laajakaista.fi) (Ping timeout: 190 seconds)
L623[18:09:47] <BohemianHacks> i was using the stupid bit32.rshift()
L624[18:09:53] <AdorableCatgirl> Code Block pastebined https://paste.pc-logix.com/ilepovofas
L625[18:09:56] <AdorableCatgirl> hackerman
L626[18:10:20] <BohemianHacks> not gonna lie, I have no idea the advantage of the macro approach you have been doin
L627[18:11:17] <AdorableCatgirl> well it just means i don't have to write Code Block pastebined https://paste.pc-logix.com/okezopoyef a bunch of times
L628[18:14:47] <schloops> hi all; in my launcher file, I have shell.setPath(shell.getPath() .. ":/home/wincraft") and then I require "xxx" and there's a correct xxx.lua file in /home/wincraft and I get the error message: module 'xxx' not found and in the error stack, I see it isn't looking in /home/wincraft -- a'm I doing something wrong?
L629[18:16:18] <Soni> why not use tmpfs?
L630[18:16:48] <schloops> I've printed shell.getPath() and it shows :/home/wincraft at the end of the path
L631[18:17:10] <schloops> ignorance I guess? Lemme check what that is :)
L632[18:17:52] <BohemianHacks> @AdorableCatgirl 5.3 has made suicide less likely. thank you
L633[18:18:07] <BohemianHacks> stupidly easy to cram bytes into things now
L634[18:19:28] <Soni> ... am I the only person who uses tmpfs files as modifiable byte buffers?
L635[18:22:29] <schloops> how a'm I supposed to modify the paths where lua looks for modules to require please?
L636[18:24:48] <BohemianHacks> Soni, was that to me?
L637[18:24:57] <Soni> yes
L638[18:25:43] <BohemianHacks> Havent messed with it
L639[18:26:30] <BohemianHacks> not really seeing any documentation on it
L640[18:26:58] <BohemianHacks> if you just mean using a file and seeking around it in, im working up to that point yes
L641[18:27:49] <BohemianHacks> Just not sure how fast HDD r/w really is, so the longer I can stay in ram the better
L642[18:29:55] <Soni> it's not very documented but basically just use /tmp/
L643[18:30:42] <BohemianHacks> yeah, makes sense for some stuff. If my pathing is still a memory hog I may use it, but for the actual scan data I want to store it for later anyways
L644[18:31:10] <BohemianHacks> some long complex paths have generated queues of like 2k nodes
L645[18:34:06] <Soni> in real life tmpfs is variable-size and basically fills RAM, but in OC it is separate from installed RAM because OC
L646[18:34:14] <Soni> idk about perf
L647[18:36:31] <BohemianHacks> I was wondering about a way to get swap, so this is probably as close as it gets.
L648[18:37:12] <BohemianHacks> its is just stored in some quasi extra dimensional storage or does it exist on disk somewhere?
L649[18:38:17] <Soni> it's stored in RAM
L650[18:41:17] <BohemianHacks> but not the installed RAM
L651[18:41:26] <BohemianHacks> so... quasi dimensional storage
L652[18:41:57] <Soni> not the "in-game RAM"
L653[18:42:20] <Soni> it uses java RAM instead of lua RAM
L654[18:42:30] <BohemianHacks> Nothing outside that exists, dont break my immersion ?
L655[18:42:39] <Soni> uh
L656[18:42:51] <Soni> I'm the one putting a digital audio workstation in a voxel game
L657[18:42:58] <Soni> I'll break however many immersions I want to :p
L658[18:44:04] <Soni> (I'd even argue that increases the immersion, because you get to interface the game with real life stuff)
L659[18:44:21] <Soni> (i.e. you feel more inside the game)
L660[18:49:52] <BohemianHacks> game is life
L661[18:51:02] ⇦ Quits: ATMunn (ATMunn!ATMunn@hellomouse.net) (Quit: lol rip)
L662[18:54:21] ⇨ Joins: ATMunn (ATMunn!ATMunn@hellomouse.net)
L663[19:00:35] ⇦ Quits: schloops (schloops!webchat@d51A4D275.access.telenet.be) (Quit: webchat.esper.net)
L664[19:15:02] <Izaya> Afternoon, nerds
L665[19:15:51] <AdorableCatgirl> sup nerd
L666[19:16:07] <AdorableCatgirl> are you ready for an all new and improved version of luapreproc that i've spammed you with all day
L667[19:23:18] <BohemianHacks> I prefer the old one
L668[19:27:14] ⇨ Joins: BlueAgent (BlueAgent!~BlueAgent@110.146.209.71)
L669[19:50:19] <AmandaC> meowfternoon, Izaya
L670[19:51:51] <Soni> https://github.com/MightyPirates/OpenComputers/issues/3170
L671[19:51:52] <MichiBot> Title: Lua /tmp should be as fast as messing about with tables, and files in it should count towards memory limit | Posted by: SoniEx2 | Posted: Tue Nov 05 18:38:56 CST 2019 | Status: closed
L672[19:52:25] <Soni> all my issues get insta-closed for the most senseless reasons and it sucks
L673[19:53:12] <Izaya> If you want RAM speed tmpfs, implement a tmpfs in RAM
L674[19:53:35] ⇦ Quits: Thutmose (Thutmose!~Patrick@host-69-59-79-181.nctv.com) (Quit: Leaving.)
L675[19:54:04] <Izaya> The speed limitations are due to being a component
L676[19:54:14] <AdorableCatgirl> that and balance
L677[19:55:00] <Soni> so allow components to run in-thread and ignore the speed limitations if they opt-in to it
L678[19:55:37] * Izaya gives Soni vcomponent
L679[19:55:55] <AdorableCatgirl> my mod's EEPROMs run as fast as possible lmao
L680[19:57:00] <AdorableCatgirl> read, that is
L681[19:57:06] <Soni> or just give us a "raw memory" object that can be resized as needed and is freely modifiable and is basically a ByteBuffer that counts towards the memory cap
L682[19:57:38] <Soni> why does RAM not have "speed limitations due to being a component" while everything else does?
L683[19:58:14] <AdorableCatgirl> RAM is what limits component speed iirc?
L684[19:58:23] <Soni> and why doesn't OC expose anything like "raw RAM", either as /tmp or with native buffers or anything else, counting towards the memory cap?
L685[19:58:48] <AdorableCatgirl> i mean a string is just a char array iirc
L686[19:58:55] <AdorableCatgirl> as in C char
L687[19:59:47] <Izaya> RAM isn't a component
L688[19:59:53] <Izaya> it's part of the Lua environment
L689[20:00:50] <Soni> as far as anyone messing about with the computer inventory GUI is concerned, RAM is a component
L690[20:01:34] <AdorableCatgirl> as far as OC's Lua enviroment is concerned, RAM is not a component
L691[20:01:40] <The_Stargazer> doesn't lshw list RAM?
L692[20:01:44] <AdorableCatgirl> it does
L693[20:01:52] <Izaya> >doesn't expose a component to interact with
L694[20:01:55] <AdorableCatgirl> cause it's technically there but iirc it doesn't give an enviroment
L695[20:02:00] <Soni> maybe it should
L696[20:02:03] <Izaya> >doesn't require interaction via the component API to function
L697[20:02:06] <Soni> for "raw RAM"
L698[20:02:07] <Izaya> it's not a component
L699[20:02:12] <AdorableCatgirl> "raw RAM"
L700[20:02:14] <AdorableCatgirl> the fuck you on about
L701[20:02:20] <Izaya> AdorableCatgirl: strings
L702[20:02:21] <AdorableCatgirl> you ain't gonna get raw ram, this is lua
L703[20:02:26] <Izaya> literally just strings
L704[20:02:31] <AdorableCatgirl> well besides strings, yea
L705[20:02:44] <AdorableCatgirl> but if you want "raw RAM", make your own CPU arch
L706[20:02:44] <Izaya> rawRam = ("\0"):rep(2^16)
L707[20:02:47] <Soni> well, I'd like to see dynamically resizable unmanaged (i.e. raw bytes, no FS) tmpfs
L708[20:02:49] <AdorableCatgirl> kek
L709[20:02:55] <Soni> with mutable access
L710[20:03:10] <AdorableCatgirl> make your own CPU arch ez
L711[20:03:14] <AdorableCatgirl> B)
L712[20:03:14] <Izaya> so you want
L713[20:03:18] <Izaya> a block device
L714[20:03:22] <Izaya> that resides in Lua memory
L715[20:03:27] <Soni> yeah
L716[20:03:31] <Izaya> and is resizable?
L717[20:03:35] <Soni> yeah
L718[20:03:37] <AdorableCatgirl> string
L719[20:03:38] <Izaya> so a string with functions to interact with it.
L720[20:03:39] <Soni> I want ByteBuffers
L721[20:03:54] <AdorableCatgirl> string. take it or leave it.
L722[20:04:00] <Soni> literally just expose java's ByteBuffers and you're done
L723[20:04:12] <Soni> and don't put speed limits on it ¬_¬
L724[20:04:16] <AdorableCatgirl> so
L725[20:04:18] <AdorableCatgirl> you see
L726[20:04:19] <AdorableCatgirl> the problem is
L727[20:04:31] <AdorableCatgirl> one doesn't simply "remove from the memory cap", iirc
L728[20:05:57] <The_Stargazer> how do you have two functions refer to each other?
L729[20:05:59] <Soni> being able to use RAM like that as unixlike sockets would also be pretty cool tbh
L730[20:06:06] <The_Stargazer> iirc functions only have access to functions defined before themselves
L731[20:06:28] <Izaya> use a table, defined before both
L732[20:06:30] <AdorableCatgirl> ez
L733[20:06:35] <AdorableCatgirl> local both before their def
L734[20:06:40] <Soni> declare it before you define it
L735[20:06:43] <AdorableCatgirl> like their function body
L736[20:06:46] <The_Stargazer> ah, thanks
L737[20:06:51] <Izaya> Soni: so, like implementing Lua sockets in Lua?
L738[20:06:57] <AdorableCatgirl> or if their global
L739[20:06:58] <Izaya> s/Lua/Unix/
L740[20:06:58] <AdorableCatgirl> just
L741[20:06:59] <MichiBot> <Izaya> Soni: so, like implementing Unix sockets in Lua?
L742[20:07:02] <AdorableCatgirl> don't worry about it
L743[20:07:04] <Soni> local foo local function bar() foo() end function foo() print("declared before defined") end bar()
L744[20:07:18] <Soni> Izaya: using "raw memory", yeah
L745[20:07:30] <Izaya> ?.?
L746[20:07:32] <Izaya> but
L747[20:07:35] <Izaya> you have raw memory
L748[20:07:41] <Izaya> you can define strings and numbers and tables
L749[20:07:45] <Izaya> that uses memory
L750[20:07:49] <Soni> then the built-in /tmp becomes entirely pointless
L751[20:07:52] <Izaya> literally everything you've said
L752[20:07:57] <Izaya> is implementable in Lua
L753[20:08:05] <Soni> *sigh*
L754[20:08:12] <AdorableCatgirl> S I G H
L755[20:08:22] <Soni> Izaya: please replace openos /tmp with that, if it's so good as you say it is
L756[20:08:28] <Izaya> which doesn't add maintenance-requiring code to the mod
L757[20:08:30] <Izaya> okay
L758[20:08:32] <Izaya> fuckin
L759[20:08:33] <AdorableCatgirl> i've been proven wrong and i can't think of a way to respond so i must post S I G H
L760[20:08:34] <Izaya> challenge accepted
L761[20:08:41] <Soni> and get it done by tomorrow
L762[20:08:46] <AdorableCatgirl> >time limit
L763[20:08:47] <Izaya> tomorrow?
L764[20:08:57] <AdorableCatgirl> i mean if izaya is anything like me, shit's slow
L765[20:08:59] <Izaya> I have my course tonight and work tomorrow
L766[20:09:03] <AdorableCatgirl> luacomp took me two days
L767[20:09:08] <AdorableCatgirl> :^)
L768[20:09:21] <Soni> then just bolt ByteBuffers into it, you can do that in 5 minutes
L769[20:09:21] <Izaya> but Soni
L770[20:09:25] <Izaya> you do realise
L771[20:09:33] <Soni> and, also, you can remove code by replacing /tmp
L772[20:09:34] <Izaya> a) there are like 6 different buffer libraries in pure Lua
L773[20:09:39] <Soni> because then you don't need the existing /tmp code
L774[20:09:48] <Soni> you can just remove all that out
L775[20:09:57] <Izaya> b) making a virtual component is ez
L776[20:09:59] <AdorableCatgirl> and now it's down to 6K 'cause i didn't realize that argparse was massive
L777[20:10:07] <Soni> and then just use ByteBuffers instead
L778[20:10:11] <AdorableCatgirl> why
L779[20:10:19] <AdorableCatgirl> why are you so obsessed with bytebuffers
L780[20:10:32] <Izaya> AdorableCatgirl: would the OpenOS shell arg parsing function work?
L781[20:10:44] <Soni> (well, *one* resizable ByteBuffer, but w/e)
L782[20:10:44] <AdorableCatgirl> christ almighty whenever you--
L783[20:10:49] <AdorableCatgirl> Izaya: probably
L784[20:11:05] <Izaya> should find out
L785[20:11:09] <Izaya> that one function is pretty small
L786[20:11:11] <AdorableCatgirl> anyways christ almighty whenever you encounter a problem you run to the issues to have this terrible issue patched out!
L787[20:11:16] <The_Stargazer> can anyone recommend a good OC GUI lib?
L788[20:11:18] <Soni> (remember to implement the ability to shift things around to avoid fragmentation)
L789[20:11:29] <AdorableCatgirl> because you cba to figure your way around it
L790[20:11:30] <Izaya> like letting Lua manage memory?
L791[20:11:37] <AdorableCatgirl> *speedbump not problem
L792[20:11:54] <The_Stargazer> i've tried interface, charts, libforms, and gml
L793[20:11:55] <The_Stargazer> gml doesn't work, interface is weird, libforms doesn't do what I need it to do, and charts doesn't have what I need
L794[20:11:55] <Soni> no, let Lua manage /tmp's ByteBuffer
L795[20:12:19] <AdorableCatgirl> but i mean, if you need something from java so bad, just mod it in, ez
L796[20:12:28] <AdorableCatgirl> learn java/scala/kotlin
L797[20:12:36] <AdorableCatgirl> whichever you prefer
L798[20:14:02] <AdorableCatgirl> anyways, woo 6K luacomp
L799[20:14:22] <Izaya> a shame I never commited the PsychOS buffer library
L800[20:14:25] <Izaya> it did this amazing thing
L801[20:14:27] <Soni> I'm gonna sleep, but, basically, implement real-life tmpfs in OC and make it official. give it the performance and mutability benefits of real tmpfs while still working within the limits of the sandbox
L802[20:14:38] <AdorableCatgirl> why
L803[20:14:42] <AdorableCatgirl> why make it official
L804[20:14:54] <Izaya> it implemented a buffer using a string and wrapped it in a table so you could :read and :write to it
L805[20:15:03] <AdorableCatgirl> oh shit
L806[20:15:08] <AmandaC> Soni: gimme 50$ and I'll get right on all that
L807[20:15:12] <Soni> (aka: memory cap. no twiddling Lua strings because that has GC overhead.)
L808[20:15:13] <AdorableCatgirl> i had something like that--k e k
L809[20:15:19] <AdorableCatgirl> ???
L810[20:15:29] <AdorableCatgirl> Soni: you don't like limits, huh?
L811[20:15:36] <Izaya> have you considered:
L812[20:15:37] <AdorableCatgirl> maybe you should go use CC :^)
L813[20:15:38] <Izaya> computercraft
L814[20:15:39] <Soni> (well, GC *and* interning overhead)
L815[20:15:51] <Soni> yeah, computercraft also doesn't have anything like real tmpfs
L816[20:15:56] <Soni> or buffers
L817[20:15:59] <AmandaC> Have you considered the Java <-> C <-> Lu overhead?
L818[20:15:59] <Soni> or anything
L819[20:16:00] <AdorableCatgirl> but you seem to not like limits
L820[20:16:01] <Izaya> it has Lua
L821[20:16:03] <Izaya> go and implement them
L822[20:16:21] <AdorableCatgirl> so CC might be more your speed B)
L823[20:16:34] <AmandaC> The whole reason components have limits is because the C <-> Java thing is super expensive to jump
L824[20:16:36] <Soni> AmandaC: comparable to C <-> kernel overhead on a 486
L825[20:16:39] <AmandaC> JNI is expensive
L826[20:16:54] <Izaya> side note
L827[20:16:59] <The_Stargazer> so I have this program, but whenever I run it it exits in like 2 seconds
L828[20:17:09] <The_Stargazer> and i have no idea why
L829[20:17:12] <Soni> (well, userland <-> kernel)
L830[20:17:19] <Izaya> component tmpfs a good because it provides somewhere to use as a filesystem even on machines that don't have any filesystem hardware
L831[20:17:26] <The_Stargazer> i can't print anything bc the graphical lib sets the screen background to white when printing
L832[20:17:31] <Izaya> which simplifies implementation of some things significantly
L833[20:17:35] <AdorableCatgirl> yea!
L834[20:17:39] <Soni> Izaya: use RAM
L835[20:17:45] <The_Stargazer> i can't print anything bc the graphical lib sets the screen background to white when clearing the screen [Edited]
L836[20:17:45] <AmandaC> It does.
L837[20:17:46] <Soni> as in, Lua RAM
L838[20:17:49] <Izaya> The_Stargazer: io.output("/tmp/test") and print
L839[20:17:57] <The_Stargazer> ?
L840[20:18:03] <Izaya> io.output() redirects stdout
L841[20:18:07] <Soni> AmandaC: if JNI is so expensive then how the fuck OpenGL
L842[20:18:09] <The_Stargazer> right, right
L843[20:18:10] <The_Stargazer> thanks
L844[20:18:17] <The_Stargazer> but wait
L845[20:18:20] <The_Stargazer> i have text on-screen
L846[20:18:25] <The_Stargazer> will that get redirected too?
L847[20:18:25] <AdorableCatgirl> tmpfs is also how the ROMFS bios works :P
L848[20:18:30] <Izaya> are you using io or the GPU to do it?
L849[20:18:31] <The_Stargazer> like button labels
L850[20:18:33] <Soni> I'm gonna sleep
L851[20:18:35] <AdorableCatgirl> it's pretty neat
L852[20:18:37] <AmandaC> Soni: you may have noticed that Minecraft doesn't exactly run on toasters.
L853[20:18:40] <The_Stargazer> idk how the graphics lib does it
L854[20:18:49] <Soni> AmandaC: does Pi 3 count as toaster?
L855[20:18:56] <Izaya> if it's using the GPU to do it it'll be fine
L856[20:19:15] <Soni> because, if so, then it sure does
L857[20:19:18] <Soni> not very well, but it does
L858[20:19:21] <Izaya> >Pi3
L859[20:19:24] <Izaya> >$70
L860[20:19:28] <Izaya> >multiple cores
L861[20:19:30] <Izaya> not a toaster
L862[20:19:31] <AmandaC> %8ball veg out and unplug?
L863[20:19:31] <MichiBot> AmandaC: Reply hazy, try again
L864[20:19:32] <AdorableCatgirl> Pi3 is pretty beefy
L865[20:19:36] <Soni> >$35
L866[20:19:42] <AdorableCatgirl> especially for it's price
L867[20:19:45] <AmandaC> %8ball ^
L868[20:19:45] <MichiBot> AmandaC: Ask again later
L869[20:19:52] <AdorableCatgirl> Soni: Izaya is Australian
L870[20:19:53] * AmandaC glares at MichiBot
L871[20:20:07] <AdorableCatgirl> just hope you realize that
L872[20:20:09] <AdorableCatgirl> :^)
L873[20:20:10] <Izaya> https://www.jaycar.com.au/raspberry-pi-3b-single-board-computer/p/XC9000
L874[20:20:22] <AdorableCatgirl> unless you have my messages m u t e d
L875[20:20:27] <AmandaC> %choose veg out to youtune or continue playing X4
L876[20:20:32] <Izaya> the Pi4 is $90
L877[20:20:33] <MichiBot> AmandaC: Elementary dear Watson, "continue playing X4" is the obvious choice!
L878[20:20:34] <Izaya> fun times
L879[20:20:50] <Soni> Izaya: get a better country
L880[20:21:01] <Izaya> get better at Lua :^)
L881[20:21:03] <The_Stargazer> ok so the button click function is dying
L882[20:21:16] <The_Stargazer> interruptSafely status is `running`
L883[20:21:20] <The_Stargazer> but getClicked status is `dead
L884[20:21:27] <The_Stargazer> but getClicked status is `dead` [Edited]
L885[20:21:37] <AdorableCatgirl> oh yeah so
L886[20:21:42] <Izaya> metatable functions start with 2 underscores, right?
L887[20:21:47] <AdorableCatgirl> i'm trying to have OpenOS itself yield--yeah
L888[20:21:54] <Izaya> okey shiny
L889[20:22:09] <AdorableCatgirl> i'm trying to have OpenOS itself yield to let BIOS-level threads run but OpenOS goes "nah g, time to implode"
L890[20:22:12] <AdorableCatgirl> what do
L891[20:22:36] <The_Stargazer> it gets a touch event?
L892[20:22:41] <The_Stargazer> i'm not clicking the screen tho
L893[20:22:42] <The_Stargazer> that's odd
L894[20:23:11] <Soni> if you show me a pure-Lua *high-performance* buffer library, I'll eat shit
L895[20:23:18] <The_Stargazer> huh
L896[20:23:23] <Izaya> give me like
L897[20:23:25] <Izaya> 5 minutes
L898[20:23:34] <The_Stargazer> changing `event.pull(1, "touch")` to `event.pull("touch")` fixed it
L899[20:23:36] <Soni> and by high-performance I mean comparable to native buffers
L900[20:23:57] <AdorableCatgirl> when the hell do you need that kind of performance in OC
L901[20:24:13] <AdorableCatgirl> i mean OSSM has really high read speed EEPROM cards but lmao
L902[20:24:17] <Soni> (as in patched Lua with native buffers)
L903[20:24:23] <AdorableCatgirl> write speed is t e r r i b l e
L904[20:24:28] <The_Stargazer> OSSM?
L905[20:24:32] <Izaya> https://0x0.st/zgvS.txt
L906[20:24:38] <Izaya> oh I forgot to return buffer at the end
L907[20:24:50] <AdorableCatgirl> OpenSolidState
L908[20:24:55] <The_Stargazer> and the M?
L909[20:25:08] <Izaya> https://0x0.st/zgvQ.txt
L910[20:25:08] <AdorableCatgirl> originally stood for "Modules" but was dropped
L911[20:25:08] <AdorableCatgirl> lmao
L912[20:25:20] <Soni> (yeah, C API buffers library is gonna be slower, but would be closer to built-in buffers than trying to emulate them in pure-Lua)
L913[20:25:40] <Izaya> because I was on such a tight time limit I didn't implement any fun read modes, only supports numbers to read from the buffer :^)
L914[20:25:50] <Soni> Izaya: yeah, I ain't eating shit over this
L915[20:26:00] <Soni> this is far from high-performance
L916[20:26:01] <Izaya> ?.?
L917[20:26:05] <Izaya> oh?
L918[20:26:07] <Izaya> do tell
L919[20:26:09] <AdorableCatgirl> WHEN
L920[20:26:10] <AdorableCatgirl> DO YOU NEED
L921[20:26:17] <AdorableCatgirl> fuck it
L922[20:26:21] <Soni> just write 1500 bytes one at a time
L923[20:26:27] <AdorableCatgirl> ez
L924[20:26:36] <Soni> and compare it to real native buffers
L925[20:26:55] <Izaya> I suppose one *could* write functions that use a string directly rather than indexing a table
L926[20:27:28] <Izaya> but that kinda makes the API obnoxious to use, no?
L927[20:27:41] <Soni> also that's a LIFO, not a buffer
L928[20:28:04] <Izaya> ?.?
L929[20:28:25] <Izaya> pretty sure that's a FIFO
L930[20:28:34] <Soni> eh idk the terms
L931[20:28:36] <Izaya> :write appends data, :read pulls data from the start
L932[20:28:38] <Soni> w/e
L933[20:28:44] <Soni> ah, okay
L934[20:28:59] <Izaya> at any rate, sounds like moving the goalposts to me :^)
L935[20:29:04] <Soni> anyway, granted "buffer" is a bit of an overloaded term
L936[20:29:32] <Soni> but basically this has always been about "random-access byte arrays"
L937[20:29:55] <Soni> which you'd know if you had read everything from the start
L938[20:30:13] <Soni> well, "high-performance random-access byte arrays" tbh
L939[20:30:31] <Soni> but w/e
L940[20:30:38] * AmandaC wonders how much more sense the channel would make with Soni on her ignore.
L941[20:31:13] <Izaya> so
L942[20:31:18] <Izaya> you want random-access memory
L943[20:31:22] <Izaya> ie a string
L944[20:31:27] <Izaya> so you can implement FIFOs on top of it
L945[20:31:28] <Soni> like, literally, that person's use-case was "how do I get fast poking bytes in an array without eating up all the RAM at 48 bytes per byte"
L946[20:31:29] <Izaya> to represent files
L947[20:32:03] <Soni> (using tables of numbers eats up 48 bytes per byte)
L948[20:32:59] <Izaya> using tables of numbers is pants on head retarded given Lua numbers are floats, nominally
L949[20:33:12] <Soni> it is fast tho
L950[20:33:27] <AdorableCatgirl> AmandaC: afaict Soni ignored me
L951[20:33:33] <Soni> not as fast as real byte buffers tho
L952[20:34:12] <Soni> meh
L953[20:34:18] <Soni> just give ppl buffers
L954[20:35:47] <AdorableCatgirl> tell Soni that the buffers would then exist out of lua's memory which creates a problem
L955[20:35:58] <Izaya> 13:35 <AdorableCatgirl> tell Soni that the buffers would then exist out of lua's memory which creates a problem
L956[20:36:08] <AmandaC> AdorableCatgirl: but it's "easy" to just make the memory limits dynamic!
L957[20:36:23] <Izaya> >allocate a big buffer
L958[20:36:31] <Izaya> >accidentally use several times the free memory
L959[20:36:33] <Izaya> >crash the machine
L960[20:36:34] <CompanionCube> Izaya: out of everything in the system
L961[20:36:35] <Izaya> oops
L962[20:36:49] <CompanionCube> the thing that hates swap the most is surely fireofox
L963[20:36:57] <Izaya> CompanionCube: zramswap :^)
L964[20:37:24] <CompanionCube> someone said they had a program that made them OOM
L965[20:37:44] <CompanionCube> it didn't make me OOM and the system was mostly very responsive despite using 14G of memory
L966[20:38:21] <CompanionCube> but it would seem firefox takes longer to recover than the entire duration of the program.
L967[20:38:32] <Izaya> nice
L968[20:39:07] <CompanionCube> ...heh would you look at that, i killed the script going on 10 minutes ago
L969[20:39:11] <CompanionCube> and only now did it recover.
L970[20:39:27] <Izaya> swapoff/swapon woulda fixed that
L971[20:39:34] <Izaya> forced the memory back into memory
L972[20:40:23] <CompanionCube> (note: box has 16G RAM, 16G swap mostly for hibernation purposes.
L973[20:40:37] * Izaya laughs in no swap
L974[20:41:35] <Soni> allocate them as heavy userdata so that you use the lua allocator
L975[20:43:38] <Soni> you can't even rowhammer with it. not only because one can fit multiple OC computers into one L3, and there are no flush instructions, but because OC also schedules the computers dynamically and Lua is quite slow no matter what you do.
L976[20:44:14] <Soni> btw freebsd has swap that actually works
L977[20:45:21] <Izaya> btw Haiku exists and is better than your operating system
L978[20:46:02] <Izaya> >string.sub is faster than using tables to store random data in LuaJIT
L979[20:46:21] <Izaya> >string.sub is faster for data over ~1KB in standard C interpreted Lua
L980[20:46:24] <Izaya> interdasting
L981[20:47:06] <Izaya> credit for these findings do, of course, go to my wonderful assistant AdorableCatgirl
L982[20:47:13] <Izaya> inb4 "I'm not your assistant"
L983[20:48:43] <Izaya> https://pics.me.me/this-is-clara-not-my-assistant-im-his-carer-shes-6344333.png
L984[20:50:24] <AdorableCatgirl> hmm http://tinyurl.com/y56b4rp7
L985[20:50:39] <AdorableCatgirl> PUC btw
L986[20:50:56] <AdorableCatgirl> goes from 64 bytes to 10240 bytes
L987[20:51:05] <Izaya> man, ignore is such a pain
L988[20:51:23] <AdorableCatgirl> rather odd, as once i put it in a loop, string was always faster
L989[20:51:29] <AdorableCatgirl> as one would expect
L990[20:51:31] <AdorableCatgirl> but still
L991[20:52:06] <AdorableCatgirl> but, hey, let's go for the extreme
L992[20:52:12] <AdorableCatgirl> increments of 1 byte
L993[20:52:55] <AdorableCatgirl> this may take a while
L994[20:53:37] <AdorableCatgirl> do do do
L995[20:53:45] <AdorableCatgirl> i bet it's table taking forever tbh
L996[20:53:53] <AdorableCatgirl> as this is LuaJIT
L997[20:57:43] <AdorableCatgirl> man
L998[20:57:51] <AdorableCatgirl> this test isn't making my terminal emulator very happy
L999[20:58:21] <Izaya> cat: target/init.lua: input file is output file
L1000[20:58:30] <Izaya> [cat hated this]
L1001[20:59:03] <AdorableCatgirl> are you trying to compile luacomp
L1002[20:59:14] <Izaya> no I am adding an _OSVERSION of PsychOS
L1003[20:59:19] <Izaya> to
L1004[20:59:35] <Izaya> :wq
L1005[20:59:47] <AdorableCatgirl> kek
L1006[20:59:51] <Izaya> echo _OSVERSION=\"PsychOS 2.0-$(git rev-parse --short HEAD)\" > target/version.lua
L1007[20:59:52] <AdorableCatgirl> also
L1008[20:59:53] <Izaya> cat target/version.lua target/init.lua > target/tinit.lua
L1009[20:59:55] <Izaya> mv target/tinit.lua target/init.lua
L1010[20:59:56] <CompanionCube> since mogg said stupid things today, have a bonus: 'When a young Jacob Rees-Mogg campaigned in Scotland with his nanny'
L1011[21:00:12] <AdorableCatgirl> so i tested from 1 to 10240 bytes
L1012[21:00:17] <AdorableCatgirl> the table was only faster one time
L1013[21:00:25] <AdorableCatgirl> probably at 1 byte
L1014[21:00:32] <AdorableCatgirl> everywhere else, string was faster
L1015[21:00:36] <AdorableCatgirl> PUC Lua btw
L1016[21:02:58] <AdorableCatgirl> alright
L1017[21:03:02] <AdorableCatgirl> i'll post my findings here
L1018[21:03:07] <AdorableCatgirl> Code Block pastebined https://paste.pc-logix.com/cukehemudo
L1019[21:03:37] <AdorableCatgirl> ofc this doesn't tell me every single result and where said things were faster
L1020[21:06:50] <AdorableCatgirl> i'll test a few more times and post even more results
L1021[21:07:09] <AdorableCatgirl> this genuinely has me interested
L1022[21:09:42] <Izaya> https://0x0.st/zgvt.htm
L1023[21:11:19] <AdorableCatgirl> oh shit neat
L1024[21:13:02] <AdorableCatgirl> Code Block pastebined https://paste.pc-logix.com/lugudaguwo
L1025[21:13:03] <AdorableCatgirl> WOT
L1026[21:13:05] <AdorableCatgirl> HOW
L1027[21:15:36] <Izaya> should I make an os.chdir function
L1028[21:16:00] <Izaya> potentially returning a table of the contents of the dir if successful?
L1029[21:17:04] <AdorableCatgirl> hmm
L1030[21:18:14] <Izaya> scrap the latter part, incurs another component call
L1031[21:19:36] <AdorableCatgirl> oh
L1032[21:19:38] <AdorableCatgirl> sounds cool then
L1033[21:19:54] <Izaya> means you don't have to implement your own chdir logic
L1034[21:20:13] <AdorableCatgirl> neat
L1035[21:22:15] <AdorableCatgirl> LuaJIT w/ JIT on vs LuaJIT w/ LuaJIT off with the string vs table thing results in no difference
L1036[21:22:25] <AdorableCatgirl> meaning that tables were the bulk of the slow
L1037[21:24:39] <AdorableCatgirl> i don't remember the specifics but iirc it has to do with the fact that it needs to go through the C API for the table?
L1038[21:26:04] <AdorableCatgirl> ? SONI IS GONE ?
L1039[21:26:09] <AmandaC> %give MichiBot a candle with a handle
L1040[21:26:09] * MichiBot accepts the candle with a handle and adds it to her inventory
L1041[21:26:35] <AmandaC> %give MichiBot a single Velcro sandal
L1042[21:26:35] * MichiBot accepts the single Velcro sandal and adds it to her inventory
L1043[21:27:00] <AmandaC> %give MichiBot an old court order for a drug-related scandal
L1044[21:27:00] * MichiBot accepts the old court order for a drug-related scandal and adds it to her inventory
L1045[21:27:34] <AdorableCatgirl> %give MichiBot the crab emoji ?
L1046[21:27:34] * MichiBot accepts the crab emoji ? and adds it to her inventory
L1047[21:27:38] <AdorableCatgirl> nice
L1048[21:27:45] <AdorableCatgirl> i now have to restart networkmanager
L1049[21:28:20] <AmandaC> Night nerds
L1050[21:28:21] <AdorableCatgirl> NM is restarted
L1051[21:28:24] <AdorableCatgirl> nite AC
L1052[22:35:19] <AdorableCatgirl> so OpenOS didn't want to boot because of how Zorya NEO handles it's threads
L1053[22:35:29] <AdorableCatgirl> well i made one small tweak to OpenOS and it seems™ to be booting fine
L1054[22:37:33] <AdorableCatgirl> http://tinyurl.com/yxh494ro
L1055[22:51:55] <Izaya> mfw I changed the VT100 driver in PsychOS to be saner and it broke backspace
L1056[23:29:39] <BohemianHacks> Izaya, numbers can be ints or floats under the hood. Strings are immutable, so to edit stuff in it you need 2x the memory per unit to edit. Given numbers max out at 4 bytes though, so a table of strings is probably still a good choice depending on block size. Either way, storing data in numbers isn't "pants on head retarded" given how much memory overhead the existing datatypes already have.
L1057[23:33:38] <BohemianHacks> Izaya, numbers can be ints or floats under the hood. Strings are immutable, so to edit stuff in it you need 2x the memory per unit to edit. Given numbers max out at 8 bytes though, so a table of strings is probably still a good choice depending on block size. Either way, storing data in numbers isn't "pants on head retarded" given how much memory overhead the existing datatypes already have. [Edited]
L1058[23:34:32] <Izaya> strings are not ideal but once the gc runs they are lower overhead
L1059[23:34:52] <Izaya> that said, yes, higher temporary overhead
L1060[23:38:14] <Izaya> also, ints are since 5.3
L1061[23:38:17] <BohemianHacks> Only reason I even checked out numbers was because strings being immutable is a pain, but since the largest block I can have in a single number is 8 bytes. A table of strings makes more sense for the most part
L1062[23:39:32] <BohemianHacks> not sure the exact ratio because of overhead per type, but im sure at some point a longer string would be more memory efficient than a number eventually
L1063[23:40:14] <BohemianHacks> ie a table of a bunch of numbers vs a table of a bunch of 16 char strings. The string table is probably lower memory.
L1064[23:40:40] <BohemianHacks> just not exactly sure where that point is
<<Prev Next>> Scroll to Top