Dragonfly CMS v9 ⇒ Gamers Modules & Blocks ⇒ mComp :: module for managing Online Gaming Competitions (page 3) ⇒ Community Forums ⇒ CPG Dragonfly™ CMS
Forum IndexModules & BlocksGamers Modules & Blocks

mComp :: module for managing Online Gaming Competitions Reply to topic


callihn wrote

Kendle wrote

A few more bug fixes plus a couple of additional features:-

1) Admins get full control of the module without having to login as a user with permissions set in the module's Admin Panel.


Quick question, is just for admins with full site control, God, both or all admins with any site control?


For DragonFly it uses can_admin('competition'), so that should be God + anyone you set up with Competition Admin privileges. For CPG-Nuke 8.x and Puke it's only the God Admin account.

callihn wrote

Kendle wrote

3) In /includes/mr/competition.php ~ line 78 the following additional variable is defined:-

$maxgameimagewidth = 0; // 0 = no limit


Great, what about height though?


It adjusts the height based on the width using this snippet:-
list($width, $height, $type, $attr) = getimagesize($gimage); if ($width && $maxgameimagewidth) { if ( $width>$maxgameimagewidth ) { $reduction = round(($width / $maxgameimagewidth),2); $width = round(($width / $reduction),0); $height = round(($height / $reduction),0); } $display_image = "<img src='$gimage' border='0' width='$width' height='$height' alt='$alt'>"; } else { $display_image = "<img src='$gimage' border='0' alt='$alt'>"; }
in other words it reduces the height by the same amount as it has to reduce the width to keep the image in proportion. If you want a maxheight variable as well that'll be no problem and I'll add it in the next version.

callihn wrote

Kendle wrote

I'm already working on a new version with a chunk of new features ...That won't be ready for a week or so I guess.


A week? My God man what do you use to do this again?

Please tell me there is a Linux version.


I use PSPad, which is just a text editor with PHP (and many other) language file for syntax highlighting. Having a local Linux / Apache / MySQL webserver to test stuff on helps though.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):


callihn wrote
Logged in as the God admin only, it still does not give me the new game link when I click on competitions.


Works on my test server, I'll check and get back to you.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):


Maybe it is possible to add an option for single matches, like the Vwar module. After making a gametype, instead of creating a competition it would be nice to create a single match. Often friendly matches between clans are played once. An ability to fill in a challenge-form (kind like the add-team form) would be nice with e-mail notification. After accepting a match, the challange data could be applied to the match-data so admin wouldn't have to fill in opponent/team data. Members must be able to join for that match.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Linux / 1.3.33 / 4.0.25 / 4.3.11 / Dragonfly 9.0.6.01 and testsite, specs as before however with Dragonfly 9.1.1


Kendle - I tried getting things to work for CCG-tournaments and the like and there were a few problems. Just so you know! Otherwise your module is frigging excellent! Smile

I am also impressed by how fast you incorporate people's ideas, code for multi-Nuke enviroments and keep an open mind to all manner of wild ideas I throw your way!

Be sure to tell me when/if you implement for the Admin to decide on teams/player settings as well as letting us as Admins decide what information each team/player should list and how the matches would be set up. Even as an ET player I have to point out that either I want other maps (ET-specific) or someone which uses the module for say CS would like to input another set of maps... Smile

Great work either way!

Andreas Rönnqvist
www.omegaproject.se
[OmegaProject] Founder

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Linux/Apache 2.0.52(Unix)/4.0.23/4.3.10-2/Dragonfly 9.0.6.1


callihn - there was a bug (so much for my testing Embarassed ) in the cpg-nuke version. I've fixed it so that if is_admin($admin) returns "true" an Admin can configure the module without needing specific permission set thru the module's Admin Panel. For DragonFly it remains the same, if can_admin('competition') is true, etc.

i.e it should all work as expected now, just re-download the package. I've also fixed one other bug, again Admin related, since I posted the new version yesterday so it's worth re-downloading anyway.

mario - I think that would be too great a departure from the module's design goals. Creating a competition for a game is not too big an extra step to take to get to the point where teams or players can challenge each other, and the challenge mechanism is all there already. For those competitions where you're allowed to do so, teams can challenge, accept, decline, re-schedule, all with email notification etc.

