Giter VIP home page Giter VIP logo

snes-game-patch-template's Introduction

SNES game patch template


Using this template

Fork this repo, go to the Makefile and edit the variable in the CUSTOM VARIABLES header accordingly. Also double check the links at the bottom of this README file and change them when needed. Make sure you follow the guide to create a Dropbox App and upload the your personal backup ROM of your game. If you don't do this the Github Actions will not work!

This template and its documentation are using The Last Super game as an example. It is a funny open source game made to celebrate the 30th anniversary of the Super Nintendo, go check it out :)

After that you may remove this section from this README file.

What is this?

This is a modification of the original game. As the game is protected by copyrights, this project cannot provide a copy of it for you to download but instead we provide a patch (.bps) file.

A patch is simply a file that contains all the differences between a game and its modified version. Applying a patch to an original game will result in the customized version.

How to play this custom game?

In order to play it your must own the original game and also to have a backup of it in a ROM format, like .sfc. You will also need Flips a program that knows how to apply patches to original games.

Go to the latest release at the Releases page and download the patch file - it is the one finishing with .bps. Them use flips to apply the patch to your original backup ROM. Remember to create a copy of your ROM before applying anything!

With the modified game at hand you may play it using an emulator like RetroArch.

Running locally

To build locally you will need Docker and make. On the root directory of this repo run

$ make prepare && make rom ORIGINAL_ROM=/path/to/your/orignal/backup/rom.sfc

which will create a playable ROM on ./build/release/. If you want instead to create a patch file, just run:

$ make prepare && make patch ORIGINAL_ROM=/path/to/your/orignal/backup/rom.sfc

again, a patch file will be created at ./build/release/.

Also if you are editing the source code it is probably a good idea to rebuild the ROM every time you change something. That can be achieved with

$ make prepare && make watch ORIGINAL_ROM=/path/to/your/orignal/backup/rom.sfc

Releasing

Everything is automated by Github Actions, the only manual step is to edit the text of the release on Releases page. For more details please read the releasing manual.

snes-game-patch-template's People

Contributors

m00qek avatar

Watchers

 avatar  avatar

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.