[BETA] DOOMBOARD (rankings mod)

Maps, modifications, add-ons, projects, and other releases for Zandronum. Also includes announcers.
Post Reply
User avatar
Zeberpal
Forum Regular
Posts: 475
Joined: Mon Jun 04, 2012 6:55 am

[BETA] DOOMBOARD (rankings mod)

#1

Post by Zeberpal » Mon Apr 24, 2023 4:39 pm

Image

> > > DOWNLOAD LATEST VERSION

phpBB [media]


Image

DESCRIPTION
——————————————————————————————————————————————————————————————————————————————————————
——————————————————————————————————————————————————————————————————————————————————————

PERPETUATE YOUR RESULTS!
A mod that let you permanently store your map scores for everybody to see! Were you good at crushing monster hordes in Chillax and
ComplexDoom, facing your rivals in Dwango duels and UDM deathmatches or just being great at teamwork of CTF or AOW or
any other wads and mods out there - now you can 'expose' it to everyone!

DooMBoard features:
• UNIACCOUNT: Makes you login your account automatically without keybinding.
• FLAG SELECTION: Want to let everybody know where you from? Pick up a flag that'll show next to your scores!
• RANKINGS BY MAPS: CCMD: RankingsByMaps | Reveal top rankings of the current wad/mod maps.
• LATEST RESULTS: CCMD: LatestResults | Reveal top completionists of any recently passed map
across the database/server cluster.
• PROMINENT PLAYERS: CCMD: ProminentPlayers | Reveal top plodding players of the current database/server cluster.
• INGAME BOARD: A small customizable scoreboard at the corner of the screen.
• MEMOS: Post or read other players memos on the map, like they do in soulslike games.

Be sure to create a zandronum account via https://auth.zandronum.com/ if you haven't done it yet. Also make sure
you're logged in (UniAccount system make it easy) when you're scoring. Otherwise, if you win without being logged in
at that moment, the result will now forever reveal your name as it were at the moment of completion, meaning that if
you decide to change your name or flag, they won't be visually changed for that particular result.



HOSTING A SERVER WITH DOOMBOARD
——————————————————————————————————————————————————————————————————————————————————————
——————————————————————————————————————————————————————————————————————————————————————

Doomboard can be placed in any order of wads stack. When you launch a server, make sure to set up some custom
parameteres below. Use server console to input them. Some server browsers(Doom Explorer, Doomseeker, TSPG, Euroboros)
feature a 'custom parameters' tab where you can also do so on launch:

IMPORTANT SETTINGS:
• databasefile "doomboard.db" !!! This line is a must, otherwise Doomboard won't work!
Please be sure to make reserve copies of database every now and then.


• DB_GameName "" A name that will be used to define your mod/game for database. Must be no longer than 8 letters.
If it's longer than that a game will shorten it. If it's blank a game will fill it with random.


• DB_GamePass "" When you host your game with a Doomboard, anybody from the same server cluster can use this
name as well, meaning a direct interference in your game's scoreboard. To prevent this you can
set up a password for your Doomboard game. After the first launch it'll check your game's name
for this particular password. If it doesn't match GameName's will be changed to random.


• DB_ScoreType X You can use various score calculation systems systems. Default X is 0.
Image
0 - STANDART DOOMBOARD FORMULA:
A default Doomboard formula, which is focused on fair score calculation
in all 16 Zandronum game modes. Here are the differences:
Cooperative, Survival, Invasion count the exact damage monsters take +
bonus points in the first two minutes of the map play - player's damage.
Competitive modes count frags + players amount bonus - tiny death penalty.
Duels has elo rankings and also appreciate nonspawn killings more.
Capture Teamgame modes count damage given + captures + returns + assists.
It uses ZDaemon formula as a base. Doesn't appreciate uneven teams.
Teamgame ACS requires addons, please scroll below for more info on this one.
Image
1 - CLASSIC, basically counts what is on Zandronum scoreboard(kills, points),
except for capture teamgame modes, where each capture equals 3 "kills".
Image
2 - SPEEDRUN, only counts how fast player(s) was. Spectate to restart map.
Image
3 - SPECIAL, behaves like standart Doomboard, except that it's requires it's own
event type script. Useful for non-trivial hardcoded modes(WDI, ZH comes to mind).
Please scroll below for more info on this one.


