Timestamps are in GMT/BST.
| 00:44:00 | | sam686 has joined |
| 00:44:00 | | ChanServ sets mode +v sam686 |
| 00:54:00 | | sam686 Quit (Ping timeout: 258 seconds) |
| 00:54:00 | | sam686 has joined |
| 00:54:00 | | ChanServ sets mode +v sam686 |
| 01:26:00 | | watusimoto Quit (Ping timeout: 260 seconds) |
| 01:31:00 | | raptor Quit (Remote host closed the connection) |
| 02:26:00 | | Helmic has joined |
| 02:29:00 | | karamazovapy Quit (Read error: Connection reset by peer) |
| 02:29:00 | | [1]sam686 has joined |
| 02:29:00 | | sam686 Quit (Ping timeout: 258 seconds) |
| 02:29:00 | | [1]sam686 is now known as sam686 |
| 02:33:00 | | Helmic1 has joined |
| 02:33:00 | | Helmic Quit (Disconnected by services) |
| 02:33:00 | | Helmic1 is now known as Helmic |
| 02:37:00 | | [1]sam686 has joined |
| 02:39:00 | | sam686 Quit (Ping timeout: 258 seconds) |
| 02:39:00 | | sam686 has joined |
| 02:39:00 | | ChanServ sets mode +v sam686 |
| 02:40:00 | | [2]sam686 has joined |
| 02:40:00 | | sam686 Quit (Disconnected by services) |
| 02:40:00 | | [2]sam686 is now known as sam686 |
| 02:41:00 | | ChanServ sets mode +v sam686 |
| 02:42:00 | | [1]sam686 Quit (Ping timeout: 258 seconds) |
| 03:24:00 | | sam686 has left |
| 03:26:00 | | sam686 has joined |
| 03:28:00 | | Helmic Quit (Ping timeout: 246 seconds) |
| 03:29:00 | | raptor has joined |
| 03:29:00 | | ChanServ sets mode +o raptor |
| 03:29:00 | | Helmic has joined |
| 04:08:00 | | karamazovapy has joined |
| 04:13:00 | sam686 | :31] CTCP/VERSION request from raptor : version request? |
| 04:13:00 | raptor | yes - it tells me what IRC client you are using |
| 04:13:00 | raptor | i asked because you Hydra folks seem to get a lot of ping timed outs... |
| 04:13:00 | raptor | asked = checked |
| 04:13:00 | sam686 | Konversation 1.3.1 (C) 2002-2010 by the Konversation team. ok i see what you use.. |
| 04:13:00 | raptor | yep |
| 04:14:00 | sam686 | it's becuase i had a lot of internet disconnects today due to re-wiring the cables and cords. |
| 04:14:00 | raptor | oh ok |
| 04:16:00 | sam686 | why is the word Hydra colored yellow for me? |
| 04:17:00 | raptor | probably because your IRC client has an ego :) |
| 04:18:00 | sam686 | bitfighterLogBot doesn't respond to version request.. |
| 04:19:00 | raptor | hmmm... i thought it did |
| 04:19:00 | | [raptor VERSION] |
| 04:19:00 | | [raptor PING] |
| 04:19:00 | raptor | responds to PING |
| 04:20:00 | sam686 | your client won't respond to "userinfo"" |
| 04:20:00 | raptor | i don't have that option - is that WHOIS? |
| 04:22:00 | sam686 | one thing i dislike from Hydra is it's very difficult to copy test in the chat test, all there is are "Copy Buffer", its difficult to select, and there is no copy selection. |
| 04:22:00 | sam686 | i have to open chat log to copy, Hydra can log to file. |
| 04:22:00 | raptor | like i say - konversation is the best client i've ever used |
| 04:23:00 | raptor | but you'd have to install KDE for windows to use it |
| 04:23:00 | sam686 | how big is KDE in download size / install size? |
| 04:24:00 | raptor | not sure - you can start by getting the installer: http://windows.kde.org/download.php |
| 04:24:00 | raptor | its a small launcher to download the rest |
| 04:24:00 | raptor | if you only select the app that you want, it should tell you the overall size |
| 04:24:00 | raptor | but i'd expect it to be big |
| 04:25:00 | raptor | you might want to try others - irssi (if you're crazy), chatzilla, mIRC |
| 04:26:00 | raptor | ooo, i found this: http://www.silverex.org/news/ |
| 04:26:00 | karamazovapy | does anyone here have mumble installed? |
| 04:27:00 | raptor | i think konversation was based on Xchat |
| 04:27:00 | raptor | never heard of mumble |
| 04:27:00 | karamazovapy | want to help me test? |
| 04:27:00 | raptor | what OS? |
| 04:27:00 | karamazovapy | http://mumble.sourceforge.net/ |
| 04:27:00 | karamazovapy | any |
| 04:27:00 | raptor | sure |
| 04:27:00 | raptor | one moment |
| 04:27:00 | karamazovapy | I threw a server up on my vps - I want to see if it works |
| 04:29:00 | sam686 | why download a 200 MB KDE for 1 MB konversaions? There are lots of IRC clients that are about 1 MB in size. |
| 04:30:00 | raptor | haha |
| 04:30:00 | raptor | yeah, thought it would be high |
| 04:30:00 | raptor | it uses kdelibs and family |
| 04:30:00 | raptor | which is a whole desktop environment |
| 04:30:00 | raptor | ok karamazovapy, i installed mumble |
| 04:30:00 | karamazovapy | add 206.217.217.165 as a server |
| 04:31:00 | karamazovapy | once you run through the startup crap |
| 04:31:00 | sam686 | there is an option of writing custom IRC client, or using telnet as IRC (sounds crazy, having to input ping every minute) |
| 04:31:00 | | watusimoto has joined |
| 04:33:00 | raptor | i connected |
| 04:53:00 | karamazovapy | guess I'll test later |
| 04:55:00 | | raptor Quit (Read error: Operation timed out) |
| 05:07:00 | | raptor has joined |
| 05:07:00 | | ChanServ sets mode +o raptor |
| 05:07:00 | raptor | ok i'm back |
| 05:07:00 | raptor | apparently restarting my sound system shutdown the network subsystem, too |
| 05:12:00 | raptor | hey skype works now - i had to gut the pulse audio subsystem from my OS |
| 05:12:00 | raptor | and rely on good ol' ALSA |
| 05:17:00 | karamazovapy | ...neat...? |
| 05:17:00 | raptor | so maybe mumble will work now? |
| 05:31:00 | raptor | karamazovapy: so mumble 1.1 works ok |
| 05:31:00 | raptor | but your server is 1.2 so i can't connect |
| 05:43:00 | raptor | sam686: did you find a better IRC client? |
| 05:43:00 | sam686 | no.. |
| 05:43:00 | sam686 | haven't checked much... |
| 05:44:00 | sam686 | i am mostly fine what i have. |
| 05:53:00 | karamazovapy | raptor - Error during SSL handshake: error:1408A10B:SSL routines:SSL3_GET_CLIENT_HELLO:wrong version number [13] |
| 05:54:00 | raptor | is that something you are seeing on your side? |
| 05:54:00 | karamazovapy | that's from the server log |
| 05:54:00 | karamazovapy | doesn't give any hints as to why your other connections wouldn't allow voice chat though |
| 05:54:00 | raptor | probable from when i tried to connect with 1.1 |
| 05:54:00 | karamazovapy | yeah |
| 06:02:00 | raptor | good night folks |
| 06:02:00 | | raptor Quit (Remote host closed the connection) |
| 06:05:00 | | raptor has joined |
| 06:05:00 | | ChanServ sets mode +o raptor |
| 06:06:00 | raptor | one last message for watusimoto: the game server server is running at 80% RAM usage because of a squeezebox server and backend database taking 60MB of RAM |
| 06:06:00 | raptor | just FYI |
| 06:06:00 | raptor | ok good night |
| 06:06:00 | | raptor has left |
| 08:29:00 | | watusimoto Quit (Ping timeout: 250 seconds) |
| 08:59:00 | | sam686 has left |
| 13:14:00 | | Helmic has left |
| 15:31:00 | | raptor has joined |
| 15:31:00 | | ChanServ sets mode +o raptor |
| 16:47:00 | | watusimoto has joined |
| 17:45:00 | watusimoto | before I broke it again, I had all editor items working at least to some extent |
| 17:46:00 | raptor | uh oh |
| 17:46:00 | watusimoto | so I'll be doing a little more rearranging, then i want to check what I have in |
| 17:46:00 | watusimoto | still needs more work, but it's clear that the new form works |
| 17:47:00 | watusimoto | and, I think, is better from a maintenance and logical flow point of view |
| 17:47:00 | watusimoto | more code reuse, closer ties between the editor and the game, etc. |
| 17:48:00 | watusimoto | I'd also like to consider using an XML like format for the level files |
| 17:48:00 | raptor | as long as maintenance is easier |
| 17:48:00 | raptor | ugh, XML |
| 17:48:00 | raptor | howabout JSON :) |
| 17:48:00 | watusimoto | that would make it easier to add new attributes, and make it easier to reuse level reading/writing code between different objects |
| 17:48:00 | raptor | XML means human readable |
| 17:48:00 | raptor | ok XML |
| 17:48:00 | watusimoto | whatever |
| 17:49:00 | watusimoto | human readable is important |
| 17:49:00 | raptor | yeah, so XML is the way to go |
| 17:49:00 | watusimoto | we we might want to start thinking about what that would look like |
| 17:49:00 | raptor | unless we do it in python? |
| 17:49:00 | raptor | that's somewhere in the middle... |
| 17:49:00 | watusimoto | you mean make the levels be in python? |
| 17:49:00 | watusimoto | they could be in lua |
| 17:50:00 | watusimoto | every level could be a self-contained levelgen |
| 17:50:00 | raptor | haha |
| 17:59:00 | raptor | ugh, XML means XPATH |
| 18:12:00 | watusimoto | maybe there's something else |
| 18:13:00 | raptor | i'm just trying to think of something that is simple enough to parse and put into our object model without too much layering/abstraction |
| 18:16:00 | raptor | OGDL requires whitespace |
| 18:16:00 | raptor | not sure i like that idea |
| 18:21:00 | raptor | this looks promising: http://stackoverflow.com/questions/170686/best-open-xml-parser-for-c |
| 18:21:00 | raptor | rapidXML |
| 18:21:00 | raptor | we don't need a lot of XML features |
| 18:22:00 | raptor | we may not even need to use attributes |
| 18:24:00 | watusimoto | https://secure.wikimedia.org/wikipedia/en/wiki/YAML |
| 18:24:00 | watusimoto | criteria I see are 1) easily parsable (i.e. library support) and 2) human editable |
| 18:24:00 | raptor | me too |
| 18:26:00 | raptor | YAML requires whitespace justification to be equal among siblings |
| 18:27:00 | raptor | i don't know about you, but whitespace-dependent languages drive me up the wall |
| 18:27:00 | raptor | we would also be requiring level creators to make sure their whitespace is in line properly with YAML |
| 18:38:00 | watusimoto | true |
| 18:39:00 | watusimoto | one advantage of xml is we might be able to bend our levels into something parsable (and displayable) via svg renderers |
| 18:39:00 | raptor | explain |
| 18:39:00 | watusimoto | it would be cool to look at a level in a browser and at least see the general form of it |
| 18:39:00 | raptor | OOOoooo |
| 18:39:00 | raptor | yeah |
| 18:39:00 | raptor | i forgot about that |
| 18:39:00 | watusimoto | since svg == xml (sort of), there may be a clever way |
| 18:40:00 | watusimoto | parsing isn't really a big deal since we'll use a library |
| 18:40:00 | raptor | yeah, i'm thinking xml is the way to go |
| 18:40:00 | watusimoto | I mainly want to be able to write attributes in different orders |
| 18:40:00 | raptor | that rapidxml library looks promising: it's small and fast (they claim approaching the speed of c++ strlen) |
| 18:40:00 | watusimoto | so I can make the level reading/writing more modular |
| 18:41:00 | watusimoto | speed isn't even really an issue given the size of our files; that said faster is ebtter than slower |
| 18:41:00 | raptor | yes, that's true - i'm just thinking about sam's server with hundreds of levels, and k's server with levels that are crazy complex |
| 18:42:00 | watusimoto | but we only read them one by one |
| 18:43:00 | watusimoto | except at startup when we scan them all |
| 18:43:00 | raptor | yes, that |
| 18:43:00 | watusimoto | looking at pugixml |
| 18:43:00 | watusimoto | https://pugixml.googlecode.com/svn/tags/latest/docs/quickstart.html |
| 18:43:00 | watusimoto | I think it would be helpful to take a simple level and mock it up in xml to see what it would look lik |
| 18:44:00 | watusimoto | and how much extra crap we'd need to add to make it renerable in svg readers |
| 18:44:00 | raptor | the source is twice the size of rapid xml |
| 18:44:00 | watusimoto | I just chose it arbitrarily |
| 18:48:00 | watusimoto | rapidxml looks good too |
| 18:54:00 | | Helmic has joined |
| 18:58:00 | raptor | i'm putting together a test level that i will convert to a schema of sorts |
| 19:07:00 | raptor | i'm always indecisive when it comes to using a tag or an attribute |
| 19:09:00 | watusimoto | I'm not sure... |
| 19:09:00 | watusimoto | I've managed to avoid xml this long... |
| 19:11:00 | raptor | for a barrier, the points are in groups of two, right? |
| 19:13:00 | watusimoto | x,y |
| 19:13:00 | watusimoto | yes |
| 19:14:00 | watusimoto | I see what you meant: <team>1</team> vs. <team = 1> |
| 19:14:00 | watusimoto | <point>x,y</point> v. <point x=44, y=66> |
| 19:14:00 | raptor | yep |
| 19:15:00 | raptor | i'm about half done with an example |
| 19:15:00 | raptor | then you can look over it and see if i missed anything or make anything more concise |
| 19:15:00 | watusimoto | well, it will give us a point of departure for our discussion |
| 19:21:00 | raptor | speed zone is start (x,y) end (x.y) speed? |
| 19:37:00 | raptor | ok |
| 19:37:00 | raptor | i'm confused |
| 19:37:00 | raptor | is processLevelLoadLine() not used anymore? |
| 19:37:00 | raptor | how are the objects loaded from the file now? |
| 19:52:00 | | sam686 has joined |
| 19:52:00 | | ChanServ sets mode +v sam686 |
| 20:06:00 | raptor | ok ready for my first iteration watusimoto? |
| 20:06:00 | raptor | here is the original level file: http://96.2.123.136/upload/test.level |
| 20:07:00 | raptor | here is the XML conversion: http://96.2.123.136/upload/test.level.xml |
| 20:09:00 | raptor | a good read when thinking about cleanup up the data as far as using attributes/elements: http://www.w3schools.com/DTD/dtd_el_vs_attr.asp |
| 20:09:00 | sam686 | in a current old loader, I added some form of adding some arguments (SnapEnable and R10) in any order (numbers nust stay in order) in SpeedZone::processArguments |
| 20:15:00 | sam686 | really want to group polywall into polywalls? why quote numbers? <polywalls><polywall><point x="1" y="2"> ... </polywall></polywalls> |
| 20:18:00 | sam686 | why have "minplayers" twice? <minplayers>4</minplayers> might be better with <minplayers = 4 /> or similar.. |
| 20:18:00 | sam686 | does description allow multiple lines? |
| 20:18:00 | raptor | to answer all of your questions |
| 20:19:00 | raptor | we can do anything you want :) |
| 20:19:00 | raptor | i do suggest raeding this first: http://www.w3schools.com/DTD/dtd_el_vs_attr.asp |
| 20:23:00 | sam686 | One problem is having to keep compatible with older versions.. |
| 20:24:00 | raptor | older versions of XML or of the .level format? |
| 20:24:00 | sam686 | maybe both, mainly .level |
| 20:25:00 | raptor | yes, we'll have to do an abstraction for reading in older levels, but we would only write to the new XML |
| 20:25:00 | raptor | as far as xml goes: using attributes like this: <minplayers count="4" /> |
| 20:26:00 | raptor | as the advantage of being smaller code |
| 20:26:00 | raptor | however, using elements like this: <minplayers>4</minplayers> |
| 20:26:00 | sam686 | i don't know if it make a difference.. |
| 20:26:00 | raptor | has the advantage of faster parsing |
| 20:27:00 | raptor | see the section entitled "Avoid using attributes?" in that link i posted, above |
| 20:27:00 | sam686 | what happens if quotes is missing? like in <point x=-1 y=-3 /> |
| 20:27:00 | raptor | then it isn't well-formed XML |
| 20:27:00 | raptor | another bad point to attributes |
| 20:28:00 | raptor | so this may be better: <point><x>-1</x><y>-3</y></point> |
| 20:29:00 | sam686 | XML looks like it have 2 drawbacks, 1. having to use same attribute name twice, 2. having to use quotes on everything including numbers. |
| 20:29:00 | sam686 | well, its either 1, or 2, that might be a problem.. |
| 20:29:00 | raptor | yes |
| 20:29:00 | raptor | but the advantage of being easily understandable |
| 20:30:00 | raptor | and it doesn't really matter programming it - it only matters when manually editing the fiel |
| 20:31:00 | raptor | that's why i'm thinking this format is better: <point><x>-1</x><y>-3</y></point> |
| 20:32:00 | sam686 | another problem is how to warn users the level is corrupted, currently the level just goes blank if corrupted (missing gameType? ). |
| 20:33:00 | raptor | that isn't XML specific is it? |
| 20:34:00 | sam686 | in XML, could be easier make a mistake (missing </x>) |
| 20:34:00 | sam686 | it world be difficult to find the error when the level won't load. |
| 20:34:00 | raptor | usually most text editor tell you if it is missing |
| 20:35:00 | raptor | XML is a very structurally rigid specification |
| 20:35:00 | raptor | so it is easy to tell errors |
| 20:35:00 | raptor | (if your editor has a built in XML parser) |
| 20:37:00 | sam686 | windows don't have a built-in default XML editor, only notepad. Though many internet browser might find errors |
| 20:37:00 | raptor | yeah - any browser will tell you right where the error is - besides, anyone serious about text editing should not use notepad :] |
| 20:39:00 | sam686 | XML may take longer to start hosting, as it have to look at all possible levels for title, minplayers, maxplayers. |
| 20:40:00 | raptor | yes, that's what we figure |
| 20:41:00 | raptor | but it will allow for greater flexibility when writing the files, and order won't matter anymore |
| 20:43:00 | sam686 | some XML errors won't be found in any XML error checker, such as putting <polywall>...</polywall> inside <barrier>, or missing <x>4</x> |
| 20:43:00 | raptor | not if we use a DTD |
| 20:44:00 | raptor | which states the exact structure a specific XML file must meet |
| 20:45:00 | raptor | for isntance |
| 20:46:00 | raptor | here is the DTD for that XML file i created: http://pastie.org/1923615 |
| 20:47:00 | raptor | all you have to do is load the DTD with a parser, and if the XML doesn't match the rules, it is invalid |
| 20:47:00 | raptor | but that may be overkill for what we need |
| 20:48:00 | sam686 | what happens when you put <minplayers>zz</minplayers>, that might not be caught my error checking? |
| 20:49:00 | raptor | yes that is true |
| 20:49:00 | raptor | XML is a structural format |
| 20:49:00 | | Helmic has left |
| 20:49:00 | raptor | that would have to be caught by the code |
| 20:50:00 | sam686 | might make it harder to convert XML to older .level format (if ever want to run level in older version) |
| 20:50:00 | raptor | very true |
| 20:50:00 | raptor | i'm thinking we would never do that though |
| 20:51:00 | raptor | beca |
| 20:51:00 | raptor | because we only move forward! |
| 20:51:00 | raptor | :) |
| 20:53:00 | sam686 | Many errors (not enough points, not a number when number required) will probably have to be checked in level loading and somehow display / log warnings? |
| 20:53:00 | raptor | yes - which is more than what we do right now |
| 20:55:00 | sam686 | no matter what, using something in newer version that don't exist in older version won't work properly (polywalls not supported in 014 / 013), same goes with XML or not (.level). |
| 20:56:00 | raptor | yep |
| 21:51:00 | | raptor Quit (Remote host closed the connection) |
| 22:47:00 | watusimoto | how are the objects loaded from the file now? ==> still using processlevelLoadLine() |
| 22:52:00 | watusimoto | each object will now have a compainion function, currently called toString() that handles the output end of things |
| 22:53:00 | watusimoto | sort of like pack/unpack update |
| 22:57:00 | | [1]watusimoto has joined |
| 22:59:00 | | watusimoto Quit (Ping timeout: 258 seconds) |
| 22:59:00 | | [1]watusimoto is now known as watusimoto |
| 23:31:00 | | raptor has joined |
| 23:31:00 | | ChanServ sets mode +o raptor |
| 23:34:00 | | ThePing has joined |
| 23:34:00 | | ThePing has left |
| 23:48:00 | | sam686 Quit (Read error: Connection reset by peer) |
| 23:49:00 | | sam686 has joined |
| 23:49:00 | | ChanServ sets mode +v sam686 |