*** tpb has joined #tp | 00:00 | |
*** ChanServ sets mode: +o tpb | 00:00 | |
*** nash has quit IRC | 00:30 | |
*** nash has joined #tp | 00:36 | |
mithro | howdy nas | 01:13 |
---|---|---|
mithro | stupid h key | 01:13 |
mithro | howdy nash | 01:13 |
nash | heyo | 01:13 |
nash | Fixed my issue last night... | 01:13 |
nash | a big round of screenshots waiting for upload ;-) | 01:14 |
mithro | why not upload them then!? | 01:19 |
nash | Cause I need to update the list of images in the index.html file | 01:20 |
mithro | why not have a directly listing? I think you just like teasing me | 01:22 |
nash | Look now | 01:22 |
jotham | haha | 01:24 |
nash | Note the envelope in teh corner too ;-) | 01:24 |
nash | mithro: Happy now? | 01:26 |
mithro | nash: now you need to do 2 ai verse :) | 01:27 |
nash | mithro: Probably tonight. | 01:27 |
nash | Definitly on the weekend | 01:28 |
mithro | cool | 01:28 |
nash | Need to start fixing some of the other issues soon | 01:28 |
nash | Smith is really good by himself (and he will seriously annoy a human player) but he will never win a game (except by the biggest chance) | 01:29 |
nash | mithro: Remeber how I keep complaining about no way of being notified of destroyed objects ;-) | 01:33 |
nash | Hence smith doesn;t handle that... So I need the client to work around that | 01:33 |
mithro | i'm guessing he is currently just sending 1 frigate at each place? | 01:41 |
mithro | which will be clobbered by the planet | 01:44 |
nash | And then some | 01:46 |
nash | BUt yes | 01:46 |
nash | A rather one-sided battle | 01:46 |
nash | Never tries again because the system doesn't know the ship has been deleted | 01:46 |
nash | So one of hte things I need to do is get it to notice teh lose of the ship and plan appropriately - like sending some battleships there first | 01:47 |
mithro | nash: why can't you see the disappearing IDs? | 01:47 |
nash | Because there is no event for a destroyed object | 01:48 |
nash | I need to poll them | 01:48 |
nash | Discover they are no more. | 01:49 |
nash | I try not to update the entire universe for no reason | 01:49 |
mithro | no event for new objects too? | 01:49 |
mithro | get_obj_ids will return all the ids in the universe | 01:51 |
mithro | i thought you loop would be like the following | 01:51 |
mithro | for id in get_obj_ids: | 01:51 |
mithro | if id in universe and modtime > universe[id].modtime: get_object(id) | 01:52 |
mithro | else: create_event | 01:52 |
mithro | for universe.ids(): | 01:53 |
mithro | if notupdated: destroy_event | 01:53 |
nash | I don't maintain state across the get_obj_ids | 01:53 |
nash | So basically I get all object IDs then deal with them - either triggering updte events or new object events for the higher level | 01:54 |
nash | So I don't have an implicit way of discovering destroyed objects. | 01:55 |
nash | I need to add a mark and sweep basically | 01:56 |
nash | Which I didn't really want to do | 01:56 |
nash | Otherwise a lazy GC to go check for objects that haven't been updated for a while | 01:56 |
nash | I can also do some clever things like look for objects I know have been deleted | 01:57 |
nash | (If X colonises Y, X is probably gone) | 01:57 |
mithro | nash: you don't story a copy of the universe locally? | 01:57 |
nash | All the time | 01:58 |
nash | If I didn't store a copy I wou;dn't have a problem | 01:59 |
nash | Problem is discovering item in my cache is no longer valud | 01:59 |
nash | An easy fix is to delete all my objects each turn and re-download | 01:59 |
nash | I need to download a complete list of IDs, and then search my list of objects to see waht is missing | 02:01 |
nash | Which I think is icky | 02:01 |
nash | It's even worse as it breaks feature 0x1000 if it is present - as you have to get teh whole object list anyway | 02:05 |
nash | What makes it worse, is since the getobjectids list is not in any order, I need to search through my order N list to look up things in the size M getobjid list - giving the whole alg a rather ugly O(N^2) time | 02:07 |
nash | So basically - Destroying an object should update it's mod time, and should set a 'delted' flag. Else there needs to be some other way of getting such info. | 02:08 |
nash | O(N^2) on the client is pants | 02:08 |
nash | Other alternatives is a clean and sweep - but in that case I need the whole damn list again anyway | 02:11 |
nash | No matter what it is pants. | 02:11 |
nash | mithro: ANyway - I'm going to lunch | 02:14 |
nash | Talk to you soon | 02:14 |
*** mithro has quit IRC | 02:32 | |
*** mithro has joined #tp | 03:06 | |
mithro | nash: tpserver-cpp doesn't support the ordered ids | 03:08 |
nash | Even if it did - you can't take advantage of the fact. | 03:09 |
nash | It's a pointless option | 03:11 |
nash | You need to be able to do GetDeletedObjects | 03:17 |
mithro | if you have a list of the ids in the universe (from previous turn), and you can get the current list of ids, you can then download the differences | 03:42 |
nash | But the downloaded list is not in a guaranteed order... So direct comparison is O(n^2) - blerg :-( And I still have to get a list of everything in the universe | 03:55 |
nash | Which is stupid. The server knows what disappeared - it can gen that list | 03:55 |
nash | I'm not denying you can't do it - it's just you have to do it using brute force methods | 04:05 |
nash | Best possible search is O(nlogn). | 04:09 |
*** tpb has joined #tp | 06:00 | |
*** ChanServ sets mode: +o tpb | 06:00 | |
mithro | welp, heading of now | 06:30 |
mithro | see ya! | 06:30 |
nash | bye | 06:38 |
*** nash has quit IRC | 06:41 | |
*** mithro has quit IRC | 06:52 | |
*** zipola has quit IRC | 07:26 | |
*** mithro has joined #tp | 08:12 | |
*** nash has joined #tp | 08:14 | |
* nash waves | 08:15 | |
*** llnz has joined #tp | 09:16 | |
nash | heyop llnz | 09:30 |
llnz | hi nash | 09:30 |
nash | sorry - about to have dinner | 09:31 |
llnz | hi JLP | 09:45 |
JLP | llnz: ahoy | 09:45 |
mithro | howdy people | 10:09 |
JLP | mithro: ahoy | 10:10 |
mithro | JLP: sup? | 10:10 |
JLP | mithro: well i've taken myself a bit of free time today, no uni, no translation | 10:11 |
mithro | JLP: what you been up to? go to the beach? | 10:12 |
JLP | mithro: i don't know yet, got up just about an hour ago, i'll probably go for a long walk later today | 10:14 |
mithro | JLP: ahh - I thought you where talking in the past tense | 10:14 |
*** bobbens has quit IRC | 10:16 | |
*** bobbens has joined #tp | 10:24 | |
*** bobbens has left #tp | 10:27 | |
CIA-20 | Lee Begg <[email protected]> * tpserver-cpp/tpserver/ (console.cpp console.cpp console.cpp): (log message trimmed) | 10:41 |
CIA-20 | Added status command to console: | 10:41 |
CIA-20 | Gives a nice run down of the stats and status of the server and game. Done at | 10:41 |
CIA-20 | mithro's request. | 10:41 |
CIA-20 | Gives the following for my running server. | 10:41 |
CIA-20 | tpserver-cpp> status | 10:41 |
CIA-20 | Server: tpserver-cpp | 10:41 |
llnz | Version: 0.4.1 | 10:41 |
llnz | Persistence available: yes | 10:41 |
llnz | Ruleset Loaded: yes | 10:41 |
llnz | Ruleset Name: MiniSec | 10:42 |
llnz | Ruleset Version: 0.2 | 10:42 |
llnz | Game Loaded: yes | 10:42 |
llnz | Game Started: yes | 10:42 |
llnz | Time to next turn: 592 | 10:42 |
llnz | Turn number: 6858 | 10:42 |
llnz | Network Started: yes | 10:42 |
llnz | (just to complete the message) | 10:42 |
mithro | llnz: cool | 10:47 |
mithro | so much to do, so little time | 10:52 |
*** nash has quit IRC | 11:19 | |
*** nash has joined #tp | 11:36 | |
* llnz wanders off | 12:02 | |
llnz | later all | 12:02 |
*** llnz has quit IRC | 12:03 | |
*** nash has quit IRC | 12:14 | |
*** TBBle_ is now known as TBBle | 12:52 | |
*** zipola has joined #tp | 15:42 | |
*** zipola_ has joined #tp | 16:33 | |
*** _JLP_ has joined #tp | 20:39 | |
*** JLP has quit IRC | 20:55 | |
*** zipola has quit IRC | 22:09 | |
*** nash has joined #tp | 22:36 |
Generated by irclog2html.py 2.5 by Marius Gedminas - find it at mg.pov.lt!