*** tpb has joined #tp | 00:00 | |
-anthony.freenode.net- [freenode-info] channel trolls and no channel staff around to help? please check with freenode support: http://freenode.net/faq.shtml#gettinghelp | 00:00 | |
*** ChanServ sets mode: +o tpb | 00:00 | |
*** jmtan has joined #tp | 00:13 | |
*** Linkadmin has quit IRC | 00:15 | |
*** jmtan has quit IRC | 00:33 | |
*** jmtan has joined #tp | 00:45 | |
CIA-31 | llnz tpserver-cpp * rde286e7d1550 /modules/games/mtsec/buildfleet.cpp: Avoid div by 0 in buildfleet in MTSec | 00:47 |
---|---|---|
CIA-31 | jmingtan tpclient-pyogre * r4a540fd7c5f8 /src/scene.py: Use correct attribute to determine ship type | 01:23 |
CIA-31 | jmingtan tpclient-pyogre * r51d6f90c9d73 /src/ (libtpclient-py libtpproto-py): Update tp library depdendencies | 01:23 |
CIA-31 | jmingtan tpclient-pyogre * rbc5685adb973 /src/gui.py: Fix listbox index access error | 01:23 |
CIA-31 | jmingtan tpclient-pyogre * r5d792b13be00 /.gitignore: Ignore plugins directory | 01:23 |
*** Linkadmin has joined #tp | 02:39 | |
*** llnz has quit IRC | 02:56 | |
CIA-31 | mithro tpclient-pywx-tp04 * rb8bbd4402dab /windows/ (main/panelInfo.py xrc/infoReferencePlayer.xrc): Allow unknown player and no one. | 03:27 |
CIA-31 | mithro tpclient-pywx-tp04 * rec6b1228b434 /windows/ (main/panelSystem.py xrc/panelSystem.xrc): Stop the system window from preventing resize. | 03:27 |
CIA-31 | mithro tpclient-pywx-tp04 * r7770c6e0ff74 /windows/main/winIdleFinder.py: Changing varible name to oid to make it clearer. | 03:27 |
CIA-31 | mithro tpclient-pywx-tp04 * r2a0f3e0c9e5d / (3 files in 2 dirs): Change the way the colorizers assign colors. | 03:27 |
CIA-31 | mithro libtpclient-py-tp04 * rfcb08cee91aa /tp/client/objectutils.py: Added findChildren utility function. | 03:29 |
CIA-31 | mithro libtpclient-py-tp04 * rcd3d5edd88aa /tp/client/cache.py: Merge branch 'tp04' of git+ssh://git.thousandparsec.net/git/libtpclient-py into tp04 | 03:29 |
CIA-31 | mithro tpclient-pywx-tp04 * r78ea7961dc46 / (3 files in 2 dirs): Change the way the colorizers assign colors. | 03:29 |
CIA-31 | mithro tpclient-pywx-tp04 * r4cc03fd320e2 /windows/main/overlays/SystemIcons.py: A findChildren I missed. | 03:33 |
*** glew has quit IRC | 03:33 | |
CIA-31 | mithro tpclient-pywx-tp04 * rec67a7787c2b /windows/main/winIdleFinder.py: Make the type useful. | 03:39 |
CIA-31 | mithro tpclient-pywx-tp04 * re9479677f153 /windows/ (winBase.py winMain.py): Hide sub-windows when winMain is hidden. | 03:53 |
CIA-31 | mithro tpclient-pywx-tp04 * r4bfb0c765e41 /windows/main/panelOrder.py: Stop keys propagating up from the order arguments panel. | 04:01 |
CIA-31 | llnz tpserver-cpp * r873697f3030e /modules/games/minisec/rspcombat.cpp: Fix some typos in Minisec combat | 04:05 |
tansell-laptop | [int(a) * 255 for x in a] | 04:20 |
CIA-31 | mithro libtpclient-py-tp04 * rd6e7dd8a2529 /tp/client/ChangeList.py: Adding a warning assert. | 04:46 |
CIA-31 | mithro tpclient-pywx-tp04 * r8165bedbe47b / (libtpclient-py windows/main/panelOrder.py): Fixed the paste method. | 04:48 |
*** StupidIncarnate has joined #tp | 05:06 | |
StupidIncarnate | matthewd: ping | 05:07 |
CIA-31 | alanp tpclient-pywx-tp04 * re73b9b3953a8 /windows/main/overlays/Colorizer.py: Change color generation for individual systems in the client. | 05:25 |
CIA-31 | alanp tpclient-pywx-tp04 * rd833e107d890 / (6 files in 4 dirs): Merge branch 'tp04' of git+ssh://git.thousandparsec.net/git/tpclient-pywx into tp04 | 05:25 |
*** jmtan has quit IRC | 05:56 | |
*** tansell-laptop has quit IRC | 05:58 | |
*** epyon-sakura has quit IRC | 05:58 | |
*** verhoevenv_ has quit IRC | 05:59 | |
*** mithro has quit IRC | 06:00 | |
*** epyon-sakura has joined #tp | 06:28 | |
*** epyon-sakura has quit IRC | 06:33 | |
*** epyon-sakura has joined #tp | 06:35 | |
CIA-31 | mithro documents * r34557b846206 /protocol/protocol.xml: Adding a player waiting in TimeRemaining. | 06:48 |
*** tansell-laptop has joined #tp | 06:49 | |
*** cahirwpz has joined #tp | 07:23 | |
alanp | http://free-books.dontexist.com/ | 07:56 |
*** tansell-laptop has quit IRC | 07:57 | |
*** bisc has joined #tp | 08:49 | |
*** tenach has quit IRC | 09:22 | |
*** epyon-sakura has quit IRC | 10:03 | |
*** tenach has joined #tp | 10:29 | |
*** Agon-laptop has joined #tp | 11:44 | |
*** Agon-laptop has quit IRC | 11:52 | |
*** StrangerDanger has quit IRC | 12:35 | |
*** Greywhind has joined #tp | 13:40 | |
*** glew has joined #tp | 14:37 | |
*** bisc has quit IRC | 15:02 | |
*** epyon-sakura has joined #tp | 15:47 | |
*** epyon-sakura has quit IRC | 15:52 | |
*** mithro has joined #tp | 16:06 | |
*** verhoevenv has joined #tp | 16:10 | |
*** tansell-laptop has joined #tp | 16:15 | |
*** bisc has joined #tp | 16:28 | |
*** epyon-sakura has joined #tp | 16:29 | |
*** llnz has joined #tp | 16:30 | |
CIA-31 | mithro tpserver-cpp * r5b788417cb90 /tpserver/ (5 files): Added a player list fo the time remaining frame. | 16:34 |
CIA-31 | mithro tpserver-cpp * r01b75b7c9414 /modules/games/ (minisec/rspcombat.cpp mtsec/buildfleet.cpp): Merge branch 'master' of git+ssh://git.thousandparsec.net/git/tpserver-cpp | 16:34 |
*** jmtan has joined #tp | 16:48 | |
*** StupidIncarnate has quit IRC | 17:00 | |
CIA-31 | llnz tpserver-cpp * rbd940727d8cb /tpserver/turntimer.cpp: Filter the player ids to only have the ones we are waiting for in turntimer. | 17:03 |
CIA-31 | mithro libtpproto-py-tp04 * r5bea68cf449e /tp/netlib/objects/TimeRemaining.py: Adding the waiting player list to TimeRemaining. | 17:08 |
CIA-31 | mithro tpclient-pywx-tp04 * r2da39a8db5e6 /libtpproto-py: Submodule dump. | 17:08 |
CIA-31 | alanp tpserver-cpp * r98f95903bbb5 /modules/games/minisec/rspcombat.cpp: Remove magic number that references home planet | 17:10 |
CIA-31 | alanp tpserver-cpp * r7fa6133e8dba / (8 files in 3 dirs): Merge branch 'master' of git+ssh://git.thousandparsec.net/git/tpserver-cpp | 17:10 |
CIA-31 | Kornel Kisielewicz master * r3e51473 / tpserver/server/common.h : Import common definitions - http://bit.ly/dnobDw | 17:22 |
CIA-31 | Kornel Kisielewicz master * r7d004be / (2 files): Frame exception fixes - http://bit.ly/9ae0fu | 17:22 |
tpb | Title: Commit 3e51473421e2ca2ddfc3d58be54d88e8122cbb25 to epyon's tpserver-cpp - GitHub (at bit.ly) | 17:22 |
CIA-31 | Kornel Kisielewicz master * r1d97518 / (6 files): Input and Output frames restored (functionality modified based on new frame class) - http://bit.ly/cDMzWG | 17:22 |
CIA-31 | Kornel Kisielewicz master * r58eb2fc / tpserver/server/tpconnection.cpp : Temporary fix to restore compilation - http://bit.ly/agvzEF | 17:22 |
tpb | Title: Commit 7d004beaac0b1a94800519d8a0693863c2c02e91 to epyon's tpserver-cpp - GitHub (at bit.ly) | 17:22 |
tpb | Title: Commit 1d975189bc48835d32adf3f8c5faa869b1bed266 to epyon's tpserver-cpp - GitHub (at bit.ly) | 17:22 |
tpb | Title: Commit 58eb2fcced8f9e3827fd77a5faf5c46cf8337813 to epyon's tpserver-cpp - GitHub (at bit.ly) | 17:22 |
CIA-31 | llnz tpserver-cpp * r25228b877cbf / (sample.conf tpserver/playersfinishedturntimer.cpp): | 17:24 |
CIA-31 | Added setting for minimum players before playersfinished turntimer finished early. | 17:24 |
CIA-31 | Documentation added to sample.conf | 17:24 |
CIA-31 | llnz tpserver-cpp * rc74f598b5a6a /modules/games/minisec/rspcombat.cpp: Merge branch 'master' of git+ssh://git.thousandparsec.net/git/tpserver-cpp | 17:24 |
bisc | tansell-laptop: apart from formatting, was the 'tips-only-once' patch ok? | 17:25 |
tansell-laptop | link me? | 17:26 |
bisc | http://codereview.mithis.com/101001 | 17:26 |
tpb | Title: Issue 101001: Tips shown only once. - Code Review (at codereview.mithis.com) | 17:26 |
bisc | see patch set #3 | 17:26 |
tansell-laptop | yeah | 17:30 |
tansell-laptop | LGTM | 17:30 |
verhoevenv | ~seen null_000 | 17:30 |
tpb | verhoevenv: null_000 was last seen in #tp 1 day, 3 hours, 40 minutes, and 28 seconds ago: <null_000> alanp: ping | 17:30 |
bisc | tansell-laptop: yesterday we talked about messages panel and decided to remove title and place counter of orders to the bottom of panel, thus eliminating upper part of the panel. Placing this label to bottom takes a lot of space -- and buttons can hardly find place there. I suppose that replacing some buttons with icons is quite sensible now. The most effective is replacing 'Prev'/'Next' with arrows. But this decision adds a problem: what to do | 17:36 |
bisc | with 'First' and 'Last' buttons, which appear on shift key press. I can't find any suitable icons for them. You have any thoughs? | 17:36 |
tansell-laptop | the "1 of 2" takes up a lot of space? | 17:37 |
bisc | tansell-laptop: not really, but a) '11 of 15' takes more; '100 of 200' takes even more b) there's almost no free space with Gnome controls c) cross-platform requires at least small amount of free space (in case controls on other systems take more place) | 17:39 |
tansell-laptop | bisc, you could try putting it in the message part like the subject? | 17:52 |
CIA-31 | Kornel Kisielewicz master * r721c3a8 / (tpserver/server/connection.cpp tpserver/server/connection.h): Input and Output frames used instead o general frame class - http://bit.ly/9EhSXb | 17:55 |
CIA-31 | Kornel Kisielewicz master * r1d1887f / (tpserver/server/connection.cpp tpserver/server/connection.h): Per-connection pad spaces setting - http://bit.ly/c4ouTF | 17:55 |
tpb | Title: Commit 721c3a8cfd3f084af3abf0f8cda2bc73685fa036 to epyon's tpserver-cpp - GitHub (at bit.ly) | 17:55 |
tpb | Title: Commit 1d1887f08e477ef4bda62d8ac658d89e534753db to epyon's tpserver-cpp - GitHub (at bit.ly) | 17:55 |
*** cahirwpz has quit IRC | 17:59 | |
bisc | tansell-laptop: I reduced sizes of buttons to minimum and seem to have enough space, that's how it looks like http://ruchkin.files.wordpress.com/2010/08/message-window-relayout.png. What do you think? | 17:59 |
*** jmtan has left #tp | 18:00 | |
tansell-laptop | bisc, LGTM | 18:03 |
*** jmtan has joined #tp | 18:11 | |
CIA-31 | Kornel Kisielewicz master * rbe38d05 / (tpserver/server/connection.cpp tpserver/server/connection.h): | 18:13 |
CIA-31 | Connection class updates | 18:13 |
CIA-31 | * added send() command to process the frames_out deque | 18:13 |
CIA-31 | * proper Input and Output frames (were reversed) - http://bit.ly/aTXIJp | 18:13 |
tpb | Title: Commit be38d053bb9eaa983845b56a1dcd9460ddf9b74d to epyon's tpserver-cpp - GitHub (at bit.ly) | 18:13 |
CIA-31 | Kornel Kisielewicz master * re501c58 / (2 files): | 18:35 |
CIA-31 | TpConnection updates | 18:35 |
CIA-31 | * createFrame for new frame system | 18:35 |
CIA-31 | * sendFrame -- create frame and call Connection::send() - http://bit.ly/abL2Ki | 18:35 |
CIA-31 | Kornel Kisielewicz master * r1c29fc4 / (5 files): | 18:35 |
CIA-31 | Connection work | 18:35 |
CIA-31 | * added the two sendFail versions | 18:35 |
CIA-31 | * fixed the lack of setType function - http://bit.ly/9zjmes | 18:35 |
tpb | Title: Commit e501c582dec3d02227752cf4c1179574f6d99e2a to epyon's tpserver-cpp - GitHub (at bit.ly) | 18:35 |
tpb | Title: Commit 1c29fc49c190a35c01e6a7d68d90f967ec8b72da to epyon's tpserver-cpp - GitHub (at bit.ly) | 18:35 |
CIA-31 | Kornel Kisielewicz master * rbc014b9 / (2 files): | 18:35 |
CIA-31 | TpConnection functions | 18:35 |
CIA-31 | * restored sendSequence, sendOK, sendModList - http://bit.ly/cFS7vI | 18:35 |
CIA-31 | Kornel Kisielewicz master * r9f9055e / tpserver/server/tpconnection.cpp : First frame handling ready - http://bit.ly/cn1Qt9 | 18:35 |
tpb | Title: Commit bc014b9597154073f0662c0721e1019422cc0e6d to epyon's tpserver-cpp - GitHub (at bit.ly) | 18:35 |
tpb | Title: Commit 9f9055eece7d8dbfc8d877c324555d4a0cc606bb to epyon's tpserver-cpp - GitHub (at bit.ly) | 18:35 |
CIA-31 | mithro libtpproto-py-tp04 * rb06626fd0322 /tp/netlib/client.py: Return the frame on time remaining. | 18:36 |
CIA-31 | llnz tpserver-cpp * r504d8fa9b9ff /modules/games/minisec/planet.cpp: Fixed getting resource from planet in minisec. | 18:37 |
bisc | tansell-laptop: please look at code for this message panel change http://codereview.mithis.com/103001 | 18:38 |
tpb | Title: Issue 103001: Messages panel relayout. - Code Review (at codereview.mithis.com) | 18:38 |
tansell-laptop | just a sec | 18:41 |
*** Greywhind has quit IRC | 18:41 | |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * r6bc52f236dae /windows/ (3 files in 2 dirs): Removed startup information from panels. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * re8dddd927d58 /windows/xrc/winFilterManager.xrc: Filter manager was removed from system toolbar. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * rfd22833551bc /windows/main/overlays/Systems.py: Bold in tooltip for selected object. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * r06b1ace6402d /windows/main/winIdleFinder.py: Idlefinder skippes objects with no order types. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * rd3d2feebdfb8 /windows/ (5 files in 2 dirs): Merge github.com:bisc/tpclient-pywx into tooltip_bold | 18:43 |
CIA-31 | mithro tpclient-pywx-tp04 * r68b19bec0607 /libtpclient-py: Fix for empty error message on network errors. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * r6e0ffa8019c2 /windows/winMain.py: Added Preferences window shortcut. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * r9016ca792365 /windows/xrc/panelMessage.xrc: Cleared messages panel on startup. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * r2911a3f004a8 /windows/main/panelStarMap.py: Fixed starmap movement with arrow keys. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * rd4e4f1c026b8 /windows/main/overlays/Systems.py: Popup html symbols escaping. | 18:43 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * r995f2fddf2d0 /windows/winMain.py: Tips shown only after the first tpclient start. | 18:43 |
CIA-31 | mithro tpclient-pywx-tp04 * r20a595ba45f6 /windows/ (9 files in 4 dirs): | 18:43 |
CIA-31 | Merge branch 'github/tp04' into tp04 | 18:43 |
CIA-31 | Conflicts: | 18:43 |
CIA-31 | libtpclient-py | 18:43 |
CIA-31 | windows/main/winIdleFinder.py | 18:43 |
CIA-31 | mithro tpclient-pywx-tp04 * ra27199350e54 /windows/ (3 files in 2 dirs): Fixing a small naming inconsistency. | 18:43 |
CIA-31 | mithro tpclient-pywx-tp04 * r867bcd852b0e / (4 files in 2 dirs): Changing the way time remaining works. | 18:43 |
CIA-31 | mithro tpclient-pywx-tp04 * r436cf547348d /windows/ (6 files in 3 dirs): Adding a window which tracks people's ready status. | 18:44 |
tansell-laptop | bisc, LGTM! | 18:44 |
tansell-laptop | bisc, your fixes have been great! | 18:44 |
tansell-laptop | bisc, so do you think you have some time to beautify the window I just added? | 18:45 |
tansell-laptop | (it's a window which tracks that status of other players in the came) | 18:45 |
bisc | cool, I will take a look at it. There're some conflicts I see. Did I cause them? | 18:45 |
tansell-laptop | it could probably be cool if we added some other columns like "Number of objects the player owns", etc | 18:45 |
tansell-laptop | bisc, yeah - but it was fairly is to fix | 18:46 |
bisc | sorry, I'm having some strange things while working with two repos simultaneously | 18:46 |
tansell-laptop | bisc, I hadn't pushed the change | 18:48 |
tansell-laptop | https://spreadsheets.google.com/ccc?key=tMKv8JO4CHRWA32M4jM4vhA&hl=en#gid=0 | 18:48 |
tpb | <http://ln-s.net/7SGm> (at spreadsheets.google.com) | 18:48 |
*** Greywhind has joined #tp | 18:48 | |
tansell-laptop | bisc, so it's my own fault | 18:49 |
tansell-laptop | bisc, is there anything else you need review? | 18:51 |
tansell-laptop | we are about to head to lunch | 18:51 |
CIA-31 | Kornel Kisielewicz master * r6a9f9be / tpserver/server/tpconnection.cpp : Get Features frame processing - http://bit.ly/b9dIh1 | 18:51 |
tpb | Title: Commit 6a9f9be4b27299f3c091555b088f6f7b103a2b9c to epyon's tpserver-cpp - GitHub (at bit.ly) | 18:51 |
bisc | tansell-laptop: well, not right now. Meet you after your lunch. | 18:51 |
CIA-31 | ruchkin.ivan tpclient-pywx-tp04 * rfa82f33ae87a /windows/ (main/panelMessage.py xrc/panelMessage.xrc): | 18:53 |
CIA-31 | Relayout at messages panel. | 18:53 |
CIA-31 | Removed title label, placed messages counter to the bottom. | 18:53 |
CIA-31 | mithro tpclient-pywx-tp04 * rcde1845a30a1 /windows/ (main/panelMessage.py xrc/panelMessage.xrc): Merge branch 'github/tp04' into tp04 | 18:53 |
*** Greywhind has quit IRC | 18:55 | |
*** Greywhind has joined #tp | 18:58 | |
CIA-31 | llnz tpserver-cpp * rf64b346a377a /tpserver/category.cpp: Fixed modtime in Category frame. | 19:07 |
CIA-31 | llnz tpserver-cpp * rd01b1637b6f4 /modules/games/minisec/ (combatant.cpp rspcombat.cpp): | 19:12 |
CIA-31 | Fixes to rspcombat in minisec. | 19:12 |
CIA-31 | Doesn't repeat messages, damage is done to fleets, damage can't | 19:12 |
CIA-31 | be equal to hitpoints. | 19:12 |
llnz | bbl | 19:14 |
*** llnz has quit IRC | 19:14 | |
*** verhoevenv has quit IRC | 19:15 | |
*** jmtan has quit IRC | 19:15 | |
*** tansell-laptop has quit IRC | 19:17 | |
*** mithro has quit IRC | 19:17 | |
*** epyon-sakura has quit IRC | 19:19 | |
*** null_000 has joined #tp | 20:00 | |
*** epyon-sakura has joined #tp | 21:16 | |
*** mithro has joined #tp | 21:18 | |
*** llnz has joined #tp | 21:18 | |
*** tansell-laptop has joined #tp | 21:18 | |
*** verhoevenv has joined #tp | 21:21 | |
*** cahirwpz has joined #tp | 21:22 | |
bisc | I'm having a problem in current git.thousandparsec.net version. Systems.py:76 calls to objectutils.findChildren, which is absent. Anyone knows how to fix it? | 21:23 |
tansell-laptop | bisc, you need to update libtpclient-py and libtpproto-py | 21:23 |
bisc | ok, thanks, after update there's error in cache.py:58 'can't compare datetime.datetime to int' | 21:34 |
bisc | and if I clone a new repo of tpclient -- there's an error of automatic download of libtpclient-py: "fatal: reference is not a tree: e9483074e3931f21dec1d049c96badc74ca046b3 Unable to checkout 'e9483074e3931f21dec1d049c96badc74ca046b3' in submodule path 'libtpclient-py'" | 21:35 |
bisc | and client fails because of requirements: "Client is development version, but Network Library (libtpproto-py) was not" | 21:37 |
*** jmtan has joined #tp | 21:43 | |
*** cahirwpz has quit IRC | 21:47 | |
*** jmtan has quit IRC | 21:48 | |
bisc | tansell-laptop: I'd like to have your opinion on organizing orders panel in this way http://ruchkin.files.wordpress.com/2010/08/orders-panel-param-window.png | 22:01 |
tpb | <http://ln-s.net/7RwT> (at ruchkin.files.wordpress.com) | 22:01 |
*** Greywhind has quit IRC | 22:05 | |
*** bisc has quit IRC | 22:13 | |
null_000 | I'll just leave this here in case anyone wants to take a look http://www.thousandparsec.net/wiki/Daneel-ai_pyton_tutorial | 22:24 |
tpb | <http://ln-s.net/7SL8> (at www.thousandparsec.net) | 22:24 |
alanp | null_000: do you have any time to improve the minisec client? | 22:48 |
alanp | AI | 22:48 |
null_000 | what do you want it to do? | 22:50 |
null_000 | if it's not anything sophisticated I might be able to do it | 22:50 |
* null_000 has to study for exams | 22:51 | |
alanp | make it better :P | 22:52 |
ezod | llnz: what do you think about merging glew's sqlite persistence into mainline? | 22:52 |
alanp | it doesn't seem to do too much | 22:52 |
ezod | iirc it's complete except that the default db file location might need to be changed (particularly for win32) | 22:53 |
llnz | ezod: i'm pretty happy to merge it | 23:00 |
glew | there is no default anymore, it's passed as a parameter, and error if it isn't | 23:03 |
glew | llnz: do you know where the default for win32 should be for the persistence database? | 23:04 |
glew | or have an opinion on it? | 23:04 |
ezod | glew: ok that works | 23:04 |
llnz | not really | 23:05 |
llnz | having to specify the location is fine by me | 23:05 |
ezod | glew: so the "default" you're talking about now is just for singleplayer? | 23:05 |
ezod | you can just use the cwd or something, and maybe delete the file on cleanup | 23:06 |
glew | ezod: right, so within SinglePlayer.py it determines the platform and then has a default for non win32 | 23:06 |
glew | ok, so make the files at hte location to run from (cwd) and hten remove them at the end | 23:06 |
ezod | yeah i think with singleplayer the only time you'd want to keep the persistence db is if you're saving, and in that case you're copying it elsewhere | 23:08 |
glew | right, which happens upon the save function | 23:09 |
ezod | so you can nuke the original one | 23:09 |
glew | yup | 23:09 |
glew | so where should that be added in, SinglePlayerGame stop()? | 23:09 |
ezod | yeah | 23:09 |
glew | ok | 23:10 |
glew | ezod: I also found that i could get the versions of the server, ruleset, and aiclient from the locallist of a SinglePlayerGame | 23:11 |
glew | with those strings it should be enough to compare to check for compatibility | 23:11 |
ezod | yeah that's what i was getting at ;) | 23:11 |
ezod | but of course we still need a manual entry for how far back each version is compatible | 23:12 |
glew | ok, so is there still something that needs to be thought out for the dtd | 23:12 |
ezod | ya | 23:12 |
glew | ok | 23:12 |
glew | so you're saying we need something like another field that describes the furthest back compatibility | 23:13 |
ezod | basically we need a "what is the oldest version whose stuff i can load" | 23:13 |
glew | oh | 23:13 |
glew | so there are two different views we have here | 23:13 |
ezod | e.g., in the singleplayer xml for tpserver-foo-0.9.7, you might have like <compatible>0.8.0</compatible> kind of thing | 23:14 |
glew | does each component have a "furthest back compatible" field, or do we just straight out determine from the components the user has | 23:14 |
ezod | each component would need one | 23:14 |
ezod | because there's no way to know | 23:14 |
glew | ok | 23:14 |
ezod | basically it's up to the developer to keep that field up to date in the xml | 23:14 |
glew | right | 23:14 |
glew | so what I need to figure out is the compatibility field so that it can be added to each component xml | 23:15 |
ezod | so of course you'll have game saves and scenarios that will get broken by future releases - nothing we can do about it | 23:15 |
glew | its inevitable | 23:16 |
ezod | glew: well i would say for now we can just put the current version in each component ;) | 23:16 |
ezod | there's really no reason to worry about previous versions because they don't even have load capability | 23:16 |
*** tansell-laptop has quit IRC | 23:16 | |
ezod | and there will be no save files from those versions, presumably | 23:17 |
*** Linkadmin has quit IRC | 23:19 | |
ezod | so this puts pressure on server/ruleset/ai devs to design their internal state well (so that it doesn't need to change much between releases) and hopefully to take the time to write code that can import save data from older versions | 23:19 |
ezod | so if the internal state object of baz-ai changes significantly from version A to version B they build in some converter function to remain compatible | 23:20 |
ezod | imo, ideally save file compatibility should not break between minor releases | 23:22 |
ezod | at least once a component is considered production | 23:22 |
null_000 | ezod: or you could bundle AI with the scenarios, that way scenario 1.0 will always have 1.0 AI | 23:23 |
ezod | yeah, i mean people can always use older versions if they want | 23:23 |
ezod | i think singleplayer supports multiple versions coexisting | 23:23 |
null_000 | but they have to be told when they have to use older versions | 23:24 |
ezod | word | 23:24 |
ezod | glew: we need a UI thing for that ^ | 23:24 |
ezod | when you go to load | 23:25 |
ezod | "Error: Save file uses baz-ai 0.2, installed version baz-ai 0.4 is not compatible." | 23:26 |
glew | ok | 23:26 |
glew | so I was going to start working on the SinglePlayerWizard, I was goingn to have it start at a page asking either new game or load game | 23:27 |
null_000 | or "baz-ai version is 0.4 not 0.2. Use version 0.4 anyway? yes/no" | 23:27 |
glew | then branch to basically separate sets of pages to guide through the process | 23:27 |
glew | the newgame process is already done | 23:27 |
ezod | glew: yeah, that stuff is tricky, i had a hell of a time with the wizard | 23:27 |
ezod | load game should be real easy though | 23:27 |
glew | err, not going to be fun then | 23:27 |
ezod | just prompt for file | 23:27 |
ezod | no need for anything else, just have SinglePlayerGame look for the right server/ruleset/ai according to the savefile (more work for you, less work for player) | 23:28 |
CIA-31 | Kornel Kisielewicz master * r0fdd996 / tpserver/server/server.cpp : Detailed server class logging - http://bit.ly/8XWWON | 23:29 |
tpb | Title: Commit 0fdd996e166f4166ca55aea17c7daf1628109ae7 to epyon's tpserver-cpp - GitHub (at bit.ly) | 23:29 |
*** tansell-laptop has joined #tp | 23:30 | |
ezod | glew: one minor annoyance will be figuring out which of multiple installed versions to use (particularly since that will be hard to test) - but you can just start at the most recent version and work your way down the list until you find one compatible, and error if you never do | 23:31 |
glew | pl | 23:31 |
glew | ok | 23:31 |
glew | ezod: so basically my plan is to add the load page to the wizard (which will just prompt for the savefile), change the load function to check for compatibility and print an error if it isn't compatible, and starting components will now involve figuring out which version of hte component to launch | 23:32 |
ezod | well you should probably do the version-figuring-out and check for compatibility together | 23:33 |
glew | right, they would both be in load | 23:33 |
glew | well i can write them both in load | 23:34 |
ezod | the rule should be, launch the most recent version of the component installed that is compatible with the savefile to load, and error if no installed versions are | 23:34 |
glew | right | 23:34 |
ezod | so in my mind the logic would be like, check v3 -> compatible? yes: select v3, no: check v2 -> compatible? select v2.... etc. | 23:35 |
glew | so i can write both those checks within load, but i think the real check right now happens in start() because thats where it actually pulls up the cmd strings | 23:35 |
glew | i think i should still be able to check compatibility and then change the component accordingly | 23:36 |
ezod | yeah but by the time you get to start() you need to have already selected a component+version | 23:36 |
glew | from within load | 23:36 |
ezod | exactly what i'm saying ;) | 23:36 |
glew | ok so you're saying just make the check in load and change everything accordingly so its fine by start() | 23:37 |
ezod | yeah - right now you're just reading the component stuff right out of the db - you can't just push that in and blindly start() | 23:37 |
ezod | because that won't work if i don't have the exact version that was used to save | 23:38 |
glew | right | 23:38 |
glew | makes sense that the check should be in load | 23:38 |
ezod | you should still save the sname, rname, ainame plus their respective versions to the db of course | 23:39 |
null_000 | night all | 23:39 |
*** null_000 has quit IRC | 23:39 | |
glew | yeah thats done | 23:39 |
ezod | so that you know what version you need to be compatible with :) | 23:39 |
glew | yeah thats there | 23:39 |
glew | but on load i'll also check to make sure the user's config is compatible with the save's versions | 23:39 |
ezod | but you're just going to (possibly) change that a bit based on the check | 23:39 |
ezod | glew: what do you mean, the user's config? | 23:40 |
glew | right if the check finds that it doesn't have the exact component from the save, then it will change it to a compatible component and otherwise error | 23:40 |
glew | the user's setup | 23:40 |
glew | just the user's versions | 23:40 |
ezod | actually don't even bother looking for the exact component first | 23:40 |
ezod | if i have tpserver-foo 0.2 and 0.3, and 0.3 can load 0.2 games, i'd rather it run 0.3 even if i'm loading a 0.2 game | 23:41 |
glew | ok so just right off the bat look at whats in the singleplayer database, then based on that try to load a compatible component | 23:41 |
glew | ok | 23:41 |
glew | got it | 23:41 |
ezod | cool | 23:41 |
llnz | sqlite persistence compiles, I will run with it for a bit, then merge it to trunk | 23:49 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!