Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
BilboHicks

ScoreDoom, Enhanced SP & Coop Port v1.9 r4

Recommended Posts

Hello There,
Just thought I'd say hello and mention a gzdoom 1.0.24 sourceport variant I worked on to make playing & re-playing Doom/Doom2 wads more fun.

Its called ScoreDoom and it has 2 main features. A scoring & hi-score system and an 'intelligent' custom monster replacement algorithm utilizing some of the best custom monsters for zdoom.

My ideas for it stemmed from being a fan of fast twitch shooters like Robotron & SmashTV and wanting to incorporate an arcade like scoring system and 'feel' to Doom, since I get a similar enjoyment from playing Doom. The film Grosse Pointe Blank also may of helped influence me :-)

The scoring part is for both SP & Co-Op. Points are awarded for damage done, bonus points for kills, bonus points for secrets found, and a new par time calculation which awards players on how quickly they complete a level. There is also a multi-kill 'chain bonus' feature to rack up even more bonus points for killing monsters quickly in succession.

ScoreDoom utilizes a new HUD which keeps track of the player scores, current map and wad/episode hi scores (SP only) and current points leader (co-op only). ScoreDoom also utilizes the zdoom supported Bloodbath announcer voice to announce chain bonuses, 'boss' kills and player deaths in-game.

The custom monster replacement is built into the port, so that SP games can have a static distribution of custom monsters which then means hi-scores make sense (everytime the same wad configuration is re-played in SP, the monsters (virtually) remain the same.). AFAIK, utilizing DECORATE in a wad to achieve this is not possible. Co-op has a different distribution every time a level is played, and SP can be made to act this way too.

The replacement code which replaces a certain % of default monsters with custom ones, strives to make the game still feel like Doom. This is done with the help of the custom monsters chosen in the custom monsters wad supplied, which has 125 additional high quality (IMO) Doom-like monsters.

Its best to play it and see. There is a full readme with screenshots in the /docs/scoredoom.html file in the archive.

Oh yeah, just an FYI: This mod is meant to be played with regular (multi-sourceport) wads as well as gzdoom supported Doom Legacy wads. There are unfortunately potential problems with playing with some zdoom weapon mods and newer zdoom wads like Demon Eclipse. Weapon mods which make use of zdoom's enhanced DECORATE have the potential of not revealing who killed who, so my code cant find out who the source of damage is from (therefore no points scored). This is unlikely to be fixed. I havent fully tested the zdoom weapon wads or zdoom specific wads out there, but some or most *may* work. Rule of thumb is, if the weapons aren't modded, you should be fine. Some wads with custom monsters like Demon Eclipse will cause conflicts with my custom monsters wad. This is fixable, but probably wont for a while, esp. if the wad has custom weapons too.

-----------

*New in 1.6*:
custom monster distributions are now 100% static for SP (for a given wad configuration). So Hi Scores will now jive properly with Custom Monsters! :-)
Chain Bonuses are toned down a little too, but they are still rewarding enough to go for. (I think the new system is much better, but I would consider going back to the old system, if there was a lot of protest :) )
Also added a new custom monsters & a fix to the possessed commander to make his grenade explosion sound work.

-----------

Version 1.7 is done. I added bonuses for monster infighting & monster suicides.

from the readme:

Since monster deaths due to infighting and suicides are ultimately player assisted, there is a small bonus for these deaths too. In SP, it is equal to the kill bonus of the monster (10% of the original health). In Co-op, the current level points leader (not the total wad score leader on the HUD!) scores a bonus equal to the creature's kill bonus, whereas every other player scores a fraction of this depending on the ratio of their score for the level to the level points leader score. No player can get less than 1pt, and only the current level points leader should get the full bonus.

http://files.filefront.com/gzscoredoom17rar/;9007921;/fileinfo.html

-------------

*EDIT: V1.8 is done, more info @ this post: http://www.doomworld.com/vb/showthread.php?s=&postid=697708#post697708

--------------
EDIT: 1.9 is done, now merged with gzdoom 1.0.29 and new powerups added. More info here:
http://files.filefront.com/gzscoredoom19r2rar/;9233698;/fileinfo.html (v1.9r2 now)

