Integrate Neogeo to CloudRetro

This commit is contained in:
giongto35 2020-02-06 02:54:33 +08:00
parent 4d97ad1f34
commit 974ff64033
6 changed files with 22 additions and 4 deletions

2
README.md vendored
View file

@ -25,7 +25,7 @@ Crowd play: **[Pokemon Emerald](http://cloudretro.io/?id=652e45d78d2b91cd%7CPoke
2. **Cross-platform compatibility**: The game is run on web browser, the most universal built-in app. No console, plugin, external app or devices are needed. Chrome with the latest version and fully WebRTC support is recommended for the game.
3. **Emulator agnostic**: The game can be played directly without any extra effort to set up the gaming emulator or platform.
4. **Collaborate gameplay**: Follow the idea of crowdplay([TwitchPlaysPokemon](https://en.wikipedia.org/wiki/Twitch_Plays_Pok%C3%A9mon)), multiple players can play the same game together by addressing the same deeplink. The game experience is powered by cloud-gaming, so the game is much smoother. [Check CrowdPlay section](#crowd-play-play-game-together)
5. **Online multiplayer**: The first time in history, you can play multiplayer on Retro games online.
5. **Online multiplayer**: The first time in history, you can play multiplayer on Retro games online. You can try Samurai Showndown with 2 players for fighting game example.
5. **Horizontally scaled**: The infrastructure is designed to be able to scale under high traffic by adding more instances.
6. **Cloud storage**: Game state is storing on online storage, so you can come back and continue playing your incomplete game later.

Binary file not shown.

BIN
assets/games/neogeo.zip vendored Normal file

Binary file not shown.

View file

@ -74,9 +74,9 @@ var EmulatorConfig = map[string]EmulatorMeta{
Height: 224,
},
"mame": {
Path: "assets/emulator/libretro/cores/mame2016_libretro",
Width: 0,
Height: 0,
Path: "assets/emulator/libretro/cores/fbneo_libretro",
Width: 240,
Height: 160,
},
}

View file

@ -6,3 +6,13 @@ func MinInt(x int, y int) int {
}
return y
}
func ContainsString(sslice []string, s string) bool {
for _, ss := range sslice {
if ss == s {
return true
}
}
return false
}

View file

@ -6,6 +6,7 @@ import (
"strings"
"github.com/giongto35/cloud-game/pkg/config"
"github.com/giongto35/cloud-game/pkg/util"
)
type GameInfo struct {
@ -16,6 +17,8 @@ type GameInfo struct {
const gamePath = "assets/games"
var excludeFiles = []string{"neogeo"}
var GameList []GameInfo
func init() {
@ -42,6 +45,11 @@ func getAllGames(gamePath string) []GameInfo {
if info != nil && !info.IsDir() && isValidGameType(path) {
// Add to games list
gameInfo := getGameInfo(path)
// Skip file that is in excludeFiles (bios files)
if util.ContainsString(excludeFiles, gameInfo.Name) {
return nil
}
games = append(games, gameInfo)
}
return nil