code logs -> 2012 -> Mon, 19 Mar 2012< code.20120318.log - code.20120320.log >
--- Log opened Mon Mar 19 00:00:11 2012
00:00 Noah [maoranma@Nightstar-333d981b.pools.spcsdns.net] has quit [Ping timeout: 121 seconds]
00:09 himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code
00:09 mode/#code [+o himi] by ChanServ
00:20
< Rhamphoryncus>
Bluh. Plenty of pages telling me how to induce seizures in someone with photosensitive epilepsy, nothing specific on how to avoid it (in game design)
00:22
< celticminstrel>
Well, wouldn't a good start be to not do the things that will induce it? :P
00:22 You're now known as TheWatcher[t-2]
00:22
< Rhamphoryncus>
Theoretically
00:23
<@TheWatcher[t-2]>
"Don't write games"~
00:23
< Rhamphoryncus>
But since I'm providing diagnostic information on the renderer it's rather hard to avoid the high update frequency
00:24
< Rhamphoryncus>
I found some vague comments about changing colour but not luminosity will make it less likely. I also found comments that red will do it regardless
00:28 You're now known as TheWatcher[zZzZ]
00:30
<~Vornicus>
What is the diagnostic information?
00:30
<~Vornicus>
And how large is the thing that's flashing?
00:56 Serah [Z@Nightstar-5aa18eaf.balk.dk] has joined #code
00:57 Stalker [Z@Nightstar-5aa18eaf.balk.dk] has quit [Client closed the connection]
00:59 macdjord is now known as macdjord|out
01:11
<~Vornicus>
(there may be an alternative to seizure induction here
01:11
<~Vornicus>
(or you may be flashing things that are so small as to not matter)
01:57 Kindamoody[zZz] is now known as Kindamoody
01:59 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Ping timeout: 121 seconds]
02:08 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
02:21 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
02:32 * Vornicus plays some New Super Mario Bros., is impressed at how unflappable its physics engine is. "you want to wall slide and jump off moving platforms? No problem! Now do this puzzle that requires it."
02:37
<&McMartin>
heh
02:37
<&McMartin>
Also, man
02:38
<&McMartin>
NSMB made me feel bad about my campaign of mushroom and turtle genocide
02:38
<&McMartin>
Not only is the overworld music the earwormiest since the NES era, the enemies bop to it
02:39
<@Vash>
=P
02:39 maoranma [maoranma@Nightstar-333d981b.pools.spcsdns.net] has joined #code
02:40
<~Vornicus>
(there's a bit in the world 2 fortress where there's an upside-down-U platform that moves on a track, and your goal is to wall jump between the two arms while you climb. Physics works exactly like it should even as the platform moves and changes direction)
02:41
< maoranma>
GRRRRAAH, FECK YOU WASP
02:42
< maoranma>
Stung me right on the pad of my index finger
02:45 Attilla [Obsolete@Nightstar-7d4a92bc.as43234.net] has quit [Ping timeout: 121 seconds]
02:53 Serah [Z@Nightstar-5aa18eaf.balk.dk] has quit [Ping timeout: 121 seconds]
03:07
<~Vornicus>
gnah. I find myself once again befuddled at how I want this thing to work.
03:21 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has joined #code
03:28
<~Vornicus>
Level's an object. THat much is relatively clear. I can create a level by passing in a file name; this loads the level, creates the surface, figures out what entities there are...
03:29
<~Vornicus>
Then the entities are objects too. All of these, eventually, are in a render list somewhere but I'm not sure where. Probably in the level object, because that way when the level is unloaded the entities are cleared out too.
03:32
<~Vornicus>
This means that my event loop, generally, tells the level to render itself.
03:32
<~Vornicus>
and then the level renders its entities.
03:37
<~Vornicus>
Okay. THen somewhere in here I need to eventually display two levels at once - either I've done smooth scrolling, or I'm doing edge transitions a la LttP
03:40
<~Vornicus>
Not sure how that is going to work yet.
03:42
<&Derakon>
Transitioning between rooms can be done by rendering the current display to a surface, then doing a wipe transition from that surface to the new level.
03:42
<&Derakon>
Thus you only need one level in memory at a time.
03:42
<&Derakon>
If you want to do smooth scrolling throughout then you'll need to either make your levels the size of the entire world map or hold multiple levels in memory at once.
03:42
<&Derakon>
I'd advocate for the former at least to get you started.
03:43
<&Derakon>
You can spawn monsters on the fly depending on their distance to the player.
03:43
<~Vornicus>
Acutally i think I see how to do it
03:43
<~Vornicus>
Sort of.
03:44
<&Derakon>
Also, if you want a quadtree to hold dynamic objects in, you can use Jetblade's.
03:44
<~Vornicus>
ooh, quadtree. I need to learn how that actually works.
03:44
<&Derakon>
http://code.google.com/p/jetblade/source/browse/quadtree.py
03:45 * Derakon eyes the top class comment, notes he cannot spell "spatial" consistently, apparently.
03:45
<&Derakon>
Anyway, let's say our world space is a 256x256-unit square.
03:46
<&Derakon>
We create a 256x256 quadtree node.
03:46
<&Derakon>
We spawn an object. We stuff it into that node.
03:46
<&Derakon>
We spawn another object, we stuff it into that node again.
03:46
<&Derakon>
This repeats some number of times until we hit the max we like to have in a single node.
03:46
<&Derakon>
Then we create four 128x128 nodes underneath the 256x256 node, and divvy up our objects amongst them.
03:46
<&Derakon>
(Objects that straddle the boundaries between two child nodes stay at the top level)
03:47
<&Derakon>
Now when we add new objects, we push them down as far into the tree as we can.
03:47
<&Derakon>
When it comes time to do collision detection for a given object, all the candidates we have to consider are either in the candidate's current node, or one of that node's parents.
03:49
<&Derakon>
Hm, Jetblade's QuadTree creates all children when the initial node is created. Probably inefficient, but oh well.
03:49
<~Vornicus>
-- or in any of that node's children.
03:49
<&Derakon>
Yes, quite.
03:49
<&Derakon>
Well...no, not entirely.
03:49
<&Derakon>
Any child that the candidate does not intersect can be skipped.
03:50
<&Derakon>
If we have an object in the top-left of the root node, then there's only one child we have to consider.
03:50
<~Vornicus>
So if it's only in the right pair, then I don't need to check the left
03:50
<~Vornicus>
But if it's only in the top left then it'd be down a level anyway
03:50
<&Derakon>
Only if we're unhappy with how many objects we have in the root node.
03:50
<&Derakon>
See line 138 for the collision detection function.
03:50
<~Vornicus>
aha
03:51
<&Derakon>
It accepts a list of objects that come from our parents and need to be collided with us and our children.
03:51
<&Derakon>
The first thing we do is prune out objects in colliders that don't actually intersect us.
03:52
<&Derakon>
Hm, if I wrote these functions today there'd be more comments~
04:10
<~Vornicus>
Heh
04:48 eckse [eckse@Nightstar-34e67ee8.dsl.sentex.ca] has quit [Connection reset by peer]
04:49 himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Connection closed]
04:56 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
05:04 Derakon is now known as Derakon[AFK]
05:30 Vash [Vash@Nightstar-cdeba41f.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!]
05:53 Kindamoody is now known as Kindamoody|out
05:54 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has quit [Ping timeout: 121 seconds]
06:15 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has joined #code
06:20
< Eri>
Hmm. So, how can I use the terminal to start a program, but still be able to use the same terminal window afterwards for more commands.
06:21
< Eri>
Like, if I type, $ ibus-daemon, it starts ibus, but that terminal window is exclusively dedicated to ibus, now.
06:21
< Eri>
Is there some way to, like, fork the two processes, or something? Like, this is a daemon, it doesn't need my input
06:21
< Eri>
At least, not from terminal
06:25
<@Tamber>
"ibus-daemon &" will run it in the background. But it'll still end when you close the terminal.
06:26
< Eri>
That's fine. Mostly, I just don't want to have a terminal window open for each program. It gets cluttered fast because I always forget where programs are in the menu, so I just go to the terminal
06:26
<@Anna>
You can also run it, CTRL+Z, "bg" and it'll be fine.
06:27 Anna is now known as Ling
06:28
< Eri>
Hah, that was the worst idea ever. Possibly because ibus kind of hijacks the keyboard input, ctrl+z made everything stop taking keyboard input
06:29
<@Ling>
Then instead do: screen -Rx ibus ibus-daemon
06:29
<@Ling>
CTRL+a, d to get back to prompt
06:29
<@Ling>
Run the command again to get back to ibus
06:30
<@Ling>
If you have issues, remove the R for the start up, and the ibus-daemon from the recall.
06:30
<@Ling>
Oh, and -Rs
06:30
<@Ling>
Not -Rx, sorry
06:32
< Eri>
Ooh, that's slick
06:33
< Eri>
I'll have to read more into the man-page on the weekend. This is, like, terminal virtualization, or something?
07:16
< thalass>
You should also be able to open a new tab within that terminal window, though that's much the same as opening a new window
07:17 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has quit [[NS] Quit: Farewell, fellow nerdlingers!]
07:17 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has joined #code
07:19
<@ToxicFrog>
Eri: kind of, yeah. screen lets you run arbitrary many virtual terminals inside a single real terminal, and also detach from and reattach to them at will.
07:24
< thalass>
afternoon, all
07:45 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has quit [Ping timeout: 121 seconds]
07:58 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has joined #code
08:09 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has quit [[NS] Quit: omg]
08:10 You're now known as TheWatcher
08:17 macdjord|out is now known as macdjord|slep
08:38
< Tarinaky>
Good morning everyone.
08:49 Attilla [Obsolete@Nightstar-7d4a92bc.as43234.net] has joined #code
08:53 Attilla [Obsolete@Nightstar-7d4a92bc.as43234.net] has quit [Ping timeout: 121 seconds]
08:53
< Tarinaky>
"Which is great... if you've ever thought that Operating Systems were just too useful..."
08:54
<@Ling>
Context?
08:54
< Tarinaky>
UEFI
08:54
< Tarinaky>
http://www.youtube.com/watch?v=IfKF7mEY5Dc
08:56
<@Ling>
That's the "don't worry we're not going to kill Linux" tech right?
08:56
< Tarinaky>
Something like that.
09:08 Attilla [Obsolete@Nightstar-7d4a92bc.as43234.net] has joined #code
09:14 * TheWatcher eyes that vido
09:14
<@TheWatcher>
Good gods, he's wearing a CDTV tshirt. I remember those, hell, I had one of those.
09:17
< Tarinaky>
It gets good after 18min
09:35
<@TheWatcher>
"Code is just an embodiment of bugs" - heh
09:40
< Tarinaky>
Right. I'm going to go shave and think about heading in to college.
09:41
< Tarinaky>
I have another exciting episode of "Complete a 2 hour lab session in 45 minutes."
09:41
<@TheWatcher>
Wooo!
09:53 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has quit [Client exited]
10:19 * TheWatcher finishes that video, sighs vaguely
10:23 McMartin [mcmartin@Nightstar-e70d8af0.pltn13.sbcglobal.net] has quit [Connection reset by peer]
11:02 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has joined #code
11:03
< thalass>
whee
11:29 * thalass ponders
11:32
< thalass>
I've found how to get python to speak through espeak. (in this case to speak the time). However the output on the hour is "the time is nineteen zero", which i would rather be "nineteen hundred" or "nineteen o'clock".
11:32
< thalass>
(it was surprisingly simple, too)
11:47
< thalass>
Trying to replace %M in strftime(%H %M) with "hundred", but it's expecting a number.
12:00 Reiver [orthianz@3CF3A5.E1CD01.C6689C.33956A] has joined #code
12:02 Reiver is now known as Orthia
12:18
< thalass>
also espeak doesn't want to say the leading "0", whereas a similar program on my phone using the same strftime rules (literals?) will do so.
12:45 Attilla_ [Obsolete@Nightstar-7d4a92bc.as43234.net] has joined #code
12:46 Attilla [Obsolete@Nightstar-7d4a92bc.as43234.net] has quit [Ping timeout: 121 seconds]
12:55 Attilla_ is now known as Attilla
13:48 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has joined #code
14:00 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has joined #code
14:17 thalass [thalass@Nightstar-cf36ce30.bigpond.net.au] has quit [[NS] Quit: damnit morning shift in six hours]
14:33 Vash [Vash@Nightstar-cdeba41f.wlfrct.sbcglobal.net] has joined #code
14:33 mode/#code [+o Vash] by ChanServ
15:02 macdjord|slep [macdjord@Nightstar-2cabe70a.cpe.distributel.net] has quit [[NS] Quit: Save Derpy Hooves!]
16:04
<@Alek>
nifteh. http://english.bouletcorp.com/2011/12/18/pixel-quantum/
16:38 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has quit [Ping timeout: 121 seconds]
17:18 Stalker [Z@Nightstar-5aa18eaf.balk.dk] has joined #code
17:30 Vash [Vash@Nightstar-cdeba41f.wlfrct.sbcglobal.net] has quit [[NS] Quit: I lovecraft Vorn!]
17:40 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out]
18:02 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
18:02 mode/#code [+o ToxicFrog] by ChanServ
18:06 Rhamphoryncus [rhamph@Nightstar-5697f7e2.abhsia.telus.net] has joined #code
18:09 Vornucopia [NSwebIRC@C888DE.7F9621.4A1301.BBBE7B] has joined #code
18:18 Kindamoody|out is now known as Kindamoody
18:40 Kindamoody is now known as Kindamoody[zZz]
19:09 * Vornucopia floons
19:12
<@Alek>
Vorny, check this out
19:12
<@Alek>
http://english.bouletcorp.com/2011/12/18/pixel-quantum/
19:30 * Tarinaky :/s at pydev a few times.
19:30
< Vornucopia>
what's up?
19:31
< Tarinaky>
Nothing File->Restart couldn't fix.
19:33 * Vornucopia gts his js prime factorizer to show results in exponential form
19:49 McMartin [mcmartin@Nightstar-551c08b0.pltn13.sbcglobal.net] has joined #code
19:49 mode/#code [+ao McMartin McMartin] by ChanServ
20:00 * Vornucopia gets it to show the factorization tree, but the tree sucks.
20:01 * Vornucopia tries to figure out how to format this thing sensibly without too much work.
20:02 * Vornucopia tries to figure out what a sensible format would even look like.
20:16 Vash [Vash@Nightstar-cdeba41f.wlfrct.sbcglobal.net] has joined #code
20:16 mode/#code [+o Vash] by ChanServ
20:41
< Vornucopia>
Gneh.
20:43
< Vornucopia>
Arg, styling stuff like this can be a pain.
20:44
< Vornucopia>
That's a little better...
20:46 Attilla_ [Obsolete@Nightstar-76beb3a3.as43234.net] has joined #code
20:47 Attilla [Obsolete@Nightstar-7d4a92bc.as43234.net] has quit [Ping timeout: 121 seconds]
20:49 Attilla_ is now known as Attilla
20:54 Vornucopia [NSwebIRC@C888DE.7F9621.4A1301.BBBE7B] has quit [[NS] Quit: Page closed]
20:55 * Tarinaky wooos!
20:56
< Tarinaky>
My faction name generator works awesomely in the first attempt.
20:56
<&McMartin>
Is this like the Unitarian Jihad
20:56
< Tarinaky>
Ah. Slight problem...
20:56
< Tarinaky>
Sometimes it generates real words.
20:57
< Tarinaky>
I've had the King Kingdom come up once >.>
20:57
<&McMartin>
Special-case those, as Might and Magic did in 4 so that it stopped generating leather leather armor.
20:57
<&McMartin>
(It menaces with spikes of leather!)
20:58
< Tarinaky>
['Rorng Republic', 'Chayd Regieme', 'Hir Aristocracy', 'Nuw Council', 'Horp Union', 'Lin Principality', 'Djoth Colonies', 'Vayj Hive', 'Fereb Union', 'Chyd Fiefdom']
20:59
<&McMartin>
Hm.
20:59
< Tarinaky>
The problem with special casing is I'm not sure I want to build a decision tree for every possible combination and check it's not a real word :p
20:59
<&McMartin>
Not like that. Maybe a rule that says to reroll if the first word is a substring of the second?
21:00
< Tarinaky>
How would you do that in python?
21:00 * Tarinaky sucks at string manip >.>
21:10
< Tarinaky>
http://i.imgur.com/39dqW.png << How it looks in the game.
21:35
< Tarinaky>
Hmm.
21:35
< Tarinaky>
Is there something in python that will return all the variables defined in a module?
21:36
< Tarinaky>
For example, if I have a file containing a list of colours - can I retrieve some builtin that lists all the colours.
21:36
< Tarinaky>
Or do I need to manually add each colour to a list.
21:36
< Tarinaky>
s/variables/constants
21:42
<@jerith>
import foo; dir(foo)
21:44
< Tarinaky>
Ahah, cheers.
21:44
<@jerith>
You might want to structure that a bit differently, though.
21:45
<@jerith>
Maybe a COLOURS = {'red': 0xff0000, 'green': 0x00ff00, <etc.>}
21:46
<@jerith>
in your module.
21:49
< Tarinaky>
The trouble is then I have a color.COLORS and it feels a bit silly.
21:50
< Tarinaky>
If I wasn't using python color.py would be a text file.
21:50
< Tarinaky>
If it was C or something I'd be reading a text file at runtime to populate some kind of data-structure.
21:51
< Tarinaky>
Problem: dir(color) returns the keys... not the values...
21:51
< Tarinaky>
How infuriating.
22:02
< celticminstrel>
foo.__dict__?
22:02
< celticminstrel>
Or whatever the magic name is.
22:03
< celticminstrel>
It's __dict__ for classes, at least.
22:03
< Tarinaky>
Exactly. Can't remember the magic name :p
22:03
< celticminstrel>
Oh, so it's not __dict__?
22:03
< Tarinaky>
Dunno. I just changed everything to use a dict called COLORS
22:03
< celticminstrel>
Okay then.
22:03
< Tarinaky>
Because it was easier than playing guess the word with the python interpretter
22:03
< Tarinaky>
Currently wtfing at some geometry that's going askew - suspect rounding error.
22:04
< celticminstrel>
Looks like it actually is __dict__...
22:05
< Tarinaky>
Nm. PEBKAC
22:15 maoranma [maoranma@Nightstar-333d981b.pools.spcsdns.net] has quit [Ping timeout: 121 seconds]
22:24
< Tarinaky>
http://i.imgur.com/DLRuv.png << The perils of prng generated names.
22:26 eckse [eckse@Nightstar-34e67ee8.dsl.sentex.ca] has joined #code
22:26 mode/#code [+o eckse] by ChanServ
22:27 RichyB [MyCatVerbs@Nightstar-86656b6c.cable.virginmedia.com] has joined #code
22:28 RichyB [MyCatVerbs@Nightstar-86656b6c.cable.virginmedia.com] has quit [Client closed the connection]
22:30 celticminstrel [celticminst@Nightstar-5d22ab1d.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
22:36 Stalker [Z@Nightstar-5aa18eaf.balk.dk] has quit [Ping timeout: 121 seconds]
23:37 Stalker [Z@Nightstar-3602cf5a.cust.comxnet.dk] has joined #code
23:39
<&McMartin>
"Maintenance: kill trunk in the face"
23:51 Derakon[AFK] is now known as Derakon
--- Log closed Tue Mar 20 00:00:26 2012
code logs -> 2012 -> Mon, 19 Mar 2012< code.20120318.log - code.20120320.log >

[ Latest log file ]