MMR update #32 & #33

This is a dual update for weeks 32 and 33. The main two stand-out features come from The Legend Returns; the option to use the MIDI audio tracks and the option to use the frayed edge blasting style. I was never really keen on adding features from TLR since this project centres on the improved MMR but my opinions on this has changed over time.

A lot of people who email me asking about [insert feature here] that is missing or not the same as they remember, and, 99% of the time it is because the feature was from TLR. I said years ago (and is still in the about page) that I remember playing MMR in primary school. Turns out I was wrong about that. I vividly remember playing a particular puzzle and only recently realized it is in fact the 2nd puzzle of the two player set from TLR (which isn't in MMR).

Thanks to Christian S and Christian D for the TLR features and Howie for helping me sort out the MIDI tracks.

A name in parenthesis and in bold is the finder of the bug/quirk. Thanks to all, I really do appreciate your time and support. Cheers!

Game

  • code cleanup of base player class
  • removed redundant audio track checks
  • refactored brick edging algorithm (shared with editor)
  • added the option to use blasting style from The Legend Returns (Christian S)

The Legend Returns blasting
The Legend Returns style blasting

Instead of all surrounding bricks changing their appearance, The Legend Returns just had another frilly/frayed edge drawn where the blasted brick is. Code-wise, it is far easier to do this than having to change the appearance of surrounding tiles and update the tile the shader uses.

LAN

Nothing major to report this week with the reliable UDP library. All is going well and I've spent the week testing and refining. Another week or so and I should be able to merge it into the game and swap out Lidgren.

  • testing of client/server
  • code cleanup

General

  • removed superfluous tile data when creating blocks
  • pixel shaders updated and recompiled with FXC (previous effects used the XNA content pipeline method here)
  • removed LINQ when finding audio tracks
  • The Legend Returns MIDI tracks added to the CD DLC (Christian D)

You can now listen to the game with the MIDI audio tracks from The Legend Returns (instead of the excellent, studio recorded CD soundtrack from Mad Monks' Revenge). To do this, you'll need to download the updated CD DLC (now called LR_AUDIO) and set UseMidiMusic to true in your config file.

Since TLR didn't have ambient tracks (or anything for Astral and Reef worlds), the game will play the CD version of these.

IMPORTANT
If you've already got the audio DLC then it will no longer work. Renaming the DLC won't work. Sorry for any troubles this might cause.

If the MIDI tracks sound a little different from how you remember, it is because these were played in Windows Media Player and recorded via Goldwave. Why you ask? FNA or .NET has no way cross-platform way of playing MIDI files. I could have PInvoke'd the Windows API to play the tracks but that won't work on macOS or Linux machines.

Bugs being worked on

  • jerky movement when playing on Ubuntu machines
  • darkness mode does not render correctly on Ubuntu machines
  • monks merging when ladders are involved
  • switching to windowed mode hides the Dock (Sierra)
  • regen bomb timing does not accurately match the Original

What I'll probably do next

  • continue working on LAN
  • ability to 'pause' the game when testing and return after minor edits