Giter VIP home page Giter VIP logo

mcclure / snes9x-coop Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gocha/snes9x-rr

32.0 8.0 6.0 12.67 MB

Snes9x fork with support for "cooperative" runs of 1-player games

Home Page: http://www.snes9x.com

License: Other

C 33.92% C++ 49.87% Shell 0.11% Limbo 0.12% Makefile 0.28% M4 0.16% Perl 0.01% HTML 0.73% CSS 0.01% Objective-C++ 1.82% Objective-C 0.54% Lua 0.01% Assembly 3.09% Batchfile 0.01% Pascal 1.36% Visual Basic 2.99% C# 4.97%

snes9x-coop's Introduction

snes9x-coop

This repo is all the bits to build a version of snes9x-rr that can synchronize the state of two Super Nintendo games over the internet (allowing "cooperative" playthroughs of single-player games).

The bits that make this work are pure Lua and are contained entirely in the "coop" directory. These Lua scripts should be able to run exactly the same in any installation of snes9x-rr so long as LuaSockets and IUP DLLs are present in the directory with the snes9x exe. In other words, you can copy the "coop" folder out of this repository into your own snes9x and throw away the rest.

How I constructed this

  • Checked out https://github.com/TASVideos/snes9x-rr ; this version of the repo contains the windows binaries required to build.
  • Checked out https://github.com/snes9x-rr/snes9x ; this version of the repo has a current snes9x branch. Exported files on top of TASVideos archive.
  • Minor fixes to get the result to build in VS2015.
  • Copied Penlight 1.5.2 (from github) into coop/ folder
  • Built luasocket-3.0-rc1 (from github) and copied socket.lua into coop/ and core.dll into coop/socket/
  • Downloaded iup-3.22_Win32_dll14_lib from SourceForge and extracted iup.dll from it, downloaded iup-3.22-Lua51_Win32_dll14_lib from SourceForge and extracted iuplua51.dll from it, renamed iuplua51.dll to iuplua.dll and also opened it in a hex editor and changed its dependency on "lua5.1.dll" to "lua51.dll\0". Copied all this into coop/

How to build for testing

Install the Cg toolkit from Nvidia's website.

Then open the solution file in win32/ and build and run.

How to build for install

To make an install package:

  • Build as release
  • Copy win32/snes9x.exe into install dir
  • Copy lua/lib/lua51.dll into install dir
  • Copy coop/ directory into install dir
  • Copy docs/ directory into install dir
  • Copy README-USAGE.md into install dir as README.md

How to build for Mac or Linux?

You're going to need to somehow build shared objects for the C portions of LuaSocket and IUPLua.

How to use

See README-USAGE.md

Author / License

See coop/README.md for the coop/ licensing and docs/ for the Snes9x license.

snes9x-coop's People

Contributors

adventureoflink avatar alcaro avatar apollolux avatar bearoso avatar bl0ckeduser avatar dartraiden avatar gocha avatar greg-kennedy avatar inactive123 avatar jotarandom avatar juhalaukkanen avatar lionsad avatar maxolasersquad avatar mcclure avatar nebuleon avatar nmagre avatar ov2 avatar sbasalaev avatar tekgo avatar thauti avatar trickart avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  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.