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

Marshmallow Doom (Spring 2020 Update!)

Recommended Posts

Looks interesting! I tried to compile for Mac from the source code and it's complaining about a missing "cocoa.h" file.

 

Edit: ah, it (along with all the Marshmallow stuff) is in the /msvc folder, I see.

 

edit edit: I got a ways in to trying to fix it up to compile on Mac and started running into a ton of code errors, how did this even compile on MSVC??

Share this post


Link to post

The download link has a \\backslash instead of a //slash and therefore does not work.

Also that setup utility lets you set up Heretic/Hexen/Strife even though those games aren't supplied.

 

EDIT: lulziest port I've ever seen. Reminds me of Legacy with all the available gameplay adjustments.

(While we're at Legacy, you could totally borrow its feature of changing the delay between a door opening and closing.)

 

The extra features are accessed via the M key, and there are separate controls for that menu. Which is cool.

 

The funky danger meter is funky. Heh.

Possibility of reducing LS/Caco/Pinky health. Cool! But for some reason you can increase the chaingunner's HP. Why would anyone in their right mind do that?

The "Inventory" seems cute.

Another type of punch. For me it was set to the tilde key, it makes the revenant sound and I dunno what's the point of it.

The "sprint" (for me it was the Q key) is cute as well.

About the sandbox: maybe you could add the option of placing powerups and weapons as well? I mean, yeah you can cheat to get them, but it would be more "complete" that way.

 

Overall I don't quite get the point of this port, but it's cute, so carry on I guess.

Edited by bzzrak

Share this post


Link to post
37 minutes ago, Linguica said:

Looks interesting! I tried to compile for Mac from the source code and it's complaining about a missing "cocoa.h" file.

 

Edit: ah, it (along with all the Marshmallow stuff) is in the /msvc folder, I see.

The project was originally called Cocoa Doom before I figured out there's already a source port by that name.  This project's source files are all in the /msvc folder.  I still have to rename them from the "cocoa" names and move them to their own folder, etc.  When it goes up on Github I'll get it cleaned up.

Share this post


Link to post
59 minutes ago, Cmdr. J.T. Marshmallow said:

Bots for solo cooperative play

Another source port with coop bots?!

 

You have my full attention for this XD

 

Share this post


Link to post

Very nice concept, feels good to have new stuff in development. Btw, i dont get the sound effects in game and menu, only music, SDL issues maybe? I'm on Windows 10. Also, i set the resolution to 1680 x 1050 in the setup file (my native resolution), but the screen get some black borders. Lower resolutions are fine though.

 

Overall i like the idea, reminds me of MBF a bit.

2017-11-02 15_22_06-The Ultimate DOOM - Chocolate Doom 2.3.0.png

Share this post


Link to post
1 hour ago, bzzrak said:

Overall I don't quite get the point of this port, but it's cute, so carry on I guess.

I am a big fan of the Chocolate Doom-family of ports, so I wanted to expand within this lineage but in the direction of improved gameplay, sort of picking up where the now dead Strawberry Doom left off.  The three biggest features: dynamic music, sandbox mode, and bots, are just things that I personally always wanted Doom to do.  And I've always wanted to do something with Doom's source code, so I set a handful of goals and did it.  I wasn't worried about which ports already implemented the same ideas.

Edited by Cmdr. J.T. Marshmallow

Share this post


Link to post
1 hour ago, bzzrak said:

The download link has a \\backslash instead of a //slash and therefore does not work.

 

Whoops!  Fixed.  Thanks!

 

36 minutes ago, GhoulDesecrator said:

Btw, i dont get the sound effects in game and menu, only music, SDL issues maybe? I'm on Windows 10. Also, i set the resolution to 1680 x 1050 in the setup file (my native resolution), but the screen get some black borders. Lower resolutions are fine though.

 

I'm not a huge fan of those black borders either... but you can read about them here:  https://www.chocolate-doom.org/wiki/index.php/FAQ#When_playing_in_a_full_screen_mode.2C_why_is_there_a_black_border_around_the_screen.3F

 

As for the sound... I seem to have left the sound volume at zero in the default config file.  Fixed now... Thanks!

Edited by Cmdr. J.T. Marshmallow

Share this post


Link to post
2 hours ago, Cmdr. J.T. Marshmallow said:

Bots for solo cooperative play or deathmatch

Color me interested for this feature alone, the existing bots for Doom are bad in general and worse for trying to accurately test vanilla-designed maps (since the only ones worth anything at all force jumping or they don't work right).

Share this post


Link to post

This is great news! A fork based on Crispy, cool!

 

As you may have seen, I have just merged Choco's SDL2-branch into Crispy's master branch some weeks ago, so you might be interested in merging these changes into your fork as well.

Share this post


Link to post
46 minutes ago, ETTiNGRiNDER said:

Color me interested for this feature alone, the existing bots for Doom are bad in general and worse for trying to accurately test vanilla-designed maps (since the only ones worth anything at all force jumping or they don't work right).

 

I actually have not explored any existing Doom bot mods yet.  I have much work to do in making the bots smarter (detecting when they get stuck, working together, etc.) but as of now they know a handful of basic behaviors and are pretty good at them.  Their pathfinding ability is probably their coolest feature.  I love playing halfway through a map alone, then spawning the bots for help, and then waiting for them to find me at wherever I am in the map.  I just love it when a door opens and the bots come rushing in with guns blazing.  

 

So long story short, the bots are working, playable, and fun, but have a lot of potential for improvement.  

 

9 minutes ago, fabian said:

This is great news! A fork based on Crispy, cool!

 

As you may have seen, I have just merged Choco's SDL2-branch into Crispy's master branch some weeks ago, so you might be interested in merging these changes into your fork as well.

 

I had not seen the recent changes with SDL2.  That is great news!  I will definitely merge that in.

Share this post


Link to post
10 hours ago, Linguica said:

edit edit: I got a ways in to trying to fix it up to compile on Mac and started running into a ton of code errors, how did this even compile on MSVC??

When I compile it in MSVC, I get 220 warnings, about 50 of which are from my code.  The others come from the rest of the codebase: a lot of warnings from files i_oplmusic.c and am_map.c.

 

I do believe that MSVC is more lenient on what it will compile without errors compared to just about any other compiler.  (I can just hear Bill Gates saying "hey, let's allow it to compile bad code so more people buy it!")

Share this post


Link to post

Hey, this is pretty neat stuff! Liking this sort of versatile/retro combination!

Share this post


Link to post
2 hours ago, Danfun64 said:

So... how's the demo compatibility/netplay for this thing?

Demo/savegame compatibility is unclear at the moment.  I will have to report back after further testing.

 

As for netplay, most features except bots have tested to work in real network games.  (As of now, the bots are meant for a solo co-op experience, but I'd like to get them working in a real netgame soon.)

 

During the first few months of development, I had the pleasure of testing this at a 4-player LAN party a number of times.  Back then, all the new co-op options (friendly fire, weapons stay, monster bonuses, conserved items, etc.) worked very well in a real netgame.  I have not had a chance to test like this again recently, but will be soon!

Share this post


Link to post

Here is another gameplay video:

 

- Part 1: co-op bot along with Doom DJ spinnin' dem beatz (a.k.a. dynamic music)

- Part 2: sandbox game in E1M1 with Doom II monsters (assets are "stolen" out of DOOM2.WAD)

- Part 3: some old-school Doom II deathmatch set to Doom 1 music (another case of petty WAD theft...)

 

 

 

 

Edit: another video demonstrating sandbox battles built in some classic DWANGO maps:

 

 

Edited by Cmdr. J.T. Marshmallow

Share this post


Link to post

Wow - that's some neat gameplay features you've got there! Many ports provide new features for mappers, but features for *players* are immediately fun for everyone "out of the box!" Very cool, indeed!

Share this post


Link to post

This sounds really neat, even though I'm spoiled by GZDoom in this day and age I still appreciate the classic game and seeing these forks of Choco, and in this case Crispy Doom, with expanded gameplay features while keeping the core aesthetic intact is very appealing.

Share this post


Link to post

Looks interesting! I'll give it a try.

 

Just tried it for the first time. So far so good. I wonder if more bots can be added aside from the already available 3 bots though.

Edited by taufan99 : Just tried it for the first time.

Share this post


Link to post

Me too. Would you consider hosting the source code in a public VCS, such as on github?

Share this post


Link to post
On 12/19/2017 at 1:34 PM, Jon said:

Would you consider hosting the source code in a public VCS, such as on github?

 

The source code is now available on Github:  https://github.com/drbelljazz/marshmallow-doom

 

And here's where you can find most of my Marshmallow-specific code:  https://github.com/drbelljazz/marshmallow-doom/tree/master/src/doom/marshmallow

 

Also, the latest test build available for download has been updated with support for SDL2.    

 

On 12/19/2017 at 8:15 AM, taufan99 said:

I wonder if more bots can be added aside from the already available 3 bots though.

 

A while ago I did try getting more than 3 bots in the game and was unsuccessful, however I'll be tinkering with this more in the future.

 

On 12/4/2017 at 8:46 PM, Deno said:

How about CTF multiplayer support? 

 

Adding a CTF mode is on my todo list!

Edited by Cmdr. J.T. Marshmallow

Share this post


Link to post

Question about the dynamic music system: How well does it handle the transition between safety and danger? What I mean is: Does it attempt to musically transition (which would probably be kinda difficult to build, but awesome), or does it just switch from song to song?

Share this post


Link to post
On 3/26/2018 at 8:41 PM, kb1 said:

Question about the dynamic music system: How well does it handle the transition between safety and danger? What I mean is: Does it attempt to musically transition (which would probably be kinda difficult to build, but awesome), or does it just switch from song to song?

 

Hey sorry for the delayed response, but you ask a good question. 

 

The way it works now is that the player can choose between shorter/longer song lengths (2500 tics or 3500 tics) as well as an optional song minimum length (seen in the menu as Music Changes: Normal/Fast).  The defaults are 2500 tic song length with song miniumum enabled, which are the recommended settings for the best "flow" between songs.  If people don't mind the music changing more rapidly, they can set the music changes to fast.

 

Now in order to transition between songs musically, I suppose I would need to make the game aware of beats/measures in the currently playing MIDI file, however this layer of the MIDI playback is not accessable via the game's source code.  In order to do this I would likely have to make my own changes to SDL_mixer.dll which could get pretty tricky.

Edited by Cmdr. J.T. Marshmallow

Share this post


Link to post

UPDATE:  A lot has changed since the last time I updated this thread, and a new version has been released as of Nov. 1st:  Download here

 

 A few notes regarding the latest update:

  • The main menu now features a brand new New Game menu which allows you to jump between singleplayer, coop, deathmatch, and sandbox modes without having to restart the game; note that this feature is still "experimental" so if you encounter any issues switching between game modes via this New Game menu, instead just launch your desired game mode from the command line (use -bots # to add bots, -sandbox to start a sandbox game, -dm3 to start a deathmatch game)
  • The PKE meter (which powers the dynamic music) has been completely rewritten from scratch
  • The player profile as well as many of Marshmallow Doom's new game settings are stored to disk in profile.cfg and marshmallow.cfg; if necessary, you may delete these files and new ones will be created automatically with default settings
  • Some features such as destructible corpses do not yet work in network games, and network games have not yet been thoroughly tested
  • Crashes related to the PKE meter and sight checking have been fixed
  • The WAD stealing feature still has a few bugs (switch textures and skies being changed unintentionally) but luckily it is stable enough to encourage its use, so to try it just start the game with command-line switches -d1s (Ultimate Doom levels with stolen Doom II assets) or -d2s (Doom II with stolen Ultimate Doom assets) and remember that both DOOM.WAD and DOOM2.WAD need to be in the same folder as the executable
  • The datapad now features some really cool graphics which are only available when DOOM.WAD is present.  If you use this as your IWAD you will see the datapad graphics, or if you use wad stealing in Doom II the graphics will also be available.  (I have been unable to find comparable techbase-style textures in DOOM2.WAD)
  • Default player name is "Player"; if you would like to change your name, open chocolate-doom.cfg and change the player_name field

 

Recommendation:  For a totally-fresh-but-classic Doom experience, try playing episode 1 of Ultimate Doom in Ultra Violence 2.0 skill with bots and WAD-stealing.  The following command line will get you there:  marshmallow-doom.exe -d1s -bots 2 -uv2   

Edited by Cmdr. J.T. Marshmallow : Added more notable changes to the list

Share this post


Link to post
On 11/2/2017 at 5:25 PM, Cmdr. J.T. Marshmallow said:

Dynamic music system driven by gameplay events in real-time which can use music from both your Ultimate Doom and Doom II wads at once

Ok, you got my attention. I really have to try this SP.

Share this post


Link to post

I also was working on having some kind of item sharing, to put in Legacy.  Not only because I like the coop play, but also because I was going to add more weapons, and restrict the carry capacity.  My plan was to be able to dump weapons on the ground and then the player can pick up what they want.  That way there is no going off to menus in the middle of play, and it allows a monster to attack in the middle of this, in a workable manner.  The idea is to basically use the ground as the selection menu.

The need for this was having a possible 20 weapon types, and limit the player to only 9 weapon slots, so they have to be able to choose a weapon to drop in order to pick up a new type.

I like the idea of being able to inventory too.  In Legacy, I have the heretic inventory system to work with as a start, but have not figured out how to use it in doom.

Now that you have implemented first, I will have to see what you have done.

 

Share this post


Link to post
13 hours ago, wesleyjohnson said:

I also was working on having some kind of item sharing, to put in Legacy.  Not only because I like the coop play, but also because I was going to add more weapons, and restrict the carry capacity.  My plan was to be able to dump weapons on the ground and then the player can pick up what they want.  That way there is no going off to menus in the middle of play, and it allows a monster to attack in the middle of this, in a workable manner.  The idea is to basically use the ground as the selection menu.

The need for this was having a possible 20 weapon types, and limit the player to only 9 weapon slots, so they have to be able to choose a weapon to drop in order to pick up a new type.

I like the idea of being able to inventory too.  In Legacy, I have the heretic inventory system to work with as a start, but have not figured out how to use it in doom.

Now that you have implemented first, I will have to see what you have done.

 

 

That's a really cool idea for dealing with weapons.  And for some reason I always enjoyed the limited weapon capacity in Rise of the Triad where you can only carry one big gun at a time. 

 

Also, I think weapon/item balance between players in coop is one of (original) Doom's greatest weaknesses.  Typical scenario would have one player armed to the teeth while everyone else runs around with zero ammo.  (And we all have that one friend in coop who grabs a medkit even when he has 99 health...)

 

Share this post


Link to post

 I've just found the port was updated a few days ago with new features. The link it's in the first post.

 Something i don't like it's that even when the code is on GitHub all commits are the same "Add files via upload" instead of a description of the changes which renders the version control system useless. If he uploaded the source in a zip it would be the same.

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
×