v1.9 source is available here:

http://files.filefront.com/gzscoredoom19rar/;9232604;/fileinfo.html
(*archive documentation updated with link to the source code*)

---------
EDIT: found a dumb bug with the new code in 1.9. Namely the 'Points Bunny' powerup spawning on top of players with chainsaws, and freezing them, since it is clippable.

Thats been fixed with an 'emergency' fix v1.9.r2 here:

http://files.filefront.com/gzscoredoom19r2rar/;9233698;/fileinfo.html

(change to the source code from v1.9 is in the readme)
-----------------
EDIT: Another 'small' release to fix some major bugs, v1.9.r3 here:
http://files.filefront.com/gzscoredoom19r3rar/;9274801;/fileinfo.html

It hs some new features and tweaks like a new artifact powerup
Source code here:
http://files.filefront.com/ScoreDoomv19r3srcrar/;9274743;/fileinfo.html
-------------------
EDIT: Updated to v1.9.r4

Changes in 1.9r4
****************
Artifacts still had problems with SP savegames, due to some behaviour I overlooked with the way I was using randomization. This has finally been fixed.

dl:
http://files.filefront.com/gzscoredoom19r4rar/;9297527;/fileinfo.html

src:
http://files.filefront.com/ScoreDoomv19r4srcrar/;9297514;/fileinfo.html

-----
cool cleaning business

---------
EDIT: Updated to v1.9r5

Changes in 1.9r5
****************
New Artifacts: Points Porkelator, Precognition and Big Backpack. Points Piggy from the Points Porkelator replaces
the Points Bunny.
Several new custom monsters.
Barrels now score +5 points when exploded by a player.
BBA-16X.WAD for the Bloodbath announcer is now autoloaded in the 'skins' directory. I felt the
announcer's voice was too low with BBA.WAD, so this version has virtually every voice amplified.
The original BBA.WAD is included in the archive in case the voices are too loud :-)
Many other small tweaks to improve gameplay.

d.l.:
http://files.filefront.com/gzscoredoom19r5rar/;9737315;/fileinfo.html

src:
http://files.filefront.com/ScoreDoomv19r5srcrar/;9736658;/fileinfo.html

----
EDIT: Updated to v1.9r5B

Contains a critical bug fix for when using artifacts.

Now in co-op, there is a 'POINTS DIFF' stat to show how far behind players are from the
points leader.
The documentation has been updated too.

D.L:
http://files.filefront.com/gzscoredoom19r5Brar/;9742922;/fileinfo.html

(source code d.l. link in the docs)

Share this post


Link to post

This sounds great! Downloading right now. I've been hoping for a port that could randomize monsters and would also keep track of scoring in a more interesting manner.

Have you considered possibly including random weapon/item replacements as well? Or maybe incorporating the level generation from Oblige?

Maybe this doesn't gel with your plans, but I can't help but suggest it. With the in-depth scoring and monster randomization, it seems like a move towards Rogue-like depths. I can only encourage this.

Share this post


Link to post

Hope you like :) Thanks for the encouragement too.

I haven't really considered random weapon replacements, or random item replacements. When the custom monsters wad is used, I am altering health & ammo pickup potency (to accomodate for stonger monsters), but thats about it. Certain custom monsters do drop larger weapons which can change the pace of the game.
I'll check out oblige (it looks like an enchanced slidge) cheers for the info.
(cross-post from zdoom, since I dont mind picking up the conversation here eitherway)

Share this post


Link to post

This is an awesome idea. I checked it out briefly and it seemed like you did a nice job implementing it. Next time I actually play a wad, I think I'll try using this. :)

Share this post


Link to post
Tango said:

I checked it out briefly and it seemed like you did a nice job implementing it. Next time I actually play a wad, I think I'll try using this. :)


Hehe, hopefully I did. There are a few things which I kept simple, like the new par time calculation, which works well enough IMO, but could probably be improved. Also for custom monsters in SP, the (m_random) distribution is nearly always uniform, but not quite. It was the best comprise I could find really, to keep hi scores meaningful in SP with custom monsters. I'm hoping that co-op play will be made a little more exciting too, with the current points leader to beat on the HUD and 500 pt penalties for dying/respawning in co-op, which will penalize players who play recklessly.