For example this is what a command for server console might look like:
databasefile "doomboard.db"; DB_GameName "ULTDOOM"; DB_GamePass "MatiMotiNatiNoti";




MISCELLANEOUS SETTINGS:

• DB_CoopResetInventory X It's on by default to start off with standart weapon and inventory to
keep fair play with scoreboard. If X is 1 game will reset inventory, if 0 it will not.

• DB_DontResetAfter "" By default Doomboard has a rule to reset player's inventory in Cooperative modes
upon map start. Unfortunatelly by this version Zandronum doesn't has an embedded
option to do such a thing. So, Doomboard forcespectate and instajoin players to reset
their inventory. However this may cause some bugs ang glitches in certain mods.
For example hub maps in Lexicon or Stronghold. So here is a CVar to add an exception
on maps after which the game should not reset an inventory. Usage in Lexicon for example:
DB_DontResetAfter "#VR". There is also a setting to completelly turn off this rule,
but it's not recommended for a fair play.

• DB_LaunchFromLastMap X If X was set to 1, once server restarted it will
immediately set a map he was shut down on.

• DB_MapReloadAfterHours X If server was innactive for X hours and more,
it will reload the map, when someone connects.



HOW TO MAKE IT COMPATIBLE WITH MODS WHICH USE THEIR OWN CUSTOM SCORE SYSTEM?
——————————————————————————————————————————————————————————————————————————————————————
——————————————————————————————————————————————————————————————————————————————————————


You can adapt any mod with a specific scoring system for Doomboard. You won't have to include Doomboard's
libraries or anything. You still need to know what you're doing and how your mod works, some ACS knowledge too.
If you want to get rid of Doomboard's scoring system entirelly(i.e Damage to points, team scoring, etc),
set this command in server console: DB_ScoreType 3 . Anyway, database check scores
from DB_CurrentScore0 - 63, so these are functions that will basically send score to Doomboard:

TO SET:
ConsoleCommand(StrParam(s:"set ", s:"DB_CurrentScore", i:X, s:" ", i:Y));

TO INCREMENT:
ConsoleCommand(StrParam(s:"set ", s:"DB_CurrentScore", i:X, s:" ", i:GetCVar(StrParam(s:"DB_CurrentScore", i:X)) + Y));

