Tuesday, 2007-02-20

*** tpb has joined #tp00:00
*** ChanServ sets mode: +o tpb00:00
nashThe data in is generally data you know is going to be smaller then int32_ts, so as long as the programmer knows it is safe the compiler can just rack off.00:01
nashFor cpp a static cast or whichever is probably appropriate, to let anyone reading the code know that larger numbers aren't going ot appear here...00:02
mithrowhy not just use uint32_t everywhere instead of mixing them?00:04
nashThat would also do the trick.  But I'd argue against changing things unless there is a real problem...00:05
nashPart of the reason to not use them is that it's ingrained to just use int 99% of the time.00:08
nashI know my client is pretty sloppy with it at the moment ;-)00:12
nashI do intend to fix, but getting it to do what it needs to do first is the most important task00:12
nashActually I found a bug this morning where it doesn't deal with split frames correctly00:13
adhocwhats the standard 64 bit int nowadays?00:15
adhoclong long ?00:15
nashint64_t00:16
nashNothing else is guaranteed00:16
nashlong long is an extension00:16
mithroadhoc: when was/is this thing?00:17
nashlong long will probably be, but don't bet your house on it, else someone will hand you a 128bit long long00:17
nash(short = 16, int = 32, long = 64, llong long = 128) on platform00:18
mithroplatform?00:18
* nash also refers to a cray machine that had all int types (except char) == 64 bits00:18
mithronash: when you ask for a int32 is it guarrenteed to be 32 bits long or just 32 at a minimum?00:19
nashint32_t is 32 bits.00:19
nashThere is a min which is some other weird name00:19
adhocmithro: it been rescheduled in a coupla weeks00:19
mithrookay so if you want to do something tricky with wrap around, int32 is guarenteed to work like a 32bit int?00:20
nashint_least32_t is the minimum one00:20
nashwhich may be larger if the arch is quicker00:20
adhocso if you are on a 64bit arch ...00:20
adhocwhat the 32 bit int for, in this example?00:21
nashWell since an int isn't guaranteed to wrap gracefully, int32_t won't either00:21
nashNothing requires 2s compliment remember00:21
mithroso how do you get a guarenteed 2s compliment 32bit int? :)00:21
nashBy building your own language and hardware spec00:21
nashWhy do you want that?00:22
mithronash: so you could have something which wraps in a predictable way?00:22
nashmithro: Some archs will throw an exception when you wrap... So if you want to handle it, handle it yourself00:23
* nash asks "What are you _really_ trying to do?"00:23
mithronash: wrapping is quite handy when coding PICs, I imagine it would be useful in more advanced archs00:23
nashNot really.  In 'advanced archs[1]' you have enough grunt to do what you want to do.  When you are dealing with things like wrapping you are dealing with hardware specific things anyway, not portable things.00:24
nash[1] Advanced used losely when refereing to the x86 interface00:25
mithroanyway back to work for me00:26
* nash can't recall a time he needed to worry about intentional wrapping on a desktop or embedded (ie ARM) device00:26
mithrocan't think of times it would be useful in codecs and such?00:27
nashCodecs - maybe...00:29
nashBut the big cost on such systems is touching memory, a few instructions to check for wrap and handle appropriately is essentially zero cost, as it's pure integer.   The cost of accessing and writing is the limiting factor00:30
* mithro touches some memory01:12
nashmithro: Hard to avoid really01:12
* mithro feels dirty ;)01:13
nashDecoding a single pixel on an arm takes a theoretical minimum of 7 memort access01:13
mithrodecoding?01:15
mithrosplitting into RGB?01:15
mithropixel of MPEG?01:15
nashreading, decoding, splitting into YUV01:19
nashYUV -> RGB is done later01:19
mithrowhats YUV stand for?01:26
nashNothing much... gold out chrominence, luminence and the third one I can't remember01:27
nashSame as TV colours... essentially matches better with human vision systems01:28
mithronash: know anything about dlopen on cygwin?01:34
nashnope01:57
nashOnly that it is a bit flaky01:57
nashhmmm... is there a way to create a 'board' from the client?02:23
* nash wonders if I can create board to allow communication between members of an alliance or similar?02:23
*** tuna-fish- has quit IRC02:25
nashback shortly02:25
mithronash: nope02:36
nashThat's annoying02:43
nashIs there plans to?02:43
mithrokind of02:52
mithroIE the server could support multilpe boards and the client can post messages02:53
nashYes, but is there plans to allow a client to create boards?02:54
mithronope02:57
mithrowhy would a client need to create boards?02:57
nashWell - how about for the reason I said?02:59
nashAlso I was thinking of using one to send info to the player for the AI03:00
nashAlso general communication between players03:00
* nash doesn't understand why there is this complex multiboard comms system... that can't be used except for the server to tell you messages... which could be done a lot easier03:04
mithroyou can post to message boards03:18
nashBut the only one I can see is my own personal one?03:18
mithronash: do you know much about dlopen?03:18
nashMore then I care to admit too... yes03:19
nashWhat is the issue?03:19
mithronash: have you used the libtool library which makes it portable to use?03:20
mithronash: currently the only one you can see is your own personal one03:20
nashWhere "makes it portable to use" means works on both linux 2.4 and 2.6, and maybe a BSD or two... yes03:21
nashmithro:  (boards) So I can't use it to talk to anyone else?03:21
mithrolibtool is claiming03:22
mithro#03:22
mithrodlopen (Solaris, Linux and various BSD flavors)03:22
mithro#03:22
mithroshl_load (HP-UX)03:22
mithro#03:22
mithroLoadLibrary (Win16 and Win32)03:22
mithro#03:22
mithroload_add_on (BeOS)03:22
mithro#03:22
mithroGNU DLD (emulates dynamic linking for static libraries)03:22
mithronash: not at the moment03:22
mithronash: but in the near future you will be able to use it to communicate with others03:23
nashSo will you be able to create your own boards?03:24
nashAnyway.. about libtool and it's not so portable portability...03:24
nashNote you need different automake macros for different systems when using libtool03:24
mithronash: creation of boards isn't planned for tp0403:25
mithroit is likely that enough boards will exist by default03:25
nashNot really - you need to be able to limit access to particular groups for instance03:26
nashAnd then they may want multiple boards03:26
nashSo what is the issue with libtool?03:28
mithronash: i want the static link emulation of dlopen functionality03:29
nash?03:30
nashNot sure what you mean?03:30
mithrowell, I have a system where I only have static libraries03:31
mithroand you can't dlopen static libraries03:31
nashStrangely enough... </sarcasm>03:32
nashSo you want to do what?03:32
nashYou want to emulate it?03:32
nashHave fun... Can you mmap?03:32
mithroit appears that the libtool ntdl library can handle emulation for you03:33
mithroso i'm trying to convert to using that03:33
nashHaven't done that one before.  last time I was on a system without dl functionality, we just statically linked everything... A lot easier03:35
mithroI wasn't the one who choose dynamic linking ;)03:36
*** mithro has quit IRC05:03
*** nash has quit IRC05:14
*** tpb has joined #tp06:00
*** ChanServ sets mode: +o tpb06:00
*** zipola has quit IRC06:17
*** Demitar has quit IRC06:17
*** bobbens has quit IRC06:17
*** JLP has quit IRC06:17
*** CIA-11 has quit IRC06:17
*** JLP has joined #tp06:17
*** bobbens has joined #tp06:17
*** Demitar has joined #tp06:17
*** zipola has joined #tp06:17
*** CIA-11 has joined #tp06:17
*** mithro has joined #tp07:33
*** nash has joined #tp07:54
mithrohey nash08:25
mithrothanks for the bug report08:25
mithro~seen czr08:26
tpbmithro: czr was last seen in #tp 16 hours, 55 minutes, and 25 seconds ago: <czr> later mithro nitenite08:26
jasmineczr was seen 16 hours, 55 minutes and 32 seconds ago.08:26
czrmithro, ping08:26
mithroczr: well, you managed to survive the first 24 hours :)08:41
czrI have extensive experience at lurking :-)08:41
nashmithro: Happy to report bugs... I'm a pedantic one08:46
mithronash: no, it's good08:46
nash:-)08:46
mithroczr: did you have any more luck with the client?08:46
czrmithro, haven't had the time to try it again08:47
czr(can't really restart the window manager, too much stuff going on right now :-(08:47
mithrohave you tried checking out and playing with the -dev version?08:49
czrnot yet. where is it?08:49
mithroyou'll need darcs to get it (if your on ubuntu/debian "apt-get install darcs")08:50
czrapt-getting.08:51
mithroi'm still working on a magic "setup dev enviorment" script08:51
mithrogive this a try08:51
mithrohttp://darcs.thousandparsec.net/darcsweb/darcsweb.cgi?r=scratchpad;a=plainblob;f=/magicsetup.sh08:51
tpb<http://ln-s.net/J7a> (at darcs.thousandparsec.net)08:51
czrargh. that's evil. wgetting that won't return the sh08:53
czrinstead returns something htmlish :-)08:53
czrweird. hmm.08:53
czrah, it works. shell escapes. /me kicks self.08:53
mithrohttp://darcs.thousandparsec.net/repos/scratchpad/magicsetup.sh08:54
tpb<http://ln-s.net/J7b> (at darcs.thousandparsec.net)08:54
czrnm, I got it already :-)08:54
mithro:)08:54
mithrodunno if it works :)08:56
czrseems to pull the repos now08:56
czrno errors so far08:56
czrbtw, any reason why you define SUCMD in the script and never use the var for anything? :-)08:56
mithroecho "I'm sorry but we can't continue until you install $RCS"08:57
mithroecho "You can install darcs by running the following command:"08:57
mithroecho "\t$SUCMD apt-get install $RCS"08:57
mithroJLP: ping08:57
czrah, that one08:58
czrhmm. tpclient-pywx or tpclient-pywx-dev?08:59
czrhmm. the dev client complains of failing dependencies (python-numpy and python-numpy-ext)09:01
czr(it also complains about pysco and openssl, but I thought those were optional)09:01
nashhmmm... can't get message get to work09:03
mithrothe dev one needs numpy09:03
mithronash: hrm?09:03
czrmithro, I have numeric and all that, and numpy doesn't exist in ubuntu09:03
mithroyes it does09:03
mithroapt-get install python-numpy python-numpy-ext09:03
nashjust going through step by step to see if i screwed something up09:04
mithroas it should suggest?09:04
czrweird. hmm. apt-cache search python-numpy comes up with zero results09:04
czrinstall says that package cannot be found.09:04
nashtry python-pynum09:04
czrnada.09:05
mithrohrm, czr what ubuntu version?09:05
czrand as said, I have python-numeric and python-numarray09:05
czrmithro, dapper09:05
mithroweird, it's in edgy and feisty09:05
czrwell, dapper is older :-)09:05
czrhmm. I could just setup a separate vm for tp, that way I could check the window-manager weirdness too09:06
czrI'll get back after I've set up that09:06
mithroI tried that, but for some reason it didn't work (does work fine on my Edgy computer, but not om my Dapper one). Now I have got things working by using the repository from Andrew Straw: http://debs.astraw.com/dapper/09:06
tpbTitle: Index of /dapperAndrew Straw's Apt Repository (at debs.astraw.com)09:06
mithro?09:06
czryeah, but I'm not switching to non-ubuntu repos for this project09:06
czrI have too important stuff on this one. I'll just setup a virtual machine separate for tp09:07
czrare there any problems with tp-stuff on x86-64?09:07
mithroonly possibly with tpserver-cpp09:07
czrit's not tested on x86-64?09:07
mithrodunno, I think lee may have a x86-6409:08
mithrobut python should work fine in x86-6409:08
czrI know that. just uses lot more memory on 64-bit archs09:09
nashmithro: What is the definision of an empty list - just a '0' (length field)09:10
mithroyes09:10
nashHmm...09:10
nashSo msg get (message 18), to get all messages on a board should be a 8 byte message, first 4 bytes being the board #, next 4 being 0.09:15
mithronash: i think so09:19
nashHmm... also having problems with the failure message :-/09:22
mithroyou get a failure message?09:24
nashyeah09:25
nashbut I can't see the string09:26
nashit's 0 bytes long09:26
nashYep, correct seq number...09:27
* nash raw dumps the packet09:27
mithrocheck the tpserver-cpp console too09:28
nashUpstairs however... ;-)09:28
mithrossh! :)09:30
czrmithro, is there a server compatible with -dev-client?09:35
CIA-11Lee Begg <[email protected]> * tpserver-cpp/ (11 files in 2 dirs):09:36
CIA-11Added support to tpguile for guile 1.8:09:36
CIA-11 Added defines to map the new names to the ones used in guile 1.6. This means that09:36
CIA-11 the actual code is now guile 1.8, and the defines make it 1.6, when 1.6 is detected.09:36
CIA-11 Not yet tested under 1.8.09:36
*** llnz has joined #tp09:36
czrsegfault :-)09:36
czrtried to connect to llnz.dyndns.org09:36
llnzmy adsl has been down for the last 16 hours09:37
czr(using the -dev client/x86-64)09:37
czroh. heh09:37
czrhmm. what is the pyscheme thingy used for?09:39
llnzthe smarts behind designs in the python client and server09:40
llnztpserver-cpp can use either guile or mzscheme09:40
czrcan you be more specific?09:40
czrthe game logic?09:40
llnzand client's don't have to have a Scheme implementation at all09:40
llnzczr:09:40
llnzerrr...09:40
llnzit's used to express depenances and calculate property values09:41
czrof what? :-)09:41
czrsome concrete example would go a mile :-)09:41
nashmithro: Well the message from the server is empty - it's sending me 9 '0' bytes for a message09:48
llnzczr: http://www.thousandparsec.net/tp/dev/documents/ncl.php09:50
tpb<http://ln-s.net/J7d> (at www.thousandparsec.net)09:50
czra design is ?09:52
llnzhttp://www.thousandparsec.net/tp/dev/documents/protocol3.php#DesignManipulation09:52
tpb<http://ln-s.net/J7e> (at www.thousandparsec.net)09:52
llnzthe design of something, where something in minisec is just ships, and in mtsec is ships and torpedo/missiles09:53
czrdoes this include visualization?09:53
llnz?09:54
czror just a bunch of properties? or actual code that is executed when the design is used?09:54
czrwell, I suppose you aim to have some graphics for ship types at some points09:54
czrso does a "design" also associate with the graphics somehow?09:54
llnzno, it doesn't currently associate with a graphic09:54
czrok. what about code?09:54
czrsuppose I have a megatorpedo that will need to run some special code if it hits a ship (a design) with some specific property (plasma-shields)09:55
llnzthe ncl define when the design is valid (ie, all requirements met, no conflicts), and calculated the properties of the design09:55
czrwell I understand that. but I fail to understand how a "design" is better/more flexible than a bunch of properties stuck into a dictionary (python-wise for example)09:56
czralso what is the use of components? an example?09:56
llnzok09:56
* llnz trys to start again09:56
czrsorry for the stupid questions, but since there's no top-level design document, :-)..09:56
llnzdesigns are made of components, and have properties that are calculated (using ncl) from the properties of the components09:57
llnzso, for example09:57
llnza ship might have a hull component, an engine component, and a laser component09:57
czrthe components have the properties or the designs?09:59
czror both?09:59
llnzeach component has a "mass" property (with rank 0), definning how heavy each is09:59
czrrank?09:59
llnzthe design also has the 'mass' property, which is the sum of the masses of the components10:00
czrexpressed in ncl I assume10:00
llnznow the speed property of the design  (with rank 1), is calculated by taking the mass of the design (of rank 0) and doing some math (in ncl/scheme)10:01
czrwhat do you mean by ranks?10:02
llnzso all rank <n> properties get calculated before rank <n + 1> properties10:02
czrah. ok10:02
llnzso that the design value for the property is available for the calculation10:02
nashmithro: Regarding my msg get problem... Server has nothing useful10:02
nashJust "got messsage" .. finished processing10:03
czrllnz, so I guess the idea of using ncl/scheme for this is that it allows language-independent but common representation for doing these things, right?10:05
llnzyeah10:05
czras opposed to some fixed/other format?10:05
czrok10:05
llnzmithro decided it needed to be a scripting language, i said it couldn't be python10:05
czrhow are the designs/components validated?10:05
llnzoriginaly it was a RPN simple language, but it wasn't powerful enough10:06
czrwell, scheme is rpn ;-)10:06
llnztrue, but not just "and", "or" and "not"10:06
czrand I've always wondered what scheme was good for, so I guess now I need to learn how to use it. looks simple enough though10:06
llnzncl is actually a subset10:08
czryeah, I'm reading the ncl.php10:08
czranyhow, how are designs/components validated?10:08
czrby validation I mean suppose you have evil version of a client10:08
czrthat will use cheats and stuff10:08
llnzthe properties on the server are calculated there10:08
llnzso the client doesn't set the property values10:09
czrah. so each design lives on both ends10:09
llnzit can be checked/calculated on both ends, the client doesn't have to10:09
llnzthe data for doing so it more for offline clients and very slow net connections10:09
mithroczr: the client calculates the values locally for offline and slow net connections10:10
czrwell, I'm assuming it is useful for the client to calculate it in order to display the values to the player10:10
mithro(and in future busy servers)10:10
mithrohey llnz10:10
* czr nods10:10
llnzhi mithro10:10
czrthe whole idea seems pretty crazy. I like it.10:10
llnzczr: the values are pass from the server too10:10
mithroczr: ahh you need python-imaging10:11
czrso a "game" is a collection of designs and components that the server will provide?10:11
mithrollnz: i've been hacking to tpserver-cpp :)10:11
czrare rules also expressed using ncl?10:11
czrmithro, the segfault is caused because of that?10:11
mithrollnz: trying to get it to compile under windows - see my blog10:11
llnzmithro: you have a blog?10:11
mithroczr: yeah it doesn't like me trying to load a png using a GIFAnimationCtrl :)10:12
mithrollnz: I do now! blog.mithis.com :)10:12
mithroi caved10:12
czrhmm. should be added to real pre-requisites then10:12
mithroczr: it'll be fixed in the very near future10:12
czrmithro, np, i'll just install imaging meanwhile10:12
llnzmithro: not .com, only .net10:12
mithrollnz: ahh well :)10:13
* llnz reads10:13
czrhow do you plan to add localization?10:13
mithrotpclient-pywx uses gettext10:14
nashmithro: See my comment earlier?10:14
czrwell, if a design uses a 'property calculate' function that returns a pair of (value, display-string), that pushes localization into ncl?10:14
mithronash: nope :)10:14
mithronash: can you try sending a "get_messages([0,1,...])" ?10:15
nashOkay10:15
mithroczr: true, the server will need to be localized too10:15
mithrocan't really be helped as most of the stuff is kept server side (IE Resource descriptions, etc)10:15
llnzyeah10:16
czrdoes ncl support localization?10:16
llnzand what happens when one player talks to another in game10:16
llnz?10:16
czrinter-player messages don't fall under localization10:16
czrthat would be pretty silly :-)10:16
czrand impossible anyway10:16
mithroczr: that has yet to be solved - it falls under "the server will need to be localized too"10:18
* czr nods10:18
nashmithro: That seems to work10:19
mithronash: file a bug report! :)10:19
nashindeed10:19
mithronash: i should have mentioned for you to try that earlier10:20
mithrollnz: so what do you think of moving to libntdl ?10:20
llnzmithro: ask me in 5 minutes when i've dealt with the non-ipv6 patch10:21
mithrollnz: okay - hopefully I didn't break to much in that patch :)10:21
czrare there any examples on actual designs used in minisec?10:21
mithroczr: designs arn't used in MiniSec10:22
mithroMTSec is the first thing which makes use of designs10:22
llnztpserver-cpp does provide the design, but will not accept any from the client10:22
czrhmm. okay. llnz said that in minisec they're used for ships only, but I guess not :-)10:22
czrah10:22
czrwhy would a client send a design to the server?10:23
czrwouldn't that potentially pollute the server?10:23
czrok, I'll repeat my question then. are there any examples of real designs used in mtsec?10:25
llnzin MTSec, a player can create their own designs10:25
llnzso they need to be uploaded to the server before they can be used10:25
CIA-11[email protected] * tpserver-cpp/tpserver/ (8 files): Fixed for non-ipv6 build.10:26
czrwhat stops player from creating a design which will have insane amounts of firepower for example?10:26
nashThe cost of building the bastard10:26
llnzczr: nothing, except the properties of the component, and therefore the design10:26
mithroczr: cost to build it :)10:26
llnzfor example, a hull might only be able to have a certain number of components in it10:26
czra player could make a design which would have a better hull?10:27
czrbetter = have more space for components10:27
czror is the design validated/cost calculated on the server always?10:27
llnzdesign is always validated/cost/properties calculated on the server10:27
czrbut what influences cost? properties of the design? which can be set by the player?10:28
czror "a player can upload a design" = "a design which is restricted in what properties it can access/use"?10:28
mithroczr: a client can only change the components in a design10:28
czrah. not upload totally new designs.10:28
mithroczr: no they can up load totally new designs too, but they can't add new components10:29
llnzplayer can only used the components provided to them10:29
czrso the components are fixed on the server, downloaded to the client, the client can then pick/mix components to form a "new design", and then upload that back to server. right?10:29
* llnz is sorry about the lack of plurals10:29
llnzyes10:29
czrok good. makes sense now :-)10:29
czram I correct to assume that a hull is also one component? and there could be many different hull components (each having separate sizes to enclose other components in them)?10:31
llnzyes, yes10:31
czrso infact, one could enclose components within other components.10:31
mithroczr: no10:31
llnzwell... enclose is the wrong word10:31
llnzmithro: the feature id for account creation is 1000, correct?10:33
mithrollnz: possibly :)10:33
czrhmm. with python-imaging I get no splash graphics anymore.10:34
czrjust white rectangle on start :-)10:34
CIA-11Lee Begg <[email protected]> * web/news/ (2007-02-10-0000.news 2007-02-10-0000.news): Update to news item about libtprl 0.1.2 release10:34
mithroczr: hrm....10:35
czrbut other graphics work now. client startup is much slower though.10:35
czr"ColorGenerator does not work with depth = 16". er? :-)10:36
czrfrom wx/_core.py10:36
czrah, sry, from extra/wxFloatCanvas/FloatCanvas.py10:37
mithrohrm, you have 16 bit color?10:37
czrsure.10:37
czrthe client didn't draw anything useful, then I did an universe download, which ended with two errors. "Strange error occured, unable to request boards" and "There was an unknown network error. Any changes since.."10:38
czrmithro, you need the output of the client?10:39
mithroczr: sure!10:40
nashAnyway - bug reported10:41
CIA-11Lee Begg <[email protected]> * web/dev/documents/protocol3.php : Added Feature id for Account Creation10:41
nashAnd I'm about to go for a while10:41
*** nash has quit IRC10:41
czrmithro, http://rafb.net/p/N88Wua13.html10:42
tpbTitle: Nopaste - tpclient-dev (at rafb.net)10:42
czrfirst I tried the default server, then llnz.dyndns.org10:42
czr(explains the error at the start)10:42
mithroczr: weird error10:44
czrwell, seeing as 16bpp causes problems, that might be reflected later and that causes the client to fail10:44
mithroczr: not related10:45
czroh. ok10:46
mithrohrm, this doesn't make much sense10:46
czrI'll try to reset my client state10:46
mithroczr: can you run ./pullchanges.sh ?10:47
czrerr, no? why? I just setup the sources using magicscript10:47
czrah, sry10:47
czrmisread :-)10:47
mithroopps I forgot to push the patch :)10:47
CIA-11[email protected] * libtpclient-py-dev/tp/client/ (cache.py cache.py cache.py): Fixed if there is nothing to get.10:48
mithrotry now10:48
czrbtw, suggestion for magicsetup.sh: at the end do chmod +x *.sh10:48
czrotherwise the *changes.sh things don't have x (trivial to add obviously)10:48
mithroczr: the setup.sh should do that10:49
czrhmm. I get white splash again10:49
czrI saw the picture before (after client reset)10:49
mithrohrm - thats likely to be a color thing10:49
czrcached images don't work?10:50
czrbut they work on first time?10:50
mithro?10:51
czryeah. I reset the client (rm -Rf ~/.tp/), then started it, splash was ok. then I quit. then I started it again -> white rect as splash10:51
czranyhow, http://koltsoff.com/pub/tp3.png10:51
czrthat's what the thing looks like over here10:51
czrah, moment10:52
czrok, now10:52
czrthe window comes up pretty small. when I resize it larger (dragging lower-right corner) it doesn't do updates properly10:53
mithroczr: if you make it full size and then click the fit10:53
mithro?10:53
czrno change10:53
mithrohrm10:54
czralthough when I click full size from within the window (not real window decorations), then I get black screen10:54
mithromy guess is that is the errors you are getting in the background10:54
mithro(about the color)10:54
czrstill only CircleNoSmall instance has no attribute 'HitBrush'10:55
czrwell, I can try switching depth10:55
czryeah. it's a color depth issue. switched the vm to 24bpp11:01
czrnow the starmap contains something (all clustered too closely together though but that might be related to too small initial window size)11:01
mithrohit zoom to fit again11:02
czryup. zooming works11:02
CIA-11Lee Begg <[email protected]> * web/dev/documents/protocol3.php : An empty list is silly, choose what you want with your eyes open11:02
czris there an option to disable animations?11:02
CIA-11Lee Begg <[email protected]> * tpserver-cpp/tpserver/player.cpp :11:02
CIA-11If the client asks for no orders, make sure we return a frame:11:02
CIA-11 Before it wouldn't return a frame at all if the client requests no orders.11:02
czrmithro, it would be nice to built + move the fleet on completion11:04
czrbuild + move I mean11:04
czrbut I guess that's not critical yet11:05
* mithro pokes Lee11:05
llnzczr: easy enough to add11:06
mithrollnz: it makes sense to return everything on empty list11:06
mithrosaves bandwidth!11:06
llnzno it doesn't11:06
llnzwhat's 100 bytes (or so) vs many KB11:07
mithroand you can't remove it from the protocol now, tp03 is stable :P11:07
czrmithro, the "media download progress bar" is imho not very useful11:07
mithroczr: why?11:08
czrtakes away focus and confusing with EOT-counter11:08
CIA-11Lee Begg <[email protected]> * web/dev/documents/protocol3.php : Forgot to update last updated date on protocol doc11:08
czrsome indicator could be ok, but surely something smaller. just my imho.11:08
mithroand downloading all messages/objects is the most common state11:08
czras well as the "stop animations" thingy :-)11:09
llnztpserver-cpp will spit error messages back if you give it an empty list11:09
llnzin libtpproto-cpp i have a method called addRange(min, max) which can be used to get all very easily11:10
llnzand it's easy to break the request into smaller sequences11:10
czrhmm. mithro does move-order work? I fail to get anything other than 0,0,0 as the destination11:15
llnzI guess you could put it back as "may" instead of "should"11:15
mithrollnz: why does it bother you so much?11:15
llnzbecause it's not consistent and not parallel in and out (ie, one id in, one frame back)11:17
mithrollnz: parallel in and out?11:17
llnzthat, and i don't think it is that useful when you get more complex and volumous data11:18
llnz(ie, one id sent to server, one frame back)11:18
llnzsymatry11:18
mithrobah :)11:19
llnzsymmetry11:19
mithrobah bah!11:21
czrmithro, is move command supposed to work? I'm having difficulty of selecting the target for the move.11:22
czrif I enter abs coordinates, it kind of works (doesn't update the screen properly, leaves the old traces on the screen)11:22
mithroczr: not in dev11:22
czrok11:22
czrand I guess I need to download universe after each turn as well, right?11:23
mithroyes11:24
mithroon the todo :)11:24
czrnp11:24
mithrollnz: so on another note, can we convert to using libntdl?11:29
llnzmithro: explain/url/patch :-)11:30
mithroI have almost a patch11:30
mithrodid you read the blog entry?11:30
llnzyes11:31
mithroso did you look at the url?11:32
mithrohttp://www.gnu.org/software/libtool/manual.html#Dlopened-modules11:32
tpb<http://ln-s.net/J7k> (at www.gnu.org)11:32
mithroit makes tpserver-cpp portable to a bunch of platforms you probably don't care about (and one platform I kind of care about)11:34
llnzwhat's the patch like?11:36
llnzhow much changed?11:36
mithrollnz: about 10-15 lines11:36
mithromostly changing dlopen to lt_dlopen and similar11:37
mithroi'll upload a patch in a short bit11:41
*** nash has joined #tp11:43
mithrollnz: sf or email?11:44
llnzeither, email is a bit quicker11:44
mithrollnz: sent11:46
mithrollnz: it's not quite finished - I still need to fix the dlopen stuff in tpserver-cpp executable11:52
llnzok11:53
mithrobut it gives you an idea what it's like11:55
mithroworks under linux fine11:55
mithroif you want to do more advanced dlopen stuff, it looks simpler in libltdl11:56
mithroeven can be made thread safe in a portable way11:57
mithroalmost working on windows!12:02
mithroit works!12:05
llnzhehe, sucky12:05
llnz:-p12:05
llnzwhat does the function stop() do?12:05
mithroI have no idea - it's your function :)12:10
mithroI assumed it stop the server12:12
llnzi think it's a standard C thing12:13
nashNot in any C dialect I know12:13
mithroI copied it from your code12:14
llnzok, odd12:14
* llnz wonders where he pulled that from12:15
llnzwhy did you remove the ".so" from the end of the "return load(std::string(LIBDIR ........" lines?12:16
llnzi know it's not always .so, but....12:18
mithrohttp://blog.mithis.net/?p=1212:18
tpbTitle: Mithro rants about stuff � Compiling tpserver-cpp under windows - Part 2 (at blog.mithis.net)12:18
mithrollnz: because it's not always .so and libntdl will figure out the extension for you12:18
llnzoh, cool12:19
mithrollnz: see the picture?12:19
llnzyeah, funky12:20
llnzwhich guile version, btw12:20
llnz?12:20
mithro1.612:20
llnzok12:20
* llnz wonders when JLP will get a chance to check 1.812:21
mithrollnz: cygwin has 1.8 too12:22
mithrobut it seems broken (guile)  not tpserver-cpp12:22
llnzok12:23
mithrollnz: libntdl has ability to "search" through all libraries avaliable in a directory12:25
llnzcool12:25
mithrowhich even works when the libraries are staticly linked :)12:25
llnzdoes it actually load the libraries (dll's) under windows?12:25
mithrocurrently under windows it's staticly linked12:27
mithrobut thats because I havn't figured out dll's properly12:27
mithrodll's can't have any unresolved symbols12:27
llnzok12:28
mithrowhich means that I have to somehow link tpserver-cpp.exe against the modules12:32
llnzhumm...12:34
JLP          morning all12:34
llnzmake tpserver-cpp a dll, and make the exe just load it and run main?12:34
mithrollnz: something very similar to that12:37
mithrobut thats a much more major change12:37
mithrostaticly compiled stuff is good enough for me :)12:37
mithrois there a way to set the load_path for tpguile?12:38
mithromorning JLP12:38
llnzok :-)12:38
llnzhi JLP12:38
mithroJLP: i had something for you but i've forgotten now12:38
*** nash has quit IRC12:47
mithrollnz: so the libltdl is okay?12:48
llnzmithro: i think so, are there anymore patches for it?12:49
mithronot just yet12:50
mithroneed to fix the fixme12:50
llnzhumm...13:17
llnzi'll have a better look at it tomorrow, i need to sleep13:18
llnzJLP: check latest tpserver-cpp guile support when you have a chance13:19
* llnz wanders off13:19
llnzlater all13:19
*** llnz has quit IRC13:19
JLPuf just finished reading the backlog13:26
JLPi'll try right away if guile 1.8 works now13:26
JLPmithro: when reading about message boards and talking with other players in real time, i got an idea that this could be done using XMPP13:31
JLPstill get an error in guile code, but this tim it is another one13:37
JLP/usr/include/libguile/numbers.h: In member function 'PropertyValue TpGuile::getPropertyValue(Property*, std::list<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)':13:37
JLP/usr/include/libguile/numbers.h:476: error: too many arguments to function 'double scm_to_double(scm_unused_struct*)'13:37
JLPtpguile.cpp:253: error: at this point in file13:37
*** mithro has quit IRC14:32
*** mithro has joined #tp14:39
*** zipola_ has joined #tp15:40
*** zipola has quit IRC15:55
*** zipola_ has quit IRC15:56
*** zipola_ has joined #tp16:05
*** nash has joined #tp22:19

Generated by irclog2html.py 2.5 by Marius Gedminas - find it at mg.pov.lt!