If the ability to challenge was outisde the competition structure how would you prevent challenges on competitions that didn't use that mechanism?

This module was originally developed for a specific user, who was previously using NukeLadder for PHP-Nuke, and it had all sorts of holes, such as teams challenging other teams in competitions other than those they both competed in, and entering results for matchs against teams they hadn't (and logically couldn't and wouldn't) play.

Putting in controls to prevent these things was a very specific design goal and I can't see how I'd be able to take them out and still maintain the integrity of the system.

Unless of course I'm completely mis-understanding what you're saying Embarassed

Andreas - I've got a pretty clear idea of the things I'd like to do next, some based on feedback here, so I appreciate the comments and the suggestions. A definate aim is to redefine Teams and Players. I'm thinking Teams will be renamed "Competitors" and will, on a game by game basis, be considered as either individuals (Players) or groups of individuals (Teams), at the Admins discretion.

I'm also working to add some statistics, although nothing like as comprehensive as the Cases Ladders examples given by SangFori previously. Maybe one day but I can't see the module developing to that degree quite yet (though it's not impossible as I'd like to think the scalability of the module is quite good in that respect).

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):


Kendle wrote
mario - I think that would be too great a departure from the module's design goals. Creating a competition for a game is not too big an extra step to take to get to the point where teams or players can challenge each other, and the challenge mechanism is all there already. For those competitions where you're allowed to do so, teams can challenge, accept, decline, re-schedule, all with email notification etc.

If the ability to challenge was outisde the competition structure how would you prevent challenges on competitions that didn't use that mechanism?

This module was originally developed for a specific user, who was previously using NukeLadder for PHP-Nuke, and it had all sorts of holes, such as teams challenging other teams in competitions other than those they both competed in, and entering results for matchs against teams they hadn't (and logically couldn't and wouldn't) play.

Putting in controls to prevent these things was a very specific design goal and I can't see how I'd be able to take them out and still maintain the integrity of the system.

Unless of course I'm completely mis-understanding what you're saying Embarassed



What I mean is a match between 2 clans. 1 clan would challenge the other clan for a friendly or training match (just 1 match, no further competition, ladder etc) and by challenge I mean actually a request to play a game against that clan. Also the request-handling will be done by war-arrangers, who can approve a request and add the match to the system. After approval individual players will then be able to join a match. You won't have to take things out to my opinion, but add a match-functionality. I know a very extended version of this exsists, namely Vwar (www.vwar.de) but this is never ported to cpgnuke. But Vwar misses the ladder/competition etc elements.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Linux / 1.3.33 / 4.0.25 / 4.3.11 / Dragonfly 9.0.6.01 and testsite, specs as before however with Dragonfly 9.1.1


OK, I see where you're coming from.

Currently I could suggest a site Admin create a Competition called "friendly" or "training", for which zero points are awarded for a win / draw / loss, then the challenge mechanism would be mostly as you describe.

Only members who know their Admin password can access their Team Management screen to accept / decline / make challenges, so if you have a War Arranger who does that kind of thing you can give him the password. I can see that having different permissions per member might come in handy though (Clan Leader / War Arranger etc.)

At the moment the module allows non-registered (website) members to be listed on a Team's roster (this was a specific requirement of one of my original users). To assign permissions per member I'd need to enforce site registered members only (so the module knows, via their user_id, who they are). That's not a big deal as far as I'm concerned cos tbh I don't know of any leagues where you can be a member of a Team but not be a member of the website.

However currently I would still need the Competition to exist (and teams to be signed up to it) to determine who can challenge who (it would be meaningless for a Quake3 Clan to challenge a CS Clan, for example). To do it any other way I'd have to provide facility for teams to specify the games they play (which makes sense anyway as most systems do just that).

I can see now how all this can be done, and I don't think it would be too difficult either. Consider it added to the "to-do" list (might take me a bit more than a week to do this lot now Razz )

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):


Kendle wrote
callihn - there was a bug (so much for my testing Embarassed ) in the cpg-nuke version. I've fixed it so that if is_admin($admin) returns "true" an Admin can configure the module without needing specific permission set thru the module's Admin Panel. For DragonFly it remains the same, if can_admin('competition') is true, etc.