I'm spending today finally actually playing and relaxing. Im finding that the chain bonuses I added, can really make or break a hi score. I'm wondering then, how much Doom's implicit pseudo-randomness with weapons will effect a score too, whereby 'bad luck' can break a chain. I'm not 100% familiar with the Doom weapon code, so perhaps I'm worrying too much :-|

A good thing to try, is to beat a hi score of 2600 I set on E1M1 of Ultimate Doom on UV (w.o. custom monsters). It is definitely beatable, but you'll need to utilize chain bonuses better than I did.

Share this post


Link to post

After playing a lot myself, Im probably going to reduce the points for chain bonuses. I think they are a little too much. Right now in quick succession, when you kill 4 monsters you get +10, at 6 you get +20, at 8 +40, at 10 +50, then +50 for every one after that.
I'm thinking that +10 is probably enough for all, since the decreasing requirements for the bonus during the chain, is it itself a bonus :-)
It decreases the importance of this type of bonus, but is still rewarding enough to go for.

Share this post


Link to post

This is pretty awesome. The enemy replacement really adds a new level of replayability for Doom.

Share this post


Link to post
BilboHicks said:

After playing a lot myself, Im probably going to reduce the points for chain bonuses. I think they are a little too much.


Personally I'd say they're fine.

Share this post


Link to post

Thanks for the feedback guys. Glad you are enjoying it. The enemy replacement I spent a lot of time on tweaking, until it 'felt' right to me. Mostly subjective really.
Like I mentioned, SP can be made to have a new random distribution per play, like in MP, but of course High Scores would have less meaning. A option is to play a 1 player co-op game instead, if you don't want to mess up hi scores.

Share this post


Link to post

Got around to playing this and it's a lot of fun! Chain bonuses are satisfying and the random monster variety adds a lot.

Share this post


Link to post
jute gyte said:

Got around to playing this and it's a lot of fun! Chain bonuses are satisfying and the random monster variety adds a lot.


Glad to hear it :-)

You may have noticed that the custom monster distributions are far from static when replaying SP over time. My knowledge of the enhanced pseudorandom code in zdoom obviously sucks :P

Though I finally have a proper fix, so that there will be a truly static random distribution of custom monsters in single player, no matter how many times a wad is replayed in SP for a given skill level.

The custom monsters will now jive properly with hi-scores! :-)

I plan to upload the fixed version of SD, also with maybe 1 or 2 new custom monsters this week.

Share this post


Link to post

New version is finished. The first post has been updated too.

Changes in V1.6:
custom monster distributions are now 100% static for SP (for a given wad configuration). So now Hi Scores will jive properly with Custom Monsters! :-)
Chain Bonuses are toned down a little too, but they are still rewarding enough to go for.
Also added a new custom monsters & a fix to the possessed commander to make his grenade explosion sound work.


v1.6 download:
http://files.filefront.com/gzscoredoom16rar/;8999365;/fileinfo.html


EDIT: Hmmn, I may update again soon to tweak the chain bonuses, currently they may be a little weak. Also I'm not 100% about one of the new custom monsters. The quality isn't quite up to par IMO. Usually I only notice these things after playing for a long while :P

Share this post


Link to post

apologies for the double post.
I've uploaded an updated version of 1.6.
The Download links are updated with a 'fixed' version of v1.6
It has improved chain bonuses.

Share this post


Link to post

Monster infighting needs to be a bonus score imo- it takes skill to get them into a crossfire- it should at least count for SOMETHING. only in Singleplayer though- coop not so much. then again, in Coop, monsters attack a player taht pissed them off, so maybe it could be implemented for Co-op... either way, this would make nuts.wad hilarious.

Share this post


Link to post
Csonicgo said:

Monster infighting needs to be a bonus score imo- it takes skill to get them into a crossfire- it should at least count for SOMETHING. only in Singleplayer though- coop not so much. then again, in Coop, monsters attack a player taht pissed them off, so maybe it could be implemented for Co-op... either way, this would make nuts.wad hilarious.


I look at infighting as a penalty in a way, to force players to make kills quicker, instead of relying on infighting. I'm not sure how many popular wads rely on infighting to allow players to complete a level, since there should always be enough ammo.

