/Bartizan

Mod Framework for TowerFall Ascension

Primary LanguageC#

Bartizan Plus TowerFall Modding Framework

This is a fork of Bartizan, the mod framework for TowerFall.

What's New

  • Easy-to-use GUI patcher for applying the mods
  • Support for 8-player and 4-player versions
  • Support for Steam and Itch versions
  • Many new variants
  • Bug fixes
    • Fixed glitched replay gifs by removing screen shake from replays
    • Fixed bug on some 8-player levels where asymmetrical treasure spawns even though symmetrical treasure variant is enabled
    • Fixed bug where the game starts with rumble on even when the setting is set to off

What's The Same

  • All the game modes, variants, and UI enhancements from the original Bartizan remain

What's Missing

  • The dev mods from the original Bartizan have not been maintained, so they do not work.

Under The Hood Changes

  • Uses MonoMod instead of Bartizan's Patcher to patch in mod code
  • Patcher is still used to
    • Create BaseTowerFall.exe
    • Compile graphics into atlas files

How to Patch your game

Download the latest version of the patcher from the releases page

Variants

New

Crown Summons Chalice Ghost

In this mode, putting on someone's fallen crown summons the chalice ghost. If the crown is knocked off or the player dies, the chalice ghost vanishes.

Chalice Ghosts Hunt Ghosts

Chalice ghosts will go after player ghosts in addition to players.

Gotta Bust Ghosts

The round won't end until all ghosts have been busted.

Variety Pack

Start with one of every arrow type

Fast Ghosts

Ghost are faster

CalvinFall

New random variants every round!

Ghost Revives

Ghosts can revive, but you can't revive yourself.

Ghost Items

Ghosts can get powerups (everything except arrows).

Ghost Joust

Ghosts can kill other ghosts by dashing into them.

Meaner Monsters

Enemies other than bats and green slimes will come out of dark portals.

From the original Bartizan

No Head Bounce

No Ledge Grab

Koala hunters no more.

Awfully Slow Arrows

Awfully Fast Arrows

Infinite Arrows

No Dodge Cooldowns

UI Enhancements

Win Counter

Resets when you return to the Player Select screen.

Game Modes

Respawn

Best played with Gunn Style activated, obviously. Not shown on the replay gifs: our awesome in-game kill count HUDs!

Crawl

Variants: No Balancing, No Treasure, Start with Toy Arrows

Inspired by a certain other indie game - kill living players to regain your humanity! Unlike in other game modes, you score points for killing enemy ghosts. This may be our most ambitious mod yet, and therefore not quite yet balanced. Toy arrows are a good way to nerf living players if you feel the ghosts are too weak.

How to work on your own mods

This is a little different than the original Bartizan, and it differs between Windows and Mac.

Note: you may need to use Visual Studio 2019, since later versions can't target .NET 4.0

In bin, create a directory called originals. Inside that directory create directories for the versions of TowerFall you'll be working with. For the Steam version name it 4-player. For the 4-player Itch version name it 4-player-itch. For 8-player name it 8-player. Finally, copy the corresponding TowerFall.exe files into those directories.

On Mac, copy FNA.dll into bin.

There are multiple build configs for the Mod project that you can use depending on which version you are patching and whether you are including certain features in the build.

After building, a releasable build will be output at /bin/builds whose directory will match the name of the one in /bin/originals. Also, a copy of the patched TowerFall.exe will be copied to TowerFall-4-player.exe or TowerFall-8-player.exe, etc.

In order to work without patching the game after every build, create a copy of TF that includes the following symlinks (Using 8-player as an example. Replace 8 with 4 as needed):

  • TowerFall.exe -> <BartizanPath>/bin/TowerFall-8-player.exe (this should replace the existing TowerFall.exe)
  • Content/Atlas/modAtlas.png -> <BartizanPath>/bin/builds/8-player/modAtlas.png
  • Content/Atlas/modAtlas.xml -> <BartizanPath>/bin/builds/8-player/modAtlas.xml

Then any time you build the Mod project, just run that copy of TowerFall and it will have the latest changes.

Note that when you change build configurations, you may need to manually switch which BaseTowerFall.exe you include in your references for the Mod project. If you see a compile error about the number of arguments not matching, this is likely the issue.

Windows Specific Things

Check out the windows-build branch of the repo.

You'll need to copy the following dll files to bin.

  • Microsoft.Xna.Framework.dll
  • Microsoft.Xna.Framework.Game.dll
  • Microsoft.Xna.Framework.Graphics.dll
  • Microsoft.Xna.Framework.Net.dll
  • Microsoft.Xna.Framework.Xact.dll

These files can be found in c:\Windows\Microsoft.NET\assembly\GAC_32 and c:\Windows\Microsoft.NET\assembly\GAC_MSIL.