code logs -> 2017 -> Tue, 21 Feb 2017< code.20170220.log - code.20170222.log >
--- Log opened Tue Feb 21 00:00:34 2017
00:01 LadyOfLight [catalyst@Nightstar-12c.jtr.132.82.IP] has quit [Ping timeout: 121 seconds]
00:02 LadyOfLight` is now known as LadyOfLight
00:12 Kindamoody is now known as Kindamoody[zZz]
02:20
<&ToxicFrog>
This is weird -- and aggravating -- as all hell.
02:20
<&ToxicFrog>
If I save my game, create portals, and then load my game, the coordinates of the portals don't change
02:21
<&ToxicFrog>
Or rather
02:21
<&ToxicFrog>
The coordinates *do* change back to what they are in the ESP
02:21
<&ToxicFrog>
But the parent cell doesn't
02:21
<&ToxicFrog>
!
02:22
<&ToxicFrog>
So, the first problem is that you cast Open Portal and it lists the portal locations as they were last in realtime, not as they were when you made the save
02:22
<&ToxicFrog>
It also gets confused about what the portal linkages are, but I think I've fixed that by not relying on getTeleportDoor to ever return anything sensible
02:23
<&ToxicFrog>
Of course, where the wheels come off is --
02:23
<&ToxicFrog>
I create a portal.
02:24
<&ToxicFrog>
I save my game.
02:24
<&ToxicFrog>
I relocate one end of the portal, then decide I didn't actually want to do that and reload my game.
02:24
<&ToxicFrog>
The end I relocated is now at the coordinates it had when I saved, but in the cell I relocated it to, meaning it's probably floating outside the level geometry somewhere.
02:24
<&ToxicFrog>
I step into the portal.
02:24
<&ToxicFrog>
OOPS.
02:26
<&ToxicFrog>
So -- it's fine as long as you never place a portal, then load a save and try to use the other end of the portal you just placed (without moving it again)
02:27
<&ToxicFrog>
Maybe this is why the original mod used rats?
02:28
<&ToxicFrog>
Hmm. Place portal, reload save -> portal is in void
02:28
<&ToxicFrog>
Save with portal in void, restart game, load save -> portal in blueroom
02:29
<&ToxicFrog>
Loading save files is clearly not very hygienic >.<
02:41
<@Reiv>
That would certainly help explain the usage of rats
03:37
<&ToxicFrog>
This is completely baffling.
03:38
<&ToxicFrog>
It worked fine for days. Now it's all crashy. But it's not consistently crashy.
03:38
<&ToxicFrog>
I first observed it earlier today; I made some edits to the mod, loaded my save, and bam, instant CTD.
03:38
<&ToxicFrog>
So I rolled back the edits...and exactly the same thing happened.
03:40
<&ToxicFrog>
But it's not like "having the mod loaded at all crashes the game on save file load", because I can load some saves.
03:40
<&ToxicFrog>
And once I load those, I can load others that I can't load from the main menu!
03:40
<&ToxicFrog>
It looks like there is a pattern -- once I successfully load a save, I can load any other save *at the same location*.
03:41
<&ToxicFrog>
And I can freely travel between locations thereafter.
03:42
<&ToxicFrog>
But I *can't* load a save from a different location.
03:47 * ToxicFrog gives up, goes to bed
05:23 macdjord|wurk is now known as macdjord
06:28 LadyOfLight` [catalyst@Nightstar-tmp4e2.dab.02.net] has joined #code
06:31 LadyOfLight [catalyst@Nightstar-1sj.jtr.132.82.IP] has quit [Ping timeout: 121 seconds]
06:38 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has quit [Ping timeout: 121 seconds]
06:41 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has joined #code
06:41 mode/#code [+o Alek] by ChanServ
06:53 McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has quit [Ping timeout: 121 seconds]
07:42 LadyOfLight` is now known as LadyOfLight
07:44 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
07:46 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
07:46 mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ
07:51 LadyOfLight [catalyst@Nightstar-tmp4e2.dab.02.net] has quit [[NS] Quit: Bye]
08:53 Kindamoody[zZz] is now known as Kindamoody
09:23 Kindamoody is now known as Kindamoody|afk
09:25 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has quit [Ping timeout: 121 seconds]
09:29 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has joined #code
09:29 mode/#code [+o Alek] by ChanServ
11:07 * TheWatcher sighs at students
11:08
<@TheWatcher>
I wonder why some of them seem to have so much trouble with the idea that any non-zero value is true, regardless of sign
11:23
<@Pi>
It is kinda a silly thing.
11:24
<@Pi>
Need moar first-class boolean types!
11:26 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
11:48
<@TheWatcher>
Also CHECK YO RETURN VALUES, damnit.
12:02 LadyOfLight [catalyst@Nightstar-tmp4e2.dab.02.net] has joined #code
12:15
< LadyOfLight>
Today's fun - a race condition in my shared_ptr implementation :3
12:16
<@TheWatcher>
Egh, threadi problengms >.<
12:16
<@TheWatcher>
Good luck!
12:18
< LadyOfLight>
Also, I find myself writing while (true) a lot lately
12:18
< LadyOfLight>
It's quite exciting
12:18
< LadyOfLight>
I know all the potential interleaving that causes the problem
12:18
< LadyOfLight>
The question is how to implement the fastest correct solution
12:19
< LadyOfLight>
The answer is 'tomorrow'
12:21
<@ion>
I didn't know that "tomorrow" worked as a "how"
12:21
<@ion>
What typecast did you use - always throws an error for me when I try that
12:24
<@TheWatcher>
ion: the trick is to have it do the work tomorrow and send the result back in time to when you need it~
12:24
<@TheWatcher>
(I'm sure there's a Boost module for that somewhere)
12:27
<@TheWatcher>
(For some reason I tend to prefer `for( ; ; ) { ... }` over `while(true) { ... }`. Not sure why.)
12:30
<@TheWatcher>
(I suspect that it's something to do with the middle looking like ;_; which can be appropriate sometimes...)
12:30
< LadyOfLight>
There's more than likely a CPAN module or seven
12:30
< LadyOfLight>
Yeah, tears seem appropriate
12:34
<@TheWatcher>
Time::StatisField "control the flow of time" - yep, probably!
12:34
< LadyOfLight>
:D
12:35
< LadyOfLight>
Threading bugs are timing bugs
12:35
< LadyOfLight>
Write code that treats ownership as a first class concept
12:35
< LadyOfLight>
Then life gets easier
12:35
< LadyOfLight>
Basically, learn clojure, receive bacon.
12:37 * TheWatcher realises there is no Bacon module in CPAN, should address this.
12:40
< LadyOfLight>
WHAT
12:40
< LadyOfLight>
This surprises and angers me
12:40
<@TheWatcher>
I KNOW, RITE!?
12:42
< LadyOfLight>
Rite is definitely the word when it comes to Perl
12:43
< LadyOfLight>
I'm tempted to write ACME::Bacon
12:43
< LadyOfLight>
Which allows you to push button
12:45
< LadyOfLight>
It would be my finest contribution to open source to date
12:45
<@TheWatcher>
:D
12:45
<@TheWatcher>
Doo eeet
12:45
< LadyOfLight>
(also maybe my first?)
12:48
<@TheWatcher>
(Actually, use http://search.cpan.org/~ingy/Acme-1.11111111111/lib/Acme.pod as your base class. Acme::Bacon will work, and then be both Achme and Spiffy)
12:48
<@TheWatcher>
(I'm not serious - Spiffy is pretty shit)
12:50
<@TheWatcher>
*acme
12:50
<@TheWatcher>
I can word
12:58 LadyOfLight` [catalyst@Nightstar-t7hhcj.dab.02.net] has joined #code
13:02 LadyOfLight [catalyst@Nightstar-tmp4e2.dab.02.net] has quit [Ping timeout: 121 seconds]
13:20
<@gnolam>
Hmm... to use "FLÃGGÃÓNKââ¬ÄHIÅÃÃLâ«ÃN" as an example of a valid name (to show that there are no silly encoding restrictions) or not, that is the question. >_>
13:23 * LadyOfLight` snrk
13:23
< LadyOfLight`>
Ia! Ia!
13:24
<@TheWatcher>
gnolam: sounds like a good test to me!
13:56 LadyOfLight` is now known as LadyOfLight
14:03 chatter [NSkiwiirc@Nightstar-1cs.b6e.76.45.IP] has joined #code
14:03
< chatter>
hey guys
14:03
< chatter>
allah is doing
14:03
< chatter>
sun is not doing allah is doing
14:03
< chatter>
to accept Islam say that i bear witness that there is no deity worthy of worship except Allah and Muhammad peace be upon him is his slave and messenger
14:09 chatter [NSkiwiirc@Nightstar-1cs.b6e.76.45.IP] has quit [Z-Lined: Allah is going (ID: X7A2MJYEZ0)]
14:10
<@TheWatcher>
Bloody persistent irritant
14:13
< LadyOfLight>
Heh
14:54 * LadyOfLight is too tired to reason about anything, apparently
15:18
<@Azash>
https://www.theregister.co.uk/2017/02/20/is_your_child_a_hacker_liverpudlian_par ents_handed_cyber_checklist/
15:27 * TheWatcher eyes that, facepalms
15:38
<@gnolam>
>_<
15:48
<@celticminstrel>
Uh. Okay? :S
17:10 gnolam_ [lenin@Nightstar-t1tbf0.cust.bahnhof.se] has joined #code
17:13 gnolam [lenin@Nightstar-t1tbf0.cust.bahnhof.se] has quit [Ping timeout: 121 seconds]
17:19 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
17:19 mode/#code [+qo Vornicus Vornicus] by ChanServ
17:29 gnolam_ [lenin@Nightstar-t1tbf0.cust.bahnhof.se] has quit [[NS] Quit: Network topology changes]
18:10 gnolam [lenin@Nightstar-t1tbf0.cust.bahnhof.se] has joined #code
18:10 mode/#code [+o gnolam] by ChanServ
18:43 McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has joined #code
18:43 mode/#code [+ao McMartin McMartin] by ChanServ
19:28 LadyOfLight` [catalyst@Nightstar-t9kkru.dab.02.net] has joined #code
19:30 LadyOfLight [catalyst@Nightstar-t7hhcj.dab.02.net] has quit [Ping timeout: 121 seconds]
19:45 LadyOfLight` is now known as LadyOfSlumber
20:02
<@abudhabi>
Today: Futzing about in Python without internet access.
20:02
<@abudhabi>
It was like back in the stone age. I had to use pydoc from the command line. Actually reading the manual.
20:07
<@gnolam>
abudhabi: https://docs.python.org/3/download.html
20:08
<@abudhabi>
gnolam: Thanks.
20:08
<@abudhabi>
I'm pretty sure I reinvented some built-in sorting algorithm.
20:09
<@abudhabi>
(Printing a dict in order of values.)
20:12
<@gnolam>
Printing how?
20:13
<@abudhabi>
I have a dict of string keys to int values. I want them output in descending order of the ints.
20:15
<@abudhabi>
http://pastebin.com/1k7xW6qM
20:15
<@abudhabi>
(The 1000 is an arbitrarily high number. So long as it's higher than any value in the dict.)
20:16 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has quit [Ping timeout: 121 seconds]
20:16
<@abudhabi>
(Yes, I know it cuts off the lowest values. That's intentional.)
20:17
<&ToxicFrog>
...I guess it's *technically* O(n), because the 1000 is constant?
20:17
<&ToxicFrog>
Although given the "higher than any value of the dict" requirement, in practice it's O(mn) where m is the max value. :/
20:19
<@gnolam>
Unless you're going to run that with tens to hundreds of millions of records, something like
20:19
<@gnolam>
for key, value in sorted(spam.items(), key=operator.itemgetter(1)):
20:19
<@gnolam>
print(key + ":", value)
20:19
<@gnolam>
should be a lot more readable.
20:20 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has joined #code
20:20 mode/#code [+o Alek] by ChanServ
20:20
<&jerith>
for k, v in reversed(sorted(wordstat, key=lambda (k, v): v)): print("{}: {}".format(k, v))
20:20
<&ToxicFrog>
Even with hundreds of millions of records I'd expect it to be faster.
20:20
<&ToxicFrog>
sorted() is nlogn (right? RIGHT?) and I'd be surprised if logn is larger than m on real-world corpora.
20:21
<&jerith>
gnolam: You want descending order.
20:21
<&ToxicFrog>
jerith: you want sorted(..., reverse=True) rather than reversed(sorted(...)) :P
20:22
<&jerith>
ToxicFrog: Yes, but I couldn't remember the name of the param and I wanted to do this without looking at any docs or running it.
20:23
<@gnolam>
ToxicFrog: more that if he's running a 32-bit installation that starts risking MemoryError as sorted() isn't a generator.
20:23
<@gnolam>
jerith: ... so he did
20:23
<@gnolam>
Working on one and a half hours of sleep here. My reading comprehension could be better.
20:24
<&jerith>
And now that I've actually tried it, it should be: for k, v in reversed(sorted(wordstat.items(), key=lambda x: x[1])): print("{}: {}".format(k, v))
20:26
<&jerith>
Forgetting the .items() was stupid. Forgetting that python3 ripped out arg destructuring was self-defence.
21:23 * TheWatcher sets about generating call graphs of this code so he can properly start the process of twisting it through 11 dimensions into a form that is more sensible
21:25
<&jerith>
I don't accept the premise.
21:25
<&jerith>
You're assuming it's possible to make it more sensible.
21:25
<@TheWatcher>
Hey, in this case its c++, not perl, so it is vaguely possible
21:25
<@TheWatcher>
*it's
21:29
<&McMartin>
C++ has a wide range of clarity
21:31 * LadyOfSlumber considers the lily
21:35
<@TheWatcher>
Not too bad, only 410 call graphs
22:00 Kindamoody|afk is now known as Kindamoody
22:10
<@iospace>
https://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on- windows-10/
22:22 * TheWatcher does a great deal of "what the fuck was I thinking?!"
22:22
<&McMartin>
That information has been classified under the codewords ERSTWHILE DOPPELGANGER
22:23
<@abudhabi>
Codenames aren't supposed to be mission descriptions!
22:23
<&McMartin>
(current retro project probably gets the codewords FALSE START CLIVE)
22:25
<@gnolam>
abudhabi: they're not, but there are seriously people in actual high security jobs who do not get that.
22:26
<&McMartin>
Right, and when used whimsically the whole point is for them to be cryptic crossword clues.
22:26 LadyOfSlumber [catalyst@Nightstar-t9kkru.dab.02.net] has quit [[NS] Quit: Bye]
22:27
<&McMartin>
(FALSE START CLIVE is the project of getting a working machine language loader program for the Sinclair's ill-fated pre-Spectrum computer, the ZX81.)
22:54
<&ToxicFrog>
hah! I think I've solved the Oblivion crashiness issue.
22:55
<&ToxicFrog>
I put all the portal information into a Map[String, Map[String, Any]]. In the interests of keeping all the 'configuration settings' in one place, I put it in <pts>, the quest script responsible for initializing the mod on first load.
22:56
<&ToxicFrog>
This means it gets written to disk with the save file, and it looks like something in there does not serialize reliably.
22:56
<&ToxicFrog>
Maybe it's the nested map, maybe it's the fact that the map holds refs to game objects
23:36 abudhabi [abudhabi@Nightstar-7nkq9k.de] has quit [Operation timed out]
23:55 abudhabi [abudhabi@Nightstar-7nkq9k.de] has joined #code
23:55 mode/#code [+o abudhabi] by ChanServ
--- Log closed Wed Feb 22 00:00:35 2017
code logs -> 2017 -> Tue, 21 Feb 2017< code.20170220.log - code.20170222.log >

[ Latest log file ]