I see your point though. Perhaps a fractional damage & kill bonus could be given to the player who caused the infighting.

Thing is I can see a situation, where one monster seeing a player, hits a second one which didnt see the player (or is seeing another player), which in response, hits a third one which also didnt see the player (or is seeing or attacking another player). It gets very complicated as to which player gets the points. Add to that the fact that some custom monsters can damage others, but not cause infighting due to their missiles being separate actors, which means I cant track the monster who fired it.

So I'm not sure if this is a realistic solution considering that causing infighting isnt the point of the mod. In SP this would be a lot simpler, but I would like to keep the scoring system the same for both SP & co-op.

I've toyed with the idea of giving bonus points at the intermission & finale screens. The total monsters killed in the level is already tallied in the source code too, and the difference between that and the total monsters killed by the players can be seen as the 'infighting' causalities (not really, there are also crushers etc..). Each player can then be awarded a bonus for the number of infighting casualties, weighted by their level score. So players with higher level scores get a higher bonus, as they deserve.

Come to think of it, the infighting bonus could be tallied in real time during the level, instead of at the intermission screens. This would be better implemented via rank, than weighted by score. So the level score leader would get say the full kill bonus per infighting, second place 3/4, 3rd 1/2, 4th 1/4 or something. Real time also means I could easily factor out environmental death from crushers etc...

I still think though that infighting points are somewhat contrived, even if they do require some skill. Then again, if the leader is getting more points for the infighting, then it will cause players to attack more to gain the lead, so I dunno. :P

Share this post


Link to post
Tango said:

This is an awesome idea. I checked it out briefly and it seemed like you did a nice job implementing it. Next time I actually play a wad, I think I'll try using this. :)


I found you have to choose your wads carefully when using the custom monsters though. I booted up mm2 with this and got brutally raped at the very beginning by a super shotgun zombie, a couple of rapid fire troopers, a dark imp, and one of those imps with the helmet, mace, and shield.

Share this post


Link to post
Craigs said:

I found you have to choose your wads carefully when using the custom monsters though. I booted up mm2 with this and got brutally raped at the very beginning by a super shotgun zombie, a couple of rapid fire troopers, a dark imp, and one of those imps with the helmet, mace, and shield.


That doesn't sound so bad! ;-) Thanks for the info. I had a similar experience with 2002ado ep4, which lead me to alter the health & ammo pickups to contain more inventory with custom monsters. I'm still debating about giving the players more starting equipment too, though I may just end up tweaking the more dangerous monsters to be even less frequent.
-----------

Version 1.7 is done. I added bonuses for monster infighting & monster suicides.

from the readme:

Since monster deaths due to infighting and suicides are ultimately player assisted, there is a small bonus for these deaths too. In SP, it is equal to the kill bonus of the monster (10% of the original health). In Co-op, the current level points leader (not the total wad score leader on the HUD!) scores a bonus equal to the creature's kill bonus, whereas every other player scores a fraction of this depending on the ratio of their score for the level to the level points leader score. No player can get less than 1pt, and only the current level points leader should get the full bonus.

http://files.filefront.com/gzscoredoom17rar/;9007921;/fileinfo.html

Share this post


Link to post
sausage said:

Scoredoom, great fun! Now all i need it to know how to play co-op... any help?


I added a Multiplayer HOWTO part in the docs/scoredoom.html readme, since both clients & host need to boot up using the command line, or bat file. That should help you. The host needs to get it's IP address (using 'iponfig' in a command window) and send it to the clients before they join.

You can experiment with '-netmode 1' (client-server) or '-netmode 0' (peer to peer). I personally found netmode 1 to work out better when testing on my lan, but YMMV.

I did notice that, every so often, the client got some signficant chronic lag when a game started. This was probably due to my host computer being my dev. box which was probably overburdened with concurrent apps running ;P Just a heads up though. (I tested this morning with both comps basically only running scoredoom and the client ran smooth like the host.)

