Forums > Technical

I made a game - needs testing and stuff

Posts (15)

  • SnowyGamester

    SnowyGamester FIRST Member Star(s) Indication of membership status - One star is a FIRST member, two stars is Double Gold Tech Head

    #16530423 - 3 years ago

    Warning: Lots of words.

    So a few weeks ago I had this idea for a game. It plays like any normal single player game but with one gimmick - it's not a single player game - the game is controlled by a number of players, with their actions being tallied up and the player character moving in accordance with the majority of commands. If that sounds familiar it's because a few days after I started development this "Twitch Plays Pokemon" thing that works off of a very similar premise took the internet by storm. So on the one hand it's good to know that people are interested in that type of weird meta multiplayer game style; on the other hand it makes what I've been working on seem derivative as all get out. It's not that I'm bitter or something - except that I am in fact totally bitter. But I digress...

    So it works similarly to the aforementioned game/experiment/whatever except, instead of using a video stream for viewing and a chat room for relaying commands with around a 20 second delay, it's built from the ground up for this type of gameplay meaning there is far less latency allowing the game to be played in near real-time. My original thought was to make a Mario-style platformer but that seemed like too much of an undertaking for my first game...then the whole Flappy Bird thing happened which gave me the idea of making it like one of the old "Helicopter" style games (I'll admit it is derivative in that sense). So it's essentially a bunch of players controlling a helicopter going up and down through a tunnel, avoiding systematically generated terrain, trying to get the highest score on the leaderboard. Also there's a built in chat and the option to just watch. Also there's an offline version that plays like a regular helicopter game (as if anyone cares about something like that...then again Flappy Bird). It's nearing completion - all that's left to do is test for bugs, fix the bugs, get some decent icons and better looking title text (it's super basic at the moment and I can't art for crap) and set up a dedicated server. I'm posting it to the three forums I frequent (and maybe in a relevant subreddit or something if I don't get at least a few players) in order to get some feedback before I put it up on the Google Play marketplace (and maybe other places...it's made in Unity so a multiplatform release is a definite possibility).

    Download links:
    drive.google.com/#folders/0B8RJGlLpHr1wNXNhU1V...
    (if you're unfamiliar with Google Drive just right click->download)
    The .apk files are the Android builds, the .rar archives are Windows build...whether or not I'll keep the latter around depends on if I can work out a reasonable way to monetize it (I don't exactly see it getting on Steam). "Backseat Pilot" is the main game while "Helicopter 2014" is the offline equivalent. I don't exactly hate the working title however it's not set in stone. Also if anyone can walk me through how the mess of files I end up with when I export to iOS can actually be turned into something usable let me know (I have no idea how that crap works; I was expecting some form of package file...I don't own any iThings).

    Known issues:
    - Lag. Probably a substantial amount. For the time being I have it hosted on my personal computer in a non-city area of Australia (I scoff at those who complain about their 10+ megabit connections for less than $100 a month). Because of how light on bandwidth this game is (under 3kbps total up+down per player) and how well it should scale, under ideal conditions, despite my especially shitty upload rate I should be able to host the current 32-player limit with minimal issues. It should be playable from overseas connections...it's just a case of planning your input about 300ms ahead of time. If all goes well there may be regional servers in the future. Maybe. Then again maybe nobody will like it so who knows.
    - Downtime. It will go down when I'm making changes, if I lose power or internet access, or if my IP address changes and I have to update the DNS redirect. It should be fine most of the time but we'll soon find out.
    - Manual updates. If I have to change anything the server will reject the connection until you download the latest version. I'll keep it in the same place so it's easy to access.

    What I hope to get from you:
    Play it. See how it handles. Report back with any feedback or bugs you encounter if you can be bothered. But mostly just play it. I want it to be played.

  • geekyscotty

    geekyscotty

    #16530549 - 3 years ago

    In reply to xXSnowyXx, #1:

    Is there a Mac version?

    ^_^

  • HOWtwoROCK

    HOWtwoROCK

    #16530868 - 3 years ago

    $Oh god scary word$ okay

  • geekyscotty

    geekyscotty

    #16530881 - 3 years ago

    In reply to HOWtwoROCK, #3:

    You called?

  • HOWtwoROCK

    HOWtwoROCK

    #16530888 - 3 years ago

    In reply to geekyscotty, #4:

    Hold on I'll get back to you on that

  • geekyscotty

    geekyscotty

    #16530903 - 3 years ago

    In reply to HOWtwoROCK, #5:

    Ok then. I'm here for ∞

  • default_ex

    default_ex

    #16531015 - 3 years ago

    You should be able to get latency way below 300ms, connection permitting. Just have to design around the concept that the exact same inputs lead toward the exact same results. Avoid things that produce different results if they are done at different times.

    I've played with the idea of making emulators to do something like TPP but with a client-server type of relationship. The server's only real job would be to sort out input order and host a chat, it wouldn't actually be running the game. This would work as far as I know on most games from PS1 on back. As long as each client gets the same inputs and the game isn't time-dependent for it's RNG, you will always get the exact same results for the exact same inputs. The only real issue is how to go about syncing new connections to the current game state in a timely fashion as well as dealing with packet loss.

  • SnowyGamester

    SnowyGamester FIRST Member Star(s) Indication of membership status - One star is a FIRST member, two stars is Double Gold Tech Head

    #16531514 - 3 years ago

    In reply to geekyscotty, #2:

    I just uploaded some OSX builds...no idea whether they will work though. It came out with some sort of weird .app folder which is something I never ran into back when I had a Mac...that was a long time ago so maybe it's a new thing, or maybe it needs to be recompiled with a different set of software, I dunno. Regardless they're in the .rar archives with .app in the name.

    In reply to default_ex, #7:

    Not sure whether or not 300ms is an accurate ping from an overseas connection - I was just estimating, however when I play online games in US servers they usually come up in the 250-300 ping area which is what I was going on. I'm actually pretty happy with how light the netcode turned out; it's all custom, relying mostly on syncing states and simulating most things offline rather than constant coordinate updates for each object...though the latency itself is pretty much out of my hands until I get a dedicated server closer to most people.

    But yeah, if you're familiar with Kaillera it does essentially the same thing as you described to get local multiplayer of emulated games to work over the internet so it's definitely possible, though I'm not sure whether it let's you join on-the-fly because of how tricky it might be to sync the state, load the game and catch up everything it missed while loading (though they may have added that feature - it's been years since I've used it).

  • geekyscotty

    geekyscotty

    #16539672 - 3 years ago

    In reply to xXSnowyXx, #8:

    Doesn't appear to launch in Mac OS 10.8 or 10.9

    With regards to the whole .app side of things, that's really a quite involved subject so I'd suggest reading this Apple Dev article .... Or just say your App isn't Mac compatible....

    developer.apple.com/librarY/mac/referencelibrary/...

  • SnowyGamester

    SnowyGamester FIRST Member Star(s) Indication of membership status - One star is a FIRST member, two stars is Double Gold Tech Head

    #16540250 - 3 years ago

    In reply to geekyscotty, #9:

    Thanks for the info. Just threw it out there for testing purposes without any idea whether it would work...guess that answers that. Unfortunately I don't have much way to fix it without going through the bother of setting up a hackintosh to test with...will probably just give it a miss.

  • default_ex

    default_ex

    #16542628 - 3 years ago

    In reply to xXSnowyXx, #10:

    This is what virtual machines are form. My setup works a bit like this for cross-platform testing.
    Virtual Box with VMs for each of the target platforms.
    Post build step to build a disk image from the compiled program.
    Duplicate the disk image and inject platform specific auto-run scripts.
    Launch VMs using the command line syntax to force it to mount the appropriate disk image as a CD/DVD.

    Sounds a lot more complicated than it actually is. Takes maybe 5 minutes to set up a batch script to do all this (maybe a little longer if your not familiar with batch script syntax).

  • SnowyGamester

    SnowyGamester FIRST Member Star(s) Indication of membership status - One star is a FIRST member, two stars is Double Gold Tech Head

    #16542672 - 3 years ago

    In reply to default_ex, #11:

    Also a potential solution I looked into however it's technically illegal without going through a bunch of hoops, it's not really my target platform and I'm just a lazy bugger and can't be bothered going through all the downloads and setup for something I'm probably not going to use.

  • SnowyGamester

    SnowyGamester FIRST Member Star(s) Indication of membership status - One star is a FIRST member, two stars is Double Gold Tech Head

    #16560982 - 3 years ago

    Switched to a web player which makes updating easier and also should also work on OSX but if not whatevs.
    Backseat Pilot
    Helicopter 2014
    Will be uploaded on the Google Play store soon ("soon" meaning when I get around to it).

  • default_ex

    default_ex

    #16563269 - 3 years ago

    In reply to xXSnowyXx, #12:

    It would be legal if you were doing it for educational purposes. I think learning to develop a game on a whole new OS qualifies as learning a metric shitton.

  • CreepyStains

    CreepyStains FIRST Member Star(s) Indication of membership status - One star is a FIRST member, two stars is Double Gold

    #16603381 - 3 years ago

    I played it for a bit. It's fun but I get a ping of about 280-350.