Giter Site home page Giter Site logo

wearrrrr / eosdecomp Goto Github PK

View Code? Open in Web Editor NEW
23.0 3.0 3.0 531 KB

An attempt to create a byte accurate decompilation of Touhou 6 ~ Embodiment of Scarlet Devil

License: GNU General Public License v3.0

C++ 94.54% C 5.46%
decompilation reverse-engineering touhou touhou-project windows c cpp game ghidra msvc

eosdecomp's Introduction

EoSDecomp

Also known as "A satisfactory decompilation of EoSD brought to you by residents of the Scarlet Devil Mansion" ™

Discord server now available! Join Here!

What even is EoSD?

EoSD, or Embodiment of Scarlet Devil is the 6th game in a series of vertically scrolling Danmaku shooters created almost[1] entirely by ZUN!

So.. why bother?

EoSD is a very important game to me, as it not only features some of my personal favorite characters in the Touhou franchise, but has an incredibly rich history involving the source code for the game, which is now supposedly lost media according to ZUN[2], so therefore the only methods of actually obtaining a copy of Touhou 6 is either piracy or through obtaining a legitimate copy off of places like Yahoo! Auctions Japan.

Okay but that isn't a hard barrier of entry, what is your point?

If it wasn't hard enough to obtain a legitimate copy of the game (or downloading a copy online), then you will run into even more issues trying to get the game to actually play nice with modern versions of Windows! Touhou 6 uses DirectX8, a version of DirectX which is barely supported in Windows 10, nevermind 11. As a small example, here is what the deprecation of DX8 and Windows 10 did to the game.[3] as well as countless threads online complaining about miscellaneous bugs with the game.

Alright alright fine, I'm convinced. What are your goals for the decompilation?

Well that's pretty straightforward. The goals of the decompilation are to get more eyes on the Touhou Franchise, as well as fixing tons of bugs related to the game (Full list of identified bugs coming soon), and ensuring that it can still be properly played in the future!

Contributing

If you want to contribute to EoSDecomp, please read the CONTRIBUTING page!

Closing thoughts

I never thought I would get to the point where I was studying code that a drunken Japanese man fed into Visual Studio 2002 like it was the gospel, but here we are, and it still very much hurts my brain. Thank you ZUN for all the hard work you've put into the Touhou Franchise, and I hope one day that this decomp will see completion :)

Cliffnotes:

  1. In the credits for EoSD, multiple people are listed as "Programming Support" going to pbg and "Special Thanks" going to "ant" and "fang", who have remained relatively unknown to this day, but are likely beta testers for the game.

  2. The article is incredibly poorly translated from my knowledge of Japanese, here is my best attempt at it.

The first release for Windows of the Touhou Project 『 Touhou Koumakyou 』 Will be difficult to release on Steam. This is because there is no source code.

  1. If you simply want to get the game running there are workarounds such as the EnbDev Converter for DX8 to DX9, or dgVoodoo2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.