<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:05:44] ⇦ Quits: ben_mkiv (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de) (Ping timeout: 189 seconds)
L2[00:07:39] ⇨ Joins: feldim2425_ (~feldim242@178-191-248-149.adsl.highway.telekom.at)
L3[00:08:44] <Clo​udy> Hey im using computronics with open computers, is there a way to make a tape infinite length. I know you can loop your audio for the entire length of a tape but once that tape ends (lets say the 128 minute one) can i loop that tape so it immediately starts from the beggining, making basically an infinite tape? If so how do i do that, if not is there a mod people know that can do that.
L4[00:08:44] <Clo​udy> Note:
L5[00:08:45] <Clo​udy> Im trying to add sounds that play near certain builds. Lets for example say i have a witch cabin on the water, id like to have a banjo be playing next to that cabin but infinitely so whenever i go by that area its playing that sound another example would be for my events on my server, have my spawn area have sounds being played like ghostly sounds if a player walks by a grave or something. Idk simple stuff like that.
L6[00:08:58] ⇦ Quits: feldim2425 (~feldim242@193-154-175-195.adsl.highway.telekom.at) (Ping timeout: 189 seconds)
L7[00:08:58] *** feldim2425_ is now known as feldim2425
L8[00:10:07] <Clo​udy> Also another note is that other than writing a tape and and the simplistics of the both mods i know nothing about custom codes and stuff within the mod so i cant personally do anything coding wise. I can follow a tutorial if someone sets it up or explains but anything technical i wont be able to do really
L9[00:10:07] <Kosmos> I guess you could have 2 identical tapes and play one while you rewind the other?
L10[00:10:21] <Izaya> rewinding is an instant operation
L11[00:10:38] <Izaya> and tape drives read audio in 4KiB blocks
L12[00:10:38] <Clo​udy> Can it all be done automatically like make it auto rewind when it reaches the end and start
L13[00:11:02] <Izaya> so once it gets to the last one you can rewind and it won't actually be interrupted
L14[00:11:16] <Clo​udy> Then i can make a sound clip thats 2 mins and have it loopable like have the begging note be the note after the end note sorta thing
L15[00:11:25] <Ri​ley> It’s been a while since I’ve used computertronics, but can you play from the beginning after waiting the duration of the track?
L16[00:12:17] <Clo​udy> Basically i want everything automatic so that way everything i go past the build or area i dont have to press play, everything will just rewind itself and press play without ever having to touch it after thr first time if that makes sense
L17[00:13:35] <Clo​udy> I obviously get why there couldnt be an infinite length tape as that would be alot of audio storage however if it can have an auto loop when it reaches the end of a 2 minute tape then that would be fine as i really only need a loopable 2 or 4 minute tape
L18[00:18:31] <Clo​udy> I understand that its super specific but ye it would really add some ambience to my builds/server. Other mods add music based off biome or use custom records but im not into the biome stuff and the custom record mods dont auto replay. Ive tried some tricky redstone stuff to allow for auto play but its really not a good fix as its very janky
L19[00:21:58] <Ri​ley> I assume you could have it work like the following:
L20[00:21:58] <Ri​ley> Code Block pastebined https://paste.pc-logix.com/ofajofekud
L21[00:22:39] <Izaya> if you have it end and start in silence it'd be safe to loop based on time
L22[00:22:58] <Izaya> if you need it to be a perfect loop you'd need to poll how far along it is by seeking to the start and then back
L23[00:23:22] <Clo​udy> Ok ya silence is fine to not a huge deal
L24[00:23:43] <Izaya> (or the same note, or something. just so that a little bit of difference doesn't matter)
L25[00:26:13] <Clo​udy> So wait im sorry if i sound dumb cause this is all new to me. How would i exactly imput all that @Riley ? And as an example lets just same im using the 2 minute tape and there silence for 5 seconds at the begging and the end
L26[00:28:40] <Ri​ley> What I gave wasn’t a working solution but rather a general idea of how it could work. You would input your own code into a lua file on a computer that is connected to the tape drive.
L27[01:03:48] <Amanda> Nene elfi, what do you think of this shade of ultra-violet? I was thinking of adjusting Sol to use it!
L28[01:05:24] <Clo​udy> @Riley ok gotcha, im assuming you dont know any other mod that does something like this? As i have no idea how to input or make or do anything with lua files. Im kinda dumb when it comes to this stuff.
L29[01:08:29] <Elfi> hmmm
L30[01:11:20] <Clo​udy> Seems like it would be a decently easy mod from a non moddy outlook
L31[01:11:29] <Clo​udy> Modder*
L32[01:13:40] <Ri​ley> It's possible with a resource pack where the client would have a registered sound event for the music, but arbitrary audio is tedious as it would require streaming the audio from the server to the client.
L33[01:13:44] <Clo​udy> Found this one buts its for a later version
L34[01:13:49] <Clo​udy> https://tinyurl.com/2bda3ova
L35[01:13:55] <Clo​udy> Im on 1.12.2
L36[01:18:59] <Clo​udy> Ok so this is weird i dont see a download for 1.12.2 but it says its supported?
L37[01:19:39] <Ri​ley> There is 1.12.2
L38[01:19:52] <Ri​ley> In between the 1.16.5 versions.
L39[01:20:04] <Clo​udy> Nvm ye found it
L40[01:20:23] <Clo​udy> Went to version filter and found it, must have scrolled past
L41[01:25:30] <Clo​udy> Thanks either way for the help. Even if i dont know how to use it lol. Have a good day sir
L42[02:20:25] ⇦ Quits: Kosmos (~kosmos@212-51-134-147.fiber7.init7.net) (Quit: Kosmos)
L43[02:20:56] * Amanda quietly adjusts the ongoing fusion process of Sol while @Nadja isn't looking
L44[02:21:14] * Amanda curls up around elfi, Ford a heccen zzzmew
L45[02:21:44] <Amanda> s/Ford/does/
L46[02:22:21] <Amanda> Night girls
L47[05:26:16] ⇨ Joins: Hawk777 (~Hawk777@2607:c000:828c:ba00:9923:89fd:ac87:5662)
L48[08:21:40] ⇨ Joins: TPG24 (~ThePiGuy2@host-78-144-113-28.as13285.net)
L49[08:23:03] ⇦ Quits: ThePiGuy24 (~ThePiGuy2@host-78-144-113-28.as13285.net) (Ping timeout: 186 seconds)
L50[08:45:19] ⇦ Quits: Hawk777 (~Hawk777@2607:c000:828c:ba00:9923:89fd:ac87:5662) (Quit: Leaving.)
L51[08:47:10] ⇨ Joins: Vexatos (~Vexatos@p200300eaef139f7810af1bd98f36ee51.dip0.t-ipconnect.de)
L52[08:47:10] zsh sets mode: +v on Vexatos
L53[09:05:07] <Va​ur> %tonkout
L54[09:05:07] <MichiBot> Geez! Va​ur! You beat S​ky's previous record of 10 hours, 51 minutes and 19 seconds (By 4 hours, 57 minutes and 15 seconds)! I hope you're happy!
L55[09:05:08] <MichiBot> Va​ur has stolen the tonkout! Tonk has been reset! They gained 0.015 tonk points! plus 0.014 bonus points for consecutive hours! (Reduced to 50% because stealing) Current score: 3.61222676. Position #2 Need 0.15974848 more points to pass Forec​aster!
L56[09:37:11] ⇦ Quits: Vexatos (~Vexatos@p200300eaef139f7810af1bd98f36ee51.dip0.t-ipconnect.de) (Ping timeout: 189 seconds)
L57[09:50:03] ⇨ Joins: Vexatos (~Vexatos@p200300eaef139f78231331339b0e1cbe.dip0.t-ipconnect.de)
L58[09:50:03] zsh sets mode: +v on Vexatos
L59[09:51:28] ⇨ Joins: ben_mkiv (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de)
L60[10:02:43] ⇦ Quits: ben_mkiv (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de) (Killed (NickServ (GHOST command used by ben_mkiv|afk)))
L61[10:02:47] ⇨ Joins: ben_mkiv|afk (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de)
L62[10:03:01] ⇨ Joins: ben_mkiv (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de)
L63[10:03:26] ⇦ Quits: ben_mkiv|afk (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de) (Client Quit)
L64[10:18:32] <Forec​aster> Amanda says "can't", but that's a lie
L65[10:19:05] <Forec​aster> "won't" would be correct
L66[10:54:32] ⇨ Joins: Stefan (~Stefan@router-carp.internal.myftb.de)
L67[10:55:21] ⇦ Quits: Stefan (~Stefan@router-carp.internal.myftb.de) (Client Quit)
L68[11:05:39] <Va​ur> %sip
L69[11:05:40] <MichiBot> You drink a tiny yellow potion (New!). Oh no, Vaur got a health potion, there's probably a boss fight coming!
L70[12:05:17] <Va​ur> my absolutely ridiculous induction matrix is nearly filled up. https://tinyurl.com/24kr66ta
L71[12:05:33] <Va​ur> should I proceed to build a bigger one is now the question 🤔
L72[12:06:20] <AR2​000> just for fun I made a max size one, with one layer of provider, the rest are cells. Max tier of course (and crea of course)
L73[12:06:34] <AR2​000> Since I was too lazy to build it, I made a robot do it
L74[12:06:36] <Va​ur> this is in survival 😄
L75[12:32:53] * Amanda meows and looks around
L76[12:39:19] <cater​pillar> OC2 needs internet lmao
L77[12:41:05] <Amanda> It's not as important with the import/export card
L78[12:41:16] <Amanda> lets users upload files and download them
L79[12:42:14] <Forec​aster> that's basically the internet right there!
L80[12:43:01] <cater​pillar> how the fuck did i just fullscreen discord
L81[12:44:18] <Forec​aster> are you using it in a browser
L82[12:44:28] <cater​pillar> no
L83[12:44:31] <cater​pillar> normal app
L84[12:44:35] <Amanda> F11
L85[12:44:37] <Forec​aster> no clue then
L86[12:44:50] <cater​pillar> >Amanda: F11
L87[12:44:50] <cater​pillar> no
L88[12:45:02] <Amanda> The discord "app" is just the webapp in a chrome window
L89[12:45:12] <Forec​aster> F11 doesn't do anything
L90[12:45:28] <Amanda> No clue either than, I thought that was the chrome shortcut for fullscreen
L91[12:45:48] <Forec​aster> It is, but the app has it's own keybinds
L92[12:45:56] <Forec​aster> fullscreen isn't one of them, so I dunno
L93[12:46:22] <AR2​000> `hh->nk`
L94[12:46:22] <AR2​000> why discord ? why ?
L95[12:47:15] <cater​pillar> ik that easteregg
L96[13:01:17] <Va​ur> %sip
L97[13:01:17] <MichiBot> You drink a goopy yellow potion (New!). An incredibly fake looking mustache is stuck to Vaur's face until the next time they hug someone.
L98[13:01:26] <Forec​aster> %tonk
L99[13:01:27] <MichiBot> Yikes! Forec​aster! You beat Va​ur's previous record of <0 (By 3 hours, 56 minutes and 19 seconds)! I hope you're happy!
L100[13:01:28] <MichiBot> Forecaster's new record is 3 hours, 56 minutes and 19 seconds! Forecaster also gained 0.00394 tonk points for stealing the tonk. Position #1.
L101[13:29:10] * Amanda replaces all of @Inaris left socks with cursed right socks
L102[13:30:56] ⇦ Quits: Vexatos (~Vexatos@p200300eaef139f78231331339b0e1cbe.dip0.t-ipconnect.de) (Ping timeout: 189 seconds)
L103[13:44:17] <Na​dja> >caterpillar: OC2 needs internet lmao
L104[13:44:17] <Na​dja> Have fun, go build it. It's not that easy to do sadly ^^'
L105[13:44:32] ⇨ Joins: Vexatos (~Vexatos@p200300eaef139f35cc1e28c71c61418e.dip0.t-ipconnect.de)
L106[13:44:32] zsh sets mode: +v on Vexatos
L107[13:50:40] <Amanda> Good, @Nadja doesn't seem to have noticed what I did to Sol
L108[13:50:45] <Amanda> Nobody tell her
L109[13:53:02] <Na​dja> I have noticed it but I'm not telling you when or how I'm going to fix it because chances are you aren't going to notice that I did ;)
L110[13:53:27] <Z0id​berg> Stp breaking things
L111[13:53:49] <Na​dja> Amanda is always breaking things. You get used to it :P
L112[13:57:07] <My​ros> it looks like i'm unable to print a grassblock, or do i miss something? I get Dirt instead...
L113[14:08:05] <Amanda> I assume you mean with the 3d printer? Did you get the texture with the texture picker, or with manually entering it?
L114[14:08:54] <Amanda> The texture names can change between MC versions and even packs, so you need to use the texture picker
L115[14:09:14] <Amanda> It outputs a string to the chat that you can click on to copy
L116[15:08:05] <Amanda> Something tells me I'm not reading floats right, no idea why
L117[15:08:25] <Amanda> https://matrix.camnet.site/_matrix/media/r0/download/camnet.site/BxBAEYnPgaRYBuqYABrzQBgP/2022-10-30_11.07.54.png
L118[15:11:34] <Amanda> well shit
L119[15:11:40] <Amanda> I've got my endian messed up
L120[15:16:09] ⇦ Quits: TPG24 (~ThePiGuy2@host-78-144-113-28.as13285.net) (Remote host closed the connection)
L121[15:19:21] <Amanda> Success!
L122[15:19:38] <Amanda> https://matrix.camnet.site/_matrix/media/r0/download/camnet.site/ioDBTLilmHrlqUaMZXWuOiKO/2022-10-30_11.19.18.png
L123[15:21:14] <Amanda> so no-argument component calls work! :D
L124[15:26:42] <Amanda> Now to implement cbor encoding so that component calls can actually accept arguments
L125[15:36:14] ⇨ Joins: Hawk777 (~Hawk777@2607:c000:828c:ba00:9923:89fd:ac87:5662)
L126[15:44:20] <Amanda> Hey Hawk777 -- I got my CBOR decoder working. I can now call argument-less component methods
L127[15:51:33] <Amanda> Hawk777: check %oclogs for some screenshots. (I'm not doing the GPU stuff, that's just because I tried using program_list to select tests, which ultimately didn't work, but it did bind the GPU )
L128[15:51:33] <MichiBot> https://irclogs.pc-logix.com/?dir=logs/%23oc
L129[16:04:13] <Hawk777> Nice!
L130[16:04:18] <Hawk777> And yeah, way too many things come back as floats.
L131[16:04:24] <Hawk777> Things that really ought to be integers.
L132[16:04:27] <Hawk777> But that’s OC for you!
L133[16:04:36] <Amanda> I think that's being fixed up in 1.8
L134[16:04:43] <Hawk777> I guess OC didn’t care because Lua doesn’t care.
L135[16:04:49] <Hawk777> OK!
L136[16:04:58] <Amanda> I seem to recall seeing that int he change logs anyway
L137[16:05:08] <Amanda> But maybe it needs arch support?
L138[16:06:38] <Hawk777> Well, under the hood, a method call returns an Object[], and OC-Wasm turns instances of Byte, Short, Integer, and Long into CBOR integers, and instances of Float and Double into CBOR single- and double-precisions. So it should work, and I think I have seen a few integers pass through already. It’s just that so many method calls return things that ought to be integers as instances of Float.
L139[16:07:26] <Hawk777> On the one hand, if those methods now return integers under the hood in 1.8, then yay for better data types, but also I guess it means I have a bunch of rework on my Rust libs :(
L140[16:09:29] <Amanda> oh wait, maybe not. Maybe it's just making integer lua types work better
L141[16:09:37] <Amanda> as arguments, that is
L142[16:09:41] <Forec​aster> %sip
L143[16:09:41] <MichiBot> You drink a silent grathnode potion (New!). The bottle turns into a grathnode axe.
L144[16:10:06] <Forec​aster> huh, matching potion and weapon
L145[16:10:17] <Hawk777> Meh, I probably should have made a FloatableInt wrapper type or something that accepts both CBOR integers *and* CBOR floats, for those cases where the data is morally an integer, and then I wouldn’t have to worry.
L146[16:14:16] <S​ky> %sip
L147[16:14:16] <MichiBot> You drink a forked titanium potion (New!). Sky looks up and sees the moon smile at them for a second.
L148[16:14:37] <S​ky> %tonk
L149[16:14:37] <MichiBot> I'm sorry Sky, you were not able to beat Forecaster's record of 3 hours, 56 minutes and 19 seconds this time. 3 hours, 13 minutes and 10 seconds were wasted! Missed by 43 minutes and 9 seconds!
L150[16:14:44] <S​ky> what
L151[16:14:51] <S​ky> oh i missed that
L152[16:14:52] <S​ky> rip
L153[16:17:51] <Amanda> Hawk777: what happens if you pass a byteString to a String argument?
L154[16:31:09] <Fe​ris> where I can modify mod to use screen without keyboard?
L155[16:36:33] ⇨ Joins: ThePiGuy24 (~ThePiGuy2@host-78-144-113-28.as13285.net)
L156[16:40:15] <Hawk777> Hm, a CBOR ByteString goes into the Java world as a byte[], while a CBOR string goes into the Java world as a java.lang.String. In the Arguments class, which component APIs use to get access to method call arguments, there is a checkString method and a checkByteArray method; the latter is not used very much, only in the hologram, data card, drive, filesystem, and Internet card APIs, and only a few times in each. In the Lua arch, both a
L157[16:40:15] <Hawk777> oded as strings (because AFAIK there is no such thing as a byte array), and a Lua string serves either purpose with UTF-8 encoding. In OC-Wasm no conversion is done, so you have to pass whatever the API expects.
L158[16:40:38] <Hawk777> Feris, screens without keyboards should work fine?
L159[16:46:27] <Hawk777> You can’t right-click on them, I think, but you should still see the text on the texture of the block itself in-game.
L160[16:46:47] <Hawk777> And I think if they’re high enough tier you can even still receive touch events by punching them.
L161[16:51:58] <Forec​aster> >Feris: where I can modify mod to use screen without keyboard?
L162[16:51:58] <Forec​aster> what exactly do you mean by "use"?
L163[16:52:34] <Fe​ris> just use screen like with keyboard but without keyboard, interact with screen
L164[16:53:05] <Forec​aster> that's not possible unless you make an on-screen keyboard
L165[16:53:24] <Forec​aster> or change the Java code and re-compile the mod
L166[16:54:46] <Forec​aster> T2 and T3 screens work as touch screens even without a keyboard attached
L167[16:55:38] <Fe​ris> >Forecaster: or change the Java code and re-compile the mod
L168[16:55:39] <Fe​ris> that's what I mean ...
L169[16:56:58] <Forec​aster> the code is on github, have fun 😛
L170[16:57:18] <Fe​ris> no shit bro
L171[16:57:31] <Hawk777> So you want an interactable screen, but you don’t want to have to find space to hide a keyboard? It can’t be about crafting ingredients, since keyboards are really cheap.
L172[16:57:59] <Hawk777> Or do you want the screen to open into a GUI so you can read the text more easily, but without the ability to type?
L173[16:58:04] <Hawk777> Just curious what exactly the goal is.
L174[16:58:30] <Amanda> Woo. I can compile my component test with my cbor encoder and it works.
L175[16:58:47] <Amanda> Now to try and actually pass arguments.
L176[16:59:10] <Forec​aster> >Feris: no shit bro
L177[16:59:10] <Forec​aster> If you've never done Java coding or minecraft mods before maybe OC isn't the best first project
L178[16:59:12] <Fe​ris> >Hawk777: Just curious what exactly the goal is.
L179[16:59:12] <Fe​ris> i want to use openscreens mod for flat screen and make panel on pillar so i dont have space for keyboard
L180[16:59:57] <Fe​ris> i've done programming before but not in java, but i think i found the content to delete https://tinyurl.com/27xgfugz
L181[17:00:12] <Forec​aster> then try it
L182[17:00:21] <Va​ur> %tonk
L183[17:00:21] <MichiBot> I'm sorry Vaur, you were not able to beat Forecaster's record of 3 hours, 56 minutes and 19 seconds this time. 45 minutes and 44 seconds were wasted! Missed by 3 hours, 10 minutes and 35 seconds!
L184[17:00:26] <Forec​aster> the worst that can happen is the annihilation of the universe
L185[17:01:12] <Fe​ris> wait my eclipse is shit https://tinyurl.com/2a569evr
L186[17:01:16] * Saphire whimpers
L187[17:01:20] <Fe​ris> i need to import forge to project?
L188[17:01:32] * Saphire whispers the name of the horror from the depth of the internet...
L189[17:01:33] <Forec​aster> I don't use Eclipse
L190[17:01:36] <Saphire> JSON-LD...
L191[17:02:24] <Fe​ris> >Forecaster: I don't use Eclipse
L192[17:02:24] <Fe​ris> then what I should use to modify it?
L193[17:02:50] <Forec​aster> I use IDEA, but that's just a personal perference
L194[17:03:06] <Fe​ris> so OpenComputers is writed in idea?
L195[17:03:15] <Forec​aster> ...no
L196[17:03:28] <Fe​ris> then in what?
L197[17:03:36] <Forec​aster> IDEA is an IDE
L198[17:03:40] <Fe​ris> ik...
L199[17:04:40] <Forec​aster> OC has over 100 contributors
L200[17:04:54] <Forec​aster> they've probably used every program imaginable to write code for it
L201[17:04:54] <Fe​ris> so i can use IDEA to modify yea?
L202[17:05:25] <Hawk777> Source code’s just text files, so you can edit them in whatever you want. The build process uses Gradle. If IDEA can run Gradle, then yes. If it can’t, then still yes but you’d have to go to a command line to compile.
L203[17:05:37] <Forec​aster> maybe you should look up the basics of minecraft modding
L204[17:05:50] <Fe​ris> i need to look up for basic to edit one line xD?
L205[17:06:07] <Forec​aster> apparently, since you're asking all of these questions
L206[17:06:58] <Fe​ris> >Forecaster: apparently, since you're asking all of these questions
L207[17:06:59] <Fe​ris> i'm asking because it's way quicker than studying basics, i just want to edit one line...
L208[17:07:12] <Amanda> then edit it in a text editor and run gradle
L209[17:07:19] <S​ky> >Forecaster: I use IDEA, but that's just a personal perference
L210[17:07:20] <S​ky> IDEA is *amazing*
L211[17:07:21] <Saphire> I am not sure if "one line" is all it takes
L212[17:07:28] <Fe​ris> >Saphire: I am not sure if "one line" is all it takes
L213[17:07:29] <Fe​ris> ?
L214[17:07:43] <Fe​ris> it's just IF
L215[17:07:45] <Saphire> You want screens to act as if they have keyboards attached to them always?
L216[17:07:51] <Fe​ris> yes
L217[17:08:11] <Forec​aster> well I don't have time to teach you how to open, edit and compile a minecraft mod
L218[17:08:12] <Fe​ris> https://tinyurl.com/24gvozzn
L219[17:08:45] <Fe​ris> >Forecaster: well I don't have time to teach you how to open, edit and compile a mine…
L220[17:08:45] <Fe​ris> where i'm asking for your time?
L221[17:09:11] <Forec​aster> `"i'm asking because it's way quicker than studying basics, i just want to edit one line..."`
L222[17:09:30] <Forec​aster> you apparently want someone to guide you through the steps you need to do to make this change
L223[17:09:48] <Na​dja> Saphire: What the hell are you doing with JSON-LD? :D
L224[17:09:49] <Fe​ris> >Forecaster: `"i'm asking because it's way quicker than studying basics, i just want …
L225[17:09:49] <Fe​ris> why do you think it's about your person? it is a public channel
L226[17:09:55] <Forec​aster> instead of doing your own reading
L227[17:10:11] <Saphire> Nadja: curl -H 'Accept: application/ld+json' https://saphi.re/
L228[17:10:33] <Fe​ris> >Forecaster: you apparently want someone to guide you through the steps you need to d…
L229[17:10:33] <Fe​ris> i don't want someone to guide me, i just asked for what IDE i need to use and do I need to import forge XDD
L230[17:10:42] <S​ky> >Feris: i don't want someone to guide me, i just asked for what IDE i need to …
L231[17:10:42] <S​ky> You can use anything
L232[17:10:57] <S​ky> from poking bits on your storage device to buying a multi thousand dollar IDE
L233[17:11:11] <Amanda> I submitted a PR to OC written in Sublime, in neovim, fuck I think I even made one small edit in nano once
L234[17:11:26] <S​ky> Hot take: nano > vim
L235[17:11:28] <S​ky> /s
L236[17:11:34] <Saphire> Hm
L237[17:11:35] <Na​dja> >Feris: why do you think it's about your person? it is a public channel
L238[17:11:35] <Na​dja> Look, if Forecaster tells you off for being an annoying git chances are *very* high you are in the wrong. Don't pick a fight with the people that made this community please.
L239[17:12:04] <Fe​ris> >Nadja: Look, if Forecaster tells you off for being an annoying git chances are …
L240[17:12:05] <Fe​ris> lmao
L241[17:12:20] <S​ky> I don't think `lmao` is the correct response to that.
L242[17:12:33] * Saphire dabs
L243[17:12:39] <Saphire> Relay nicknames properly set up
L244[17:12:42] <Saphire> Yay
L245[17:12:44] <Fe​ris> >Sky: You can use anything
L246[17:12:44] <Fe​ris> yeah i get answer to this question before, but what about forge? do i need to import it when i cloned it from github?
L247[17:12:48] <Na​dja> \o/
L248[17:12:58] <S​ky> \o/
L249[17:13:12] <Na​dja> So Saphire, if I now chat from here and IRC it looks the same or what? :P
L250[17:13:15] <Saphire> it gets a bit annoying to try and distinguish the monochrome usernames of those on the other side
L251[17:13:19] <Saphire> Ssssorta?
L252[17:13:28] <Saphire> I mean there's a prefix icon
L253[17:13:31] <Amanda> @Nadja cases are different
L254[17:13:39] <S​ky> https://i.skystuff.games/mmF9PCMhwqgC.png
L255[17:13:44] <S​ky> from OClogs
L256[17:13:54] <Amanda> You're Nadja on discorded, nadja on irc
L257[17:13:55] <Na​dja> Amanda: Yes, on purpose. Otherwise everything pings all the time. ^^'
L258[17:14:08] <Fe​ris> >Feris: yeah i get answer to this question before, but what about forge? do i ne…
L259[17:14:08] <Fe​ris> thanks for answer
L260[17:14:11] <Amanda> It... shouldn't? I thought Corded did antiping on the username
L261[17:14:17] <Saphire> urgh, it does not save the capitalisation
L262[17:14:21] <Forec​aster> Corded puts a ZWS in usernames
L263[17:14:27] <Saphire> Wait no hm
L264[17:14:35] <S​ky> What's a ZWS?
L265[17:14:42] <Saphire> Zero-Width-Space
L266[17:14:43] <Forec​aster> Zero Width Space
L267[17:14:43] <Na​dja> I can't seem to tell Quassel to specifically ignore *pings* from Corded
L268[17:14:46] <S​ky> Ah
L269[17:14:47] <S​ky> Fair enough
L270[17:14:59] <Amanda> Or do you eman a discord ping is also pinging your IRC?
L271[17:15:04] <Amanda> not when you talk
L272[17:15:08] <Na​dja> Yep
L273[17:15:09] <Na​dja> That one
L274[17:15:10] <Hawk777> Feris, AFAIK you should just be able to clone and run Gradle. But I’ve never actually tried.
L275[17:15:11] <Amanda> fair
L276[17:15:12] <Na​dja> When I talk it's fine
L277[17:15:51] <Amanda> Hawk777: good mews! I'm apparently generating invalid cbor! :D
L278[17:15:57] <Amanda> or no cbor at all, let's see
L279[17:16:24] <Saphire> cbor?
L280[17:16:24] <Fe​ris> >Hawk777: Feris, AFAIK you should just be able to clone and run Gradle. But I’ve n…
L281[17:16:24] <Fe​ris> thanks
L282[17:16:39] <Na​dja> Concise Binary Object Representation
L283[17:16:45] <Na​dja> msgpack but in IETF
L284[17:16:55] <Na​dja> or JSON, but in binary and in less shite :P
L285[17:17:44] <Hawk777> Oh fun! Yeah error reporting is not the greatest; I didn’t really think of a reasonably efficient way to ship more than an integer across the syscall boundary, and I figured mostly things should be hidden behind strongly typed libraries so it shouldn’t affect applications too much. Except you’re writing the library, so now you get to share in the pain :/
L286[17:18:46] <Saphire> Nadja, soooo.. what are your thoughts on JSON-LD
L287[17:19:05] <Amanda> Hawk777: even a "log" method that has the same ABI as error would be great, even if it just outputs to the server stdout, rather than sprinkling an error everywhere
L288[17:19:15] <Na​dja> Saphire: Depends, what's your threat model? :P
L289[17:19:46] <Saphire> ...hahahahahah
L290[17:19:48] <Saphire> Good one
L291[17:19:52] <Saphire> ...god it fucking
L292[17:20:01] <Saphire> Allows utterly arbitrary stuff and just, aaaa
L293[17:20:10] <Amanda> WEll, my arguments tuple is outputting... ARRAY(length 3)
L294[17:20:13] <Saphire> You are not even guaranteed to EVER resolve the context of any JSON-LD document
L295[17:20:15] <Amanda> Nothing else. :D
L296[17:20:15] * Saphire claps
L297[17:20:36] <Forec​aster> My threat model just says "Fire all the missiles!!!!"
L298[17:20:49] <Redston​eParkour> Well a tuple is basically an array of arguments
L299[17:20:51] <Na​dja> I mean JSON-LD is just one way of encoding semantic web information in a computer-readable format. I wouldn't say it's the worst way, but I certainly don't think it's the best one.
L300[17:20:51] <Saphire> You can technically create a malicious JSON-LD serving server that just... chases the parser around through thousands of contexts all referencing new and wild contexts
L301[17:21:21] <Hawk777> Hm, yeah, logging might be useful, it would be a bit of a PITA to find the output in a lot of cases, but it could be done (it would probably write to the Minecraft log file I think).
L302[17:21:31] <Hawk777> Though then a user could DoS a server by filling up its log files.
L303[17:21:38] <Na​dja> So really, there are two discussions to be had: Firstly if the semantic web is "a good idea" and secondly if JSON-LD is a reasonable representation of it ^^
L304[17:21:41] <Hawk777> Then again if a server has OC installed maybe they can do that anyway, I dunno.
L305[17:21:46] <Redston​eParkour> Maybe then have it output to the debug log?
L306[17:21:59] <Saphire> Nadja: idk, semantic web is... a thing
L307[17:22:01] <Hawk777> Is the debug log rotated or something?
L308[17:22:06] <Hawk777> Or limited in some way?
L309[17:22:20] <Redston​eParkour> Not sure
L310[17:22:22] <Forec​aster> 45% degree logs are best logs
L311[17:22:34] <Forec​aster> I don't know why I put a % in there
L312[17:22:38] <Amanda> Hawk777: could put it behind a config option, making it a noop if off
L313[17:22:42] <Hawk777> True.
L314[17:22:48] * Saphire rotates you by 0.45Pi
L315[17:22:58] <Hawk777> Yeah that is actually something I think I would find useful too.
L316[17:23:02] <Hawk777> Might add it one day.
L317[17:23:06] <Amanda> and default to off, would help when debugging locally, but not present a security risk
L318[17:23:08] <Forec​aster> ohno
L319[17:23:08] <Saphire> Wait no, 0.9Pi
L320[17:23:33] <Redston​eParkour> Wait, imaginary rotation (0.9 * P * i)?
L321[17:24:31] <Saphire> ...no, Pi as in the constant
L322[17:24:58] <Forec​aster> but I don't want to be constantly rotating
L323[17:25:02] <Forec​aster> that sounds terrible
L324[17:25:14] <Redston​eParkour> ...well Unicode has support for the Greek alphabet so just use π instead of Pi
L325[17:25:25] <Redston​eParkour> (hope that went over Corded correctly)
L326[17:25:42] <Na​dja> Be a contratian, use 🥧 instead.
L327[17:25:59] <Forec​aster> or 🍕
L328[17:27:32] <Na​dja> >RedstoneParkour: ...well Unicode has support for the Greek alphabet so just use π instead…
L329[17:27:32] <Na​dja> anyway, elitism serves nobody and entering greek letters using a non-greek keyboard is annoying, so shush. Writing it out is fine.
L330[17:27:46] <Redston​eParkour> yeah that counts
L331[17:28:09] <Forec​aster> just give everyone greek keyboards, problem solved!
L332[17:30:21] <Redston​eParkour> well if you want to do that travel back in time to about 800-500 BC, when Greek was a very prominent language (at least in Europe)
L333[17:30:59] <Forec​aster> no no, you just give everyone an extra greek keyboard so they can type π as needed
L334[17:31:12] <Na​dja> Greece has a population of 10 million, I think we can still safely classify greece as prominent language.
L335[17:31:12] <Forec​aster> in addition to their normal keyboard of course
L336[17:31:22] <Redston​eParkour> maybe a 'greek' modifier key?
L337[17:31:55] <Redston​eParkour> but then all other languages with special alphabets would also want their own key
L338[17:32:07] <Forec​aster> you could program that yourself, on windows using AutoHotkey
L339[17:32:16] <Forec​aster> for example
L340[17:32:25] <Saphire> https://i.imgur.com/GzU4x4W.png
L341[17:32:27] <Saphire> A
L342[17:33:35] ⇨ Joins: zick (~zick@45.150.26.190)
L343[17:33:36] <Na​dja> Saphire: Do you need a hug? :P
L344[17:34:13] <Forec​aster> or an equivalent value in keyboards?
L345[17:34:27] ⇦ Quits: zick (~zick@45.150.26.190) (Client Quit)
L346[17:34:46] <Forec​aster> I have no idea how many that would be though
L347[17:35:02] <Na​dja> What's the equivalent value of affection and care in keyboards?
L348[17:35:31] <Forec​aster> that probably depends on how much someone likes keyboards
L349[17:35:50] <Na​dja> How do you quantify affection anyway?
L350[17:36:01] <Forec​aster> with keyboards, of course
L351[17:36:11] <Forec​aster> wait...
L352[17:36:16] <Na​dja> Well then, how much keyboard is affection?
L353[17:36:48] <Redston​eParkour> That differs from person to person
L354[17:36:52] <Forec​aster> I'd start at 1 keyboard = 1 affection
L355[17:37:16] <Forec​aster> might need to adjust balance in a later patch
L356[17:38:11] <Na​dja> >Forecaster: I'd start at 1 keyboard = 1 affection
L357[17:38:12] <Na​dja> I feel sorry for you :P
L358[17:39:17] * Saphire sobs
L359[17:39:32] <Saphire> Why are JSON-LD IDI fragments
L360[17:39:51] <Forec​aster> Sadly I own about as many keyboards as I have RL friends
L361[17:40:31] <Amanda> Hawk777: if you do add the log function, maybe also report some more exceptions as well. For instance, sprinkiling a log output to the ExceptionTransformer let me figure out some stuff where zig was generating an "unreachable" instruction. Also Maybe for other exceptions you turn into ErrorCodes as well, like cborDecode
L362[17:41:53] <Amanda> s/report/log/
L363[17:41:53] <MichiBot> <Amanda> Hawk777: if you do add the log function, maybe also log some more exceptions as well. For instance, sprinkiling a log output to the ExceptionTransformer let me figure out some stuff where zig was generating an "unreachable" instruction. Also Maybe for other exceptions you turn into ErrorCodes as well, like cborDecode
L364[17:48:36] <Hawk777> Yeah, that makes sense, probably again optionally based on a config tunable.
L365[17:48:43] <Amanda> Fair
L366[17:49:37] <Hawk777> Guess I have to figure out how to do config then; I don’t have any config tunables yet!
L367[18:01:16] ⇨ Joins: TPG24 (~ThePiGuy2@host-78-144-113-28.as13285.net)
L368[18:02:34] ⇦ Quits: ThePiGuy24 (~ThePiGuy2@host-78-144-113-28.as13285.net) (Ping timeout: 189 seconds)
L369[18:10:11] <Amanda> Hawk777: sdfjsndfjksdfsdfsd -- Figured out why gpu.set was returning cborDecode.
L370[18:10:38] <Amanda> Hawk777: I added a log to every place it was raised, thinking I had made a mistake in my encoder: "[14:09:38] [OpenComputers-Computer-2/ERROR] [ca.chead.oc-wasm]: Failed to encode CBOR value: Not an Object[]"
L371[18:11:30] <Amanda> Wait. That's toJavaArray
L372[18:17:48] <Amanda> Fixed. :D
L373[18:17:54] <Amanda> I was passing the wrong pointer in, my bad
L374[18:18:05] <Amanda> Thought I found an encoding error
L375[18:18:37] <Amanda> https://matrix.camnet.site/_matrix/media/r0/download/camnet.site/SjVQlatrWpoBLmqbXodVXrWh/2022-10-30_14.18.17.png
L376[18:18:45] <Amanda> So, component invocations are now Working*
L377[18:19:36] <Amanda> Let's see what happens after the 5min timer is up, I'm curious what happens when main returns
L378[18:19:47] <Amanda> %remindme 5m check ocwasm-zig comp
L379[18:19:47] <MichiBot> I'll tell you "check ocwasm-zig comp" in 5m at 10/30/2022 06:24:47 PM
L380[18:24:48] <MichiBot> Amanda REMINDER: check ocwasm-zig comp
L381[18:25:00] <Amanda> Answer: It does an unreachable
L382[18:27:07] <Hawk777> Ah, by “when main returns” you mean the main coroutine, I guess? Because the entrypoint *function* is returning all the time.
L383[18:27:25] <Hawk777> Anyway, sounds like lots of progress is happening!
L384[18:28:35] <Amanda> yeah
L385[18:29:24] <Amanda> I need to poke my code so that main can return an error union
L386[18:29:42] <Amanda> Then I don't have to do ugly stuff like "var gpus = comp.list("gpu") catch |err| return computer.throw_error("Failed to list GPUs: {}", .{err});"
L387[18:31:56] <Amanda> I should also probably implement map en/decoding...
L388[18:32:03] <Hawk777> Ah yeah, definitely need to build up some error handling infrastructure to make things more ergonomic.
L389[18:37:40] <Amanda> Hawk777: gimme a poke when you get around to adding the log stuff? Would be very helpful for my flow, lolol
L390[18:38:10] <Amanda> %choose halucunate or continue working on cbor
L391[18:38:10] <MichiBot> Ama​nda: Haven't you always gone with "halucunate"? Hm, maybe not.
L392[18:38:16] <Amanda> Sounds good
L393[18:42:27] <Hawk777> Will do.
L394[18:42:47] ⇦ Quits: Hawk777 (~Hawk777@2607:c000:828c:ba00:9923:89fd:ac87:5662) (Quit: Leaving.)
L395[18:46:27] ⇦ Quits: ben_mkiv (~ben_mkiv@200116b8146a5d00fe3497fffea975f2.dip.versatel-1u1.de) (Killed (NickServ (GHOST command used by ben_mkiv|afk!~ben_mkiv@2001:16b8:1e53:4400:fe34:97ff:fea9:75f2)))
L396[18:46:29] ⇨ Joins: ben_mkiv|afk (~ben_mkiv@2001:16b8:1e53:4400:fe34:97ff:fea9:75f2)
L397[19:16:20] ⇦ Quits: DBotThePony (~Thunderbi@31.220.170.28) (*.net *.split)
L398[19:16:20] ⇦ Quits: Victor_sueca (~Victor_su@190.pool90-165-120.dynamic.orange.es) (*.net *.split)
L399[19:16:20] ⇦ Quits: ping (~uwu@femboy.me) (*.net *.split)
L400[19:16:20] ⇦ Quits: cyn1c (~cynic@a.silly.computer) (*.net *.split)
L401[19:16:20] ⇦ Quits: Pokey (~pokey@vmi238643.contaboserver.net) (*.net *.split)
L402[19:16:20] ⇦ Quits: LeshaInc (LeshaInc@fomalhaut.me) (*.net *.split)
L403[19:16:20] ⇦ Quits: Corded (~MichiBot@pc-logix.com) (*.net *.split)
L404[19:16:20] ⇦ Quits: ashka (~postmaste@server4.shellgratuit.com) (*.net *.split)
L405[19:16:20] ⇦ Quits: gruetzkopf (~quassel@daemon.gruetzkopf.org) (*.net *.split)
L406[19:16:20] ⇦ Quits: Oddstr13 (Odd@satomi.openshell.no) (*.net *.split)
L407[19:19:39] ⇨ Joins: DAMIK_BELUGA (~DAMIK_BEL@176.230.14.23)
L408[19:19:54] ⇨ Joins: DBotThePony (~Thunderbi@31.220.170.28)
L409[19:19:54] ⇨ Joins: Victor_sueca (~Victor_su@190.pool90-165-120.dynamic.orange.es)
L410[19:19:54] ⇨ Joins: ping (~uwu@femboy.me)
L411[19:19:54] ⇨ Joins: cyn1c (~cynic@a.silly.computer)
L412[19:19:54] ⇨ Joins: Pokey (~pokey@vmi238643.contaboserver.net)
L413[19:19:54] ⇨ Joins: LeshaInc (LeshaInc@fomalhaut.me)
L414[19:19:54] ⇨ Joins: Corded (~MichiBot@pc-logix.com)
L415[19:19:54] ⇨ Joins: ashka (~postmaste@server4.shellgratuit.com)
L416[19:19:54] ⇨ Joins: gruetzkopf (~quassel@daemon.gruetzkopf.org)
L417[19:19:54] ⇨ Joins: Oddstr13 (Odd@satomi.openshell.no)
L418[19:19:54] anarchy.esper.net sets mode: +v on Corded
L419[19:21:47] ⇨ Joins: shlopa16 (~shlopa16@176.230.14.23)
L420[19:21:55] <shlopa16> hello
L421[19:22:07] <Forec​aster> hi
L422[19:22:23] <DAMIK_BELUGA> hi
L423[19:22:47] <Forec​aster> @Michiyo🎃 I just noticed your jenkins server put a build of OpenSec in OpenCargo for some reason
L424[19:23:14] <DAMIK_BELUGA> lol me chating on open computers mod
L425[19:23:28] <Forec​aster> https://ci.pc-logix.com/job/OpenCargo/28/
L426[19:23:49] <DAMIK_BELUGA> what is it
L427[19:23:54] <Mich​iyo🎃> That's not OpenSecurity, that's a misnamed build artifact
L428[19:24:21] <Redston​eParkour> well it's quite known that OC has an IRC client as a loot disk
L429[19:24:25] <Mich​iyo🎃> Or.. I'm wrong
L430[19:24:28] <Mich​iyo🎃> and wtf jenkins
L431[19:25:13] <Forec​aster> The commits are all for OpenSec
L432[19:25:26] <Mich​iyo🎃> ... wtf the project config for OpenCargo is pointing at OpenSec's repo
L433[19:27:58] <Mich​iyo🎃> ... WTF I just pointed it to the right repo and forced a build... and it uploaded to OpenSec's CF page
L434[19:28:00] <Mich​iyo🎃> q_q
L435[19:28:29] <Forec​aster> huh
L436[19:28:36] <Mich​iyo🎃> Aaaand I can't do anything with it because it's still processing
L437[19:29:31] <Mich​iyo🎃> ok, archived it now to figure out what the hell is going on
L438[19:29:32] ⇦ Quits: shlopa16 (~shlopa16@176.230.14.23) (Ping timeout: 189 seconds)
L439[19:31:15] <Forec​aster> just so you know I haven't used the jenkins builds
L440[19:31:21] <Forec​aster> I just build it myself
L441[19:32:13] <Mich​iyo🎃> Then I'll just disable the project on CI then as I don't have time to bash my head against it
L442[19:33:23] <Forec​aster> Maybe, one day, you'll be incredibly incredibly bored
L443[19:33:46] <Corded> * <Mich​iyo🎃> looks at her work backlog, personal backlog, and desire to do any of either
L444[19:33:50] <Mich​iyo🎃> yeah..... maybe
L445[19:34:28] <Forec​aster> when you say you looked at the desire, you used a microscope I assume
L446[19:35:32] <Mich​iyo🎃> Yeah
L447[19:35:50] <Forec​aster> %sip
L448[19:35:52] <MichiBot> You drink a fluffy orange potion (New!). Forecaster turns into an otter until they stop thinking about it.
L449[19:36:01] <Forec​aster> aw man
L450[19:49:20] ⇦ Quits: DAMIK_BELUGA (~DAMIK_BEL@176.230.14.23) (Remote host closed the connection)
L451[19:50:32] <Forec​aster> https://youtu.be/NMFQ3YvR3Eo
L452[19:50:54] <Forec​aster> It's amazing the kind of garbage some companies sell...
L453[19:51:59] <Amanda> %choose iced creams?
L454[19:51:59] <MichiBot> Ama​nda: "iced creams" doesn't really seem like a good idea right now.
L455[19:52:12] <Amanda> Okay, but, consider: Iced creams.
L456[19:52:22] * Amanda beams a bowl of choco-mint chip in front of herself, noms
L457[19:52:29] <Forec​aster> This video is about "Audiophile network switches"
L458[19:56:30] <AR2​000> Who want to buy my 8bit (big endian) to 8bit (big endian) digital to digital converter ?
L459[19:57:01] <Forec​aster> do you take non-fungible tokens?
L460[19:57:25] <Na​dja> Depends, what is the transfer speed and latency and what's the permissible voltage differential?
L461[20:18:19] <Forec​aster> About the same speed as an unladen swallow
L462[20:27:04] <Amanda> An african or martian?
L463[20:27:35] <S​ky> >Corded: TPG24 ha​s quit IRC (*.net *.split)
L464[20:27:35] <S​ky> what the hell happened here?
L465[20:27:45] <Amanda> IRC split in half
L466[20:28:02] <S​ky> oh
L467[20:28:13] <S​ky> >AR2000: Who want to buy my 8bit (big endian) to 8bit (big endian) digital to d…
L468[20:28:13] <S​ky> Would this not be 8 wires on a breadboard?
L469[20:28:17] <Forec​aster> IRC networks consist of multiple servers
L470[20:28:21] <S​ky> Ah
L471[20:28:24] <S​ky> and one of them died?
L472[20:28:42] <Forec​aster> sometimes one server temporarily loses connection to the rest, ie it's split from the network
L473[20:28:50] <S​ky> Ah
L474[20:28:53] <Forec​aster> no, it's just a connection that goes down
L475[20:29:10] <Forec​aster> the people on the split server can continue talking to eachother as if nothing happened
L476[20:29:43] <S​ky> I see, but everything else sees them all as leaving the network?
L477[20:29:53] <S​ky> and when the connection is regained they all join the network again?
L478[20:29:58] <Forec​aster> yes, and they see everyone else leaving instead
L479[20:30:06] <Forec​aster> yep
L480[20:30:12] <S​ky> I see
L481[20:40:22] <cater​pillar> >Nadja: Have fun, go build it. It's not that easy to do sadly ^^'
L482[20:40:22] <cater​pillar> ~~Add internet capabilities to Sedna~~
L483[20:42:05] <Ri​ley> There’s a abandoned PR for it. It’s possible, but I think security was the main issue.
L484[20:42:32] <Forec​aster> psh, security, who needs it
L485[20:42:48] <Ri​ley> Though I think it would be fine if you could choose an interface on the hosting server.
L486[20:42:58] <Ri​ley> That way you could use a firewall if you care.
L487[20:43:30] <cater​pillar> There could be a config file with allowed URLs
L488[20:43:44] <cater​pillar> Maybe would be a little bit more secure
L489[20:48:41] <Ri​ley> I’d prefer a system that allows me to route through my own rules.
L490[20:48:58] <Na​dja> >Riley: There’s a abandoned PR for it. It’s possible, but I think security was t…
L491[20:48:58] <Na​dja> No, the main issue is that you can't do actual IP level networking without elevated permissions on the host and that is as you might realize a *very bad idea*.
L492[20:55:17] <Forec​aster> It requires a form filled out in triplicate, buried in the backyard and discovered 10 years later
L493[20:59:57] <Ri​ley> >Nadja: No, the main issue is that you can't do actual IP level networking witho…
L494[20:59:57] <Ri​ley> It looks like some people are working on a userspace implementation as of early this year.
L495[21:15:34] <Redston​eParkour> Maybe something like QEMU's user network backend?
L496[21:15:49] <Z0id​berg> Ok WTH, Facebook Marketplace is now dangerous
L497[21:15:51] <Z0id​berg> Xd
L498[21:17:14] <Forec​aster> how so?
L499[21:22:43] ⇨ Joins: S|h|a|w|n (~shawn156@67.218.67.153)
L500[21:23:11] <AR2​000> >Sky: Would this not be 8 wires on a breadboard?
L501[21:23:11] <AR2​000> no, it's way better than that. It's a 16 pins silicon chip. 8 inputs and 8 output. With a really low power usage
L502[21:32:49] <Inari 「オ​兄デレ」「狐っ娘」> >Forecaster: https://youtu.be/NMFQ3YvR3Eo
L503[21:32:50] <Inari 「オ​兄デレ」「狐っ娘」> :Kek:
L504[21:32:55] <Inari 「オ​兄デレ」「狐っ娘」> what dumb stuff ppl buy into
L505[21:33:03] <Inari 「オ​兄デレ」「狐っ娘」> and then placebo themselves into thinking it works
L506[21:33:16] <Z0id​berg> What dumb people buy
L507[21:34:16] <Z0id​berg> >Forecaster: how so?
L508[21:34:16] <Z0id​berg> Somebody was selling a toddler's KKK uniform as a "casper costume"
L509[21:37:45] <Forec​aster> uuh
L510[21:38:09] <Forec​aster> Questionable to even make such a thing in the first place
L511[21:56:17] <Na​dja> >Riley: It looks like some people are working on a userspace implementation as o…
L512[21:56:18] <Na​dja> No, like this is a fundamental problem you can not work around. You could add a peripheral that gives you basically TCP offloading via the in-game RPC, but you can't get raw IP sending capabilities as you'd need.
L513[21:59:11] <Amanda> Basically, to have the same level of security as OC1, and not requiring a root, You'd need to implement an entire TCP/IP stack in Java, and filter with that
L514[21:59:52] <Na​dja> Nope
L515[22:00:12] <Amanda> That was my understanding anyway
L516[22:00:14] <Na​dja> You can't send raw ip without elevated privs on any of the common OS
L517[22:00:22] <Amanda> You'd NAT and translate
L518[22:00:37] <Amanda> turn an TCP connect packet into an socket.open
L519[22:01:07] <Na​dja> Ah, right. I guess you could do that, yes. Would at least allow you outgoing.
L520[22:01:08] <Amanda> That was what Sangar was saying anyway
L521[22:01:46] <Na​dja> But that doesn't allow you custom routing and where's the fun in that :P
L522[22:02:15] <Amanda> I mostly see this ending with an RPC component, honestly. There's not really any other way to do it without root, or admin intervantion
L523[22:02:24] <Izaya> maybe it'll encourage people to do interesting things rather than just bridge in-game IP networks :^)
L524[22:02:25] <Na​dja> And also it'll randomly fail when you send ICMP or any of the other control plane messages which I think the linux userspace does not expect or handle.
L525[22:02:49] <Na​dja> Izaya: You're implying IP is not interesting. You'd be very mistaken if so :)
L526[22:03:51] <Izaya> it can be interesting, but going from "any option is equally valid" to "everything but IP are third-class citizens" is sad
L527[22:04:10] <Na​dja> Well all other options other than IP are strictly worse than IP :P
L528[22:05:02] <Izaya> I don't care enough to argue
L529[22:05:26] <Na​dja> It's also not an opinion you can change my mind on ^^
L530[22:05:44] <Izaya> Good talk.
L531[22:05:51] <Na​dja> <3
L532[22:07:11] <CompanionCube> inb4 pedantic 'but *which* IP? v4 or v6?'
L533[22:07:56] <Na​dja> I don't particular care about legacy IP if I don't have to ¯\_(ツ)_/¯
L534[22:07:58] <CompanionCube> anyway the real shit decision is the sadly common 'anything but HTTPS is second-class'
L535[22:08:03] <Ri​ley> Can it work like sound drivers do? Have a server with the raw connection capabilities and the Minecraft server can communicate using some protocol to use connections. It doesn’t get rid of the permission issues, but it isolates the problem to a single component.
L536[22:08:05] <CompanionCube> good opinion
L537[22:08:51] <Na​dja> >Riley: Can it work like sound drivers do? Have a server with the raw connection…
L538[22:08:51] <Na​dja> It's not that it can't work. It's that it's a bad idea to give the minecraft process elevated permissions to the *network*
L539[22:09:17] <Na​dja> Especially given that you're running basically arbitrary user-submitted code.
L540[22:10:05] <Na​dja> And with tun/tap you still have to manage that adapter which is quite annoying to do under windows.
L541[22:10:32] <CompanionCube> shame there's not a single-interface CAP_SYS_ADMIN for the tun/tap thing
L542[22:11:21] <Ri​ley> Do people really host servers on Windows? I guess people play singleplayer.
L543[22:12:01] <Na​dja> Yep and "it's internet but it only really works on Linux, if you're playing multiplayer and you do some external setup" is not that good a sale.
L544[22:13:18] <Ri​ley> That’s sad to hear. My condolences to anyone running a Windows server.
L545[22:15:08] <Ri​ley> >CompanionCube: anyway the real shit decision is the sadly common 'anything but HTTPS is…
L546[22:15:08] <Ri​ley> fwiw that would fulfill most people’s needs, but wouldn’t work with any existing userspace programs.
L547[22:15:33] <CompanionCube> true, but it was more of a general comment covering both in-game and IRL.
L548[22:16:11] <CompanionCube> could maybe do HTTPS via a fake in-game WAN or something
L549[22:16:35] <Na​dja> Or just via RPC peripheral
L550[22:16:51] <CompanionCube> cursed: wireguard over rpc
L551[22:17:04] <Izaya> this may interest people https://oldvcr.blogspot.com/2022/10/if-one-guis-not-enough-for-your-sparc.html
L552[22:17:14] <Na​dja> We did wireguard over IP in OC2 :P
L553[22:17:19] <Izaya> what if:
L554[22:17:32] <Izaya> emulate a modem module to provide "WAN"
L555[22:17:38] <Izaya> like, an LTE modem module
L556[22:17:41] <CompanionCube> that background colour
L557[22:17:44] <CompanionCube> just, no, why
L558[22:18:10] <Na​dja> You mean internet via serial?
L559[22:18:10] <Izaya> looks fine to me https://shadowkat.net/tmp/615f.png
L560[22:18:20] <Izaya> or serial-over-USB
L561[22:18:30] <Izaya> dialup modems could be cute though
L562[22:18:40] <CompanionCube> Izaya: i mean, the *monitor's* background colour
L563[22:18:42] <Na​dja> I mean but how do you map those packets to the actual internet on the host side?
L564[22:18:54] <Na​dja> Getting raw ip packets to the host computer is the easy part.
L565[22:19:07] <Izaya> ATDT 210001218092-443
L566[22:19:28] <Na​dja> But what do you do with the ICMP packets that somebody sends? Or the ones with fake source addresses?
L567[22:19:43] <Ri​ley> IP over IRC
L568[22:19:58] <Izaya> let people run dialup ISPs over a TCP socket
L569[22:20:15] <Na​dja> You still need to terminate that :P
L570[22:20:26] <CompanionCube> Izaya: tired of PPPoE or PPPoA, introducing PPPoRPC?
L571[22:20:32] <Izaya> that's a problem for the ISP
L572[22:20:34] <Na​dja> Like that's all that I'm saying. Terminating whatever transport layer you invent is the complex part :)
L573[22:20:47] <Na​dja> And the one that requires elevanted permissions
L574[22:20:53] <Na​dja> *elevated
L575[22:21:14] <Izaya> Riley: you jest, but the first WAN implementation for Minitel was Minitel over IRC
L576[22:22:49] <Na​dja> But yeah, if you have termination figured out, getting internet in OC2 is like less than 200 lines of Java :P
L577[22:25:18] <CompanionCube> HTTPS CONNECT would be feasible, but not only does that only work for IP, it only does TCP!
L578[22:27:22] <CompanionCube> someone *did* write a standard for CONNECT-UDP in 2020 though
L579[22:27:37] <CompanionCube> s/standard/draft standard/ oops
L580[22:27:37] <MichiBot> <CompanionCube> someone *did* write a draft standard for CONNECT-UDP in 2020 though
L581[22:27:38] <Na​dja> It would, but then what? Especially if you — as Riley said — want to be able to set up your own routing, or even just multiplex on the other end.
L582[23:05:03] <gruetzkopf> nadja: we need to do another rebase
L583[23:05:17] <gruetzkopf> and think i'll implement some more tunneling protocols
L584[23:08:09] <Na​dja> ye we should
L585[23:08:42] <Na​dja> Especially since hypatia may just get stable network soon and we can actually *use* networking from within OC2 :P
L586[23:14:50] <AR2​000> I think I'm missing something.
L587[23:14:50] <AR2​000> Can someone give me the tldr about the ip issue. With OC you can open a outgoing tcp/socket.
L588[23:14:50] <AR2​000> No UDP or listening, but you still can have a raw TCP/IP socket
L589[23:15:12] <Na​dja> There's nothing raw about a TCP socket.
L590[23:15:40] <Na​dja> Notably, you can't send custom ip packets, or worse, custom ethernet ones.
L591[23:15:53] <Na​dja> And linux interfaces must be on one of those two levels.
L592[23:16:21] <Na​dja> Not necessarily ethernet and IP specifically mind you. Just that level of control.
L593[23:17:08] * Amanda broadcasts wifi packets containing log4j exploits
L594[23:17:11] <Na​dja> You could totally replicate what OC can do in OC2, using a custom peripheral. But then the Linux APIs can't give you networking, you have to do it *all* yourself.
L595[23:17:24] <AR2​000> Why would you want to use anything else than TCP/IP. Even the new QUIC layer is using UDP because going lower in the OSI stack could cause issue
L596[23:17:34] <Na​dja> That's a stupid take.
L597[23:17:48] <Na​dja> sorry, *ignorant* take.
L598[23:18:03] <Na​dja> You can't do networking without going down to at least IP.
L599[23:18:42] <AR2​000> Mostly internet routers not handling non TCP or UDP IP packets
L600[23:18:46] <Amanda> You're missing the point. Ar2000, it's not that we necessarily*want* to but that we *must* for real-internet interactions on the vms
L601[23:18:54] <Na​dja> Yeah, but they are handling *IP* packets, are they not?
L602[23:19:08] <Na​dja> So not being able to send *IP packets* won't really work, will it now?
L603[23:19:44] <Amanda> That's just the level of abstraction that were working with on the host/guest boundry
L604[23:19:59] <Na​dja> And an userspace application without elevanted packets can't send custom IP packets. Which it has to so that the emulated hardware *on the VM side* can actually work.
L605[23:20:11] <Na​dja> custom doesn't mean weird.
L606[23:20:18] <AR2​000> >Nadja: Yeah, but they are handling *IP* packets, are they not?
L607[23:20:19] <AR2​000> Not really
L608[23:20:19] <AR2​000> Some of them only handle ICMP, TCP and UDP. Why IDK. That's what I learned in a http3/QUIC presentation
L609[23:20:24] <Na​dja> It just means "the application does the entire building of the IP packets"
L610[23:20:32] <Na​dja> >AR2000: Not really
L611[23:20:33] <Na​dja> Some of them only handle ICMP, TCP and UDP. Why IDK. That's …
L612[23:20:33] <Na​dja> All of which are wrapped in IP :)
L613[23:20:48] <AR2​000> >Nadja: It just means "the application does the entire building of the IP packets…
L614[23:20:48] <AR2​000> Might be dropped by ISP's infrastructure
L615[23:20:53] <Na​dja> Nope
L616[23:20:59] <Amanda> Question, @AR2000 what do you think the /IP means in TCP/IP
L617[23:20:59] <Na​dja> You're missing the point, 100$.
L618[23:21:16] <AR2​000> Internet Protocole
L619[23:21:22] <AR2​000> I know
L620[23:21:33] <Amanda> It means TCP over IP
L621[23:21:47] <Na​dja> Again, you can totally do what OC does, via custom peripherals. *But that is not what any of this is about*
L622[23:22:01] <Amanda> IP is the container that holds icmp, tcp, udp
L623[23:22:06] <Ri​ley> Internet ponies obviously. When you send a request over your internet tube it is dropped into a saddle bag and transported via pony to the destination.
L624[23:22:08] <Na​dja> Because what OC does does not integrate with the Linux interfaces at all.
L625[23:22:39] <Forec​aster> %tonkout
L626[23:22:40] <MichiBot> Aw jeez! Forec​aster! You beat your own previous record of 3 hours, 56 minutes and 19 seconds (By 2 hours, 25 minutes and 58 seconds)! I hope you're happy!
L627[23:22:41] <MichiBot> Forec​aster has tonked out! Tonk has been reset! They gained 0.006 tonk points! plus 0.01 bonus points for consecutive hours! Current score: 3.79191524, Position #1
L628[23:22:57] <AR2​000> >Amanda: IP is the container that holds icmp, tcp, udp
L629[23:22:57] <AR2​000> I know. I studied networking
L630[23:23:01] <Na​dja> Goddammit forecaster.
L631[23:23:35] <Na​dja> >AR2000: I know. I studied networking
L632[23:23:36] <Na​dja> you sure? :P
L633[23:23:47] <Amanda> @AR2000 Then you should understand why saying "we don't need IP we have TCP" is nonsense
L634[23:24:55] <AR2​000> >Amanda: <@256917157559009281> Then you should understand why saying "we don't nee…
L635[23:24:56] <AR2​000> I didn't say we don't need IP if we have TCP.
L636[23:24:56] <AR2​000> I was just asking why reinventing the wheel when when have TCP already to handle IP connexion
L637[23:25:00] <AR2​000> Or UDP
L638[23:25:01] <Na​dja> Okay, different question: What do you think should happen if a program in the OC2 VM sends an ICMP packet to it's network? Let's say a ping to a different host in the same LAN.
L639[23:25:16] <Na​dja> Like, what happens to that ICMP packet?
L640[23:25:36] <AR2​000> ICMP in IP in Ethernet on whatever hardware you are using
L641[23:25:46] <Na​dja> Yeah but what happens to it?
L642[23:25:54] <Na​dja> Like okay, it's in the OC2 vm, great!
L643[23:25:56] <Na​dja> And then?
L644[23:25:57] <AR2​000> Encapsulated
L645[23:26:05] <Na​dja> What do you mean with encapsulated?
L646[23:26:32] <AR2​000> Put one inside the other
L647[23:26:40] <Na​dja> put what into what?
L648[23:26:53] <AR2​000> ICMP in IP in Ethernet
L649[23:27:06] <Na​dja> Okay, I now have ICMP in IP in Ethernet, in the OC2 vm.
L650[23:27:07] <Na​dja> Now what?
L651[23:27:13] <AR2​000> And Ethernet on electron or photons
L652[23:27:29] <AR2​000> >Nadja: Now what?
L653[23:27:30] <AR2​000> You do the opposite
L654[23:27:31] <Na​dja> Yes yes sure, but after that. It's now in the OC2 mod, it can do something with that packet
L655[23:27:36] <Na​dja> What does it do with that packet?
L656[23:27:46] <AR2​000> Take the Ethernet, find IP in it, find ICMP in it
L657[23:27:56] <Na​dja> Okay, I have the ICMP packet!
L658[23:28:13] <Na​dja> In the OC2 mod, so in the JVM running on the host computer in userspace
L659[23:29:04] <AR2​000> Issue is, some routers on internet will look at Ethernet, then IP since they route IP, but will check the protocol encapsulated in IP to help with routing. If they don't know it, they might drop it
L660[23:29:12] <Na​dja> But I'm not at some router
L661[23:29:16] <Na​dja> I'm in the OC2 mod
L662[23:29:29] <Na​dja> I'm still on the host computer, running in a JVM in userspace.
L663[23:30:11] <AR2​000> Do you use the host network ?
L664[23:30:12] <AR2​000> It may not let you put anything you want in the IP packet
L665[23:30:19] <Na​dja> Yeah, exactly :)
L666[23:30:28] <Na​dja> To send that ICMP packet in the host network I need elevated permissions
L667[23:30:33] <Na​dja> Because I need *raw IP*
L668[23:30:47] <Na​dja> Y'know, exactly what we've been telling you that we need :)
L669[23:30:52] <AR2​000> So make the same choice than QUIC, and put your protocol on top of UDP.
L670[23:31:01] <Na​dja> But what happens with the ICMP packet?
L671[23:31:09] <Na​dja> What do I do with that?
L672[23:31:31] <AR2​000> If you have a custom ICMP do the same as QUIC and build it on top of UDP
L673[23:31:38] <Na​dja> No I don't have custom ICMP.
L674[23:31:42] <Na​dja> I just have ICMP.
L675[23:31:51] <Na​dja> You know, the normal Internet Control Message Protocol
L676[23:31:56] <Na​dja> The one you need to ping things.
L677[23:32:16] <AR2​000> QUIC used UDP because it us the closest to raw there is. Just put your things in it
L678[23:32:16] <CompanionCube> and for other non-ping things
L679[23:32:26] <Na​dja> But what do I do with ICMP?
L680[23:32:33] <Na​dja> Okay I can wrap it in UDP, then what?
L681[23:33:04] <Na​dja> What port do I use for that ICMP-in-UDP packet?
L682[23:33:36] <AR2​000> >Nadja: Okay I can wrap it in UDP, then what?
L683[23:33:36] <AR2​000> Then you are good.
L684[23:33:36] <AR2​000> Like you take out ICMP from IP, take your things out of UPD
L685[23:33:48] <Na​dja> Okay but what happens on the receiving end?
L686[23:33:54] <Na​dja> They don't expect UDP
L687[23:33:55] <Amanda> What's the use of ICMP-in-UDP though, I can't talk to anything with that
L688[23:33:56] <Na​dja> They expect ICMP!
L689[23:34:13] <Na​dja> But I'm not sending them ICMP. I'm sending them ICMP-in-UDP
L690[23:34:20] <Na​dja> They are just going to drop that :(
L691[23:34:26] <AR2​000> You can send ICMP without UDP.
L692[23:34:26] <AR2​000> The OS will let you do it
L693[23:34:31] <Na​dja> Nope
L694[23:34:44] <Na​dja> Not custom one anyway
L695[23:34:58] <Na​dja> I can tell the kernel to send an ICMP packet.
L696[23:34:59] <AR2​000> >Nadja: They are just going to drop that :(
L697[23:35:00] <AR2​000> No custom ICMP ???
L698[23:35:04] <Na​dja> But I can't tell the kernel to send *this* ICMP packet.
L699[23:35:51] <Na​dja> For that I'd need a raw socket on the IP level.
L700[23:36:35] <Na​dja> Then I'd still need to be a router and do quite ugly NAT, but that's okay, that's been done before
L701[23:37:16] <Na​dja> If I could get a raw socket on the ethernet level however I could skip keeping any state, and just take the IP packet that I got from the OC2 vm and just send that as-is!
L702[23:37:24] <Na​dja> Don't need to care about anything :)
L703[23:38:29] <Na​dja> Well, I do need to care about IP packets I receive that aren't for the host itself and forward them to the OC2 VM because they may be for that VM, but that's all in all pretty easy.
L704[23:40:02] <AR2​000> Other solution : encapsulate IP or even Ethernet in UPD
L705[23:40:02] <AR2​000> vl host decapsulate to UDP, give it to OC2 vm, and oc2 find IP and more in it
L706[23:40:17] <Na​dja> Encapsulation is not the problem.
L707[23:40:20] <Na​dja> Or the solution.
L708[23:40:23] <Na​dja> *Termination* is.
L709[23:40:37] <Amanda> Except we're nto trying to talk to OC2 from OC2, we're trying to talk to, Google, or Amazon, or whatever your webhost of preference is
L710[23:40:40] <Na​dja> And termination is a problem you can't wish away.
L711[23:40:51] <Na​dja> And it's also a solution that just works.
L712[23:41:01] <Amanda> WE can already talk to OC2 from OC2 on the same hsot.
L713[23:41:19] <Na​dja> We can also talk from OC2 to any host on the internet thanks to termination :P
L714[23:41:22] <Amanda> We want to be able to talk on IRC, download files, etc
L715[23:41:31] <AR2​000> Make the vm read all icmp or simulate them.
L716[23:41:32] <Na​dja> And vice versa for that matter ^^
L717[23:41:44] <Na​dja> >AR2000: Make the vm read all icmp or simulate them.
L718[23:41:45] <Na​dja> That needs elevated permissions.
L719[23:41:51] <AR2​000> To read?
L720[23:41:54] <Na​dja> Yep
L721[23:41:59] <AR2​000> Crap
L722[23:42:24] <Na​dja> Really now, if this problem was that simple we'd already done it that way.
L723[23:43:03] <AR2​000> And why can't you give oc the socket?
L724[23:43:04] <Amanda> Believe it or not, we're not a bunch of shit-flinging monkies, we actually knwo what we're talking about usually
L725[23:43:05] <Na​dja> There is a "simple" solution, it's called termination resp. tunneling and the only thing it requires is some set up on the outer host (or, with VXLAN, on another host due to Linux' limitations)
L726[23:43:21] <Na​dja> @AR2000 Because that is now how any of that works.
L727[23:43:48] <Amanda> The guest talks to the host using a virtio fake ethernet device
L728[23:43:49] <Na​dja> At this point you are being ridiculous.
L729[23:43:53] <AR2​000> >Amanda: Believe it or not, we're not a bunch of shit-flinging monkies, we actuall…
L730[23:43:54] <AR2​000> And I'm trying to understand the issue. You know it, I don't
L731[23:44:53] <Na​dja> For clarification, this is not a theoretical discussion.
L732[23:44:57] <Amanda> Except you're not framing it as "More information please" your attitude reads as "Just do <wrong thing> EZ"
L733[23:44:59] <Na​dja> We *have done this* https://twitter.com/dequbed/status/1487908742901420034/photo/1
L734[23:45:04] <Na​dja> *We know what we're doing*
L735[23:45:31] <Ri​ley> It seems you limit who can view your tweets. Can you post a screenshot?
L736[23:45:37] <Na​dja> Ah right
L737[23:45:44] <AR2​000> https://tinyurl.com/26cyc2od
L738[23:45:50] <Na​dja> https://tinyurl.com/2bgqzwzd
L739[23:46:22] <Na​dja> gruetzkopf was the brain behind that, I'm just the pretty set dressing. But I still know how it works :)
L740[23:48:02] <Ri​ley> And this is done with termination tunneling as you described above and the issue is it requires extra setup on the host side?
L741[23:48:04] <AR2​000> Can you give me a use case where writing a custom ICMP is required ?
L742[23:48:19] <Na​dja> >Riley: And this is done with termination tunneling as you described above and t…
L743[23:48:19] <Na​dja> This is done with VXLAN specifically
L744[23:48:46] <Amanda> It's not "Custom" as in "special snowflake magic values" it's "custom" as in "Not from the host IP, MAC, etc"
L745[23:49:13] <Na​dja> >AR2000: Can you give me a use case where writing a custom ICMP is required ?
L746[23:49:13] <Na​dja> Counterpoint: Tell me why **not being able to send** ICMP is acceptable.
L747[23:50:20] <Amanda> You could do work in the host to pretend to tbe the other end, and send everything on the VM's behalf, as I mentioned earlier, but @Nadja mentioned the drawbacks for that, besides all the extra work
L748[23:53:03] <AR2​000> >Nadja: Counterpoint: Tell me why **not being able to send** ICMP is acceptable.
L749[23:53:03] <AR2​000> Open a socket, the OS send the required ICMP, close it, it also does
L750[23:53:19] <AR2​000> You don't need to send icmp yourself
L751[23:53:20] <Na​dja> @Riley in short because yeah fuck no, I'm to nobodies surprise not in the mood for lectures anymore; OC2 (the mod) takes (ip) packets from a special virtio network interface and sends them to a terminating host using VXLAN, i.e. UDP. The terminating host has a VXLAN terminating interface (i.e. fully in *kernel*-space), receives said packets and routes them as configured. So in essence we have a virtual trunk between OC2 (the mod) and the
L752[23:53:20] <Na​dja> terminating host. Due to limitations in Linux the kernel running the mod can't be the one terminating the trunk. In-Game it's a virtio interface so Linux natively supports it and allows the normal boring socket-based operations on this boring ass interface that appears as a normal (IP) interface to everything.
L753[23:53:28] <Na​dja> >AR2000: Open a socket, the OS send the required ICMP, close it, it also does
L754[23:53:28] <Na​dja> That's not how that works.
L755[23:54:20] <Amanda> You don't manually construct ICMP packets to send using the linux sockets API
L756[23:54:31] <Amanda> Or are you just saying what I said, twice now.
L757[23:55:24] <AR2​000> >Amanda: You don't manually construct ICMP packets to send using the linux sockets…
L758[23:55:24] <AR2​000> Because you don't need to.
L759[23:55:52] <AR2​000> I think I found what I'm missing: do you have a entire LAN in the vm ?
L760[23:56:08] <Amanda> So, you're saying parse the ICMP packet, construct the same packet using the linux socket API, then ssend that.... so same thing I said thrice now
L761[23:56:33] <AR2​000> >Amanda: So, you're saying parse the ICMP packet, construct the same packet using …
L762[23:56:33] <AR2​000> No, I'm saying never make ICMP and let the OS do it
L763[23:56:47] <Amanda> ... So, the linux APIs?
L764[23:57:00] <AR2​000> >Amanda: ... So, the linux APIs?
L765[23:57:00] <AR2​000> Or window but yes
L766[23:57:18] <Amanda> Okay, where do you get the values to instruct the OS to do this from the guest?
L767[23:57:37] <Amanda> Sat, from an ICMP packet transfered over the virtual ethernet device, to the host
L768[23:59:27] <Na​dja> @Riley Since it's virtio how it's represented to code running on the virtualized hardware is well-defined, it's basically a circle buffer for (IP) packets that are to be send out from a network device; you don't get to send ethernet packets around but you don't need to, switching would be performed in the OC2 mod on the java side. The advantage of VXLAN specifically is that you can have up to 2^24 different and independent VLAN, so you could
L769[23:59:27] <Na​dja> have up to 2^24 different simulated network cards in-game, with each of those being (potentially) routed in a different way on the terminating end (or dropped entirely!), so that way its pretty reasonable in terms of safety too, you can have it so only known and pre-configured network cards get to route to the interwebs :)
<<Prev Next>> Scroll to Top