i.e it should all work as expected now, just re-download the package. I've also fixed one other bug, again Admin related, since I posted the new version yesterday so it's worth re-downloading anyway.


Great! All seems to be working well now, again thank you for such a fine module.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Fedora Core 2 Kernel 2.6.9 SMP/Apache 2.0.51-2.9/MySQL Server 4.1.7-4/PHP 5.0.2-8/CGPNuke 8.2c


mario wrote
Kendle wrote
mario - I think that would be too great a departure from the module's design goals. Creating a competition for a game is not too big an extra step to take to get to the point where teams or players can challenge each other, and the challenge mechanism is all there already. For those competitions where you're allowed to do so, teams can challenge, accept, decline, re-schedule, all with email notification etc.

If the ability to challenge was outisde the competition structure how would you prevent challenges on competitions that didn't use that mechanism?

This module was originally developed for a specific user, who was previously using NukeLadder for PHP-Nuke, and it had all sorts of holes, such as teams challenging other teams in competitions other than those they both competed in, and entering results for matchs against teams they hadn't (and logically couldn't and wouldn't) play.

Putting in controls to prevent these things was a very specific design goal and I can't see how I'd be able to take them out and still maintain the integrity of the system.

Unless of course I'm completely mis-understanding what you're saying Embarassed



What I mean is a match between 2 clans. 1 clan would challenge the other clan for a friendly or training match (just 1 match, no further competition, ladder etc) and by challenge I mean actually a request to play a game against that clan. Also the request-handling will be done by war-arrangers, who can approve a request and add the match to the system. After approval individual players will then be able to join a match. You won't have to take things out to my opinion, but add a match-functionality. I know a very extended version of this exsists, namely Vwar (www.vwar.de) but this is never ported to cpgnuke. But Vwar misses the ladder/competition etc elements.


I don't see why you can't do that with it now, when you get to stage you can just specify that only admins can enter results and make it a single elimination with no points, you can also set it up so that teams can not join and then create the teams yourself, everything you desire seems to be there already?

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Fedora Core 2 Kernel 2.6.9 SMP/Apache 2.0.51-2.9/MySQL Server 4.1.7-4/PHP 5.0.2-8/CGPNuke 8.2c


Kendle wrote
OK, I see where you're coming from.

Currently I could suggest a site Admin create a Competition called "friendly" or "training", for which zero points are awarded for a win / draw / loss, then the challenge mechanism would be mostly as you describe.

Only members who know their Admin password can access their Team Management screen to accept / decline / make challenges, so if you have a War Arranger who does that kind of thing you can give him the password. I can see that having different permissions per member might come in handy though (Clan Leader / War Arranger etc.)

At the moment the module allows non-registered (website) members to be listed on a Team's roster (this was a specific requirement of one of my original users). To assign permissions per member I'd need to enforce site registered members only (so the module knows, via their user_id, who they are). That's not a big deal as far as I'm concerned cos tbh I don't know of any leagues where you can be a member of a Team but not be a member of the website.

However currently I would still need the Competition to exist (and teams to be signed up to it) to determine who can challenge who (it would be meaningless for a Quake3 Clan to challenge a CS Clan, for example). To do it any other way I'd have to provide facility for teams to specify the games they play (which makes sense anyway as most systems do just that).

I can see now how all this can be done, and I don't think it would be too difficult either. Consider it added to the "to-do" list (might take me a bit more than a week to do this lot now Razz )


Great 👏 👏, I'm very curious how you're going to work it out.

To assign permissions per member I'd need to enforce site registered members only (so the module knows, via their user_id, who they are)


Maybe you could add groupmembership, so for example only clanmembers can join a single match as there will be registered members who aren't clanmember????

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Linux / 1.3.33 / 4.0.25 / 4.3.11 / Dragonfly 9.0.6.01 and testsite, specs as before however with Dragonfly 9.1.1


mario wrote
To assign permissions per member I'd need to enforce site registered members only (so the module knows, via their user_id, who they are)


Maybe you could add groupmembership, so for example only clanmembers can join a single match as there will be registered members who aren't clanmember????


It goes without saying that only members of the Clan will be able to sign up for their matches; what I mean is as regards making the challenges, accepting or declining others etc. At the moment only people who know the Team Admin password can do that, but they can also do a lot more besides (like change Team details, add / remove players from their roster, etc.)

