#bitfighter IRC Log

Index Search ←Prev date Next date→

IRC Log for 2012-10-12

Timestamps are in GMT/BST.

00:14:46kodaws has joined
01:05:24Little_Apple has joined
01:05:28Little_Applehelloo
01:05:34sam686hi
01:52:50Little_Applehow much do you know about lua?
02:10:33Little_Apple hurbey durrrr
02:14:54Little_Apple._.
02:20:35sam686I know more about c++ then lua
02:21:01Little_Appleok. ever use love 2d?
02:23:19sam686no..
02:23:45Little_Appleokayyy then
02:35:20sam686there is lots of players this minute..
02:35:48Little_Appleyup
02:36:06Little_Applethe only reason im not on is because the version i have crashes
02:42:37sam686I don't think you ever said it crashes before, but again, I don't have any apple mac stuff..
02:43:08Little_Appleive talked to raptor about it before
02:43:15Little_Appleat least im pretty sure i have
02:44:21sam686are you using PowerPC mac or intel?
02:49:17Little_Appleintel
02:49:24Little_Appleppc is fine
02:51:21sam686you can try downloading 64-bit bitfighter, and 32,bit bitfighter, see which one works...
02:51:35sam686you could also try something called "Wine" to run window's exe file on intel mac, if that works..
02:52:47Little_Appleyea i have wine
02:52:53Little_Applei think ive done that before
02:53:28sam686can use http://sam6.25u.com/upload/Bitfighter-017B.zip if you don't like windows installer..
03:16:57Little_Apple Quit (Quit: Page closed)
03:32:56kodawswhy don't they stay in channel
03:33:01kodawsthat is beyond me
03:33:11kodawsi could have helped somehow if he waited....
03:37:32raptor has joined
03:37:32ChanServ sets mode +o raptor
03:38:06raptorhello hello
03:39:24raptorsam686: did i break something?
03:40:06sam686break what>
03:40:21raptorif you host a game, then change a level, does it trigger an assert?
03:42:50raptoractually, i'm triggering an assert while not hosting...
03:45:03sam686that might be not your changes, i am guessing (i am still compiling)
03:45:10raptorit isn't my changes...
03:45:58raptorbut i don't understand the trace: http://pastie.org/5039279
03:47:01sam686time to replace TNLAssert with TNLAssertV(a,"%s", "some_variable_string) or similar...
03:47:28raptoryou mean like with va_list
03:52:31raptorhmmm, maybe it is my fault...
03:57:47BFLogBot Commit: 9cd3068fa205 | Author: sam8641 | Message: More detailed "event direction wrong" error, show which one caused it.
03:57:55raptorha!, i just did that...
03:58:02raptoryou beat me...
03:58:40raptoryup, it's my fault
03:58:42raptori fix
03:59:14sam686parhaps... it chould be TNLAssert checked when transmitting too..
03:59:30sam686can produce better backtrace that way
04:00:35raptorit's my fault!
04:00:46raptorargh
04:00:49raptori knew it!
04:07:43BFLogBot Commit: 04ab7a13c400 | Author: buckyballreaction | Message: Fix RPC direction bug with undelay spawn
04:12:51sam686you can call c2sBlahBhah_remote from a c2s if you add _remote in your callinng function name
04:15:40raptori did not know that..
04:15:49sam686I really did use c2s_remote from c2s in GameConnection::s2rSendDataParts to trigger a level change immediately after upload...
04:21:58raptorok, there is another bug
04:22:02raptori introduced
04:23:00raptortype in /next
04:23:03raptorin a level
04:24:39raptornotice anything?
04:25:09BFLogBot Commit: 525023b6b0d1 | Author: sam8641 | Message: Add TNLAssertV wrong direction while sending, helps seeing what caused it on stack trace.
04:26:04sam686evil recompile everything just because you changed a .h file...
04:26:12raptor:(
04:27:26sam686I lagged out the moment I did /next
04:28:08raptoroops, sorry i had a break point
04:28:13raptorok i continued
04:28:54sam686I can't start bitfighter.exe while compiler in linking mode..
04:29:16sam686ok, its done linking, i can start
04:31:02sam686My levelgen seems broken...
04:31:16raptoryeah, watusimoto broke them...
04:31:21raptormazeracer is broke, too
04:32:10sam686another problem, it keeps asserting when joining your server..
04:32:25sam686trying to send GameConnection stuff when not joined yet?
04:32:50raptoruh, it shouldn't...
04:33:46sam686there can be GameConnection, but not connected to server yet...
04:36:51raptori can't duplicate...
04:36:56raptormaybe i need to be remote?
04:44:18BFLogBot Commit: 173ebe10469d | Author: sam8641 | Message: Adjust TNLAssert, and activate first then setConnectionToServer
04:46:39raptorsam686: was that a new bug i introduced?
04:47:02sam686probably not, but rather a small problem with my Asserts..
04:47:09raptorah
04:47:40sam686when not connected, then isConnectionToServer() and isConnectionToClient() is both false, i think..
04:55:04raptorok, so now do /next in a server
04:55:33raptorand you'll see my problem - i'm not sure what to do
04:57:32raptorit's because the command forces the spawn delay (from my recent changes) but then it spawns another ship
04:58:16sam686double spawning?
04:58:22raptoryes
04:58:35raptori need it to not force a spawn delay when changing levels....
05:05:06raptoror maybe commands don't make you busy?
05:09:14sam686go host, then let me join / restart level
05:15:25kodaws Quit (Ping timeout: 245 seconds)
05:21:18raptori had to quit...
05:21:49sam686restart level is kindof make you stuck now..
05:26:53BFLogBot Commit: 3c4db8ef6143 | Author: buckyballreaction | Message: Fix multiple ships being created if undelaySpawn() was called more than once...
05:30:50raptorsam686: i need to sleep - i'll look closer at the problem tomorrow
05:31:25raptorhave a good night
05:38:47raptor Quit ()
06:10:39kodaws has joined
06:51:40sam686 Quit (Ping timeout: 245 seconds)
07:49:43watusimoto has joined
07:49:43ChanServ sets mode +o watusimoto
09:45:29kodaws Quit (Ping timeout: 246 seconds)
10:00:12kodaws has joined
12:08:05kodaws Quit (Read error: Connection reset by peer)
12:31:01CrazyLinuxNerd has joined
12:51:28CrazyLinuxNerd Quit (Quit: Leaving.)
14:56:08raptor has joined
14:56:08ChanServ sets mode +o raptor
14:56:38raptorbuenos
15:10:02watusimotohi
15:10:06raptorhi
15:10:09raptori broke something
15:10:18watusimotoexcellent! what?
15:10:27raptorwith the going-busy-enable-spawn-delay
15:10:56watusimotobut you just fixed that!
15:10:58raptorthe problem: any action done while busy that requires a spawn, is messed up
15:11:12watusimoto???
15:11:18raptorso changing levels (/next /prev, etc.), /idle, changing teams
15:11:21raptorbecause
15:11:31watusimotoah
15:11:32watusimotoI see
15:11:41raptoropening a command, or pressing escape, make you go busy... which enables spawn delay
15:11:46watusimoto /next spawns you
15:11:51watusimotobut you are in a menu
15:11:55raptoryes
15:11:55watusimotoso you can't spawn
15:12:06watusimotointeresting
15:12:11raptori'm not sure how to fix...
15:12:19raptori had an idea in my sleep - but it didn't turn out
15:12:34watusimotonot sure how programatically or not sure what _should_ happen
15:12:37watusimoto?
15:12:48raptorone hack is to reset the spawn delay timer on every possible action that calls a spawn while busy
15:12:58raptorprogramatically
15:12:59watusimotowell let's start with what should happen
15:13:08raptorok case:
15:13:10watusimotoif you do /next, should you spawn immediately?
15:13:14raptoryou do /next
15:13:31raptorit sets you as 'busy', forces the spawn delay timer to run out
15:13:37raptorresets level
15:13:49raptortries to spawn you but finds you are delayed
15:13:50watusimotosets you as busy because you are typing /next
15:14:11raptorit's sort of a race condition..
15:14:14watusimotook
15:14:20watusimotoso sequence of events that we want is this:
15:14:33watusimotostart typing /next, you are now marked as delayed
15:14:40watusimotofinish typing /next, level advances
15:14:43watusimotoall players spawn
15:14:49watusimotoincluding you
15:14:51raptoryes
15:14:52watusimotomenu exits
15:14:56watusimotostart playing
15:15:12watusimotook, so that case is clear
15:15:19watusimotoare there any cases that are unclear?
15:15:31watusimotoor is this purely a matter of making sure you can spawn in cases like /next
15:15:55raptorthe problem is that the method that sets you as busy c2sSetIsBusy
15:16:04raptorwhen you press <enter> after /next
15:16:09raptorit unsets you as busy, too
15:16:13watusimotoif you and I are playing, and we are both delayed (you because you are chatting, me because I am /nexting)
15:16:18watusimotoand I do the /next
15:16:24watusimotoonly I should spawn, right?
15:16:31raptorcorrect
15:16:39raptorand that's ok
15:17:00watusimotoso when you do /next, why not set the /nexting player as unbusy?
15:17:12raptorthat is exactly my hack
15:17:15watusimotobefore anything else happens
15:17:22raptorwe find all the methods that call a spawn
15:17:28raptorand set un-busy
15:17:33watusimotoand why does that fail? (or is this your idea to fix?)
15:17:56watusimotofinding all methods that spawn is a bit of a hack
15:18:01raptorit seems like a hack - we'd have to apply it to any method that does a spawn
15:18:04raptoryes^^
15:18:25watusimotohowever, all /cmds could set you as unbusy, regardless of whether they spawn or not, right?
15:18:40watusimoto(I know that's not the whole problem)
15:18:45raptorright, but what about menu -> switch teams
15:18:49watusimotoright
15:18:50raptoryeah
15:18:59watusimotoso one class of problems (the /cmds) is easy
15:19:02watusimotofor menus
15:19:28watusimotohow does the server know if a menu command should spawn you?
15:19:41watusimotoserver doesn't really know
15:19:46watusimotoand probably shouldn't
15:19:48raptorthere is a handler in UIGame-> calls some c2s
15:20:05raptorand that c2s may or may not include respawning
15:20:33watusimotoand actually, we shouldn't preclude /cmds that might open a menu and not instantly return you to field of play
15:20:49raptoryep
15:21:13raptorthat's why i'm trying to find a nice elegant solution server-side..
15:21:19raptortoo many possibilities
15:21:25watusimotoyes
15:21:52watusimotowhat if the c2s suggested immediate respawn for caller?
15:22:00watusimotois that what you were suggesting earlier?
15:22:14raptorthat is the hacky way... essentially
15:22:31watusimotobecause you need to identify this c2s but not that one
15:22:37raptorwe hunt all the c2s down and force the user to not be busy when they are called
15:22:44watusimotoright
15:22:47watusimotook, that's lame
15:22:58raptormay i just need to let my mind stew on it a bit..
15:23:13watusimotook, let's look at this in the opposite way
15:23:27watusimotowhat are the conditions in which we *don't* want the player to respawn if they are delayed
15:23:29watusimoto?
15:24:01raptorwhen they are still in a menu or chatting/command input
15:24:04watusimotothis gets hairy too
15:24:26watusimotolet's say there were a menu cmd that restarted the level, but didn't immediately return you to the game
15:24:53watusimotoin that case, would you respawn? or only when you finally exited the menu?
15:24:59watusimotowell, what about this?
15:25:15watusimotoplayer starts typing /next and gets delayed
15:25:29watusimotolevel restarts, /nexting player is still delayed, doesn't spawn
15:26:08watusimotothen /nexting player exits menu, client sends the "c2sNotBusyAnymore" to server
15:26:27watusimotoserver undelays spawn, spawns formerly /nexting player
15:26:50raptorthat's what it already does... sort of
15:27:01watusimotook, and clearly this dosn't work for some reason
15:27:04watusimotowhy not?
15:27:10raptorso
15:27:35raptorthat means that any player that does /next is spawn delayed by default... and we leave it at that?
15:27:53watusimotobut they are instantly undelayed as soon as the cmd is entered
15:28:01raptoryup
15:28:08watusimotobecause the client tells server "ok, ready to spawn"
15:28:14watusimotoand server spawn
15:28:15watusimotos
15:28:26watusimotoin effect, they might be delayed by 100ms
15:28:33watusimotowhile those messages are exchanged
15:29:09raptorthat where i was at last night... let me see why i didn't like it again (maybe it was just a flow interruption)
15:29:21watusimotoyes, that is the key question, I think
15:31:18watusimotonow *if* that flow generally works, and there are some cmds like /next that that 100ms delay is uncool for some reason, we could, at our discretion, add an extra undelay command in the c2s. But we wouldn't need to hunt down and maintain every case because there would be an underlying mechanism that is good enough for the general case, even though we'd chosen to override it in a few specific cases. That doesn't seem too hacky :-)
15:31:50watusimotothat is such awful prose.
15:36:03raptorhmm...
15:37:10raptorthe code is all different than I remember it from last night... this is why i shouldn't code when i'm tired
15:37:21watusimotoha!
15:37:29watusimotoat least you weren't drinking!
15:39:16raptorsigh - what have i done...
15:39:23raptori think i may have to restart from scratch...
15:39:44watusimotoreally???
15:39:49raptorot
15:39:57raptorit's not behaving like i thought i coded it...
15:40:03raptormaybe something sam did...
15:40:13raptorlet me sort this out for a while..
15:41:27watusimotook, I'll just say this
15:41:52watusimotoI just tried it, and at least on my local server, where times are short, there seems to be only one easy fix needed to make it work
15:42:15watusimotoand that is if you are respawned by the server, the client should disable spawn delaying
15:42:34watusimotobecause other than the faulty display of the delayed message, it seems to be working
15:42:43raptoryes, that's the thing...
15:42:50watusimotoor at least the part about spawning with /next is working
15:42:58raptorok say that again? client refuses spawn delayed?
15:43:06watusimotoI type /next
15:43:18watusimotoI respawn, but I also see the "press any key" message
15:43:23raptoryes
15:43:43watusimotoah, I see the race condition you alluded to
15:43:49watusimotowait, no I don't
15:43:54watusimotoyes I do
15:43:59watusimotodo I?
15:44:03raptor:) isn't that the definition of a race condition?
15:44:08watusimotoprobably
15:44:10raptoryes no yes no
15:44:17watusimotoendless loop --> see loop, endless
15:45:31watusimotoso what is happening? client says "I'm entering a cmd", and server sends out the "delayed" message to all clients (including us)
15:46:06raptorclient becomes busy
15:46:16watusimotowe finish the /next cmd; server respawns us, client knows it's no longer delyed for local reasons, but server never sends undelay message?
15:46:24raptorserver sets as busy, and maxes out the spawn delay timer
15:46:47raptor /next -> respawn, then the server gets the unbusy signal
15:46:54raptorfrom closing the command
15:46:59watusimotoyes
15:47:12watusimotowhy does client still think its busy?
15:47:16raptorso getting the /next first, triggers the spawn delay
15:47:51watusimotoI don't understand this lsat line
15:48:10raptorthe server gets the /next command first, before the unbusy command
15:48:17watusimotoyes
15:48:24raptorand tries to spawn the ship, but sees it is delayed
15:48:28raptorso puts up the message
15:48:34watusimotook
15:49:03raptorthen it gets the unbusy command, and tries to undelay spawn, even though it's already spawned
15:49:17watusimotoand gets confused
15:49:22raptoryes
15:49:35watusimotowhy does server spawn when it knows client is busy?
15:49:50raptorah ha!
15:49:55raptorlet me try something..
15:50:02watusimotostanding by
15:53:52raptorif(clientInfo->isSpawnDelayed() && clientInfo->getConnection()->mIsBusy)
15:53:53raptor return false;
15:53:58raptortesting that in spawnShip
15:54:20raptordoesn't work
15:54:30watusimotowhat's that supposed to do?
15:55:12raptornot spawn the ship if it is busy
15:55:15raptorbut doesn't work
15:55:19watusimotobut it spawns anyway?
15:55:25raptoryep
15:55:35watusimotowhy shouldn't that be ||?
15:55:39watusimotowhy &&?
15:58:30raptorbecause that case was handled above it...
15:58:44raptorbut nothing in the method is working anyways...
15:58:59watusimotowell, if either of those conditions is true, ship should not spawn, right?
15:59:28raptorcorrect, but if you notice, the ship isn't actually spawning yet...
15:59:43watusimotook, maybe I didn't notice that :-)
16:00:35watusimotoI'm going to have to look at the code tonight, I think
16:00:45watusimotobut I totally understand the problem
16:00:58watusimotoit's far more complex than I woul dhave guessed
16:01:08raptorsigh, ok
16:01:17raptorbut i will honestly try to solve before you get to it.. :)
16:01:45watusimotoexcellent!
16:12:41raptorhuh...
16:12:46raptori think i may have fixed it...
16:14:11raptorok
16:14:13raptorso
16:14:50raptorit works with a caveat - any time you do an action that spawns the ship, it requires you to press a key to come out of spawn delay
16:15:13watusimotowy?
16:15:43raptorbecause i removed the constraint to automatically undelay the spawn if you are set as unbusy
16:15:51raptorand that fixed all the weirdness
16:16:00raptorwith that side effect
16:16:28watusimotoso before your fix, it would undelay spawn when you became unbusy?
16:16:36watusimotoand now this doesn't happen?
16:16:46raptoryes
16:16:58raptori mean, correct
16:17:11watusimotoso now you become unbusy, but your spawn stays delayed until you explicitly undelay it?
16:17:19watusimotoby pressing a key?
16:17:35raptoryes, or moving the mouse
16:17:39watusimotook
16:18:06raptorwhich is highly likely it will occur
16:18:11watusimotoso can we have the client undelay you when you exit a menu or chat screen?
16:18:19watusimotojust as a matter of course?
16:18:53raptoroh... actually, i can do that again
16:19:28raptorso, it's important to make the distinction between spawn delay and actually respawning
16:19:46watusimotocould you restate that?
16:19:55watusimotothose seem like very different things
16:20:10raptorspawn delay = forcing the timer to maximum
16:20:17raptorundelay, reset the timer
16:20:40watusimotothe timer is the counter that tracks how long it's been since you last moved?
16:20:43raptoryes
16:20:58watusimotoand setting it to max means telling the game you haven't moved for years, so you are certainly delayed?
16:21:03raptoryes
16:21:06watusimotook
16:21:07raptorthen you have to be killed
16:21:11raptorbefore
16:21:37raptori was setting the timer to the max if you are busy; if unbusy, i was resetting the timer AND trying to respawn the ship
16:21:54watusimotoyeah, unbusy only means set timer to 0
16:21:59raptoryes that
16:22:04raptoris what i changed it to...
16:22:28watusimotoif you need to spawn, game should see you are no longer delayed and respawn you as a matter of course (in idle or something)
16:22:43raptoryes
16:22:46watusimotook
16:23:04watusimotoso your problem was that you were trying to preempt the normal respawn mechansim my forcing an immediate respawn?
16:23:26raptorremoving that second part of 'trying to respawn the ship' fixes race condition weirdness
16:23:42watusimotook, I think I understand
16:23:48watusimotobottom line, it works now :-)
16:23:48raptorthere was logic in there already to prevent spawning double, but it was calling some other methods that made things goofy..
16:23:57raptorwell
16:24:02raptorif you do /next
16:24:06raptoryou are spawn delayed
16:24:29watusimotook, but the clietn can undelay you whenever you are done /cmding, no?
16:24:42raptorthat's the part i removed
16:25:14raptorso no
16:25:41watusimotoimagine, say that when you finished with a chat cmd, a little timer waited .5 secs, and inserted a key into the buffer. That would fix the "press any key" issue, right?
16:26:03raptoractually...
16:26:20raptoryes, but there's the case of the menus, too
16:26:23raptorbut actually...
16:26:50raptori wonder if i introduced a slight delay to the delay; like don't max out the timer, but max it out minus 2 seconds
16:27:05raptorwhich is hacky, too
16:27:17watusimotoI don't understand that at all... but maybe I don't need to
16:27:24watusimotobecause it sounds terrible!
16:27:31raptorso basically if you're busy
16:27:38raptoryou are *almost* spawn delayed
16:28:02raptorstill 2 seconds left to be spawndelayed on the timer
16:28:13raptorthat way you can go to the next level without instantly being delayed
16:28:41watusimotowhen you stop being busy (i.e. finish with the /next cmd), the cleint sends a "no longer busy" msg to server, right?
16:29:12raptoryes, and it did what i mentioned before: "if unbusy, i was resetting the timer AND trying to respawn the ship"
16:29:26raptorthat second part had a race condition with spawning on a level
16:29:27watusimotoyes
16:29:34raptorso i removed it
16:29:35watusimotobut now you are just resetting the timer
16:29:39raptoryes
16:29:57watusimotoso I finish my /next cmd, the client sends a message to the server saying I am now unbusy
16:30:05raptorcorrect
16:30:13watusimotothe server gets that message, and sets the delay timer to 0
16:30:19watusimotoa little time passes
16:30:33raptoryes, but it has already restarted the level and seen the maxxed out delay timer
16:30:35raptorby that time
16:30:54watusimotothe server is in its idle loop somewhere, looks over the list of ships to spawn, sees that I am waiting spawn, and am no longer delayed, and spawns me
16:31:03watusimotoso I spawn
16:31:22raptorit actually does that *before* the unbusy signal is sent
16:32:00watusimotobut at that point it is in the idle loop, sees that I am waiting spawn, but my timer is maxed out so it spawns everyone but me
16:32:17raptoryes
16:32:17watusimotothen I send my unbusy signal, my timer gets 0'ed, and the next idle loop I spawn
16:32:36raptorsupposedly
16:32:47raptorbut it gets mixed together for some reason
16:33:20watusimotook, well I'll see what's going on tonight. I'm fried from work stuff (debugging complex JS garbage), and this isn't helping :-)
16:33:28raptoryuk
16:33:38raptori release you, then
16:33:43watusimoto:-)
16:41:23watusimotojust figured out a problem that's been dogging me for days... so good time to leave.
16:41:24watusimotolater
16:42:07raptorbye
16:46:32watusimoto Quit (Ping timeout: 246 seconds)
17:38:11Little_Apple has joined
17:38:50Little_Applehelloo
17:39:08raptorhi
17:39:58Little_Apple cooouuulllddd you possibly help me some with love 2d?
17:40:10BFLogBot Commit: ad094974c897 | Author: buckyballreaction | Message: Fix race condition between: - spawning called from a command or menu (like with changing teams or levels) AND - becoming un-busy (after exiting command or menu) and it undelaying spawn Sadly, I opted to go with command specific spawn delay resets. Seems to work in all test cases so far
17:40:25raptormaybe
17:40:42raptorcoding help, or environment set-up help?
17:40:49Little_Applei managed to make a "hello world" type thing
17:41:06Little_Applemore like… everything help.
17:41:24raptoroh good, so it runs
17:41:39Little_Appleyup
17:41:56Little_Applewell… sort of
17:42:07Little_Appleits just a .love file at the moment
17:44:03raptorever thought about joining the IRC channel for love2d?
17:44:12raptorhttp://en.irc2go.com/webchat/?net=OFTC&room=love
17:44:53Little_Appleoh… that would probably be more productive than nagging you...
17:44:55raptoralso forums for them...
17:45:06raptorand they would actually know things better :)
17:45:09Little_Appleyep :P
17:53:58Little_Appleeh…. time to waste some time animating.
17:54:16raptorpatience in IRC...
17:54:28raptorbut it helps to have other projects
17:54:31raptorwhile you wait
17:54:41Little_Appleive never used the love 2d irc… its scaaarrryyyyyyy
17:54:59raptorit's just IRC
17:55:18raptoryou could use the forums, too?
17:55:36Little_Appleforums are scarier.
17:56:03raptorloads of people playing!!
17:56:44Little_Appleoh wow
17:56:45raptorrats, it's passworded
17:57:00Little_Appleare they legit players? or just one person with multiple clients?
17:57:09raptorlooks legit
17:57:13raptorprobably a school LAN game
17:57:16Little_Appleyea
17:57:16raptorsomewhere...
17:57:35raptoroh rats, they left
17:57:57Little_Appleyea… that happens a lot it seems
17:58:43raptorthey have their own levels!
17:58:51Little_Applenice
17:58:57Little_Appleoh boy!
17:59:37Little_Applei drew a ridiculous duck
17:59:46Little_Applei think its a duck...
18:00:11raptorComp Sci & Tech class at a school in Ontario, Canada
18:00:36Little_Applehuh
18:00:46Little_Applei wonder if opti has anything to do with it
18:00:59raptormidhurst, ontario
18:01:06raptor"Simcoe County District School Board"
18:01:40Little_Appledo they all have the same ip?
18:01:59raptorno, but that is where the server was
18:03:48Little_Appleok
18:04:20Little_Applehow much ram would a normal dedicated server use?
18:04:42raptordepends on bots
18:04:57raptorbut normally probably 5-15MB at most
18:05:19raptorwith bots, it can fill up your RAM completely
18:05:26raptorBUT, as of 018, we fixed that
18:05:42Little_Appleso not much?
18:05:50raptor5-15MB without bots
18:05:55raptorthat's not much
18:06:00raptornowadays
18:06:04Little_Appleso a raspberry pi should be able to handle it no problem
18:08:56raptori'm sure
18:09:42Little_Appleyea cuz the rasp pi has about 256 mb of memory
18:14:13raptori can probably emulate a rasp pi
18:16:11Little_Applesweet
19:19:55Watusimoto has joined
19:22:15Little_Apple Quit (Quit: Page closed)
19:35:25LordDVG has joined
19:44:15LordDVG Quit (Remote host closed the connection)
19:46:59raptorWatusimoto: i found a fix...
19:47:02raptorsee my last commit
19:54:29Watusimotosuper
19:55:15Watusimotoso your solution is to have each command (e.g. /next) unset busy on the server?
19:55:23Watusimotoin the c2s?
19:55:34raptoryes but it only ended up in two places
19:55:48Watusimotonot too bad
19:55:51raptorone for cycling the level, one for team changing
19:56:06raptorit was the easiest solution with the best outcome
19:56:14Watusimotohacky, but is probably the best solution in this situation
19:56:28Watusimotoand will probably give the smootheset UI
19:56:32raptortried as i might to get the race condition solved (even trying RPCGuaraneedOrdered)
19:56:37Watusimotoha
19:56:43Watusimotonow that is desperate!
19:56:47raptori couldn't get it totally there
19:56:57raptorand this has the smoothest UI, yes
19:57:10Watusimotoprobably completely transparent to the user
19:57:18raptoryup - you shoudl try :)
19:57:34raptoreven /idle works nicely now
19:58:36Watusimotowill
19:58:47Watusimotogood!
20:20:09raptori'm current'y trying to emulate a raspberry pi with qemu...
20:20:23raptorand then i'm going to try to put a bitfighter dedicated server on it...
20:26:17Watusimotowow
20:26:20Watusimotoawesome!
20:26:34Watusimotohere's a editor plugin that *almost* works
20:26:35Watusimotofunction main()
20:26:35Watusimoto local t = plugin:getSelectedObjects()
20:26:35Watusimoto for i, v in ipairs(t) do
20:26:35Watusimoto local g = v:getGeom()
20:26:36Watusimoto g = Geom.translate(g, 100, 0)
20:26:38Watusimoto v:setGeom(g)
20:26:40Watusimoto end
20:26:42Watusimotoend
20:26:45Watusimotonudges selection to the right
20:27:01raptoris mazeracer broken for you?
20:27:09Watusimotono, tested it last night
20:27:17Watusimotoyou might need to copy scripts
20:27:26raptorbecause for both sam686 and I, it is broken and so is the editor plugin
20:27:29raptorscripts are copied
20:27:36Watusimotoreally
20:28:04WatusimotoI'm playing it right now
20:28:23raptoroh wait
20:28:27raptormazeracer is working...
20:28:34Watusimotowoohoo! just won!
20:28:37raptoreditor plugin isn't
20:28:45Watusimotono?
20:28:49raptornope
20:28:54raptor***PLUGIN ERROR*** Error encountered while attempting to run script's main() function: editor_plugins/draw_arcs.lua:45: attempt to index global 'levelgen' (a nil value). Aborting script
20:29:41Watusimotosame here
20:29:46Watusimotoeasy, nay, trivial fix
20:29:53raptorhaha, ok
20:30:02WatusimotoI changed the global "self" object from levelgen to plugin
20:30:08raptorahhh
20:30:12Watusimotoso I probably just need to swap that out
20:30:18Watusimotoplugins inherited from levelgens
20:30:26Watusimotothough not sure they should anymore
20:30:29Watusimotobut they do
20:30:37Watusimotoand last night I changed that
20:30:40Watusimotothanks for pointing it out
20:30:50raptorany time :)
20:31:09Watusimotoholy cow!
20:31:15Watusimotothat script uses gridsize!
20:31:35raptoryeah, just noticed that...
20:31:58WatusimotoI may also need to add a getGridsize method to plugin
20:32:10Watusimotoor set a global
20:32:21Watusimotoprobably a global var makes more sense ??
20:32:29Watusimotowhich do you like better?
20:32:38Watusimotog = plugin.getGridSize()
20:32:39Watusimotoor
20:32:47Watusimotog = GRID_SIZE
20:33:07Watusimotog = plugin:getGridSize()
20:33:10Watusimotoactually
20:33:10raptoruhh - that last one doesn't seem like something we've done before...
20:33:22raptorGRID_SIZE, i mean
20:34:01Watusimototouche. levelgens have this:
20:34:02Watusimoto_GRID_SIZE
20:34:07Watusimotothat looks better!
20:34:24raptorha
20:35:18WatusimotoI *think* a global would perform slightly better, though you could easily create your own in main)(
20:36:22Watusimotofor plugins it's a non-issue
20:36:31Watusimotofor levelgens it's a practically non-issue
20:36:42Watusimotothe performance difference, that is
20:37:03Watusimotounless we have some hot and heavy levelgen monitoring script that runs every frame
20:39:59raptori'll be back shortly...
21:06:40Watusimotome too
21:25:50raptorback
21:32:21raptorcloning bitfighter into my raspberry pi VM..
21:36:25raptorok, here goes... building dedicated
21:36:51raptorit's going to take like 1/2 an hour...
21:41:19raptorTNL compiled!
21:54:07Watusimotowow
21:54:15WatusimotoI once compiled bf for a linkstation
21:54:26WatusimotoI wanted to use it as a dedicated server
21:54:32Watusimotoran waaaaay too slow, but it did work
21:55:21raptora router?
21:56:31Watusimotoa hard disk
21:56:42Watusimotoold PPC NAS enclosure
21:56:58raptorwow
21:57:07raptoryeah all NAS's now are ARM
21:57:17WatusimotoI guess it wasn't waaaaay too slow, just way too slow
21:57:22Watusimotoor maybe just too slow
21:57:59WatusimotoI loaded it up with gentoo, and the thing would take days to recompile
21:58:25raptorhaha
21:58:27raptori remember gentoo
21:58:36Watusimotoit's all about the compile, baby
21:58:45Watusimotoheated my kitchen pretty well
21:58:47raptorevery one serious about learning OSes should probably experience gentoo at least once...
21:59:05raptorhaha, i've heard stories of people putting their laptops in the freezer for gentoo
21:59:22Watusimotoevery one serious about pain should probably experience gentoo at least once...
21:59:40Watusimotothis box only drew 7W at idle so it wasn;t really that bad
21:59:55Watusimotoor maybe it was 13W... either way...
22:00:54raptorstill compiling... i'm on CoreGame.cpp now
22:01:10raptortakes like 1 min. per class
22:01:27raptorthose boost headers are killing it...
22:01:51Watusimotonow you have some empathy for sam
22:02:06Watusimotosooooo
22:02:06raptoryes... do we still want boost?
22:02:21Watusimotowe kind of need it here and there
22:02:25raptorok
22:02:33Watusimotosooo drawarcs has another problem
22:02:34raptorsoooo...?
22:02:37raptoroh
22:02:42raptorgridsize?
22:03:08Watusimotothat's solved. it uses the old school addLevelLine... forget it, I'll just add themethod
22:03:16Watusimotothis is solvable, I think
22:03:19Watusimotoforget it
22:03:28WatusimotoI thought it was a big deal, but it isn't
22:04:01raptorjust like my race condition earlier!
22:40:28Watusimotoall fixed
22:40:37Watusimotodraw_arcs runs well here now
22:40:46raptorcan't wait to test
22:46:45raptorsqlite.c is taking for-ev-er
22:50:33raptorhmmm...
22:51:17raptorso the two main ARM architectures (it seems) are armv5tel and armv7hl
22:52:08raptorthe first has a software floating point unit
22:52:50raptorwhich i bet hurts speed dramatically - especially for something like bitfighter
22:54:54Watusimotoyup
22:55:35Watusimotowe could go to fixed point for faster computations, but not sure if there is a way to drop them in in place of F32
22:55:42raptormy server's up!
22:55:46Watusimotogreat
22:55:50raptorlet's test...
22:58:02raptorwell, it can handle a bot just fine...
22:59:07Watusimotogood
22:59:15Watusimotoquck design question
22:59:28Watusimotoshould we require scripts that want access to the geom library to do this:
22:59:29Watusimotorequire("geometry")
22:59:37raptorheh
22:59:39Watusimotoor just always make the functions available?
23:00:04raptorfrom what i've seen - it seems that everything always available is what games usually do
23:00:22Watusimotoit's easy enough to do...
23:00:36Watusimotowe just require it in lua_helper...
23:00:43Watusimotothen it's available
23:01:38raptoroh wait, is that an external library that we didn't write?
23:01:53Watusimotoa player wrote it
23:02:00Watusimotoour first bot author, actually
23:02:03Watusimotoand I rewrote it
23:03:03raptori'd say include it
23:04:46Watusimotothat's probably fine
23:12:02Watusimoto /next works nicely!
23:13:28BFLogBot Commit: edb1d6cd6aa4 | Author: watusimoto | Message: Fix documentation
23:13:29BFLogBot Commit: 6a1b5a5eba8b | Author: watusimoto | Message: Remove _GRID_SIZE global from levelgens (not used anywhere)
23:13:31BFLogBot Commit: 2b9838a9863e | Author: watusimoto | Message: Credits
23:13:32BFLogBot Commit: 8c8f1f94c239 | Author: watusimoto | Message: Better error message
23:13:34BFLogBot Commit: a3e6cbb3f7d5 | Author: watusimoto | Message: Fix draw_arcs plugin, plugins now have access to existing objects in the editor; can grab a list of all objects, or just the selected ones
23:13:35BFLogBot Commit: bdda9c92918e | Author: watusimoto | Message: dynamic->static cast
23:14:12Watusimotook, I'm checking out for the evening....
23:14:15Watusimotolatersville
23:14:18raptorgood night
23:21:47raptor Quit ()
23:33:30sam686 has joined
23:33:30ChanServ sets mode +v sam686
23:47:17Watusimoto_ has joined
23:50:06raptor has joined
23:50:06ChanServ sets mode +o raptor
23:50:21Watusimoto Quit (Ping timeout: 260 seconds)
23:55:57raptorhi again

Index Search ←Prev date Next date→

These logs were automatically created by BFLogBot on irc.freenode.net.