Log from 2008-03-07:
--- Day changed Fri Mar 07 2008
00:00 <pippijn> torres: -c namespace m { void foo();} namespace ns {struct foo{friend void m::foo() {}};}
00:00 <torres> return type specification for constructor invalid
00:00 <pippijn> torres: -c namespace m { void foo();} namespace ns {struct foo{friend void ::m::foo() {}};}
00:00 <torres> return type specification for constructor invalid
00:00 <pippijn> interesting
00:00 <pippijn> :-)
00:00 <pippijn> oh
00:00 <pippijn> well :-D
00:00 <pippijn> torres: -c namespace m { void foo();} namespace ns {struct foo{friend void ::m::foo();};}
00:00 <torres> return type specification for constructor invalid
00:00 <pippijn> uh oh
00:01 <pippijn> torres: -c void foo () { } namespace ns { struct foo { friend void ::foo (); }; }
00:01 <torres> return type specification for constructor invalid
00:01 <pippijn> hm
00:01 <pippijn> that sucks
00:01 <wrtlprnft> torres: -c /* whatever -c does */ namespace ns { void foo(); } struct foo { friend void ns::foo() {}};
00:01 <torres> return type specification for constructor invalid
00:02 <pippijn> -c is like gcc's -c
00:02 <pippijn> compile only
00:02 <wrtlprnft> ah
00:02 <pippijn> you are doing it wrong.. but it doesn't matter
00:02 <pippijn> you defined foo inside the class
00:02 <pippijn> but declared it outside
00:02 <wrtlprnft> that's impossible?
00:03 <pippijn> I don't think it is possible
00:03 <wrtlprnft> * is that
00:03 <pippijn> but I'm not positively sure
00:03 -!- rico [n=x-javach@user-54412611.l6.c4.dsl.pol.co.uk] has quit ["webirc@xclan.armagetron.co.uk"]
00:03 <pippijn> hm
00:03 <pippijn> no I think it's fine
00:03 <pippijn> friend makes it external
00:03 <pippijn> so it should be fine
00:04 <pippijn> but the constructor thing is strange
00:04 <pippijn> I am too tired to think about that now
00:04 <wrtlprnft> maybe it's a bug in gcc
00:04 <pippijn> torres: { int ia[] = { 1, 2, 3, 4, 3, 2, 1 }; cout << ia; }
00:04 <torres> [1, 2, 3, 4, 3, 2, 1]
00:04 <pippijn> :-)
00:05 <pippijn> wrtlprnft: possibly a parse error..
00:05 <wrtlprnft> templated for arrays of size N?
00:05 <pippijn> yes
00:05 <pippijn> for vectors, too
00:06 <pippijn> and lists
00:06 <wrtlprnft> deques? :O
00:06 <pippijn> and set
00:06 <pippijn> and deque
00:07 <pippijn> and whatnot
00:07 <pippijn> :p
00:07 -!- z-man [n=manuel@p5087182B.dip0.t-ipconnect.de] has joined #armagetron
00:07 -!- Ttech [n=ttech@fullcirclemagazine/developer/ttech] has joined #armagetron
00:08 -!- madmax [n=madmax@unaffiliated/madmax] has joined #armagetron
00:08 <wrtlprnft> torres: << (int[]){1,2,3,42}
00:08 <torres> ISO C++ forbids compound-literals
00:08 <epsy> FFFF!
00:08 <wrtlprnft> aww
00:08 <pippijn> anything that can be iterated over, basically
00:08 <epsy> gn
00:08 <wrtlprnft> 'night
00:08 <epsy> #night
00:08 <armabot> Good night epsy!
00:08 <pippijn> stack, queue, priority_queue, valarray, T[N], ...
00:08 <pippijn> good night
00:09 <wrtlprnft> pippijn: but there's no way to write a template that just accepts everything that can be iterated :-(
00:09 <pippijn> well
00:09 <pippijn> http://pip.one09.net/files/txt/796df35d39ed74d72112ee3abcdf5553.txt <- very dangerous
00:11 <wrtlprnft> i don't know enough boost for that
00:11 <pippijn> it's simple
00:11 <pippijn> it can iterate over anything that can be iterated over in a standard way
00:11 <pippijn> i.e. it defines iterators or is an array
00:12 <pippijn> print_range isn't everything
00:12 <wrtlprnft> ah
00:12 <wrtlprnft> but some_ostream << <any type> is a bit generic
00:12 <pippijn> exactly
00:13 <pippijn> wrtlprnft: http://pip.one09.net/files/txt/a2827378e96a7d2f19231c92bd64ccc2.txt
00:14 <pippijn> wrtlprnft: this requires that R has ::iterator defined
00:14 * luke-jr peers at 'freak'
00:15 <pippijn> and then I write one for T const (&array)[N]
00:15 <wrtlprnft> doesn't that have the same problem?
00:15 <pippijn> no
00:15 <wrtlprnft> it's still an operator << for an ostream and an R const &
00:15 -!- hoop_tron [n=john@ip-195-196.sn2.eutelia.it] has quit [Read error: 113 (No route to host)]
00:15 <pippijn> yes
00:15 <wrtlprnft> that returns something weird
00:15 <pippijn> but it requires you to have R::iterator
00:16 <pippijn> otherwise the compiler won't pick that function
00:16 <pippijn> print_range is very generic
00:16 <wrtlprnft> because it tries to return something with a type containg R::iterator?
00:16 <pippijn> operator << limits the possibilities
00:16 <pippijn> yes
00:16 <wrtlprnft> will that stop the compiler from using it?
00:16 <pippijn> yes
00:16 <wrtlprnft> i thought it'd still try and throw errors
00:17 <wrtlprnft> but you know these corner cases better than me.
00:17 <pippijn> it won't try
00:17 <wrtlprnft> nice <ignore first argument, return second> template
00:17 <pippijn> torres: struct A { }; int main () { cout << A (); }
00:17 <torres> no match for 'operator<<' in 'cout << A()'
00:17 <pippijn> torres: << 1 == 1
00:17 <torres> no match for 'operator==' in 'cout.ostream::operator<<(1) == 1'
00:17 <pippijn> ah well
00:18 <pippijn> the first one is a good example
00:18 <pippijn> A would be used by print_range and it would error out
00:18 <pippijn> but the operator << protects it
00:18 <wrtlprnft> nice
00:19 <wrtlprnft> if you nest detail::snd or make a new one with more ignored args you can add more restraints :-)
00:19 <pippijn> yes
00:19 <pippijn> but it's not necessary
00:19 <pippijn> as long as you can iterate over something, it's fine
00:20 <pippijn> the restriction R::iterator is actually too strict
00:20 <pippijn> R::const_iterator suffices
00:20 <wrtlprnft> yeah, for that case :-)
00:20 <pippijn> boost::range_const_iterator<> picks R::const_iterator for everything non-POD
00:21 * wrtlprnft is thinking about something that checks if some member function of a template arg has the right prototype
00:21 <pippijn> it picks T* for POD types
00:21 <pippijn> wrtlprnft: erroring out if not?
00:21 <wrtlprnft> nah, not picking it if not
00:22 <pippijn> hm
00:22 <pippijn> member functions are heavy crack
00:22 <wrtlprnft> template<int (&T_Ignore)(int), typename T> struct snd {typedef T type;};
00:22 <pippijn> for example, it's not possible to get the class name out of a member function
00:22 <wrtlprnft> shouldn't that work?
00:23 <wrtlprnft> for static members at least
00:23 <pippijn> statics are better
00:23 <wrtlprnft> or will that error out if the function in question is there but doesn't have the right prototype?
00:24 <wrtlprnft> (using the same trick you used in your code)
00:24 <pippijn> the problem is that you need to define the member function's class in the template
00:24 <wrtlprnft> one more template arg?
00:25 <pippijn> torres: struct A { int foo () { } void moo () { } }; template<int (A::*)(), typename T> struct snd { typedef T type; }; void typename snd<A::foo, int>::type main () { }
00:25 <torres> no return statement in function returning non-void
00:25 <pippijn> torres: struct A { int foo () { return 0; } void moo () { } }; template<int (A::*)(), typename T> struct snd { typedef T type; }; void typename snd<A::foo, int>::type main () { }
00:25 <torres> using 'typename' outside of template
00:25 <pippijn> ah
00:25 <pippijn> torres: struct A { int foo () { return 0; } void moo () { } }; template<int (A::*)(), typename T> struct snd { typedef T type; }; void snd<A::foo, int>::type main () { }
00:25 <torres> could not convert template argument 'A::foo' to 'int (A::*)()'
00:26 <pippijn> torres: struct A { int foo () { return 0; } void moo () { } }; template<int (A::*)(), typename T> struct snd { typedef T type; }; void snd<&A::foo, int>::type main () { }
00:26 <torres> too few template-parameter-lists
00:26 <wrtlprnft> wan. those are errors i've never heard of
00:27 <pippijn> oops
00:27 <pippijn> torres: struct A { int foo () { return 0; } void moo () { } }; template<int (A::*)(), typename T> struct snd { typedef T type; }; snd<&A::foo, int>::type main () { }
00:27 <torres> Compilation and execution successful, no program output.
00:27 <pippijn> torres: struct A { int foo () { return 0; } void moo () { } }; template<int (A::*)(), typename T> struct snd { typedef T type; }; snd<&A::moo, int>::type main () { }
00:27 <torres> could not convert template argument '&A::moo' to 'int (A::*)()'
00:27 <pippijn> hm
00:27 <pippijn> okay
00:27 <pippijn> let's see
00:27 <pippijn> I think it would be possible
00:28 <pippijn> but I don't see how you would use that
00:28 <pippijn> wrtlprnft: what would you use it for?
00:28 <wrtlprnft> dunno yet
00:28 <wrtlprnft> maybe for begin() and end() :P
00:28 <wrtlprnft> if i don't want to use boost
00:29 <wrtlprnft> does boost just have a list of known containers internally?
00:29 <pippijn> for what?
00:29 <pippijn> boost::range_const_iterator<>?
00:29 <wrtlprnft> foryeag
00:29 <wrtlprnft> *yeag
00:29 <wrtlprnft> *yeah
00:30 <pippijn> 00:22 < pippijn> boost::range_const_iterator<> picks R::const_iterator for everything non-POD
00:30 <pippijn> so for struct A, too
00:30 <wrtlprnft> ah
00:30 <pippijn> torres: struct A { }; int main () { typename boost::range_const_iterator<A>::type b; }
00:30 <torres> using 'typename' outside of template
00:30 <wrtlprnft> there might still be some use :-)
00:30 <pippijn> ah
00:30 <pippijn> torres: struct A { }; int main () { boost::range_const_iterator<A>::type b; }
00:30 <torres> no type named 'const_iterator' in 'struct A'
00:31 -!- epsy [n=epsy@mar75-4-82-227-65-72.fbx.proxad.net] has quit []
00:31 -!- torres [n=torres@unixcorps/staff/pippijn] has quit [Remote closed the connection]
00:36 -!- torres [n=torres@pD9E9FE3F.dip.t-dialin.net] has joined #armagetron
00:36 <pippijn> wrtlprnft: now torres knows variadic templates and rvalue references
00:37 <pippijn> torres: << TYPE_DESC (int (*)(int, char, char, char, short, short))
00:37 <torres> pointer to a function taking an integer, 3 characters, 2 short ints, and returning an integer
00:38 <wrtlprnft> o_O
00:39 <pippijn> torres: TYPE_DESC (string &&)
00:39 <torres> expected constructor, destructor, or type conversion at end of input
00:39 <pippijn> torres: << TYPE_DESC (string &&)
00:39 <torres> rvalue reference to a string
00:39 <wrtlprnft> torres: << TYPE_DESC((int (*)(int))(*)(int (*)(int)))
00:39 <torres> `*' cannot appear in a constant-expression
00:39 <wrtlprnft> i knew i'd mess this one up
00:40 <wrtlprnft> torres: << TYPE_DESC(int (*)(int) (*)(int (*)(int)))
00:40 <torres> `*' cannot appear in a constant-expression
00:40 <pippijn> torres: template<typename A1, typename... Args> void foo () { cout << TYPE (A1) << " "; foo (Args...); } int main () { foo<int, char, char, int, short, string> (); }
00:40 <torres> expected primary-expression before '...' token
00:40 <wrtlprnft> torres: << TYPE_DESC(int (*)(int (*a)(int)))
00:40 <torres> pointer to a function taking a pointer to a function taking an integer and returning an integer and returning an integer
00:41 <wrtlprnft> torres: << TYPE_DESC(int(*)(int) (*)(int (*a)(int)))
00:41 <torres> `*' cannot appear in a constant-expression
00:41 * wrtlprnft gives up
00:41 <wrtlprnft> if i want to return function pointers i use typedefs...
00:42 <wrtlprnft> torres: { typdef int (*f)(int); cout << TYPE_DESC(f(*)(f)); }
00:42 <torres> 'typdef' was not declared in this scope
00:42 <wrtlprnft> torres: { typedef int (*f)(int); cout << TYPE_DESC(f(*)(f)); }
00:42 <torres> pointer to a function taking a pointer to a function taking an integer and returning an integer and returning a pointer to a function taking an integer and returning an integer
00:42 <pippijn> torres: template<typename A1, typename... Ts> void foo () { cout << TYPE (A1) << " "; foo<Ts...> (); } int main () { foo<int, char, char, int, short, string> (); }
00:42 <torres> no matching function for call to 'foo()'
00:42 <flex> z-man, you've not given up looking have you? :p
00:42 <pippijn> torres: void foo () { cout << "finished :-)"; } template<typename A1, typename... Ts> void foo () { cout << TYPE (A1) << " "; foo<Ts...> (); } int main () { foo<int, char, char, int, short, string> (); }
00:42 <torres> no matching function for call to 'foo()'
00:42 <pippijn> uhm
00:42 <wrtlprnft> torres: { typedef int (*f)(int); typedef f(*g)(f)); cout << TYPE_DESC(g(*)(g)); }
00:42 <torres> expected initializer before ')' token
00:43 <z-man> Hmm? No, if you've been testing wrtl's lates build, then that did not include the relevant changes :)
00:43 <pippijn> torres: template<typename T> void foo () { cout << TYPE(T) << " finished :-)"; } template<typename A1, typename... Ts> void foo () { cout << TYPE (A1) << " "; foo<Ts...> (); } int main () { foo<int, char, char, int, short, string> (); }
00:43 <torres> call of overloaded 'foo()' is ambiguous
00:43 <pippijn> :-|
00:43 <wrtlprnft> torres: { typedef int (*f)(int); typedef f(*g)(f); cout << TYPE_DESC(g(*)(g)); }
00:43 * flex slaps wrtlprnft around a bit with a large trout
00:43 <torres> pointer to a function taking a pointer to a function taking a pointer to a function taking an integer and returning an integer and returning a pointer to a function taking an integer and returning an integer and returning a pointer to a function taking a pointer to a function taking an integer and r
00:43 * flex slaps wrtlprnft around a bit with a large trout
00:43 <wrtlprnft> flex: i can't provide a better build
00:43 <z-man> I'm just TRYING to merge, but I get internal server errors.
00:43 <wrtlprnft> slap z-man for not merging before i go to inzell until sunday evening
00:44 <pippijn> torres: void foo () { cout << "finished :-)"; } template<typename A1, typename... Ts> void foo (A1, Ts... ts) { cout << TYPE (A1) << " "; foo (ts...); } int main () { foo (int (), int (), char (), string ()); }
00:44 <torres> int int char string finished :-)
00:44 * flex slaps z-man around a bit with a large trout
00:44 <wrtlprnft> so, no build from me until sunday
00:44 <pippijn> not exactly the way I wanted it but it works
00:44 <z-man> /admin kill flex
00:44 <flex> arrrrr me maty
00:44 <wrtlprnft> #night
00:44 <armabot> Good night wrtlprnft!
00:45 <wrtlprnft> pippijn: just out of curiosity, how DO i return a function pointer without using a typedef?
00:45 <z-man> You use the full type?
00:45 <pippijn> :-)
00:45 <wrtlprnft> didn't work :-(
00:45 <z-man> no?
00:45 <pippijn> it does
00:45 * flex hibernates till you guys get it together
00:45 <pippijn> you just messed up the syntax
00:45 <pippijn> torres: -c int (*foo ()) { return 0; }
00:45 <torres> Compilation succeeded.
00:46 <z-man> pippijn: that's easy, because the syntax is messed up :)
00:46 <pippijn> torres: int (*foo ()) { return 0; } int main () { cout << ETYPE_DESC (foo); }
00:46 <torres> nullary function returning a pointer to an integer
00:46 <pippijn> oh wait
00:46 <pippijn> torres: int (*foo ())() { return 0; } int main () { cout << ETYPE_DESC (foo); }
00:46 <torres> nullary function returning a pointer to a nullary function returning an integer
00:46 <pippijn> :-)
00:46 <pippijn> wrtlprnft: like that
00:47 <wrtlprnft> oh, you need to write the function inside the brackets?
00:47 <wrtlprnft> argh
00:47 <pippijn> yes
00:47 <wrtlprnft> torres: << TYPE_DESC(int (* (*)(int))(int))
00:47 <torres> pointer to a function taking an integer and returning a pointer to a function taking an integer and returning an integer
00:47 <wrtlprnft> that's it, i'm really going to bed
00:47 <pippijn> good night
00:48 <wrtlprnft> this function pointer syntax sucks.
00:48 <pippijn> yes, it does
00:50 <z-man> Ah, we need to update our SF passwords.
00:55 -!- madmax [n=madmax@unaffiliated/madmax] has quit ["leaving"]
01:05 <armabot> armagetronad: bazaarmagetron * r8270 /armagetronad/trunk/armagetronad/tank_todo-halffinnished.txt: Removed incomplete sentence :)
01:05 <z-man> Argh, what, that went through?
01:07 <armabot> armagetronad: z-man * r8271 /armagetronad/trunk/armagetronad/ (20 files in 8 dirs): (log message trimmed)
01:07 <armabot> armagetronad: Merging branch 0.2.8 from revision 8230 to 8269:
01:07 <armabot> armagetronad: ------------------------------------------------------------------------
01:07 <armabot> armagetronad: r8269 | bazaarmagetron | 2008-03-06 19:48:38 +0100 (Thu, 06 Mar 2008) | 2 lines
01:07 <armabot> armagetronad: Manuel Moos: added FORTRESS_COLLAPSE_SPEED to control the time between the conquest of a zone and the vanishing (and killing of the team members)
01:07 <armabot> armagetronad: ------------------------------------------------------------------------
01:07 <armabot> armagetronad: r8268 | z-man | 2008-03-06 15:37:25 +0100 (Thu, 06 Mar 2008) | 2 lines
01:11 -!- z-man [n=manuel@p5087182B.dip0.t-ipconnect.de] has quit [Remote closed the connection]
01:27 -!- liberweesco [n=libervis@89-172-46-199.adsl.net.t-com.hr] has joined #armagetron
01:31 -!- liberweesco is now known as libermoosco
01:31 -!- libervisco [n=libervis@tuxhacker/libervisco] has quit [Nick collision from services.]
01:31 -!- libermoosco is now known as libervisco
01:51 -!- baddog144 [n=Liam@d220-238-87-128.dsl.vic.optusnet.com.au] has quit [Read error: 110 (Connection timed out)]
02:02 -!- ghableska [n=ghablesk@12-214-219-145.client.mchsi.com] has joined #armagetron
02:02 -!- ghableska [n=ghablesk@12-214-219-145.client.mchsi.com] has left #armagetron []
02:18 -!- libervisco [n=libervis@tuxhacker/libervisco] has quit ["Leaving"]
02:21 -!- libervisco [n=libervis@tuxhacker/libervisco] has joined #armagetron
02:36 <pippijn> good night
02:36 -!- torres [n=torres@unixcorps/staff/pippijn] has quit [Remote closed the connection]
03:04 -!- libervisco [n=libervis@tuxhacker/libervisco] has quit ["Leaving"]
03:41 -!- ct|kyle [n=kyle@pool-71-97-157-191.aubnin.dsl-w.verizon.net] has quit ["Leaving."]
03:43 -!- ct|kyle [n=kyle@pool-71-97-157-191.aubnin.dsl-w.verizon.net] has joined #armagetron
03:55 -!- Hoax- [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has quit []
04:03 -!- tramshed [i=tramshed@im.catapultingfeces.com] has quit [Remote closed the connection]
04:03 -!- tramshed [i=tramshed@im.catapultingfeces.com] has joined #armagetron
04:13 -!- Stewie-arma [n=Stewie-a@cpe-76-88-47-247.san.res.rr.com] has joined #armagetron
05:03 -!- Durka_ [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has joined #armagetron
05:04 <Durka_> #m eddiefantastic http://durkadurkaland.com/portal.php?topic_id=2815 :P (I think I might need help for the mainpage one, but thank you so much)
05:04 <armabot> Durka_: The operation succeeded.
05:04 <Durka_> #m eddiefantastic again, #m Durka not this lame name
05:04 <armabot> Durka_: The operation succeeded.
05:04 -!- Durka_ [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has quit [Client Quit]
05:21 -!- ct|kyle [n=kyle@pool-71-97-157-191.aubnin.dsl-w.verizon.net] has quit ["Leaving."]
05:43 -!- tramshed [i=tramshed@im.catapultingfeces.com] has quit [Remote closed the connection]
05:44 -!- tramshed [i=tramshed@im.catapultingfeces.com] has joined #armagetron
05:49 -!- Stewie-arma [n=Stewie-a@cpe-76-88-47-247.san.res.rr.com] has quit [Read error: 104 (Connection reset by peer)]
05:54 -!- Stewie-arma [n=Stewie-a@cpe-76-88-47-247.san.res.rr.com] has joined #armagetron
06:11 -!- spidey_ [n=spidey@adsl-065-006-218-226.sip.mem.bellsouth.net] has quit [Read error: 104 (Connection reset by peer)]
06:51 -!- Stewie-arma [n=Stewie-a@cpe-76-88-47-247.san.res.rr.com] has quit ["blah blah blah Robotics competition blah blah blah court blah blah blah everything blah blah"]
06:56 -!- Netsplit brown.freenode.net <-> irc.freenode.net quits: z-man-work
06:56 -!- Netsplit over, joins: z-man-work
07:13 -!- Ttech [n=ttech@fullcirclemagazine/developer/ttech] has quit [Read error: 110 (Connection timed out)]
07:17 -!- MrBougo [n=MrBougo@83.164-247-81.adsl-dyn.isp.belgacom.be] has joined #armagetron
07:35 -!- MrBougo [n=MrBougo@83.164-247-81.adsl-dyn.isp.belgacom.be] has quit []
08:43 -!- Durka [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has joined #armagetron
09:35 -!- torres [n=torres@pD9E9E755.dip.t-dialin.net] has joined #armagetron
09:44 <Durka> eddiefantastic: gah, wake up!
09:44 <Durka> luke-jr: help?
10:03 -!- Durka_ [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has joined #armagetron
10:13 -!- torres [n=torres@unixcorps/staff/pippijn] has quit [Remote closed the connection]
10:13 -!- torres [n=torres@pD9E9E755.dip.t-dialin.net] has joined #armagetron
10:18 -!- Durka [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has quit [Read error: 110 (Connection timed out)]
10:23 -!- Durka_ [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has quit []
10:43 -!- tramshed [i=tramshed@im.catapultingfeces.com] has quit [Remote closed the connection]
10:43 -!- tramshed [i=tramshed@im.catapultingfeces.com] has joined #armagetron
10:53 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has joined #armagetron
10:54 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has quit [Client Quit]
11:02 -!- z-man-work is now known as z-man
11:17 -!- Durka [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has joined #armagetron
11:17 <Durka> does anyone here know anything about anything?
11:18 <+P4> i know DDL sucks :þ
11:18 <Durka> P4: :}
11:19 <Durka> can u help me?
11:19 <+P4> i don't know, what with?
11:19 <Durka> http://durkadurkaland.com/sb.php
11:19 <Durka> how would i go about hiding what's below the 3 gold arrows
11:19 <Durka> and then having it show when u click on that odd-red-colored text
11:20 <+P4> i guess it's java script
11:20 <Durka> i use a show/hide thing for the "Who's Playing in DDL"
11:20 <Durka> but i tried the same one and the script crashes
11:20 <+P4> sth like here? http://mastercontrolprogram.de/
11:20 <+P4> (click on the pink header)
11:20 <Durka> well
11:20 <Durka> dhtml sux
11:21 <Durka> i don't really wanna use it
11:21 <Durka> btw, does that browser look familiar to u? :}
11:21 <+P4> yes, like any armabrowser :þ
11:22 <Durka> :þ
11:57 -!- empha [n=rolf@019-139-045-062.dynamic.caiway.nl] has joined #armagetron
11:57 -!- Durka [n=Justin@cpe-76-167-178-153.socal.res.rr.com] has quit []
12:01 <armabot> armagetronad: z-man * r8272 /armagetronad/branches/0.2.8/armagetronad/src/ (5 files in 2 dirs):
12:01 <armabot> armagetronad: Added eGameObject::OnRoundBegin(), called after game object creation.
12:01 <armabot> armagetronad: Used it in the zone code to fix the flickering empty zone glitch in sumo,
12:01 <armabot> armagetronad: and to avoid rare midgame zone ownership changes.
12:07 -!- emphasis [n=rolf@133-148-045-062.dynamic.caiway.nl] has quit [Read error: 113 (No route to host)]
12:41 -!- Hoax- [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has joined #armagetron
12:54 -!- Hoax [n=Hoax@cpc3-oxfd8-0-0-cust1013.oxfd.cable.ntl.com] has joined #armagetron
12:58 -!- epsy [n=epsy@mar75-4-82-227-65-72.fbx.proxad.net] has joined #armagetron
13:00 -!- Hoax- [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has quit [Read error: 113 (No route to host)]
13:00 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has joined #armagetron
13:15 -!- Hoax [n=Hoax@cpc3-oxfd8-0-0-cust1013.oxfd.cable.ntl.com] has quit [Read error: 110 (Connection timed out)]
13:54 -!- madmax [n=madmax@unaffiliated/madmax] has joined #armagetron
14:00 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has quit ["webirc@xclan.armagetron.co.uk"]
14:00 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has joined #armagetron
14:17 -!- robin__ [n=robin@darkmoor.sby.abo.fi] has joined #armagetron
14:17 -!- robin__ [n=robin@darkmoor.sby.abo.fi] has quit [Client Quit]
14:18 <armabot> armagetronad: z-man * r8273 /armagetronad/branches/0.2.8/armagetronad/src/engine/ePlayer.cpp: Don't show "IP=<empty>" in /players output.
14:18 -!- MaZuffeR [n=mazuffer@darkmoor.sby.abo.fi] has joined #armagetron
14:37 -!- eddiefantastic [n=ed@eddie.plantpeanuts.co.uk] has quit [Read error: 104 (Connection reset by peer)]
14:39 -!- eddiefantastic [n=ed@eddie.plantpeanuts.co.uk] has joined #armagetron
14:46 -!- ct|kyle [n=kyle@pool-71-97-157-191.aubnin.dsl-w.verizon.net] has joined #armagetron
15:00 -!- libervisco [n=libervis@tuxhacker/libervisco] has joined #armagetron
15:14 -!- eddiefantastic [n=ed@eddie.plantpeanuts.co.uk] has quit [Read error: 104 (Connection reset by peer)]
15:15 -!- eddiefantastic [n=ed@eddie.plantpeanuts.co.uk] has joined #armagetron
15:20 -!- Hoax- [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has joined #armagetron
15:24 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has quit ["webirc@xclan.armagetron.co.uk"]
15:29 <epsy> does arma support multiple config directories?
15:30 -!- Hoax- [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has quit [Read error: 113 (No route to host)]
15:30 -!- Hoax [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has joined #armagetron
15:35 -!- Hoax [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has quit [Read error: 104 (Connection reset by peer)]
15:35 -!- Hoax [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has joined #armagetron
15:45 <z-man> epsy: only partially. It supports loading some config files from var and config directories.
15:45 <epsy> i see
16:16 -!- Hoax [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has quit [Read error: 104 (Connection reset by peer)]
16:16 -!- Hoax- [n=Hoax@cpc5-oxfd8-0-0-cust434.oxfd.cable.ntl.com] has joined #armagetron
16:17 <flex> it would be a nice idea, when installing you could choose where you want your config directory, making it easier to use different clients..
16:18 -!- bugfarmer [n=bugfarme@l23.thp.uni-koeln.de] has joined #armagetron
16:19 <z-man> Ah that. If you compile from source and run from the build directory, your data will also reside inside the build directory.
16:20 <z-man> and of course, we have the command line arguments setting config and var directories.
16:22 <bugfarmer> newbie_fortress: z-man2 entered.
16:23 <bugfarmer> newbie_fortress: z-man2 authenticated as Z-Man@forums.
16:24 <bugfarmer> newbie_fortress: [1] Z-Man: BUG tesing annoyance level :)
16:24 <bugfarmer> newbie_fortress: game ended.
16:25 <z-man> Server stat bots rule :) Feel free to complain about the noise level, I can always move the bot to a different channel.
16:27 -!- MrBougo [n=MrBougo@66.194-241-81.adsl-dyn.isp.belgacom.be] has joined #armagetron
16:42 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has joined #armagetron
16:44 <bugfarmer> newbie_fortress: |x|_flex entered.
16:44 <bugfarmer> newbie_fortress: z-man2 entered.
16:44 -!- Bougo [n=MrBougo@248.171-247-81.adsl-dyn.isp.belgacom.be] has joined #armagetron
16:44 <bugfarmer> newbie_fortress: z-man2 authenticated as Z-Man@forums.
16:45 -!- MrBougo [n=MrBougo@66.194-241-81.adsl-dyn.isp.belgacom.be] has quit [Nick collision from services.]
16:45 -!- Bougo is now known as MrBougo
16:46 <madmax> you could make make bugfarmer announce killing sprees :-D
16:46 <epsy> ew O_o
16:47 <madmax> pfft.
16:47 <epsy> :|
16:48 <bugfarmer> newbie_fortress: |x|epsy entered.
16:48 <bugfarmer> newbie_fortress: |x|epsy authenticated as epsy@x.
16:50 <bugfarmer> newbie_fortress: tux entered.
16:50 <madmax> "Armagetron killed 15th people in a row without dying!"
16:50 -!- bugfarmer [n=bugfarme@l23.thp.uni-koeln.de] has quit [Remote closed the connection]
16:50 <epsy> haha
16:51 <madmax> "Armagetron doesn't die since last week!"
16:52 <epsy> there's no part messages tho
16:52 <flex> epsy
16:52 <flex> come cafe
16:52 <flex> for a sec
16:54 -!- bugfarmer [n=bugfarme@l23.thp.uni-koeln.de] has joined #armagetron
16:54 -!- bugfarmer [n=bugfarme@l23.thp.uni-koeln.de] has quit [Remote closed the connection]
16:54 -!- bugfarmer [n=bugfarme@l23.thp.uni-koeln.de] has joined #armagetron
16:55 <bugfarmer> newbie_fortress: [2] Z-Man: TOIRC another test
16:57 <bugfarmer> newbie_fortress: [2] Z-Man: TOIRC come on, join :)
16:57 <bugfarmer> newbie_fortress: thierry entered.
17:01 <bugfarmer> newbie_fortress: |x|_flex entered.
17:01 <bugfarmer> newbie_fortress: [3] ¦×¦ flex: BUG hihi
17:02 <bugfarmer> newbie_fortress: [2] Z-Man: TOIRC works now, too
17:02 <bugfarmer> newbie_fortress: [3] ¦×¦ flex: TOIRC epsy is gay
17:02 <bugfarmer> newbie_fortress: [1] ¦×¦ Hoax: TOIRC /me agrees 100%
17:03 <luke-jr> TOAA flex is gay
17:06 <bugfarmer> newbie_fortress: [3] ¦×¦ flex: no i mean, on the irc, does it have to include "TOIRC" infront of the persons line
17:07 <bugfarmer> newbie_fortress: moho entered.
17:07 <bugfarmer> newbie_fortress: [3] ¦×¦ flex: riBUGht
17:07 <bugfarmer> newbie_fortress: thierry entered.
17:07 <bugfarmer> newbie_fortress: [2] Z-Man: don't abuse BUG, please.
17:07 <bugfarmer> newbie_fortress: [1] ¦×¦ Hoax: BUG Z-Man has points
17:09 <luke-jr> lol
17:12 <bugfarmer> newbie_fortress: cory entered.
17:17 <bugfarmer> newbie_fortress: thierry entered.
17:18 <MrBougo> wtf
17:18 <MrBougo> this rox :)
17:18 <MrBougo> irc gateways ftw
17:18 <bugfarmer> newbie_fortress: profik entered.
17:18 <MrBougo> can you chat in the server too?
17:18 <MrBougo> like
17:18 <MrBougo> bugfarmer: hello peeps!
17:19 <bugfarmer> newbie_fortress: thierry entered.
17:24 <bugfarmer> newbie_fortress: epie entered.
17:29 <bugfarmer> newbie_fortress: ct_k-yo entered.
17:30 <K-Yo> won't it be a bit annoying to see every player that comes in?
17:30 <z-man> It sure will :)
17:32 <bugfarmer> newbie_fortress: thierry entered.
17:34 <bugfarmer> newbie_fortress: narri_narro entered.
17:36 <luke-jr> should be an XMPP gateway ☹
17:36 <luke-jr> and unidirectional
17:37 <z-man> you mean bidirectional?
17:38 * z-man should probably tune down repeated join messages.
17:44 <bugfarmer> newbie_fortress: thiefhallmet entered.
17:46 <bugfarmer> newbie_fortress: pascal entered.
17:50 <bugfarmer> newbie_fortress: bip entered.
17:51 <bugfarmer> newbie_fortress: th_nd3r entered.
17:54 <bugfarmer> newbie_fortress: savma_goett entered.
17:56 <bugfarmer> newbie_fortress: |$tf|_pon entered.
17:57 <bugfarmer> newbie_fortress: are_u_cereal entered.
17:58 <epsy> z-man, your spam owns
18:00 <bugfarmer> newbie_fortress: thiefhallmet entered.
18:01 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has quit [Read error: 104 (Connection reset by peer)]
18:06 -!- Bougo [n=MrBougo@33.19-247-81.adsl-static.isp.belgacom.be] has joined #armagetron
18:07 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has joined #armagetron
18:07 <bugfarmer> newbie_fortress: penis entered.
18:08 -!- KeY_3113 [n=K-Yo@unaffiliated/k-yo] has joined #armagetron
18:08 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has quit [Client Quit]
18:08 -!- KeY_3113 is now known as K-Yo
18:09 <bugfarmer> newbie_fortress: player_2 entered.
18:09 <bugfarmer> newbie_fortress: rytiso5o entered.
18:12 -!- flex [n=savas@unaffiliated/savas] has quit [Read error: 113 (No route to host)]
18:15 <bugfarmer> newbie_fortress: spasitel entered.
18:15 <bugfarmer> newbie_fortress: tropaz entered.
18:16 <bugfarmer> newbie_fortress: cooliosec entered.
18:17 <bugfarmer> newbie_fortress: big_momma entered.
18:18 <bugfarmer> newbie_fortress: solo entered.
18:19 <bugfarmer> newbie_fortress: penis entered.
18:19 <bugfarmer> newbie_fortress: naruto entered.
18:20 <bugfarmer> newbie_fortress: tropaz entered.
18:21 <bugfarmer> newbie_fortress: \:)_\:|_\:( entered.
18:21 <bugfarmer> newbie_fortress: /etc/shadow entered.
18:21 <bugfarmer> newbie_fortress: [8] /etc/shadow: TOIRC test
18:22 <bugfarmer> newbie_fortress: [8] /etc/shadow: test TOIRC
18:22 <bugfarmer> newbie_fortress: /etc/shadow authenticated as P4@crazy-tronners.com.
18:22 <bugfarmer> newbie_fortress: [8] /etc/shadow: TOIRC test
18:23 <bugfarmer> newbie_fortress: fukudome entered.
18:24 -!- MrBougo [n=MrBougo@248.171-247-81.adsl-dyn.isp.belgacom.be] has quit [Read error: 110 (Connection timed out)]
18:24 <bugfarmer> newbie_fortress: [8] /etc/shadow: TOIRC: dump scores
18:28 <StickyNoob> is bugfarmer a bot?
18:28 <K-Yo> no
18:28 <bugfarmer> newbie_fortress: [2] Z-Man: BUG: wrong message.
18:28 <K-Yo> he's one newbie fortress
18:28 <K-Yo> on*
18:28 <K-Yo> and says everytime someone enters :P
18:28 <StickyNoob> then why the fuck is he pasteing massive segments of logs
18:28 <K-Yo> He should get kicked
18:28 <K-Yo> that is spam
18:29 <bugfarmer> newbie_fortress: rl4_rusa entered.
18:30 <bugfarmer> newbie_fortress: [8] /etc/shadow: TOIRC
18:30 <bugfarmer> newbie_fortress: [8] /etc/shadow: TOIRC K-Yo come
18:30 <bugfarmer> newbie_fortress: chucky entered.
18:30 <StickyNoob> bugfarmer: ping
18:30 <StickyNoob> bugfarmer: what are you doing?
18:31 <bugfarmer> newbie_fortress: ct_k_yo entered.
18:31 <bugfarmer> newbie_fortress: [4] cT¤K_Yo: Z-Man can we answer to TOIRC messages from IRC?
18:32 <bugfarmer> newbie_fortress: ct_k_yo authenticated as K-Yo@forums.
18:32 <K-Yo> StickyNoob, it's a bot -.
18:32 <K-Yo> -
18:32 <StickyNoob> ahh so
18:32 <StickyNoob> you were lying
18:33 <K-Yo> Indeed ;)
18:33 <K-Yo> with Irony I thought
18:37 <bugfarmer> newbie_fortress: knus entered.
18:41 <bugfarmer> newbie_fortress: jhenson entered.
18:42 <bugfarmer> newbie_fortress: admin entered.
18:44 <bugfarmer> newbie_fortress: player_1 entered.
18:47 <bugfarmer> newbie_fortress: toirc entered.
18:48 <bugfarmer> newbie_fortress: [2] Z-Man: I see you renaming to :TOIRC already.
18:48 <bugfarmer> newbie_fortress: [0] 1: TOIRC, IP = 82.227.65.72
18:48 <bugfarmer> newbie_fortress: [0] TOIRC renamed to s1:TOIRC.
18:48 <bugfarmer> newbie_fortress: toirc authenticated as epsy@x.
18:48 <bugfarmer> newbie_fortress: [1] s1:TOIRC: indeed
18:49 <bugfarmer> newbie_fortress: [1] bot.rby bot.rby~ filter filter~ runbot runbot~ s1:TOIRC wonders bot.rby bot.rby~ filter filter~ runbot runbot~
18:49 <bugfarmer> newbie_fortress: [1] s1:TOIRC: what about core dump messages?
18:49 <bugfarmer> newbie_fortress: <v>-->23 entered.
18:49 <bugfarmer> newbie_fortress: [1] s1:TOIRC: Z-Man: it is anyway
18:49 <bugfarmer> newbie_fortress: [2] Z-Man: TOIRC bot.rby bot.rby~ filter filter~ runbot runbot~
18:50 <bugfarmer> newbie_fortress: [4] cT¤K_Yo: s1:TOIRC you won't core dump anyone :P
18:50 <bugfarmer> newbie_fortress: [0] s1:TOIRC core dumped Knus for 2 points.
18:50 <bugfarmer> newbie_fortress: [0] 1: epsy@x ( s1:TOIRC, Moderator ), IP = 82.227.65.72
18:50 <bugfarmer> newbie_fortress: epsy@x authenticated as epsy@x.
18:50 <bugfarmer> newbie_fortress: [0] s1:TOIRC renamed to ¦×¦epsy.
18:51 <bugfarmer> newbie_fortress: kriki entered.
18:51 -!- Bougo is now known as MrBougo
18:52 <bugfarmer> newbie_fortress: van_nelle entered.
18:52 <bugfarmer> newbie_fortress: klage entered.
18:53 -!- libervisco [n=libervis@tuxhacker/libervisco] has quit [Remote closed the connection]
18:53 <MrBougo> is bugfarmer going to stay here?
18:54 <MrBougo> hes gonna spam us all the day
18:54 <bugfarmer> newbie_fortress: o[fbc]ogaspard entered.
18:54 <bugfarmer> newbie_fortress: Z-Man@forums authenticated as Z-Man@forums.
18:54 <K-Yo> z-man will stop it I guess
18:57 <bugfarmer> newbie_fortress: Z-Man@forums authenticated as Z-Man@forums.
18:58 <bugfarmer> newbie_fortress: |bmk|dave entered.
18:59 -!- libervisco [n=libervis@tuxhacker/libervisco] has joined #armagetron
19:01 <bugfarmer> newbie_fortress: ~|ds|~_plage entered.
19:04 <bugfarmer> newbie_fortress: -su-echtla entered.
19:05 <bugfarmer> newbie_fortress: |x|_hoax entered.
19:06 <bugfarmer> newbie_fortress: ~dw~|archangel entered.
19:06 <bugfarmer> newbie_fortress: [7] ¦×¦ Hoax: TOIRC 40mps, whew almost as fast as sticky :D
19:07 <bugfarmer> newbie_fortress: |cfa|_elborg! entered.
19:09 <bugfarmer> newbie_fortress: tatersalad entered.
19:09 -!- tramshed [i=tramshed@im.catapultingfeces.com] has quit ["Leaving"]
19:10 -!- tramshed [i=tramshed@2001:5c0:87c8:0:0:0:0:1] has joined #armagetron
19:11 -!- tramshed [i=tramshed@2001:5c0:87c8:0:0:0:0:1] has quit [Remote closed the connection]
19:11 -!- tramshed [i=tramshed@im.catapultingfeces.com] has joined #armagetron
19:12 <bugfarmer> newbie_fortress: ~|ds|~_plage entered.
19:13 <bugfarmer> newbie_fortress: <<wir>>raiden entered.
19:14 <bugfarmer> newbie_fortress: bob entered.
19:14 <bugfarmer> newbie_fortress: bip entered.
19:16 <bugfarmer> newbie_fortress: sneakyjester entered.
19:18 <bugfarmer> newbie_fortress: bob_meil entered.
19:19 <bugfarmer> newbie_fortress: brandon entered.
19:36 <z-man> MrBougo: I can move it to a separate channel.
19:36 <z-man> like, #armagetron-servers.
19:36 <epsy> heh
19:36 <epsy> in the form of #commits ?
19:36 <z-man> No, bugfarmer is a simple ruby irc bot that just pushes stdin to IRC.
19:38 -!- bugfarmer [n=bugfarme@l23.thp.uni-koeln.de] has quit [Remote closed the connection]
19:42 -!- z-man is now known as z-man-work
19:57 <MrBougo> that's better :)
19:59 <z-man-work> The spam is on #armagetron-servers, if anyone is interested. I had this in mind as a makeshift friends notification thingy, too lazy to program a systray hiding program.
20:02 -!- KeY_3113 [n=K-Yo@unaffiliated/k-yo] has joined #armagetron
20:02 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has quit ["Bye bye"]
20:02 -!- KeY_3113 is now known as K-Yo
20:07 -!- libervisco is now known as Libervisco
20:11 <epsy> heh
20:19 <armabot> armagetronad: nemostultae * r8274 /armagetronad/trunk/armagetronad/batch/make/sortresources.py: (log message trimmed)
20:19 <armabot> armagetronad: Fixed bug which caused first build to forever hang when sorting resources. We were using absolute paths--not relative. Thus:
20:19 <armabot> armagetronad: >>> os.path.split("/foo")
20:19 <armabot> armagetronad: ('/', 'foo')
20:19 <armabot> armagetronad: caused an infinite loop, and the expected result:
20:19 -!- torres [n=torres@unixcorps/staff/pippijn] has quit [Read error: 113 (No route to host)]
20:19 <armabot> armagetronad: >>> os.path.split("foo")
20:19 -!- [dlh] [n=[dlh]@70.88.244.226] has joined #armagetron
20:19 <armabot> armagetronad: ('', 'foo')
20:31 -!- ct|kyl1 [n=kyle@pool-71-97-157-191.aubnin.dsl-w.verizon.net] has joined #armagetron
20:33 -!- ct|kyle [n=kyle@pool-71-97-157-191.aubnin.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)]
20:44 * epsy forgot to advertise #arma.fff
20:54 -!- z-man [n=manuel@p50871D80.dip0.t-ipconnect.de] has joined #armagetron
20:57 -!- flex [n=savas@unaffiliated/savas] has joined #armagetron
21:04 -!- ct|kyl1 is now known as ct|kyle
21:14 -!- luke-jr [n=luke-jr@2002:440d:6de2:0:20e:a6ff:fec4:4e5d] has quit [Connection timed out]
21:17 <z-man> #later tell wrtlprnft it would be neat if armabot could also manage the #armagetron-servers channel for spammy bots; bugfarmer is too primitive for that task.
21:17 <armabot> z-man: The operation succeeded.
21:18 -!- zmanuel [n=manuel@p50871D80.dip0.t-ipconnect.de] has joined #armagetron
21:18 -!- z-man [n=manuel@p50871D80.dip0.t-ipconnect.de] has quit [Remote closed the connection]
21:18 -!- zmanuel is now known as z-man
22:03 -!- torres [n=torres@pD9E9E755.dip.t-dialin.net] has joined #armagetron
22:03 -!- spidey [n=spidey@adsl-065-006-218-226.sip.mem.bellsouth.net] has joined #armagetron
22:19 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has joined #armagetron
22:22 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has quit ["Bye bye"]
22:22 -!- K-Yo [n=K-Yo@unaffiliated/k-yo] has joined #armagetron
22:23 -!- madmax [n=madmax@unaffiliated/madmax] has quit ["leaving"]
22:28 -!- MrBougo [n=MrBougo@33.19-247-81.adsl-static.isp.belgacom.be] has quit []
22:48 -!- Infa [n=x-javach@host81-152-45-84.range81-152.btcentralplus.com] has quit ["webirc@xclan.armagetron.co.uk"]
22:48 <epsy> i'm not getting any poll on my client :|
22:49 -!- deja_vu_ [n=deja_vu@HSI-KBW-085-216-060-101.hsi.kabelbw.de] has joined #armagetron
23:05 -!- deja_vu [n=deja_vu@HSI-KBW-085-216-060-101.hsi.kabelbw.de] has quit [Read error: 110 (Connection timed out)]
23:05 -!- deja_vu_ is now known as deja_vu
23:17 <flex> http://forums.armagetronad.net/viewtopic.php?t=18296
23:39 -!- torres [n=torres@unixcorps/staff/pippijn] has quit [Remote closed the connection]
23:47 -!- eboettcher [n=f00__@c-71-193-114-169.hsd1.in.comcast.net] has quit ["room :)"]
View entire month
DISCLAIMER: These logs of public chat may contain some content which may not be appropriate for all audiences. Use at your own risk.
Logs from 2006-2009 pulled from wrtlprnft
Format changes at: 2015-08-25, 2017-02-20, and 2020-03-23. Times (2015 and later) should be Eastern.
• Website was created by nelg
• Design:
» Layout is loosely based on an old design by Durf.
» Icons on the tools page were originally by Royce, new icons added will try to follow some of the design language.
» Various other icon selections include icons from Crystal, crystalsvg, oxygen, and breeze icon themes.
» Other icons: fontawesome
is a site that has tools, maps, and other various items. It orignally only existed as a server control panel, but I slowly began adding stuff such as a homepage and tools.