Raised This Month: $51 Target: $400
 12% 

Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)


Post New Thread Reply   
 
Thread Tools Display Modes
Lim-Dul
Junior Member
Join Date: Jan 2005
Old 08-15-2008 , 21:34   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #71

By the way - in the newest version of SourceMOD the "nextmap" chat trigger will display the next map twice - even if you disable nextmap.smx... Anybody got the same behavior?

I'd like to see DMR intercepting listmaps in the console as well since it is supposed to be a complete replacement of nextmap.smx. I know that you don't have a static map cycle that you can show (*doh*) but the listmaps command could perhaps list all the maps that are in dmr.txt (or any other file) regardless of conditions...

Quote:
Would this work?
Yes. =)
Lim-Dul is offline
DontWannaName
Veteran Member
Join Date: Jun 2007
Location: VALVe Land, WA
Old 08-16-2008 , 00:13   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #72

I get errors.

L 08/15/2008 - 20:05:13: Info (map "cp_dustbowl") (file "errors_20080815.log")
L 08/15/2008 - 20:05:13: [dmr.smx] An error occurred while trying to determine the next map.
L 08/15/2008 - 20:05:14: Error log file session closed.
L 08/15/2008 - 20:26:44: SourceMod error session started
L 08/15/2008 - 20:26:44: Info (map "cp_gravelpit") (file "errors_20080815.log")
L 08/15/2008 - 20:26:44: [SM] Native "ResetPack" reported: Invalid data pack handle 0 (error 4)
L 08/15/2008 - 20:26:44: [SM] Displaying call stack trace for plugin "dmr.smx":
L 08/15/2008 - 20:26:44: [SM] [0] Line 788, /home/groups/alliedmodders/forums/files/3/6/0/2/6/26655.attach::Timer_SayNextMaps()
L 08/15/2008 - 20:26:59: [SM] Native "ResetPack" reported: Invalid data pack handle 0 (error 4)
L 08/15/2008 - 20:26:59: [SM] Displaying call stack trace for plugin "dmr.smx":
L 08/15/2008 - 20:26:59: [SM] [0] Line 788, /home/groups/alliedmodders/forums/files/3/6/0/2/6/26655.attach::Timer_SayNextMaps()
__________________

DontWannaName is offline
DontWannaName
Veteran Member
Join Date: Jun 2007
Location: VALVe Land, WA
Old 08-16-2008 , 01:36   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #73

When I set the next map it will go to the map then it will say that the next map is the one you set then it will probably change to it again but never stayed to see, I just keep setting the next map, I will see if it fixes when I restart since I just deleted mapchooser even though voting was disabled and i deleted rtv.
__________________

DontWannaName is offline
Lim-Dul
Junior Member
Join Date: Jan 2005
Old 08-20-2008 , 19:10   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #74

Another feature that would be highly desirable would be a command that lets you skip maps in the DMR without having access to the dmr_map_key svar...
Lim-Dul is offline
willy1234x1
Senior Member
Join Date: Jun 2008
Old 08-29-2008 , 21:58   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #75

Feature requests
More conditions like # of rounds, time on map (directly edits mp_winlimit and mp_timelimit)
Skip forward on DMR as well as backwards
E.G. sm_skipmap_f and sm_skipmap_b
willy1234x1 is offline
VictorOfSweden
Junior Member
Join Date: Aug 2008
Location: Sweden
Old 08-30-2008 , 18:39   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #76

I've updated this plugin on a few points in order for it to work on the SpecialAttack servers. One of which is that I've removed the internal variable g_ForceNextMap and replaced it with a function which reads dmr_force_nextmap to determine if nextmap is forced.

I suspect that there a few problems remaining (sometimes changes to the wrong map), but I'll post it anyway for you to hava a look at and/or test.
Attached Files
File Type: sp Get Plugin or Get Source (dmr.sp - 398 views - 24.1 KB)
VictorOfSweden is offline
Blitzo
Member
Join Date: Jul 2008
Old 09-02-2008 , 10:33   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #77

Can you add a weighted randomization variable? That way if you want say 3 maps to be picked from for next map with no dependancy on number of players of time of day, but rather a random pick between the 3 based on weighted factor. For example 0.3 for cp_dustbowl, 0.5 for cp_steel, 0.2 for ctf_2fort. You could combine this with player numbers and time of day as well.
__________________
Blitzo is offline
Hitman-
Junior Member
Join Date: Sep 2008
Old 09-21-2008 , 10:13   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #78

Right now I run 2 servers off the same directories. In the initial post i see that we can add dmr_file "filename.txt" to specify what DMR it should use. I added that to my server.cfg file but it fails to find the specified file. If i just toss a DMR.txt file in their it works great. Any way to specific a different DMR for each servers. Without any plugins we would use mapcyclefile. Is this possible or am i reading this wrong?
Hitman- is offline
crazydog
AlliedModders Donor
Join Date: Jan 2006
Old 09-25-2008 , 12:39   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #79

If I try to set two conditions from a single map ex, current map is hydro, if one thing is true to go 2fort, if another thing is true to go well, else, go to goldrush.

Here's my current DMR

Quote:

