MapvoteX ~ #source code released#~

Need some nice Mods? Here, you are right!
User avatar
Wises
Godlike
Posts: 1089
Joined: Sun Sep 07, 2008 10:59 am
Personal rank: ...

MapvoteX ~ #source code released#~

Post by Wises »

MapVoteX
*Updated: 24 February 2016
Official: Source-Code Released


ProASM has gracefully provided full source code for MapVoteX on his website under UnrealTournament here http://proasm.com/

Take Care.

Direct Links:
http://proasm.com/ut/mapvotex.html

Download
MapVoteX103.zip
for more information visit www.proasm.com
(146.79 KiB) Downloaded 95 times
MapVoteX103_Src.zip
Official source code for MapVoteX
(83.97 KiB) Downloaded 78 times
:tu:

[youtube]09cVuzMTHOE[/youtube]
Youtube Channel

more info
Spoiler
Server Command Line


It is of Paramount Importance that the server startup commandline uses the Tutorial Map.

This is so MapVoteX knows that this is a Server Startup and not just a level or game change over.
When MapVoteX sees the Tutorial map, it now selects the DefaultGame start which is represented by:
DefaultCustomGameNum=X where X is the number of the CustomGame[x] which the admins chooses as the default Game.
So the GameClass or whatever else is in the Server Startup Commandline has no significance what so ever and can be anything you like, because when the Tutorial map is seen, MapVoteX will restart the default game.
Example:

Code: Select all

 
UCC Server DM-Tutorial?Game=Botpack.DeathMatchPlus?Mutator=MapVoteX103.MapVoteX
If you start the server in any other way using some other map MapVoteX will NOT work!!!



About MapVoteX


MapVoteX detects which game is running by the GameName and not the GameClass as other vote applications use.
This enables MapVoteX to use many games, although we have settled on 30 games which should suffice any Admin.
These 30 Games can all have the same GameClass etc as long as the GameNames are different.
In each game MapVoteX will write your selected GameName to the clients Scoreboard.