Let me know how the co-op went. I havent really played any proper co-op games yet, but hope to soon. I'm not sure how zdoom/gzdoom's netcode would work over the internet either. I've read some good and some not so good comments about it. I would think that as long as the players are on cable modems or similar connections and not thousands of miles away, it should be okay.
I initially wanted to base scoredoom off of skulltag, which I gather has improved client-server code, but unfortunately they have closed the source code due to cheaters.

EDIT: Been playtesting thru MM2 on UV and really enjoying it with custom monsters, but on map 6 I could see that some of the more difficult monsters start being a pain. The prevalence of zombie tanks & death incarnates especially, so will probably need to reduce their odds of showing up.

Share this post


Link to post

Is it possible to take the codes and whatnot from Zdaemon, or am I being somewhat too ambitious? thanks.

Share this post


Link to post
sausage said:

Is it possible to take the codes and whatnot from Zdaemon, or am I being somewhat too ambitious? thanks.


Not sure if that's too possible given the extreme Zdoom version differences. With Skulltag code you have a better bet of that working.

Share this post


Link to post
sausage said:

Is it possible to take the codes and whatnot from Zdaemon, or am I being somewhat too ambitious? thanks.


Basically what BlackFish said. I doubt very much I will port code over from old versions of zdoom variants, since I don't have the time or ambition atm. It will also be a fairly steep learning curve (on top of the one I've already had), to make sure everything fits in correctly with the newer zdoom code already in gzdoom as well as the time testing client-server network code I have never really worked with before.

IIRC, ZDaemon is also closed source now.

I want to focus on tweaking the gameplay & balance first, as well as adding a little more polish, before hopefully merging my gzdoom 1.0.24 codebase with the newest (1.0.27), since I gather there are some improvements therein for running in Vista. (Even though I dont intend to get Vista personally ).
After all thats done I may get some ambition in the future to add some of the other features I thought about, like online hi score postings, better networking etc..., but those problems are a lot tougher, especially when dealing with cheaters. I may start a project website, and see if anyone wants to help or contribute (hopefully with better coding skills than me :P), since that might be the only way that some of the more ambitious stuff will get implemented.

anyways, over thanksgiving & the holidays, I'd definitely be up for some co-op if I get the time.

Share this post


Link to post

Okay, It would be a good Idea to get scoredoom onto a site, I _Could_ Help make the site, but im not one for making very good sites, Just basic ones with basic layouts. also you'd need a host, with a reasonable size of filespace and bandwidth, Not too much to ask for, but it costs to get that. You could use a free Webhost, but then you'd have adverts or popups within the site, which isnt very appealing.

Its also a shame to know that You can't work with the ZDaemon code, even if it is hugely outdated. Are there any other online doom ports that exist?

Either way, Good Job on making ScoreDoom.

Share this post


Link to post
sausage said:

Okay, It would be a good Idea to get scoredoom onto a site, I _Could_ Help make the site, but im not one for making very good sites, Just basic ones with basic layouts. also you'd need a host, with a reasonable size of filespace and bandwidth, Not too much to ask for, but it costs to get that. You could use a free Webhost, but then you'd have adverts or popups within the site, which isnt very appealing.

Thanks for the offer. I'm familiar with website development and someone I work with has very cheap web hosting I was planning to use for other purposes. Just a matter of throwing up a site when I get the time.

sausage said:
Its also a shame to know that You can't work with the ZDaemon code, even if it is hugely outdated. Are there any other online doom ports that exist?


Good question. I believe there are. Its not so much that I *cant*, more along the lines of the effort involved and time required. I wont rule it out, just if it does happen, it wont be for some time.
A project site may be a ways for people to coordinate pickup games in the meantime, if there is enough interest.

sausage said:
Either way, Good Job on making ScoreDoom. [/B]

Thanks a lot :-)

Share this post


Link to post

Version 1.8 is essentially finished and has a ton of new enhancements, thanks to some proper play testing, and getting my head around what a 'map item' is etc... :P
Its considered a final release for the time being.

Enhancements include:
Picking up map items now score +2 each. Much better par bonuses. Custom monster difficulty has been greatly improved (though they still give a challenge). A couple of new custom monsters have been added, as well as a few bug fixes.

A much improved readme to describe what ScoreDoom is all about for 1.8 is now available online, until I get a proper site sorted.

V1.8 should be released really soon.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×