"rotation"
{
"start" "badwater"
"badwater"
{
"map" "pl_badwater"
"default_nextmap" "gravel"
"argran"
{
"players_gte" "12"
"time_gte" "12:00"
"time_lte" "23:59"
}
}
"argran"
{
"map" "arena_granary"
"default_nextmap" "gravel"
}
"gravel"
{
"map" "cp_gravelpit"
"default_nextmap" "fort"
"pldust"
{
"players_gte" "14"
"time_gte" "12:00"
"time_lte" "23:00"
}
}
"pldust"
{
"map" "pl_dustbowl_b4"
"default_nextmap" "fort"
}
"fort"
{
"map" "ctf_2fort"
"default_nextmap" "dust"
"labor"
{
"players_gte" "24"
"time_gte" "12:00"
"time_lte" "23:00"
}
"arbad"
{
"players_gte" "16"
"time_gte" "12:00"
"time_lte" "23:59"
}
}
"labor"
{
"map" "cp_labor"
"default_nextmap" "hydro"
"arbad"
{
"players_gte" "16"
"time_gte" "12:00"
"time_lte" "23:59"
}
}
"arbad"
{
"map" "arena_badlands"
"default_nextmap" "hydro"
"fast"
{
"players_gte" "16"
"time_gte" "12:00"
"time_lte" "23:00"
}
}
"fast"
{
"map" "cp_fastlane"
"default_nextmap" "steel"
"hydro"
{
"players_gte" "16"
"time_gte" "12:00"
"time_lte" "23:00"
}
}
"steel"
{
"map" "cp_steel"
"default_nextmap" "hydro"
}
"hydro"
{
"map" "tc_hydro"
"default_nextmap" "dust"
"canal"
{
"time_gte" "12:00"
"time_lte" "23:00"
"players_gte" "18"
}
"lumber"
{
"time_gte" "12:00"
"time_lte" "23:59"
"players_gte" "12"
}
}
"canal"
{
"map" "dom_canalzone"
"default_nextmap" "lumber"
}
"lumber"
{
"map" "arena_lumberyard"
"default_nextmap" "dust"
}
"dust"
{
"map" "cp_dustbowl"
"default_nextmap" "gold"
"turbine"
{
"time_gte" "12:00"
"time_lte" "23:00"
"players_gte" "22"
}
}
"turbine"
{
"map" "ctf_turbine"
"default_nextmap" "gold"
"ravine"
{
"time_gte" "12:00"
"time_lte" "23:59"
"players_gte" "12"
}
}
"ravine"
{
"map" "arena_ravine"
"default_nextmap" "gold"
}
"gold"
{
"map" "pl_goldrush"
"default_nextmap" "badwater"
"ctfwell"
{
"time_gte" "12:00"
"time_lte" "23:00"
}
"arwell"
{
"time_gte" "12:00"
"time_lte" "23:59"
"players_gte" "22"
}
}
"arwell"
{
"map" "arena_well"
"default_nextmap" "badwater"
"jail"
{
"time_gte" "12:00"
"time_lte" "23:00"
"players_gte" "20"
}
}
"ctfwell"
{
"map" "ctf_well"
"default_nextmap" "badwater"
"jail"
{
"time_gte" "12:00"
"time_lte" "23:00"
"players_gte" "20"
}
}
"jail"
{
"map" "cp_jailbreak_b3"
"default_nextmap" "badwater"
"armach"
{
"time_gte" "12:00"
"time_lte" "23:59"
"players_gte" "14"
}
}
"armach"
{
"map" "arena_mach2"
"default_nextmap" "badwater"
}
}
As you can see, after hydro, it should check if there are more than 18 players, and if it is between 12 noon and 11pm, and if that's true, go to dom_canalzone. If there are 12-17 players between 12 noon and 11:59pm, it should go to lumberyard, and if there are less than 12 players or it is between 12 midnight and 12 noon, it should go to dustbowl.

The problem is that it never goes to canalzone, only lumberyard and dustbowl, even if the server is full with 24 people at 8pm.

The same problem happens lower after goldrush, and higher after 2fort It never goes to arena well, only ctf_well or badwater.

Can anyone help me figure out what's wrong?

Last edited by crazydog; 09-25-2008 at 12:45.
crazydog is offline
Cho
Junior Member
Join Date: Aug 2008
Old 11-09-2008 , 08:22   Re: Dynamic Map Rotations (Nextmap Based on # of Players, Time, etc)
Reply With Quote #80

Hi all

Need some help here please?

I am getting this error in the logs

L 11/09/2008 - 12:51:29: [dmr.smx] FATAL: Could not read rotation file "dmr.txt"
L 11/09/2008 - 12:51:29: [SM] Plugin encountered error 25: Call was aborted
L 11/09/2008 - 12:51:29: [SM] Native "SetFailState" reported: Could not read rotation file "dmr.txt"
L 11/09/2008 - 12:51:29: [SM] Debug mode is not enabled for "dmr.smx"
L 11/09/2008 - 12:51:29: [SM] To enable debug mode, edit plugin_settings.cfg, or type:


Also here is my DMR list i only tried a few maps on here to see how it worked.

"rotation"
{
"start" "10"
"10"
{
"map" "dod_donner"
"default_nextmap" "20"
"20"
{
"players_lte" "16"
}
}
"20"
{
"map" "dod_avalanche"
"default_nextmap" "30"
"30"
}
"players_lte" "18"
}
"30"
{
"map" "anzio"
"default_nextmap" "10"
}
}


If Somebody could shed some light on this please it would be appreciated.


Cheers

Cho
Cho is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:18.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode