All Projects → egordorichev → Burningknight

egordorichev / Burningknight

Licence: mit
C# branch of BK

Programming Languages

csharp
926 projects

Projects that are alternatives of or similar to Burningknight

Proton Caller
Run any Windows program through Proton
Stars: ✭ 130 (-48.21%)
Mutual labels:  game, steam
Rotten Soup
A roguelike built with Vue, Vuetify, Tiled, rot.js, and PixiJS! Playable at https://rottensoup.herokuapp.com/
Stars: ✭ 249 (-0.8%)
Mutual labels:  game, roguelike
Magicallife
A 2d game that aspires to be similar to Rimworld, with more depth, magic, and RPG concepts.
Stars: ✭ 145 (-42.23%)
Mutual labels:  game, roguelike
Trw
The Royal Wedding – coffebreak roguelike with story, lighting, zombies and (sometimes) lutefisk!
Stars: ✭ 113 (-54.98%)
Mutual labels:  game, roguelike
Salien Script Js
👽 A easy to install, run and update Node.js script for the Steam salien mini-game.
Stars: ✭ 181 (-27.89%)
Mutual labels:  game, steam
Sleeping Beauty
Sleeping Beauty: a game created for the 7-day Roguelike 2014 challenge. Coffeebreak length.
Stars: ✭ 115 (-54.18%)
Mutual labels:  game, roguelike
Picodeploy
Deploy Pico-8 Carts as Standalone Applications on Desktop 🖥️(Electron) and Mobile 📱(Ionic) 📦👾
Stars: ✭ 153 (-39.04%)
Mutual labels:  game, steam
Geotic
Entity Component System library for javascript
Stars: ✭ 97 (-61.35%)
Mutual labels:  game, roguelike
Umoria
Moria: a roguelike Dungeon Crawler game | Umoria Source Code
Stars: ✭ 167 (-33.47%)
Mutual labels:  game, roguelike
Saliengame idler
A Javascript Idler for the 2018 Steam Summer 'Salien' Minigame
Stars: ✭ 165 (-34.26%)
Mutual labels:  game, steam
Boohu
Break Out Of Hareka's Underground, a roguelike game.
Stars: ✭ 112 (-55.38%)
Mutual labels:  game, roguelike
Broguece
Brogue: Community Edition - a community-lead fork of the much-loved minimalist roguelike game
Stars: ✭ 185 (-26.29%)
Mutual labels:  game, roguelike
Buy All Steam Games
see how much does it cost to buy all steam games
Stars: ✭ 110 (-56.18%)
Mutual labels:  game, steam
Nethack
Official NetHack Git Repository
Stars: ✭ 1,860 (+641.04%)
Mutual labels:  game, roguelike
Roguebot
My simple rogue-like game for Telegram
Stars: ✭ 100 (-60.16%)
Mutual labels:  game, roguelike
Allure
Allure of the Stars is a near-future Sci-Fi roguelike and tactical squad combat game written in Haskell; please offer feedback, e.g., after trying out the web frontend version at
Stars: ✭ 149 (-40.64%)
Mutual labels:  game, roguelike
Dose Response
Dose Response is a roguelike where you play an addict. Avoid the dangers threatening your mind and body while desperately looking for the next fix.
Stars: ✭ 95 (-62.15%)
Mutual labels:  game, roguelike
Wanderers
An open world adventure and dungeon crawling game
Stars: ✭ 96 (-61.75%)
Mutual labels:  game, roguelike
Remixed Dungeon
Traditional roguelike game with pixel-art graphics and simple interface - Remixed Pixel Dungeon
Stars: ✭ 160 (-36.25%)
Mutual labels:  game, roguelike
Steamsummerminigame
Steam Summer Sale 2015 - Auto-play Optimizer w/ Auto-Click
Stars: ✭ 184 (-26.69%)
Mutual labels:  game, steam

Burning Knight

Available on Steam and itch.io.

Before you look at the code: hear me out. Yes, some of it is not the best. Yes, some of it can be redone and improved. But I have to admit, I came so close to dropping this whole project so many times, I still have no idea, how I made it through May of 2020. Anyway. Here it is. The source code of C# branch of Burning Knight. For java branch see this repo.

(Yes, this is only half of the work, the game was initially written in Java and then rewritten in C#, this code base is relatively nice compared to the Java one).

This project really quickly moved from the "nice and relaxing" to "constant bugfixing and stress" type of project. You can clearly see me going mad in some places (do not look at the pull requests I beg you). But its all in the past now. Sadly, the game has done really poorly on the Steam, even tho I've tried my best with marketing and everything else. I'm still really really proud of the game, it's THE project I can point people to and say: I've made this. That's one of the reasons why I wanted to open the source of this monster.

There are not a lot of open source games, that have been released on Steam. So there is not that much where you can go to learn from real released games. Of course, you can decompile games, but it will never compare to the actual source. I believe in the power open source. I'm opening this project up with hope, that it might turn out to be useful to someone. So yeah, forgive me my code decisions in some places.

Anyway, onto the juicy stuff.

The game has a lot of developer tools in it, but to gain access to them, you must build the solution in Debug configuration. This is really important, because music & sfx wont load in Debug configuration, but dev tools will be enabled. The assets are dropped in favor of quicker loading time (there is still no hotswap support for Mono on Linux).

To access the dev tools, you shall press F1 while being in InGameState (while you are normally playing and not watching a loading screen). A panel with a bunch of checkboxes should appear, that show different dev tools. Have fun!

Why did you merge pull requests into release branch all the time?

You see, this is how I've set up Github Actions CI. The tool went online in the middle of the first summer of development of the C# branch, and it was such a huge help. Before that, I had to compile all the builds for beta testing by hand, but after 3 days of internal screaming I was able to get the CI working, and from that point I was able just to merge my dev branch into release, and 10 minutes later press a few buttons on Itch/Steam to release the new builds.

Building

Hey, so I saw a bunch of people complain online about no building instructions. I couldn't be surprised more, since you just open the .sln file in your C# IDE of choice and compile & run the Desktop project. But just in case anyone is still curious, here you go.

Or if you preffer to do it from the terminal: install the packages:

nuget restore

Debug configuration (disabled sfx & music but has dev tools enabled):

msbuild
cd Desktop/bin/Debug/
mono Desktop.exe

Release configuration (same as on Steam) is a bit more tricky. You gotta install MonoGame Content Pipeline tool and compile the assets (raw sfx -> .xnb). If you are on Linux, you can get it via:

wget https://github.com/MonoGame/MonoGame/releases/download/v3.7.1/monogame-sdk.run chmod +x monogame-sdk.run sudo ./monogame-sdk.run Otherwise, find a binary on the monogame website. After that open BurningKnight/Content/Content.mgcb in the tool and hit build.

If you are on Linux, ignore shader compilation errors, prebuild shaders (via a Windows machine) are already in the repo. After that build the sources and run:

msbuild /p:Configuration=Release
cd Desktop/bin/Release/
mono Desktop.exe
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].