New staff member
- The Beatles
- Fear me for I am root
- Posts: 6285
- Joined: Tue May 24, 2005 8:12 pm
Hello FAF Community,
This topic is to announce that FireFrenzy is joining the FAF team. As he is a developer acquainted with the FAF codebase, developing his own derivative*, and full of ideas on the game and its design, I expect you'll see a faster development pace than I've provided over the last year.
Have fun,
~The Beatles
* If he wishes to give you a link to the game, I expect he'll do so, but I'm refraining because I don't know if it's public.
This topic is to announce that FireFrenzy is joining the FAF team. As he is a developer acquainted with the FAF codebase, developing his own derivative*, and full of ideas on the game and its design, I expect you'll see a faster development pace than I've provided over the last year.
Have fun,
~The Beatles
* If he wishes to give you a link to the game, I expect he'll do so, but I'm refraining because I don't know if it's public.
:wq
-
FireFrenzy
- Advanced Member
- Posts: 92
- Joined: Tue Jul 17, 2007 8:30 pm
I appreciate that, and I hope I'm able to contribute.
Indeed, I've been trying to keep my development rather low-key. I've got a number of ideas for the game, some of which I've been tossing around on these forums, and likewise it's only a modicum of what I hope it will become. I'm rather new to web development, so some of my ideas are encumbered by lack of knowledge, others by lack cohesion as viable additions; I am, however, confident that time and thoughtful thinking can solve both these difficulties.
I'm a believer in synergism, and I think that combining elements of development between FAF and my derivation can help both games. Likewise, feel free to visit my game (EDIT: location change) and note what you like and dislike. As it's quite a preliminary version, meant for discovering bugs and gaining input, I've configured it to allow as many accounts as one wishes on the "Alliance" server, and turns are produced at an exorbitant rate. Obviously, I'm happy to contribute any of my code to FAF, so any preferred changes should be rather easy implementations.
All the best,
FF
Indeed, I've been trying to keep my development rather low-key. I've got a number of ideas for the game, some of which I've been tossing around on these forums, and likewise it's only a modicum of what I hope it will become. I'm rather new to web development, so some of my ideas are encumbered by lack of knowledge, others by lack cohesion as viable additions; I am, however, confident that time and thoughtful thinking can solve both these difficulties.
I'm a believer in synergism, and I think that combining elements of development between FAF and my derivation can help both games. Likewise, feel free to visit my game (EDIT: location change) and note what you like and dislike. As it's quite a preliminary version, meant for discovering bugs and gaining input, I've configured it to allow as many accounts as one wishes on the "Alliance" server, and turns are produced at an exorbitant rate. Obviously, I'm happy to contribute any of my code to FAF, so any preferred changes should be rather easy implementations.
All the best,
FF
-
FireFrenzy
- Advanced Member
- Posts: 92
- Joined: Tue Jul 17, 2007 8:30 pm
- Slasher
- The FAF Forums SMEGHEAD!!! lol
- Posts: 2635
- Joined: Mon May 03, 2004 5:08 pm
- Location: http://florida4us.com/
- Contact:
Seriously liking the new layout and graphics and such, but it could do with a nice background image... Maybe use the old one from FAF if anyone still has it? (the starry one not the current one, I'm not as keen on that *laughs*). I especially love the collaptible (sp?) menus. Do they use AJAX?
EDIT: Hmm I think I found a bug...
[img]http://img508.imageshack.us/img508/5986/bugvo6.th.png[/img]
EDIT: Hmm I think I found a bug...
[img]http://img508.imageshack.us/img508/5986/bugvo6.th.png[/img]
or at least Head Chipmunk in charge of the meh department?
all about FAVRE, come on...you know you want to click it
The Kraken, which is found primarily in Scandinavian myth, was a huge sea creature. It was said to lie at the bottom of the sea for a long time and then it would rest at the surface....Like the Midgard serpent in the Norse myths, the Kraken was supposed to rise to the surface at the end of the world.
~Beatles..."I'm sorry, but I really can't see anything redeeming in your philosophy other than that dinosaurs are cute."
The Kraken, which is found primarily in Scandinavian myth, was a huge sea creature. It was said to lie at the bottom of the sea for a long time and then it would rest at the surface....Like the Midgard serpent in the Norse myths, the Kraken was supposed to rise to the surface at the end of the world.
Do you guys mind if I steal the new scores and top10 page for ME?
I really like the new icons, very nice indeed!
FireFrenzy I have disabled the proxy checking at ME so you can signup if you want to. Please let me know when you signup or if you are not going to so I can set the proxy check back on. I really need to come up with a way to allow that to be bypassed based on something, email address maybe.
FireFrenzy I have disabled the proxy checking at ME so you can signup if you want to. Please let me know when you signup or if you are not going to so I can set the proxy check back on. I really need to come up with a way to allow that to be bypassed based on something, email address maybe.
-
FireFrenzy
- Advanced Member
- Posts: 92
- Joined: Tue Jul 17, 2007 8:30 pm
Much appreciated!Welcome. I like how the graphics are coming along on your game.
Eek, yeah, the bug is likely from not ending a table and creating a new one on one of pages, so the menu continues on as part of the table for the exploring display.Seriously liking the new layout and graphics and such, but it could do with a nice background image... Maybe use the old one from FAF if anyone still has it? (the starry one not the current one, I'm not as keen on that *laughs*). I especially love the collaptible (sp?) menus. Do they use AJAX?
EDIT: Hmm I think I found a bug...
EDIT: And I think I found the bug: amazing what an extra " can do.
The menu(s) are 100% Javascript, well, minus the HTML and CSS.
The starry background is still around, I know I've seen it, along with a few other interesting ones. The question is if that should be made the default, or part of a new template?
I have no qualms over it; I added them with the understanding that they would likely be included in the available code at some point, so that's quite alright.Do you guys mind if I steal the new scores and top10 page for ME? I really like the new icons, very nice indeed!
Many thanks! Signed-up and in!FireFrenzy I have disabled the proxy checking at ME so you can signup if you want to. Please let me know when you signup or if you are not going to so I can set the proxy check back on. I really need to come up with a way to allow that to be bypassed based on something, email address maybe.
-
FireFrenzy
- Advanced Member
- Posts: 92
- Joined: Tue Jul 17, 2007 8:30 pm
I was thinking about those just now!
First, I'm going to rename them, I think, to 'Most Offenses' and 'Most Defenses'. Second, yes, most definitely. I thought that I had made them that way: most successful offenses and defenses, as that is far more logical. But it looks like I didn't. The change shouldn't take too long, I don't think.
hmm, only problem I can see is that, unless an extry is added to the database for them, I think every entry would have to be taken and calculated each time.
First, I'm going to rename them, I think, to 'Most Offenses' and 'Most Defenses'. Second, yes, most definitely. I thought that I had made them that way: most successful offenses and defenses, as that is far more logical. But it looks like I didn't. The change shouldn't take too long, I don't think.
hmm, only problem I can see is that, unless an extry is added to the database for them, I think every entry would have to be taken and calculated each time.
- The Beatles
- Fear me for I am root
- Posts: 6285
- Joined: Tue May 24, 2005 8:12 pm
-
FireFrenzy
- Advanced Member
- Posts: 92
- Joined: Tue Jul 17, 2007 8:30 pm
MAKE ME CHIEF CHIPMUNK ! ! ! !
all about FAVRE, come on...you know you want to click it
The Kraken, which is found primarily in Scandinavian myth, was a huge sea creature. It was said to lie at the bottom of the sea for a long time and then it would rest at the surface....Like the Midgard serpent in the Norse myths, the Kraken was supposed to rise to the surface at the end of the world.
~Beatles..."I'm sorry, but I really can't see anything redeeming in your philosophy other than that dinosaurs are cute."
The Kraken, which is found primarily in Scandinavian myth, was a huge sea creature. It was said to lie at the bottom of the sea for a long time and then it would rest at the surface....Like the Midgard serpent in the Norse myths, the Kraken was supposed to rise to the surface at the end of the world.
The new scores and top10 pages cause huge loads on the server. Page load times on ME was 3 - 5 minutes at times because it is searching though some 500 - 600 accounts 7 times in order to get all the proper stats. Since the top10 page is open to anyone from the main site page it would be very easy to launch an attack on someones site and take it out by overloading the server.
Since the networths are updated only once every time turns are added, I changed the coding on the top stats to follow the same ideal. When networths are updated the top stats are gathered and the proper userid's are stored in a table and then used from there in order to show the top stat players.
Here are the changes I made:
Add a new table to the database: (This should really get added to sql-setup.php eventually)
Remove all the top stat function calls from funcs.php
Edit lib/ranks.php to look like this:
In the function printSearchLine change the function calls to the following:
In scores.php change the function calls to:
In header.php find:
After add:
I think that should do it. I changed the img src paths so you will need to change to where your images are stored. Other than that, it should work. Post any errors or problems and I will get the missing info.
Since the networths are updated only once every time turns are added, I changed the coding on the top stats to follow the same ideal. When networths are updated the top stats are gathered and the proper userid's are stored in a table and then used from there in order to show the top stat players.
Here are the changes I made:
Add a new table to the database: (This should really get added to sql-setup.php eventually)
code: Select all
CREATE TABLE `<your_game_name_here>_system` (
`id` int(11) unsigned NOT NULL auto_increment,
`droppedland` bigint(20) unsigned NOT NULL default '0',
`topland` int(11) unsigned NOT NULL default '0',
`topoff` int(11) unsigned NOT NULL default '0',
`topdef` int(11) unsigned NOT NULL default '0',
`topkills` int(11) unsigned NOT NULL default '0',
`topnet1` int(11) unsigned NOT NULL default '0',
`topnet2` int(11) unsigned NOT NULL default '0',
`topnet3` int(11) unsigned NOT NULL default '0',
PRIMARY KEY (`id`)
);
INSERT INTO `aol_system` VALUES ('', 0, 0, 0, 0, 0, 0, 0, 0);Remove all the top stat function calls from funcs.php
Edit lib/ranks.php to look like this:
code: Select all
<?
if(!defined("PROMISANCE"))
die(" ");
if(howmanytimes(lasttime('ranks'), $perminutes)) {
$users = mysql_safe_query("SELECT num FROM $playerdb WHERE disabled != 2 AND disabled !=3 AND land>0 ORDER BY networth DESC;");
$urank = 0;
while ($user = mysql_fetch_array($users)) {
$urank++;
mysql_safe_query("UPDATE $playerdb SET rank=$urank WHERE num=$user[num];");
}
$urank++;
mysql_safe_query("UPDATE $playerdb SET rank=$urank WHERE disabled=3 OR disabled=2 OR land=0;");
justRun('ranks', $perminutes);
}
global $playerdb, $prefix;
// Retrieve all the data from the table and store the record of the table into $topland
$topland = sqlsafeeval("SELECT num FROM $playerdb WHERE land > 0 AND disabled!=2 AND disabled!=3 ORDER BY land DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topland=".$topland);
$topoffense = sqlsafeeval("SELECT num FROM $playerdb WHERE land > 0 AND offsucc > 0 AND disabled!=2 AND disabled!=3 ORDER BY offsucc DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topoff=".$topoffense);
$topdefense = sqlsafeeval("SELECT num FROM $playerdb WHERE land > 0 AND defsucc > 0 AND disabled!=2 AND disabled!=3 ORDER BY defsucc DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topdef=".$topdefense);
// Retrieve all the data from the table and store the record of the table into $topland
$topkills = mysql_safe_query("SELECT num FROM $playerdb WHERE land > 0 AND kills > 0 AND disabled!=2 AND disabled!=3 ORDER BY kills DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topkills=".$topkills);
$topnet = mysql_safe_query("SELECT num FROM $playerdb WHERE land > 0 AND disabled != 2 AND disabled != 3 ORDER BY networth DESC LIMIT 3") or die(mysql_error());
$z = 1;
while($row = mysql_fetch_assoc($topnet)) {
mysql_safe_query("UPDATE ".$prefix."_system SET topnet".$z."=".$row['num']);
$z++;
}
?>code: Select all
//for top stat icons
$tland = sqlsafeeval("SELECT topland FROM ".$prefix."_system");
if ($enemy[num] == $tland)
$topland = "<img src='img/land.gif' align=absmiddle>";
$toff = sqlsafeeval("SELECT topoff FROM ".$prefix."_system");
if ($enemy[num] == $toff)
$topoff = "<img src='img/offense.gif' align=absmiddle>";
$tdef = sqlsafeeval("SELECT topdef FROM ".$prefix."_system");
if ($enemy[num] == $tdef)
$topdef = "<img src='img/defense.gif' align=absmiddle>";
$tkills = sqlsafeeval("SELECT topkills FROM ".$prefix."_system");
if ($enemy[num] == $tkills)
$topkills = "<img src='img/kills.gif' align=absmiddle>";
$tnet1 = sqlsafeeval("SELECT topnet1 FROM ".$prefix."_system");
if ($enemy[num] == $tnet1)
$topnet1 = "<img src='img/net1.gif' align=absmiddle>";
$tnet2 = sqlsafeeval("SELECT topnet2 FROM ".$prefix."_system");
if ($enemy[num] == $tnet2)
$topnet2 = "<img src='img/net2.gif' align=absmiddle>";
$tnet3 = sqlsafeeval("SELECT topnet3 FROM ".$prefix."_system");
if ($enemy[num] == $tnet3)
$topnet3 = "<img src='img/net3.gif' align=absmiddle>";
code: Select all
//for top stat icons
$tland = sqlsafeeval("SELECT topland FROM ".$prefix."_system");
if ($enemy[num] == $topland)
$topland = "<img src='img/land.gif' align=absmiddle>";
$toff = sqlsafeeval("SELECT topoff FROM ".$prefix."_system");
if ($enemy[num] == $toff)
$topoff = "<img src='img/offense.gif' align=absmiddle>";
$tdef = sqlsafeeval("SELECT topdef FROM ".$prefix."_system");
if ($enemy[num] == $tdef)
$topdef = "<img src='img/defense.gif' align=absmiddle>";
$tkills = sqlsafeeval("SELECT topkills FROM ".$prefix."_system");
if ($enemy[num] == $tkills)
$topkills = "<img src='img/kills.gif' align=absmiddle>";
$tnet1 = sqlsafeeval("SELECT topnet1 FROM ".$prefix."_system");
if ($enemy[num] == $tnet1)
$topnet1 = "<img src='img/net1.gif' align=absmiddle>";
$tnet2 = sqlsafeeval("SELECT topnet2 FROM ".$prefix."_system");
if ($enemy[num] == $tnet2)
$topnet2 = "<img src='img/net2.gif' align=absmiddle>";
$tnet3 = sqlsafeeval("SELECT topnet3 FROM ".$prefix."_system");
if ($enemy[num] == $tnet3)
$topnet3 = "<img src='img/net3.gif' align=absmiddle>";
code: Select all
while ($user = mysql_fetch_array($userlist)) {
mysql_safe_query("UPDATE $playerdb SET rank=".$i++." WHERE num=$user[num];");
}
code: Select all
global $playerdb, $prefix;
// Retrieve all the data from the table and store the record of the table into $topland
$topland = sqlsafeeval("SELECT num,land FROM $playerdb WHERE land > 0 AND disabled!=2 AND disabled!=3 ORDER BY land DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topland=".$topland);
$topoffense = sqlsafeeval("SELECT num FROM $playerdb WHERE land > 0 AND offsucc > 0 AND disabled!=2 AND disabled!=3 ORDER BY offsucc DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topoff=".$topoffense);
$topdefense = sqlsafeeval("SELECT num FROM $playerdb WHERE land > 0 AND defsucc > 0 AND disabled!=2 AND disabled!=3 ORDER BY defsucc DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topdef=".$topdefense);
// Retrieve all the data from the table and store the record of the table into $topland
$topkills = sqlsafeeval("SELECT num FROM $playerdb WHERE land > 0 AND kills > 0 AND disabled!=2 AND disabled!=3 ORDER BY kills DESC LIMIT 1");
mysql_safe_query("UPDATE ".$prefix."_system SET topkills=".$topkills);
$topnet = mysql_safe_query("SELECT num FROM $playerdb WHERE land > 0 AND disabled != 2 AND disabled != 3 ORDER BY networth DESC LIMIT 3") or die(mysql_error());
$z = 1;
while($row = mysql_fetch_assoc($topnet)) {
mysql_safe_query("UPDATE ".$prefix."_system SET topnet".$z."=".$row['num']);
$z++;
}-
Members connected in real time


