Timestamps are in GMT/BST.
| 00:05:54 | YoshiSmb_m | PS: MESA + funny thing = it's a table... |
| 00:06:35 | fordcars | Haha totally |
| 00:06:44 | fordcars | It's name proably comes from that |
| 00:06:53 | YoshiSmb_m | yea |
| 00:08:21 | YoshiSmb_m | just use a spanish traductor to traduct "Table", and you get "Mesa" |
| 00:08:43 | YoshiSmb_m | 100% Legit |
| 00:08:55 | YoshiSmb_m | 100% FPS |
| 00:09:04 | YoshiSmb_m | 100% Secure |
| 00:09:21 | YoshiSmb_m | the most saffest table in the PC |
| 00:09:36 | YoshiSmb_m | *safest? |
| 00:10:32 | YoshiSmb_m | You wont get disaproved! |
| 00:11:33 | YoshiSmb_m | strange fact about me is... |
| 00:12:44 | YoshiSmb_m | ... that i dont remember the strange fact... (WHY BRAIN, WHY!!!) |
| 00:13:56 | YoshiSmb_m | well! |
| 00:14:06 | YoshiSmb_m | good night guys! |
| 00:14:08 | | YoshiSmb_m has left #bitfighter |
| 00:16:45 | fordcars | Wow |
| 00:16:47 | fordcars | Ok |
| 00:21:41 | amgine123 | goodnight |
| 00:25:48 | | no_mu Quit (Ping timeout: 246 seconds) |
| 00:25:48 | | amgine123 Quit (Ping timeout: 246 seconds) |
| 00:36:01 | | no_mu has joined |
| 00:36:12 | no_mu | What'd I miss? o.o |
| 00:36:33 | fordcars | I donèt know haha |
| 00:38:28 | no_mu | Oh wit |
| 00:38:29 | no_mu | *wait |
| 00:38:32 | no_mu | there's a chatlog! |
| 00:38:46 | fordcars | Hahahaha of course! |
| 00:39:04 | no_mu | Ah I didn't miss anything :D |
| 00:39:16 | no_mu | What'd you say "Wow" for fordcars ? |
| 00:39:57 | fordcars | Because I just came back to IRC and saw that hehe |
| 00:40:16 | no_mu | lol |
| 01:05:28 | | sam686 has joined |
| 01:05:28 | | ChanServ sets mode +v |
| 01:15:25 | fordcars | Night! |
| 01:15:28 | | fordcars Quit (Quit: Page closed) |
| 01:28:34 | | no_mu Quit (Quit: Page closed) |
| 02:03:05 | | Flynnn has joined |
| 03:02:40 | | sam686 Quit (Read error: Connection reset by peer) |
| 03:15:23 | | sam686 has joined |
| 03:15:24 | | ChanServ sets mode +v |
| 03:17:44 | | Akien has joined |
| 04:49:52 | | Flynnn Quit (Quit: This computer has gone to sleep) |
| 04:50:31 | | Flynnn has joined |
| 04:56:08 | | Watusimoto has joined |
| 05:22:28 | | Watusimoto Quit (Ping timeout: 264 seconds) |
| 05:30:28 | | Watusimoto has joined |
| 06:20:35 | | Akien Quit (Remote host closed the connection) |
| 06:58:22 | | Flynnn Quit (Quit: This computer has gone to sleep) |
| 07:06:11 | | destroyerimo has joined |
| 08:06:50 | | sam686 Quit (*.net *.split) |
| 08:06:55 | | ChanServ Quit (*.net *.split) |
| 08:06:55 | | destroyerimo Quit (*.net *.split) |
| 08:06:55 | | Watusimoto Quit (*.net *.split) |
| 08:07:30 | | destroyerimo has joined |
| 08:07:30 | | Watusimoto has joined |
| 08:07:30 | | sam686 has joined |
| 08:07:30 | | ChanServ has joined |
| 08:07:30 | | barjavel.freenode.net sets mode +vo |
| 08:42:04 | | sam686 has left #bitfighter |
| 08:49:45 | | YoshiSmb_m has joined |
| 09:49:51 | | Watusimoto Quit (Ping timeout: 240 seconds) |
| 10:39:16 | | raptor has joined |
| 10:39:26 | | ChanServ sets mode +o |
| 10:59:40 | | destroyerimo_clo has joined |
| 11:02:21 | | destroyerimo Quit (Ping timeout: 240 seconds) |
| 11:26:40 | | no_mu has joined |
| 12:21:16 | | destroyerimo_clo Quit (Ping timeout: 240 seconds) |
| 13:04:52 | | YoshiSmb_m Quit (Ping timeout: 240 seconds) |
| 14:28:55 | | destroyerimo has joined |
| 15:22:56 | | sam686 has joined |
| 15:22:56 | | ChanServ sets mode +v |
| 15:43:40 | raptor | oh hi sam686 |
| 15:44:14 | raptor | if you were to do a fresh recompile, do you get a segfault on start-up?: http://pastie.org/pastes/9379350/text |
| 15:44:28 | raptor | i think it is some sort of static-initialization-order problem, but I'm not sure |
| 16:32:05 | | fordcars has joined |
| 16:33:26 | | raptor Quit (Ping timeout: 240 seconds) |
| 16:44:59 | | sam686 has left #bitfighter |
| 16:50:05 | | Flynnn has joined |
| 16:51:40 | | Flynnn Quit (Remote host closed the connection) |
| 16:52:48 | | Flynnn has joined |
| 16:56:30 | | raptor has joined |
| 16:56:30 | | ChanServ sets mode +o |
| 17:00:33 | | YoshiSmb_m has joined |
| 17:06:04 | | YoshiSmb_m Quit (Remote host closed the connection) |
| 17:06:30 | | YoshiSmb_m has joined |
| 17:17:44 | | Watusimoto has joined |
| 17:48:16 | | fordcars Quit (Quit: Page closed) |
| 17:52:04 | raptor | hello Watusimoto |
| 17:55:10 | raptor | I wanted to verify your new GameSettings architecture |
| 17:55:40 | raptor | are we going to reference a gSettings everywhere? or are we still going to do a GameSettings:: namespace with static methods? |
| 17:56:04 | raptor | I ask because I'm still getting a segfault in Linux: http://pastie.org/pastes/9379350/text |
| 17:56:26 | raptor | and I think it is a static-initialization-order problem and so i wish to play with the settings object some |
| 18:01:23 | | LordDVG has joined |
| 18:25:22 | Watusimoto | hi |
| 18:26:06 | Watusimoto | to answer your question, I was thinking of doing gSettings everywhere... but I am open to other ideas |
| 18:26:24 | Watusimoto | the only idea I've mostly decided against is a singleton with a factory and all that |
| 18:26:50 | Watusimoto | if we could do things with all static methods, that would probably be ok too |
| 18:32:35 | | fordcars has joined |
| 18:35:46 | no_mu | Anybody know how to Python? |
| 18:37:20 | fordcars | What's up? I know the basics of python (but raptor knows a whole lot more ( I heard he was doing quite a lot of python lately)) |
| 18:39:16 | Watusimoto | hi |
| 18:39:18 | no_mu | fordcars: Well did you finish the codecademy Python course? |
| 18:39:23 | Watusimoto | I know how to Python somewhat |
| 18:39:50 | fordcars | I never tried it, but I did write a few Python scripts for RPi for getting the weather and Bitfighter status etc |
| 18:40:18 | fordcars | If you know how to Pyton, you *kindof* know how to write in any other languages (wel, the basics) |
| 18:40:34 | fordcars | Since all languages are the same in the basics |
| 18:40:49 | Watusimoto | the concepts are generally the same, yes |
| 18:41:01 | Watusimoto | a loop is a loop, and almost every language has it, for example |
| 18:41:10 | no_mu | I'm trying to figure out how this def shut_down(s) thing works |
| 18:41:15 | fordcars | Of |
| 18:41:17 | fordcars | Oh |
| 18:41:22 | fordcars | It's a function |
| 18:41:26 | no_mu | http://www.codecademy.com/forum_questions/5387cea09c4e9d976d0015c8 |
| 18:41:43 | fordcars | It's needs indetation? |
| 18:41:47 | fordcars | *indentation |
| 18:41:57 | | YoshiSmb_m Quit (Remote host closed the connection) |
| 18:42:02 | no_mu | It already has that |
| 18:42:05 | fordcars | Okokok |
| 18:42:08 | Watusimoto | two problems with that function |
| 18:42:11 | Watusimoto | indentation is wrong |
| 18:42:14 | fordcars | Oh wait |
| 18:42:25 | Watusimoto | and the initial return s will cause the rest to not run |
| 18:42:33 | Watusimoto | it never gets to the logic |
| 18:43:07 | fordcars | You have to write if shutdown(something)==something |
| 18:43:12 | fordcars | do something else |
| 18:43:35 | fordcars | Or in another way if you want it to be useful |
| 18:45:58 | fordcars | http://pastie.org/9382382 |
| 18:46:10 | fordcars | It's just for an example |
| 18:46:34 | | no_mu is now known as Nothing_Much |
| 18:46:46 | fordcars | Wait, can you pastie your code with indentation? |
| 18:46:47 | | Nothing_Much Quit (Changing host) |
| 18:46:47 | | Nothing_Much has joined |
| 18:46:47 | | Nothing_Much Quit (Changing host) |
| 18:46:47 | | Nothing_Much has joined |
| 18:47:00 | fordcars | Wait, can you pastie your code with indentation? |
| 18:47:11 | fordcars | Sorry |
| 18:47:47 | fordcars | For sending that twice |
| 18:53:41 | fordcars | Ohh waitup |
| 18:55:08 | fordcars | I got to go, but http://pastie.org/9382413 should work |
| 19:09:35 | raptor | hello |
| 19:10:36 | Nothing_Much | codecademy is giving me such a headache |
| 19:11:42 | raptor | Watusimoto: ok, if gSettings, then I need to adjust a few things so I can get further in my diagnosis |
| 19:13:10 | Watusimoto | do you have a different preference? I actually don't like the gxxx thing because I've worked so hard to get rid fo them |
| 19:13:27 | | LordDVG Quit (Remote host closed the connection) |
| 19:13:43 | raptor | something in here or here?: https://stackoverflow.com/questions/1463707/c-singleton-vs-global-static-object |
| 19:13:49 | raptor | https://stackoverflow.com/questions/11999124/a-global-static-class-to-contain-data |
| 19:15:58 | raptor | it could be namespaced |
| 19:16:11 | raptor | or put into a 'Globals' class |
| 19:18:13 | raptor | I' not entirely sure I understand what you mean by 'factory' |
| 19:26:48 | raptor | oh, the: if null then new object construct |
| 19:27:23 | raptor | looks like Brazil lost again... |
| 19:30:50 | raptor | hmm... the idea of doing a Globals class with a static member and a reference getter method sounds good... |
| 19:30:59 | raptor | it would solve initialization order problems |
| 19:31:17 | raptor | maybe we call it class 'G' |
| 19:31:23 | raptor | for simplicity |
| 19:31:43 | raptor | but i'll wait for you to check in whatever you have before I start tinkering |
| 19:37:41 | | Nothing_Much Quit (Ping timeout: 246 seconds) |
| 19:57:16 | Watusimoto | one advantage of gSettings is that it can easily be reset in the tests |
| 19:57:46 | Watusimoto | I've read that first link probably a dozen times over the years :-)\ |
| 20:02:34 | | BFLogBot Commit: aa3aa11fb1 | Author: watusimoto |
| 20:02:36 | | BFLogBot Commit: 0d1dd6b6f7 | Author: watusimoto |
| 20:02:37 | | BFLogBot Commit: cd231e2e03 | Author: watusimoto |
| 20:02:39 | | BFLogBot Commit: 096a3cf2ac | Author: watusimoto |
| 20:02:40 | | BFLogBot Commit: b78b44aff8 | Author: watusimoto |
| 20:03:18 | raptor | gSettigns it is then! |
| 20:05:12 | Watusimoto | yes, it seems the least bad |
| 20:05:37 | Watusimoto | unless it causes static initialization order errors |
| 20:05:41 | raptor | c++: the code that strives for the least bad! |
| 20:05:50 | Watusimoto | yes, exactly! |
| 20:06:16 | Watusimoto | I love c++ the way I love my alcoholic uncle |
| 20:06:30 | Watusimoto | you just have to accept it for what it is |
| 20:07:00 | raptor | ha |
| 20:07:44 | raptor | if you're done for the night... I'll start tinkering with my issue |
| 20:08:34 | Watusimoto | mostly yes |
| 20:09:02 | raptor | part of it, i think has something to do with the FolderManager object on the GameSettings object |
| 20:09:02 | Watusimoto | I'm working on a team manager crash in the editor, but I don't know how far I'll get and it will have no bearing on anything you are doing |
| 20:09:08 | raptor | ok |
| 20:09:22 | raptor | do we need to make FolderManager static anymore on GameSettings? |
| 20:09:32 | Watusimoto | mostly removing references to game, which now make the editor furious |
| 20:09:53 | Watusimoto | probably not; I don't know |
| 20:10:03 | Watusimoto | do whatever works and seems best |
| 20:10:16 | raptor | carte blanche! |
| 20:10:22 | raptor | .. if i spelled that right |
| 20:10:44 | Watusimoto | you did |
| 20:11:13 | raptor | for that matter... should any member of GameSettings be static? |
| 20:11:27 | Watusimoto | I suppose not... |
| 20:15:02 | | BFLogBot Commit: 0e1ad465cd | Author: buckyballreaction | Message: Move gSettings into a compilation unit that makes sense. Also make the FolderManager member non-static |
| 20:15:05 | raptor | This commit doesn't fix anything, but cleans up a little bit.. |
| 20:20:04 | Watusimoto | ok, good night! |
| 20:34:17 | raptor | night! |
| 20:34:18 | | kaen has joined |
| 20:37:06 | | BFLogBot Commit: 76ed038eb0 | Author: kaen | Message: missing semicolon |
| 20:38:04 | raptor | kaen: you committed! |
| 20:38:18 | kaen | my new rig almost freezes at -j8 because I need more ram |
| 20:38:20 | kaen | but at -j7 |
| 20:38:28 | kaen | it's what I imagine riding a harley is like |
| 20:38:36 | raptor | how fast does it do the compilation? |
| 20:38:47 | kaen | 73 seconds when I last timed it |
| 20:39:54 | raptor | great! |
| 20:40:46 | kaen | I was sure 8GB was more than I could even use |
| 20:40:50 | kaen | now I need a second stick lol |
| 20:40:59 | raptor | haha |
| 20:41:27 | kaen | but it goes from power-on to fully-loaded desktop in about 10 seconds |
| 20:41:41 | kaen | including grub and POST delays |
| 20:42:10 | kaen | I think most of that is because it's booting from an SSD |
| 20:42:30 | kaen | but the best part |
| 20:42:41 | kaen | is that blending works in bitfighter! |
| 20:44:05 | raptor | less pixely! |
| 20:44:54 | raptor | does the game feel quite different? |
| 20:47:46 | kaen | yes, makes it look much more polished |
| 20:50:08 | raptor | ok, before I start using the gSettings object everywhere, please convince me not to |
| 20:51:18 | | Watusimoto Quit (Ping timeout: 264 seconds) |
| 20:57:38 | raptor | this is watusimoto's reason for starting the gSettings object: http://bitfighter.org/irclogs/index.php?date=2014-07-07#l53 |
| 20:59:02 | kaen | I was trying to think of an argument against it |
| 20:59:10 | kaen | and I came up with the same conclusion |
| 20:59:15 | raptor | i think we all agree that it's ugly |
| 20:59:47 | raptor | but the more I read about 'static' the more I think we're adding bugs when we use it... |
| 20:59:55 | kaen | the two problems I know of are testing and the implicit coupling that a shared global reference causes |
| 20:59:59 | kaen | potentially |
| 21:00:12 | kaen | especially if things are modifying it when other things expect it not to be modified |
| 21:00:25 | raptor | ah, so thread-safety, you mean |
| 21:00:26 | kaen | but, I haven't seen evidence of that particular problem before |
| 21:00:36 | kaen | or just execution control safety |
| 21:01:14 | kaen | if A is using the settings, then invokes something in B during that process which modifies them, you have to code A to accommodate that, or you'll get a bug |
| 21:01:44 | kaen | but, if he's got the testing problem sorted, then I guess it's a sin for the greater good |
| 21:01:49 | raptor | ah i see |
| 21:02:29 | kaen | but we only have one instance anyway, so the fact that there's an easy to reach global ref doesn't hurt anything |
| 21:03:58 | kaen | but the tests don't compile... |
| 21:04:02 | kaen | let's have a look |
| 21:04:22 | raptor | SIOF |
| 21:04:28 | raptor | static initialization order fiasco |
| 21:04:39 | raptor | is my current problem - everything compiles... but segfaults |
| 21:05:36 | kaen | everything compiles for you? |
| 21:05:46 | kaen | before my last commit? |
| 21:05:58 | raptor | yes... which makes me curious |
| 21:06:02 | raptor | because it shouldn't have |
| 21:06:11 | raptor | to the make clean! |
| 21:07:06 | raptor | oh, I'm using the cmake option: -DMASTER_MINIMAL=1 |
| 21:07:11 | kaen | oh |
| 21:07:14 | raptor | which probably helps... |
| 21:07:19 | kaen | I'm not familiar :x |
| 21:07:29 | raptor | yeah, i've redone much in the cmake system |
| 21:07:34 | raptor | you need cmake 2.8.8 now |
| 21:07:41 | kaen | cool! |
| 21:07:49 | raptor | and there are nice libraries compiled and shared and everything now |
| 21:07:50 | kaen | did you kill libmaster? |
| 21:08:00 | raptor | I made it work instead :) |
| 21:08:03 | kaen | oh that's right |
| 21:08:15 | kaen | I couldn't remember if it was my idea or yours lol |
| 21:08:17 | kaen | been a while |
| 21:08:18 | raptor | ok, tests fail to compile |
| 21:08:32 | raptor | I think it was your idea, but I found a solution with cmake 2.8.8 |
| 21:09:19 | raptor | ok tests are beyond broke |
| 21:13:19 | raptor | what on earth |
| 21:13:28 | raptor | we're in this quasi GameSettings state |
| 22:14:10 | raptor | yay the game starts up! |
| 22:14:16 | | BFLogBot Commit: ad7838294c | Author: buckyballreaction | Message: Fix static initialization order fiasco problem with gSettings -> FolderManager -> gSqlite |
| 22:14:17 | raptor | but now i think it overwrote all my settings! |
| 22:14:45 | raptor | it did it again! |
| 22:26:45 | raptor | kaen: what about using something like this for a global object?: https://stackoverflow.com/a/1008289 |
| 22:31:53 | fordcars | Hello |
| 22:34:38 | raptor | hi |
| 22:42:29 | kaen | I think I've proposed singletons before, I'm a big fan myself |
| 22:42:43 | raptor | does that solution look ok to you? |
| 22:43:02 | kaen | those are mostly meant to solve static initialization order problems |
| 22:43:21 | kaen | the difference between a global variable and a static class variable is mostly the name :P |
| 22:43:42 | raptor | ha |
| 22:43:55 | kaen | they're usually considered to be bad for testing, like globals |
| 22:44:28 | raptor | well our testing is currently borke |
| 22:44:31 | raptor | *broke |
| 22:44:35 | kaen | indeed |
| 22:44:58 | kaen | so, for now |
| 22:45:01 | raptor | but before I go further and clean up the GameSettings object, i want to make sure I have instantiated it well |
| 22:45:15 | kaen | I think there's nothing wrong in using gSettings |
| 22:45:16 | kaen | oh |
| 22:45:19 | kaen | ok, in that case |
| 22:45:23 | kaen | totally use a singleton |
| 22:45:25 | raptor | right now in GameSettings.cpp it is just: GameSettings gSettings; |
| 22:45:36 | raptor | and in the .h: extern GameSettings gSettings; |
| 22:45:42 | kaen | right, that works. unless we mess with it during static init? |
| 22:45:48 | kaen | (do we?) |
| 22:45:52 | raptor | yes we do |
| 22:45:54 | kaen | ok |
| 22:45:57 | raptor | that was my last commit |
| 22:46:00 | raptor | to fix some of that |
| 22:46:01 | kaen | then I stand corrected |
| 22:46:03 | kaen | ok |
| 22:46:13 | kaen | yes, that's exactly what a singleton's for |
| 22:46:50 | raptor | so I could change the caller of gSettings to be GameSettings::get() or something liek that with this singleton pattern i referenced in that last link |
| 22:52:06 | | YoshiSmb_m has joined |
| 22:54:28 | | YoshiSmb_m has left #bitfighter |
| 22:57:02 | raptor | maybe we should just create a class called 'Bitfighter' in main() and do Bitfighter->run(); |
| 22:57:10 | raptor | then put GameSettings on that... |
| 23:00:58 | kaen | I think that's a genius idea |
| 23:01:15 | raptor | wait what, really? |
| 23:02:11 | kaen | oh, I don't know about putting the class in main |
| 23:02:19 | kaen | but having a bitfighter class makes sense |
| 23:02:55 | kaen | I guess that's what Game tries to be |
| 23:03:16 | kaen | the things that are the same between server and client |
| 23:03:35 | raptor | but now watusimoto is extracting ClientGame from the editor |
| 23:05:25 | kaen | I think he's also doing some work involving (client) game vs. gametype |
| 23:05:50 | kaen | so I guess his work might cover our "bitfighter" class |
| 23:06:40 | kaen | GameSettings::get() is perfect |
| 23:06:45 | kaen | I didn't read that |
| 23:07:10 | raptor | then I wouldn't need the extern and run into initialization order problems |
| 23:08:18 | kaen | I think we should go a step further and do that for any other globals we happen upon |
| 23:08:34 | raptor | yes I agree |
| 23:08:37 | kaen | because that's totally something we can override in a test |
| 23:08:43 | kaen | or inject |
| 23:09:44 | raptor | oh actually - I'm not sure I can see how a singleton woudl work in tests |
| 23:09:53 | raptor | which is probably why nothing works right now.. |
| 23:10:29 | raptor | since we have several tests that want to set up certain settings |
| 23:10:40 | raptor | maybe it doesn't matter - they'll override it anyways |
| 23:13:34 | raptor | all this research is now making me think a singleton isn't necessary and that maybe watusimoto was being lazy while sleepy... |
| 23:15:35 | fordcars | Gahh I keep getting an unresolved external |
| 23:15:44 | raptor | make clean! |
| 23:16:01 | fordcars | I added an external at first, everything was fine, I add another one, and it blows uh |
| 23:16:04 | fordcars | Oh lol really? |
| 23:16:23 | raptor | if you're compiling the latest bitfighter code, you should do a make clean |
| 23:16:29 | raptor | also don't expect things to work right |
| 23:16:39 | raptor | like uh... any settings |
| 23:16:46 | raptor | or directories |
| 23:16:50 | raptor | everything is broke |
| 23:17:04 | fordcars | Ok thanks :) |
| 23:18:59 | raptor | argh, yeah... the gSettings is bad for tests |
| 23:19:04 | raptor | argh argh argh |
| 23:31:04 | kaen | you can just add a static setInstance method for tests |
| 23:44:23 | | Flynnn Quit (Quit: This computer has gone to sleep) |
| 23:45:42 | raptor | back later |
| 23:45:46 | | raptor Quit () |
| 23:46:41 | | Flynnn has joined |