Each of the 30 games can have their own set of maps, this allows the Admin to have different DM maps for all different types of games that all use DM maps for instance.
To do this is easy and MapVoteX will take care of the paths needed for the seperate Game Map Folders.
Each CustomGameConfigs has a MapFolder= where the Admin can point to the specific MapFolder.
For instance it is probably best to make sub folders off the current Maps folder where you will store maps for a specific game.
Lets take the game Sniper Arena DeathMatch for an example, here ytou can have a map folder called Sniper where all the DM maps for this specific game go and add in the MapFolder=Maps/Sniper
MapVoteX will now automatically set the paths in the ini file to Paths=..Maps/Sniper/*.unr for you.

It is at this point we advise you to remove ALL maps from your servers current Maps folder and put them in special folders for the various games which may mean duplicating several maps but with todays huge hard drives that is not a problem.
Maps that MUST remain in the Maps folder are: DM-Tutorial.unr, CTF-Tutorial.unr, DOM-Tutorial.unr, AS-Tutorial.unr, Entry.unr and CityIntro.unr.

It is also advisable for the admin to keep the DefaultMap from each game in the standard Maps folder, however this will mean using as few defaultmaps as possible.

MapVoteX can load up to 500 maps per game and 200 maps using the internal CustomMapLists.



Installing the Mod



Starting the mod for the very first time.

1. Add the MapVoteX103.u to your System folder.
2. In your UnrealTournament.ini file add it as a Serverpackage=MapVoteX103
3. Start the server and login as Admin - AdminLogin password
4. Bring down the console and type: Mutate MapVoteX SpawnFiles
This will create all the necessary .ini files needed.
5. Stop the server.



MapVoteX Parameters


In the MapVoteX.ini fill out what is needed:

[MapVoteX103.MapVoteX]

bAutoOpen=True
If you want the mapvote menu to auto popup at game end, set this to True.

bAllowMidGameVoting=True
If voting during the game is allowed.

bDebugMode=False
This is for Admins only as it writes a lot of stuff to the log to try and diagnose a possible problem.

bUseCommandOptions=True
MapVoteX offers most the ! commands needed and this will enable them.
Just check that some other mod does not also have them before enabling.

bMajorityPlayerVote=False
Normally at game end and during voting the game will wait till all the players have voted and the map with the most votes wins.
However with this set to True, the vvote will be decided once the majority of players have voted.

bEnableSplashLogo=True
This will allow the loading of a .utx file for the server logo at game start.

bEnableWelcomeMenu=True
This will show a Welcome screen in the Mapvote Menu where a custom .utx file can be loaded for server or game advertising etc.

bShowWelcomeFirst=False
During the game, if a players calls for the Vote Menu, the Welcome screen will show first.

bSortCustomGameList=False
Setting this to True will alphabetically sort the Games in the vote list.

bEnableEmptyServerSwitch=False
Setting this to True, will enable the server to switch back to the default game as in DefaultCustomGameNum= if no players are playing and the server s selected to ome other game.
EmptyServerSwitchTimeMins=20
The time server will stand empty ith no players before it switches to the default game.
bEmptyServerSwitchMap=False
If this is set to True then the server will switch to the default map if the current game is the default game type.

GameStartVoteDelay=15
If mid game voting is permitted, the delay time it takes before the vote menu can be opened from the start of the game.

VoteTimeLimit=60
At game end, the total voting time allowed before a random map is used.

ScoreBoardDelay=10
At game end, the time it takes before the vote menu pops up.

RepeatLimit=5
The number of games that go by before the map becomes available again to vote.

bUseCustomGameMapLists=False
An alternate method to the default method where the Paths= get changed in the server.ini file [Core.System] which points to the MapFolder= in the CustomGame list.
When using the CustomGameMapLists MapVoteX will list the Paths from the MapFolders from all games in the [Core.System] in the ini file.

DefaultCustomGameNum=0
This is a very important setting and points to the CustomGame[x] that you wish to be your default game.
This is also the game that will be chosen when the server starts up with the Tutorial map.

bEnableServerPackages=False
This enables MapVoteX to switch in and out the necessary ServerPackages and ServerActors as needed for each game type. (See MapVoteXD.ini)

MaintenanceServerName=
MaintenancePassword=
In the Admin Menu, is a Maintenance button, which just basically restarts the server with a Specific ServerName, a GamePassword and 1 Bot which can be used by the Admin to inspect various things.
Clicking the button a second time puts everything back to normal.
NB: The server should not be exitted or stopped during a Maintenance mode.

ServerGamePassword=
If you wish to run a private server with a password for the players, add that password here, or leave it blank.

ServerIpAddress=
This was added as some servers do not show an IP address for some reason, so just add it here with the port.
Example: ServerIpAddress=152.111.192.238:7777
Basically in the Info or Welcome screens a Add to Favourites button will appear if this information is present.

DefaultMutators=
Add whatever mutators that will load with every game here separated by commas.

Example: DefaultMutators=SmartDM105.SmartDM,UTbots.UTBots,UTLogit.Logit
DefaultSettings=
Add whatever mutators that will load with every game here separated by commas.
Example: DefaultSettings=MaxPlayers=24,FragLimit=30,TimeLimit=20,GameSpeed=1.15



CustomGames


Here MapVoteX offers 30 possible different game types which can all use the same GameClass if need be as MapVoteX goes bt Game Names and as long as they are names all different everything will work as required.
CustomGame[x]=
bUse=False
This should be set to true if you want it listed in the Vote Menu provided all the parameters are filled in.

MapFolder=""
This should have the folder name of where the maps are for this game. Up to 5 different folders can be used separated by commas.
Example: MapFolder="Maps/DM1,Maps/Sniper,Maps/DM2"

DefaultMap=""
This is the map which will start the game when it is voted and should be a popular map.
Example: DefaultMap="DM-Deck16]["

GameName=""
Here you add a Game name of your choice.
Example: GameName="DeathMatch Killer"

GameClass=""
The actual Game class for this game as required.
Example: GameClass="Botpack.DeathMatchPlus"

Mutators=""
Whatever mutators that may be required for this game.
Example: Mutators="Jopack.RocketArena,UTBots.UTBots"

Settings=""
Whatever settings that may be required for this game.
Example: Settings="MinPlayers=6,MaxPlayers=12,FragLimit=30,TimeLimit=20"



ServerNames


With each CustomGame you can have a different Servername which is added here.

[MapVoteX103.MapVoteServerNames]
ServerName[0]=(bUse=False,ServerName="")



RepeatLimits



These are used and set internally by MapVoteX and should be left alone. However the bAdjustIndividualGames should be set by the admin and indicates whether maps should decrement bu gae type or all at once.

[MapVoteX103.MapVoteRepeatLimits]
bAdjustIndividualGames=True



Server Splash Logo


[MapVoteX103.MapVoteClientIntro]
bUseOnlySplashLogo_0=False
If all the games use the same logo, then just fill in the 1st SplashLogo[0] and set this to True.

SplashLogo[0]=(bTransparent=False,ServerLogoName="",LogoSoundName="",X=0,Y=0)

bTransparent=
This is self explanatory.

ServerLogoName=
This is the name of the logo which resides inside a .utx file created by the admin.

ServerSoundName=
This is the name of the sound that accompanies the logo which resides inside a .uax file created by the admin.

X=0,Y=0
This is the position on the screen where you wish to place the logo and is set in percentage '%'
Example: X=25,Y=80
This will place the center of your logo 25% of the way across, and 80% of the way down the screen, ie, the bottom left corner.
NB. leaving it as X=0,Y=0 will place it in the center and 2 thirds of the way down or is the same as X=50,Y=70



Welcome Screen Logo


[MapVoteX103.MapVoteClientWelcome]
bUseOnlyWelcomeLogo_0=False
Same as the SplashLogo, if all the games use the same logo, then just fill in the 1st WelcomeLogo[0] and set this to True.

WebsiteURL=
If a website URL is entered here a Website button will appear in the Welcome Window and if clicked will take the player to the website.

ContactURL=
This should contain an email address, like whatever@gmail.com for a Contact button to appear.

AnonymousButtonName=
This is the name of a extra button that can be used by the admin if the url is filled in bnelow.

AnonymousButtonURL=
The URL for the extra button.

WelcomeLogo[0]=(bStretch=False,LogoName="",SoundName="")
bStretch=
Set this to True if you want the logo to be stretched equally over the welcome Window.

LogoName=
This is the name of the logo which resides inside a .utx file created by the admin.

SoundName=
This is the name of the sound that accompanies the logo which resides inside a .uax file created by the admin.



ServerPackages



[MapVoteX103.MapVoteServerPackages]

This is where you add all the relavent ServerPackages each game uses when bEnableServerPackages=True in the MapVoteX.ini file.
There are 3 sets of ServerPackages, the TopSvrPacks which handle the top default ServerPackages, the CustomGames[0] ServerPackages for each game, separated by commas, and the BotSvrPacks which carry the default packages that need to come after the game.

ServerActors


[MapVoteX103.MapVoteServerActors]

The same applies here as with the above ServerPackages in that there are 3 sets of ServerActors, the TopSvrActor which handle the top default ServerActors, the CustomGames[0] ServerActors for each game, separated by commas, and the BotSvrActor which carry the default Actors that need to come after the game.



Admin Messages



[MapVoteX103.MapVoteAdminMessages]
This is for internal use only and is where players will leave the admin a message from the Info Window in the Vote Menu.
MapVoteX will also leave messages here for the admin, should a map crash, the Paths have not been filled in properly and various other game options.



Custom Game MapLists



[MapVoteX103.MVXCustomGame_00_Maplist]
There are 30 of these, one for each game and is where the admin can list up to 200 maps for each game should he wish to use the MapList option: bUseCustomGameMapLists=True

GameName=
This is set by MapVoteX and is just a reference for the Admin to easily find his way around each MapList.
Last edited by Wises on Wed Feb 24, 2016 4:55 am, edited 8 times in total.
User avatar
Metalfist
Masterful
Posts: 632
Joined: Sun Jan 03, 2010 3:54 pm
Personal rank: ^,..,^ rawr

Re: MapvoteX ~ Coming Soon

Post by Metalfist »

Sounds good, but it would be nice to see a screenshot of it.
Especially since Im interrested in seeing how mutator/setting switching goes: if its like mapvotela13 or more like a dropdown menu where you can choose mutators/settings.
Image
User avatar
Wises
Godlike
Posts: 1089
Joined: Sun Sep 07, 2008 10:59 am
Personal rank: ...

Re: MapvoteX ~ Coming Soon

Post by Wises »

will post soon , it is similar to MV13 yet very very different

if you want to test it from a player POV click on the GameTracker Banner at the bottom of the Advert ^

^ you will likely be interested in SLV.
Last edited by Wises on Sat Sep 07, 2013 5:55 am, edited 1 time in total.
UT99.org

Re: MapvoteX ~ Coming Soon

Post by UT99.org »

billybill wrote:
Wises wrote:
also Good Luck to BillyBob who would like to be first to cache-rape this mod and...
What's this line? Trying to get the only one of your 624 posts that's worth reading pulled?
ASLY

Re: MapvoteX ~ Coming Soon

Post by ASLY »

Im writing in UnrealAdmin, so I don't re-post :P
UT99.org

Re: MapvoteX ~ Coming Soon

Post by UT99.org »

billybill wrote:Any updates? What version are you running now? Has it a version. Will you be releasing an alpha/beta. You are a good PR guy. All those nice headings. How about some real eye candy. Some screenshots.

I imagine this is kinda like x3dfxmapvote where you pick the mutators/gametype from one maplist but with fancy fonts. Sounds like people were asking for multiple lists AND buttons a combo os MapvoteLA and x3dfx
User avatar
Wises
Godlike
Posts: 1089
Joined: Sun Sep 07, 2008 10:59 am
Personal rank: ...

Re: MapvoteX ~ Coming Soon

Post by Wises »

billybill wrote:Any updates? What version are you running now? Has it a version. Will you be releasing an alpha/beta. You are a good PR guy. All those nice headings. How about some real eye candy. Some screenshots.

I imagine this is kinda like x3dfxmapvote where you pick the mutators/gametype from one maplist but with fancy fonts. Sounds like people were asking for multiple lists AND buttons a combo os MapvoteLA and x3dfx
maybe soon..
Last edited by Wises on Mon Sep 16, 2013 9:47 am, edited 3 times in total.
UT99.org

Re: MapvoteX ~ Coming Soon

Post by UT99.org »

billybill wrote:I asked for more eyecandy damnit. Now I am really stumped, you aren't the PR guy or the graphics guy I know for sure you're not a coder. You aren't simply cache ripping this are ya?

And small hint, the reason dynamic package loader never caught on is because people found it complicated. People still have trouble with setting up mapvotes as it is. Good luck for the release though. Don't expect too much all I'm sayin', maybe some pretty pictures but still waiting on that saving em for the big day hey! Any ETA?? here first! here first!
User avatar
Wises
Godlike
Posts: 1089
Joined: Sun Sep 07, 2008 10:59 am
Personal rank: ...

Re: MapvoteX ~ Coming Soon

Post by Wises »

okay... been awhile since any updates to this one

basically for Beta Testers I have made several (rather ruff) tutorials.. which should be easier to follow then
my messy doc's..

these can be found in the usual places and I am just testing the latest beta 'q' next couple of days.. more likely monday .. which has a few significant changes to it .. including;

~ A few more Features.. extra buttons and stuff.

~ An alternative Map-loading System similar to MVLA13 .. but which can cater for upto 6000+ Maps
^ This Alternative System will be for Controlled Environments where Admins don't have full control

~ Over their Server's .. but allow them to use MVX101 regardless..

~Some Changes to some variable names for coding purposes.

~And mainly several Fixes to minor Bug's and possible future bugs relating to some parts of the Mod
so yeah .. Nearing the end.

Cheers.
JackGriffin
Godlike
Posts: 3774
Joined: Fri Jan 14, 2011 1:53 pm
Personal rank: -Retired-

Re: MapvoteX ~ Coming Soon

Post by JackGriffin »

There was a pay-to-play UT server that was up for a while that ran a mapvote extremely similar to what I'm reading about here.

I'll be the one to say it out loud: there's been discussions about this mod in the backroom channels and it's not all favorable. I sincerely hope that you can prove billy's concerns invalid and that this truly is a new project, not a rehash of a cache rip.

I've read your docs on the DPAL system and I have grave concerns to say the least. You better fully explain to people what's going to happen BEFORE they run this mod or you are going to get crucified when ini's are lost or overwritten. And I hope everything is legit because I can assure you this mod is going to be torn apart and checked by several people. Don't try to pull something.

I don't mean to sound negative. You are a good guy, we get along just fine. I'm simply questioning how you can be so deeply involved in a project of this magnitude and yet your gameserver has such a litany of issues highlighted by Loathe. The whole thing just feels a bit left of center to me but I hope that it releases and everything is fine. I've been wrong before...
So long, and thanks for all the fish
User avatar
Dr.Flay
Godlike
Posts: 3347
Joined: Thu Aug 04, 2011 9:26 pm
Personal rank: Chaos Evangelist
Location: Kernow, UK
Contact:

Re: MapvoteX ~ Coming Soon

Post by Dr.Flay »

Things like this are always a bit radical and likely to break stuff during building.
Loathsome has spotted some serious flaws, but if the developer is informed hopefully these things can be fixed.

As Ferali pointed out, the project is also under discussion at UnrealAdmin http://www.unrealadmin.org/forums/showt ... hp?t=31279 so hopefully enough eyes are on this, to sort any problems.
User avatar
Wises
Godlike
Posts: 1089
Joined: Sun Sep 07, 2008 10:59 am
Personal rank: ...

Re: MapvoteX ~ Coming Soon

Post by Wises »

JackGriffin wrote:There was a pay-to-play UT server that was up for a while that ran a mapvote extremely similar to what I'm reading about here.
No.
I'll be the one to say it out loud: there's been discussions about this mod in the backroom channels and it's not all favorable. I sincerely hope that you can prove billy's concerns invalid and that this truly is a new project, not a rehash of a cache rip.
"Each to their Own" & No.
I've read your docs on the DPAL system and I have grave concerns to say the least. You better fully explain to people what's going to happen BEFORE they run this mod or you are going to get crucified when ini's are lost or overwritten.
#1 Back up your Server.ini (hope that is clear)
And I hope everything is legit because I can assure you this mod is going to be torn apart and checked by several people. Don't try to pull something.
CMU.. who do you think the BetaTesters are?... average-joe-dkfa?.. Got nothing to hide ;).. in fact you will see in the invitelist which you yourself received ... some.. of the serious individuals I have sent copies to.

including your good friend BillyBob.
I don't mean to sound negative. You are a good guy, we get along just fine. I'm simply questioning how you can be so deeply involved in a project of this magnitude and yet your gameserver has such a litany of issues highlighted by Loathe. The whole thing just feels a bit left of center to me but I hope that it releases and everything is fine. I've been wrong before...
those so called problems are due to NewNet and don't actually affect the Server at all.

>> Test for yourself please before spurting BS about something you yourself have not actually tested.

and I don't mean for 60 seconds either :P

^ ALSO ... in testing.. I mean.. from a Gamers POV , as that's who's opinions really matter (when it comes to servers) imo...

kinda weird you know as aside from you and BB... Ive had zero negative feedback .. which surprisingly enough is actually not too bad.

with MrL.. well he was testing from the wrong angle and did not stay for long.. and that was a long time ago .. before MVX.. so not even related tbh.
Last edited by Wises on Mon Sep 16, 2013 12:16 am, edited 1 time in total.
JackGriffin
Godlike
Posts: 3774
Joined: Fri Jan 14, 2011 1:53 pm
Personal rank: -Retired-

Re: MapvoteX ~ Coming Soon

Post by JackGriffin »

"Stop your provoking habit ...or I'll close this thread."

A little premature? This is a discussion of things, nothing more. Wises and I have been friends for a while and everything said here is a frank interchange about something he has presented for us to discuss. If you want this place to be 'UT tech support' and there be thirty-plus safe threads about "Why does my game run fast" then tamp down on everything that involves opinion.

Wises asked our input, I gave mine. He answered with his opinion of mine and I appreciate his honesty. Drop the hammer if the name calling starts but I'd let adults talk with each other as much as I could.

My chief concern is that in the entire UT world there are only a handful of mods that better 'get it right'. Mapvote is right up there as one (if not THE) chief one. Every server runs it so it needs to be perfect. Screw up mapvote and you mess up online playing for everyone. It's one reason I was so hesitant to do anything more to mapvote than to expand the screen in v2. If your mapvote doesn't work and Mr. NewServerAdmin can't get his server to load because mapvote crashes, well he's done with trying to set up a server. This is triple true if the mapvote is going to 'rearrange' the server files themselves. Have we forgotten the upset that ACE caused by simply reordering the server package lines?

Wises is passionate about this project, and that's saying something since we all know he is passionate in general anyway. I'm not an admin but this is his project and I'd grant him a lot of leeway to defend it as he sees fit. I should have the same right as a critique-writer too. If we can't engender discussions then let me know now and I'll answer in my best monotone robot voice.

"Danger, Will Robinson!"
So long, and thanks for all the fish
User avatar
papercoffee
Godlike
Posts: 10443
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: MapvoteX ~ Coming Soon

Post by papercoffee »

Kelly ...What he answered to you was not what I criticise. :wink:
Wises wrote:including your good friend BillyBob.. Edit by papercoffee
It was meant to this sentence where he did try as always to provoke BillyBill ...The part I did edit was the taunt.
User avatar
Wises
Godlike
Posts: 1089
Joined: Sun Sep 07, 2008 10:59 am
Personal rank: ...

Re: MapvoteX ~ Coming Soon

Post by Wises »

soz papers good friend BB :P..

also re your comment on provoking.. i think you better re-read that fellaz shit before editing mine thanks.meaning BB's.. then again i doubt you have any idea on who this poor innocent little angel really is... that you are trying to protect anyway.. and as for these secret fkn backroom convo's wtf is that supposed to be.. some kinda masonry outfit?

was actually being sarcastic.. in that statement because that .... is in no way any authority in anything related to UT period.

Anymore concerns related to him.. on this topic will be pushed aside because i am sick of responding to fkn retards.. and Biased Politically Correct BS.

^THERE YOU GO.. SOMETHING TO EDIT

back on fkn toppic

Anyways.. server Actors/packages and MVX

by default.. this system is disabled.. so average joe-admin.. won't even need to worry about it.

it is setup differently to both ace and dpl/dal.. in fact it is not even dynamic.. which is why i shall refer to it as APL

this system is really powerful and not hard to setup.. for experienced / more advanced admins..

if you watch the vids tut3 you will see for yourself how it works.

i designed it to have 3 parts.. because of ace/ip2country and nexgen type setups.

>> So it has a topserver actors/packages section

>> Then a middle (customizable) Actor/Packages section ..

>> Then a bottom actor/packages section..

therefore.. basically.. the admin can place in order any/all actors and packages to suit even the most complex configurations.

the APL will be considered the most advanced feature of MVX and is actually better to use then the dfault .ini
if you rename your cache folder.. then connect to the server.. you will notice that only.. the files (actors/packages) required for the game at hand are sent through.. and loaded.. then if you switch to say comboshock.. another few files will be sent and only the files needed for that will be loaded. finally switch to slv and see how much stuff is needed for that gametype.

ok.. now what this does is actually allow your servers to work better.. then they currently are.. because only what is needed is loaded for that gametype.

also.. it does not re-write the actors/packages for every map.. only for a change in gametype.

hope that clears stuff up :)
Last edited by Wises on Mon Sep 16, 2013 6:18 am, edited 1 time in total.
Post Reply