(X is Player's index (PlayerNumber), and Y is his score to set/increment.)

In some mods such as WhoDunIt it should not be revealed how many points players have during the game. For that
a host can use DB_HideCurrentScores 1 command to hide the scores until the round end(in WDI case it still
means there has to be a custom addon to do a database transaction on WDI custom tally screen).



MEMOS
——————————————————————————————————————————————————————————————————————————————————————
——————————————————————————————————————————————————————————————————————————————————————

Memos are messages that players can leave in any spot on the map. You can use it to leave hints for
other players, promote your stuff or just rant about something, idk.
By default only Cooperative, Survival and Invasion modes are available to leave memos on any map.
However, let's say it's a hub map in CTF or Duel pack and it should be okay to leave memos there as well.
In this case admin should have this CVar on:

DB_MemoMaps "#HUBMAP#MAP03" (Commas required)

This line above means a HUBMAP and MAP03 are now available to post memos. If you use this CVar is cooperative
modes it'll leave only those maps for memos as well. If you want to turn off memos in your Coop server
completely just set DB_MemoMaps "!". Max available memos per map can be adjusted by 'DB_MaxMemos' CVar.
If players find these memos annoying they can tone down their visibility in scoreboard options.

Now, how to post a memo? Just type in console, while ingame:

post "your message here" (Commas required)

Commas required, otherwise your memo might be only one word long or just some random jibberish.
If you want to have a neat text, you should know that memo is 4 lines, 62 characters long each.
You can only post a memo once in a few minutes. There might be a more complex system in the future for that.



WARNING
——————————————————————————————————————————————————————————————————————————————————————
——————————————————————————————————————————————————————————————————————————————————————

Even though I tested the hell out of it, there is possibility that something can go wrong, some bugs that can only be discovered with multiple players on.
A suggestion: there is a trial time until May 31. In other words if a serious bug regarding scores come up during this time, these scores could be considered temporary, noncanon.
Even though it's up to server hosts to decide from now.



-------HAVE FUN!--------
Last edited by Zeberpal on Sat Jun 03, 2023 6:55 pm, edited 7 times in total.

User avatar
Zeberpal
Forum Regular
Posts: 475
Joined: Mon Jun 04, 2012 6:55 am

[BETA] Re: DOOMBOARD (rankings mod)

#2

Post by Zeberpal » Sun May 14, 2023 11:26 am

= = = COMPATIBILITY ADDONS AND CONFIGS = = =

"Doomboard" works fine with basic doom stuff. When it comes to total conversion gameplay mods it can be tricky. This is what this post for, here you can find various addons or configs for various mods. I will try to do some myself and update this post time to time, however anyone is free and welcome to contribute!

Image
Spoiler: Lexicon (Open)
DB_CoopResetInventory 0; // In Coop modes Doomboard has to ForceSpec + Join to reset inventory to keep fair play. Unfortunatelly Lexicon immediatelly detects if
players became spectators and restarts map. So you have to set this option to 0! (it's 1 by default)
Last edited by Zeberpal on Wed May 17, 2023 3:10 pm, edited 5 times in total.

User avatar
Zeberpal
Forum Regular
Posts: 475
Joined: Mon Jun 04, 2012 6:55 am

[BETA] Re: DOOMBOARD (rankings mod)

#3

Post by Zeberpal » Wed May 17, 2023 9:27 am

Significant changes made starting from version G1:

• Vastly optimized performance of the mod. Before,multiple info would be merged into single string(s), which gave performance issues, when trying to eject big amounts of stuff out of it in a single tic.
Now, even though database file is going to look less neat, it allows to store scoreboard of 4digit amount of maps, without termination and other lots of data.

• A game will detect and notify player if server cluster doesn't use the same doomboard.db database used on another server of the same cluster. So I won't have to make excuses to players anymore.

• Memos sometimes showing on wrong maps fixed.

• More minor fixes.

• New Console Variables added:
DB_LaunchFromLastMap If set to 1, once server restarted it will immediately set a map he was shut down on.
DB_MapReloadAfterHours X If server was innactive for X hours and more, it will reload the map, when someone connects.

User avatar
Zeberpal
Forum Regular
Posts: 475
Joined: Mon Jun 04, 2012 6:55 am

[BETA] Re: DOOMBOARD (rankings mod)

#4

Post by Zeberpal » Sat Jun 03, 2023 7:10 pm

phpBB [media]


• Added Speedrun, Classic, Special scoring modes.
• DB_ScoreType X You can use various score calculation systems systems. Default X is 0.
Image
0 - STANDART DOOMBOARD FORMULA:
A default Doomboard formula, which is focused on fair score calculation
in all 16 Zandronum game modes. Here are the differences:
Cooperative, Survival, Invasion count the exact damage monsters take +
bonus points in the first two minutes of the map play - player's damage.
Competitive modes count frags + players amount bonus - tiny death penalty.
Duels has elo rankings and also appreciate nonspawn killings more.
Capture Teamgame modes count damage given + captures + returns + assists.
It uses ZDaemon formula as a base. Doesn't appreciate uneven teams.
Teamgame ACS requires addons, please scroll below for more info on this one.
Image
1 - CLASSIC, basically counts what is on Zandronum scoreboard(kills, points),
except for capture teamgame modes, where each capture equals 3 "kills".
Image
2 - SPEEDRUN, only counts how fast player(s) was. Spectate to restart map.
Image
3 - SPECIAL, behaves like standart Doomboard, except that it's requires it's own
event type script. Useful for non-trivial hardcoded modes(WDI, ZH comes to mind).
Please scroll below for more info on this one.



• Added Duel elo rankings system.
You can see player's elo at bottom left during duel. When duel is done u'll see how many points u got/lost.
Points calculation: Frags and deaths matter as well as average elo of two duelers.
Scoring also appreciate nonspawn kills more.


• SOURCE CODE
You can find source code in DBLOGIC lump in i3+ versions.

User avatar
Ænima
Addicted to Zandronum
Posts: 3523
Joined: Tue Jun 05, 2012 6:12 pm

[BETA] Re: DOOMBOARD (rankings mod)

#5

Post by Ænima » Mon Mar 25, 2024 5:35 am

:cool: Very cool!
­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­
Doom64: Unabsolved: New weapons, monsters, and gameplay features for coop !


ZandroSkins
: a pack made by our community

Post Reply