I'm talking about giving individual players different levels of access to the Team Management functions (Leaders can add players, War Arrangers can't, but they can make challenges, etc.) To do that I need to validate the player, and the only way to do that is either set passwords for the different access levels (could get messy), or require all players to also be registered website members and use their Nuke user_id.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):


callihn wrote
I don't see why you can't do that with it now, when you get to stage you can just specify that only admins can enter results and make it a single elimination with no points, you can also set it up so that teams can not join and then create the teams yourself, everything you desire seems to be there already?


To do what Mario wants now you'd have to do the following:-

1) Create a Game.

2) Create a Competition for that Game that allows Teams to join and leave.

3) Create a Stage (probably of type Ladder, but it doesn't matter), enable Challenges and set "Who can Enter Results" to "Both Teams". Also, set points for Win / Draw / Loss to 0.

4) Create a Division with Number of Teams = 0.

Teams would then have to Join the Competition, which they can do from their Management screen, and they could only challenge other teams who'd also joined that competition (as opposed to challenging any Team who play the same game, which is what Mario wants).

Once I've added a "Games Played" facility to the Team Details data, I'll be able to add this feature.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):


Kendle wrote
callihn wrote
I don't see why you can't do that with it now, when you get to stage you can just specify that only admins can enter results and make it a single elimination with no points, you can also set it up so that teams can not join and then create the teams yourself, everything you desire seems to be there already?


To do what Mario wants now you'd have to do the following:-

1) Create a Game.

2) Create a Competition for that Game that allows Teams to join and leave.

3) Create a Stage (probably of type Ladder, but it doesn't matter), enable Challenges and set "Who can Enter Results" to "Both Teams". Also, set points for Win / Draw / Loss to 0.

4) Create a Division with Number of Teams = 0.

Teams would then have to Join the Competition, which they can do from their Management screen, and they could only challenge other teams who'd also joined that competition (as opposed to challenging any Team who play the same game, which is what Mario wants).

Once I've added a "Games Played" facility to the Team Details data, I'll be able to add this feature.


OIC, glad you cleared that up.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Fedora Core 2 Kernel 2.6.9 SMP/Apache 2.0.51-2.9/MySQL Server 4.1.7-4/PHP 5.0.2-8/CGPNuke 8.2c


Just tried installing on Dragonfly & Get teh following error running the cpg_install

MySQL Error while executing: CREATE TABLE IF NOT EXISTS cms_compconfig ( compname VARCHAR( 100 ) NOT NULL default '', compurl VARCHAR( 100 ) NOT NULL default '', returnmail VARCHAR( 100 ) NOT NULL default '', adminmail VARCHAR( 100 ) NOT NULL default '', enable_unreg TINYINT( 2 ) NOT NULL default '0', enable_demo TINYINT( 2 ) NOT NULL default '0', enable_upload TINYINT( 2 ) NOT NULL default '0', enable_comment TINYINT( 2 ) NOT NULL default '0', enable_motm TINYINT( 2 ) NOT NULL default '0', enable_report TINYINT( 2 ) NOT NULL default '0', enable_header_nav TINYINT( 2 ) NOT NULL default '0', enable_footer_nav TINYINT( 2 ) NOT NULL default '0', games_across TINYINT( 4 ) NOT NULL default '0', comps_across TINYINT( 4 ) NOT NULL default '0', gamesmaxday TINYINT( 4 ) NOT NULL default '0', numgamespage TINYINT( 4 ) NOT NULL default '0', numteamspage TINYINT( 4 ) NOT NULL default '0', maxrescheds TINYINT( 4 ) NOT NULL default '0', demofolder VARCHAR( 100 ) NOT NULL default '' ) TYPE = MYISAM COMMENT = 'Competition Configuration Table'; You have an error in your SQL syntax near '; ' at line 22

"Pain is Weakness leaving the body"
www.sportscardstrading.com

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Windows XP Pro


Are you using the latest build (download the package again if you're not sure), and what version of DragonFly? I've installed it on DragonFly PR1 (it's actually currently running on 2 DragonFly PR1 sites), but there's been a few more versions since then I think.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):

All times are UTC


Jump to: