Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

OBEY - Highly Asymmetrical Multiplayer

Discussion in 'Works In Progress - Archive' started by bugmagnet, Aug 10, 2014.

  1. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Hi everyone :D
    I thought I would start a dev log here to help show off a Unity game I have been working on: OBEY





    We’ve all played games where you command groups of AI characters, or team mates. OBEY instead puts you in the position to command your enemies (human opponents), and to be commanded by them. Players are always free to obey/disobey. It is up to them to deal with the consequences of their actions in the game.

    Think of OBEY like an RTS… except your units are the other players… and they are all untrustworthy scumbags who will stab you in the back first chance they get.

    If you are being coerced you have only stealth, intelligence, trickery, and creativity to escape.

    It is sort of like Counter Strike Jail Mod meets Spy Party meets Texas hold 'em

    To win, make more money than any one else by the end of the round.
    To make the most money, you have to take command of the giant robot (the robot player makes 10x more than the other players per second)
    You take control of it by walking into the door at the base of the robot.
    The player in the robot can easily destroy any player he sees trying to approach (IF he sees them).
    That's the basics - so superficially, it plays like 'king of the hill'.

    Here is the twist:
    Experienced robot players will know that it is not always in their interest to simply kill the approaching players.
    Why not? Because he can instead coerce them to do things to help him win (things that are against their own interest).
    and that's where the game gets interesting...



    "A sentry has sent 1TW of power to your bunny."​
     
    Last edited: May 18, 2015
    randomperson42 and hippocoder like this.
  2. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
















     
    Last edited: Jan 10, 2015
    NomadKing likes this.
  3. inko

    inko

    Joined:
    Nov 29, 2013
    Posts:
    143
    I really really like the art style you got going on here. Very distinct and darn good looking. And that huge machine gun thing looks freaking awesome! Teach me your ways! :)

    Unfortunately it's kinda difficult to get an actual idea of how the game plays out just from text. Any chance we can get a little gameplay demonstration, or a little explanatory dev log video or something like that? Would love to learn more about the gameplay mechanics.

    Even after reading your gameplay concept I don't quite GET what it really means. Why do people have to obey anyone? Why don't I just kill the other players? Might be just me being dumb right now but some more explanation would be nice.

    Oh, and the link to your last screenshot is broken.

    Keep it up and keep rockin.
     
  4. TheRaider

    TheRaider

    Joined:
    Dec 5, 2010
    Posts:
    2,249
    looking awesome. I love the concept art especially.
     
  5. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Thanks for the encouragement guys :)

    Hey inko,
    It's a good question - it usually takes a little longer to explain how it works, so when introducing the game I always simply write that the gameplay is centered on the coercion of opponents into acting against their own self interest. So no, you're not thick! Here is a little about how the gameplay works:

    There are a couple of reasons why a robot player would not want to simply kill the other players:
    - he may suspect that you are AI, in which case AI always obey and can be used to his benefit.
    - the 'loose' players who's position are unknown are very dangerous to the robot. In fact they have a pretty good chance of getting by (right now I would say about 40% - but it depends a lot on the map). So if there are a bunch of loose opponents, the robot player actually doesn't have that much chance to stay in control for very long. If he simply kills you, you spawn loose again (if the robot can control you it is safer for the robot).
    - if you obey, the robot player may ask you to do things like place walls or mines (that make it harder to reach him), make you place lights and destroy cover (make it harder to hide), make you wear a collar that tells your location as long as you carry it, load his weapons etc... (I know you are asking why anyone would do this - ill get to that!)

    Then, there is the 'dropship'.
    The dropship can be purchased by the robot player for a high amount.
    The dropship:
    - enforces a spawn time on killed players (they spawn in the ship and have to wait x minutes to be dropped in again)
    - no $ is made by players while waiting in the dropship
    - drops players in front and open view of the robot where he knows where they are
    - allows the robot player (and other players while inside) to buy stuff with their $ (remember having the most $ is how you win, though)
    - if too many players are in the dropship, there is a way for them to destroy it (so robo doesn't want to just kill everyone while a dropship exists or he will not only lose his dropship, but then everyone starts respawning loose - his control wont last long).

    So now to your question, why would anyone obey?
    So let's say the robot spots you, doesn't kill you, and gives you a 'directive' (you can see some directives in the screenshots). You always have the choice to obey or disobey - which disobeying almost always makes sense if the dropship doesn't exist because if robo kills you you will just respawn loose, but if it does exist - you will just respawn right in front of him again! Hence, you gain nothing, and lose time and $ that you would have made had you obeyed. The robot can also bribe you to obey, too! (see the cents directive in the robot view)
    So consider this:
    - once spotted, it's very difficult to escape alive. Very low chance to survive.
    - you can try to pretend to be AI to get robo to overlook you
    - you gain nothing by dying (and restart in an even worse position)
    - if killed, you do not make any $ while spawning
    - you might gain money by obeying ( and depending on the amount could be a big incentive if you are losing)
    - MOST IMPORTANTLY: if you think you can find a chance to subvert the robot later, everything you do against your interest now will in fact benefit yourself later, since it will make it that much harder for the other players to then reach YOU! That's because anyone in the robot inherits the dropship - walls - lights - mines - everything that was done by the previous robot master(s).
    AND whenever control of a robot changes, all players automatically 'die' and respawn. This means that if there is a dropship - you will have control of everything if you reach the robot because everyone will all drop in front of you, and they will have to find their own way to escape (kinda like half-life prison mod in this situation) they may try to confuse you as to who is AI or not, though... and they may have some tricks too since remember they can buy some goodies while inside the dropship, too.

    There is balancing and features to be added, but this is the idea. :)
    - Also, a ground player might even join the robot's side is if time is running out and they see no chance to win 1st, they may take payment to stay in the game (2nd or 3rd) in exchange for 'outing' or spotting other players for the robot.
    - players will be able to pay each other as well, so there can be counter-bribes, and people even working together over skype or whatnot. I want to incorporate and balance this type of 'cheating' into the game, if I can.

    (btw.. I can't figure out why the last image link doesn't work... tried fixing it but after spending some time fighting with the post editor... I decided to simply invite you or anyone else who is interested to visit obeygame.com :) Thanks for letting me know though!)
     
    ogike likes this.
  6. ANTMAN0079

    ANTMAN0079

    Joined:
    Mar 16, 2013
    Posts:
    277
    ... You should probably never try to explain this game again after all of that text. Maybe you should ask somebody to type up a short gameplay treatment for you, along with working on a video of actual gameplay.
     
  7. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Yes. Thanks for the feedback. I agree with you. Hardly anyone will read it, or fall asleep reading it. I think I will try to make a video soon about it.
     
  8. inko

    inko

    Joined:
    Nov 29, 2013
    Posts:
    143
    I actually did read it, tough I think I have to agree with ANTMAN on this one ;)

    Anyway, it sounds like a pretty interesting concept. Actually reminds me more of a stategy game then an an action game which i totally didnt expect based on the screenshots.
    It might be a challange to portray all these complex mechanics to the player without forcing them throug a wall of text though, but I'm sure that can be done.
    How far into development is it? have you played it yet?

    Should you ever be in dire need of testers, give me a call! Would love to give it a shot ;)
     
    bugmagnet likes this.
  9. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Yea, you guys already convinced me I need to make a video to really make it clear and quick to understand.
    You are also right that it is more of a strategy/mind game than a game requiring quick reflexes. Although having quick reflexes can only help, I do not want the game to rely on 'twitch shooting' or accurate reflexes. I want mastery of this game to center on subverting opponents with intelligence, creativity, and subtlety.

    OBEY is playable right now. The basic mechanic of hiding and sneaking and taking over the robot to score is in place and it is fun. I am working on getting the other, deeper gameplay going - but to do it I have to implement a variety of features to balance it and also spend time on flashy FX for the kickstarter as well (kind of unintuitive for me to work on visuals first but here we are! :p)
    I would say the game is about 30% done at the moment.

    Thank you :) I really appreciate you offering to test. I just might give you a holler! I played your game yesterday actually, it's pretty neat - reminds me of an old game called 'Think Tanks'.
     
  10. Luftbauch

    Luftbauch

    Joined:
    Jun 16, 2014
    Posts:
    9
    Good luck for your project.
    I like the style.
     
    bugmagnet likes this.
  11. Rob-Mills-Audio

    Rob-Mills-Audio

    Joined:
    Sep 3, 2012
    Posts:
    46
    This looks awesome.. Love the gameplay ideas.
     
    bugmagnet likes this.
  12. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Tis fresh. Hippo like.
     
    bugmagnet likes this.
  13. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Thanks for your encouragement guys! :)

    Been working on some effects:



    check out those PROFLARES!!!
     
    Last edited: Aug 14, 2014
  14. indiegamemodels

    indiegamemodels

    Joined:
    Jan 25, 2012
    Posts:
    269
    This robot-monkey-machinegun is just awesome !
     
    bugmagnet likes this.
  15. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    working on getting the dropship working properly...










     
  16. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    inventory!! :D





    Last night the first playtest with 6 people occurred!

    Not surprisingly, several issues came up, but overall it was a success.
    - Networking held up perfectly (this was my biggest fear where things could go wrong).
    - the desired gameplay did arise intermittently (albeit in a very unpolished form).
    - after playing for a bit, everyone started trying to trick the person in the robot
    - an issue that came up is that buying the drop ship almost never helped the person who bought it, but the next person who took over the robot


    One of the most surprising things was that when some people first played, nerd rage came out because they kept losing when they played in the style of 'kill everything that moves'. I purposely put in various disincentives to play this way, and I thought that the lesson would come quickly, but it didn't. I am not sure how to communicate how to successfully play in this game, it is the most difficult things I am encountering so far is communicating the game. Maybe it is just a side effect of making something that doesn't play like other games, but shares many of the tropes (shooting, inventory, etc)?
    I am planning to make a video about it soon (like you guys suggested earlier) to help.
     
  17. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    It's always going to be tricky introducing what essentially people view as an optional mode like king of the hill or whatever. Although your premise is a great one, people have grown up with different expectations out of the box so there's challenges ahead.
     
    bugmagnet likes this.
  18. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Yes, was one of my takeaways from the play test as well.
     
  19. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Added a non- placeholder reticle for robo:



    and made some posters to help promote the game at the Boston Festival of Indie games... where OBEY will have it's very own booth! Come say hi if you will happen to be there :D



     
  20. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Did a play test last night with several new items:


    Some fixes to do... but nothing scary. The desired gameplay emerged for a large part of the game but was not yet dominant. At several points I was being coerced to basically give points (uranium) to an opponent, until i could find a time to toss my collar and get away.
    I am most happy with the changes caused by the addition of the 'collar' item.
    All collars in the game can be seen easily by robo (eg the orange triangles point to collars):


    Having the collars really changed the dynamic and pushed it into coercion territory.... players in robo consistently used them as designed, ordering "put them on or die" to make subjects trackable and hence submissive. .... yet allowing bunnies to drop the collar like any other item left just enough 'out' to allow bunny players to find narrow opportunities to escape (I was able to do this myself multiple times).

    The pointer unfortunately was not used much. I think I have to make it more practical and beneficial to use. It could be because of the map though: the test map had an outcrop between robo and the drop area so it was hard to point out players that were near robo from where most of the pointers were.


    Also, sentries are working now!

    The sentries flip on as soon as robo changes hands to fry any players that might be tailing the new robo player or camping the door. This was supposed to cause players to think twice before going in if they saw another bunny trying to race in. In the playtest however, it usually just caused a game of chicken where both players just rushed anyway, with the second player getting fried. It worked well though, I don't think I will change it since it gives new robo players 30 seconds to consolidate their situation before competition for robo begins again.
     
    Last edited: Sep 7, 2014
  21. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    So on Saturday I showed OBEY off at Boston Festival of Indie Games.
    The response was overwhelming. It gave me hope that I can pull off a kickstarter and finish this project.
    A bunch of people told me it was their favorite game in the whole show, including some press guys.
    I brought 5 computers and set up a LAN so people can play the game.
    All 5 computers were filled practically the entire time with people playing and trying out the game.
    50 people signed up for our kickstarter emailing list and a bunch of people left and came back to play again after seeing the rest of the show.
    For the most part, people played the game using the 'king of the hill' strategy (basically shooting everything that moves)... except for 1 or 2 groups of players that kept playing for a few hours, after a while they started coercing each other, realizing it's a better way to stay in control. This is pretty much what I expected to happen, so it also gives me hope too that the design is on the right track.

    Tonight I am taking the game to Boston Indies Demo Night and having devs and other indies in the Boston area try it (with some minor bug fixes that were exposed during BostonFIG!) I'll post about how that goes!
     
  22. AgentParsec

    AgentParsec

    Joined:
    May 5, 2012
    Posts:
    403
    How are you on sound/music for this?
     
  23. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Right now there is no sound at all in the game, but I have a sound guy chomping at the bit to get started on this.
    If the kickstarter succeeds, we'll get serious about sound. For now sound/music work will just be for the promo videos that we'll do for the kickstarter.
     
  24. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    I’ve been quiet, but I have been working very hard preparing OBEY to go into kickstarter mode!

    As you can see I have implemented a flamethrower.

    It’s main purpose was to have a way to counter players that like to camp the door before subverting. The strategy is to wait by the door until the robo player has bought a dropship, bought some goodies, or killed off the other nearby players before subverting! It’s a great strategy, but it should have a counter in the game. That is the flamethrower. The flamethrower can be aimed down to the door and will easily incinerate anyone camping there. The drawback to the flamethrower is that it leaves charred corpses when it kills bunnies. Charred corpses are dangerous to robo because other bunnies can smuggle them to robo’s loading area and drop them in, causing the robo player to incur a large $ penalty. The robo player can destroy the corpses though by shooting them.

    I think I have a very stable build going now, so I feel comfortable with press trying it out, and the above was recorded to edit into the trailer. So here goes...
     
    R-Lindsay likes this.
  25. randomperson42

    randomperson42

    Joined:
    Jun 29, 2013
    Posts:
    974
    Nice. That GIF is awesome.
     
  26. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Hey Guys I just launched the OBEY Kickstarter!

    Back it!



    and Vote!
     
  27. Pawl

    Pawl

    Joined:
    Jun 23, 2013
    Posts:
    113
    Game looks pretty cool; I'm digging the VFX.

    Love the GIFs, too. How did you create them with such high quality?

    Best of luck on the Kickstarter Daniel!
     
  28. primus88

    primus88

    Joined:
    May 14, 2013
    Posts:
    611
    The game looks fun and the kickstarter campaign seems to have the right ingredients, except two:

    - too much money
    - too little coverage

    This combo will block you from obtaining the desired results.
    I'm reading it and I think you could do it for way less. I think 20.000 would be a much more realistic sum.
    The days when Kickstarter brought tens of thousands of dollars are way gone sadly, but let's hope I'm wrong.

    Good luck man!
     
  29. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Thanks Pawl :) It is a coverted fraps capture. I use gif movie gear to optimize the gifs. It's a good tool, and not very expensive.

    Hey Primus, Thanks for the well wishes! I think you are very possibly right. It certainly looks that way right now for OBEY. The thing is that the money is what I determined to be the minimum to guarantee to get it out featured and finished as promised. The whole point of the OBEY kickstarter is to guarantee delivery on the promises. So if I just raised 20k (which would probably mean something like 11k in-pocket) I could not promise even the completion of the game, and certainly not all the things in the feature list. So although I agree it would be more realistic to raise, it would not be more realistic to finish the game with.
    The other component is coverage, which you are certainly correct, and which I have been trying hard to get. Every day I write to journalists and YouTubers. I have had only small success so far. But I am not giving up yet - every time I get someone to play, they love the game and notice quickly that they have never played anything like it. So I still have hope I can make a breakthrough this way, although things are not looking good for the Kickstarter atm.
    I really appreciate the feedback btw.
     
    randomperson42 likes this.
  30. randomperson42

    randomperson42

    Joined:
    Jun 29, 2013
    Posts:
    974
    Looking forward to this game for sure. 2 questions:
    1. What will you do if the kickstarter fails? (Still finish the game in free time or whatever?)
    2. What are your plans for the price of this game?
     
  31. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    If it fails, and no other route to fund it opens up, pretty much it will just become my hobby. I will probably finish it some day, but be prepared to play an alpha product for at least several years. Also I will simply cut some of the features like AI, bunny customizations, among others. But the main issue is that I will have to get other work to live, so that is going to slow things down quite a lot.
    As far as price... I am not sure yet. I have to think carefully because early access will be my next attempt to fund the completion if the kickstarter fails. I wanted to avoid this, because it doesn't guarantee that I will be able to finish the game that people will have paid for, but at least they will be able to play something unlike anything else out there, even if it is rough.

    So please, spread the word if you want to play this thing! :)
     
  32. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    So the kickstarter ate dirt.
    It's been quite hard since, due to personal finances etc, but I have continued to work on OBEY.
    When people play it 95% of the time they love it. Some kids who have a demo copy say they all rush every day to their laptops at lunch to play it. So it's hard to just give up especially given how far along it is and that people are responding. My plans on getting the word out have just not panned out (yet).

    Given this, I worked really hard to get it publicly presentable and an Early Access is now available. I'm hoping that it could keep me running just long enough to finish!
    Grab a copy if you want to join the games! There's a session every Saturday at 8pm EST! :D
     
  33. SpookyCat

    SpookyCat

    Joined:
    Jan 25, 2010
    Posts:
    3,748
    You game looks amazing, hard to believe it didn't do a lot better in the Kickstarter.
     
  34. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Thanks for the kind words spooky :)
    Yea I think a lot about what might have gone wrong. Certainly there were things that could have been improved in the campaign. I thought I had it made too, but it wasn't the case.
    Anyway, here we are... :) and I did get so many positive responses from people - and the people who have played it they 95% of the time love it. I know I am making a really good and very deep game so I have kept going. Hence the early access!!!!! :D
    ...as it is there is already a small base of regular and dedicated players.
    The next goal is to add in-game voice chat and some sounds, then it will be ready for another publicity push!
     
  35. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Whoa! an OBEY player named KOPFSTOFF, made the most awesome fan art!!
    I am super flattered!! :D

    He put a WIP on his blog.

     
    randomperson42 likes this.
  36. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Wow, so I just submitted the first version with in-game voice chat for publishing.

    OBEY is a Unity game.
    Let me tell you a story about what it is like to implement in-game voice chat in Unity... :confused:

    Step 1) Don't reinvent the wheel.
    I started by buying a license to use Daikon Forge's DF Voice plugin. It converts the microphone data into something you can manage and pass around in the game. It doesn't care how you pass it or where you send it to, that's for the dev to take care of(as expected).

    Step 2) Design an Architecture.
    Considering that if players want badly enough to communicate with each other against the spirit of the game (ie cheat by spectating and informing another player) it would be so easy to sidestep any security measure in the game that it would not be worth having security at all. Secondly, since voice data is also not the most vital data in a game, if some packets are lost it is not a big problem and players can repeat themselves regardless. Therefore I decided that the best way to send voice chat would be to stream it unreliably peer-to-peer among players, and avoid taxing the server at all with voice functionality. This seemed a pretty obvious approach since I couldn't think of a good reason to not stream or to expend server resources on voice chat.

    Step 3) Implement it...
    DFvoice comes with some examples using RPC calls to get voice packets from one computer to another. RPC's are verified and would waste bandwidth confirming and re-sending lost packets. So I started building a system that would stream the voice data (not use RPCs). DFVoice gives the voice data as byte[] arrays. Unity's bitstream.serialize() method does not accept byte[] so that meant I would have to send it in another format, an then convert it back.
    I wrote a method that would buffer and split it up and serialize it bit by bit as bools, and another that buffers those and reassembles them. I thought I had crashed Unity when I first ran it. But I hadn't. It was just so slow that it would not even be worth trying to optimize it to get it to work. After trying a few other things, I realized that there was no way to get it from one machine to another using any form of unreliable streaming because either the method would be too nasty a hack and/or be unreasonably slow because the Unity bit stream class does not accept any form of... well... bit streams. Sigh. I could sidestep it by integrating yet another library... or god forbid, torture myself with sockets :mad: .
    Instead I rewrote the system again, this time biting the bullet and using RPC's peer-to-peer. It wouldn't be as fast as it could be, but the voices would be reliable and very clear. After spending the time I could not get it to work. I also could not find bugs, my code was good. What was going on? Well it turns out Unity has nuked the concept of peer-to-peer (even though it uses Raknet under the hood, which is fundamentally peer-to-peer networking library). You can't do ANYTHING peer-to-peer via Unity's native networking paradigm. I would have to send the data via the server.
    So again I bit the bullet... this time really hard, rewriting the entire system YET AGAIN, to utilize RPCs and send them to the server and then via RPCs again to appropriate clients.
    This worked.
    But only after trying every logical and (imo) best practice way failed.
    I had to architect it in the EXACT OPPOSITE way that I had wanted, for it to work.
    I haven't yet encountered enough problems with it to push me to rewrite it again using another library, but this is word to the wise:

    If you ever want to add voice chat to your Unity game, prepare to do it in one of 3 ways:
    1) using very nasty hacks
    2) using a 3rd party networking library
    3) modify Unity itself
    4) the most ass-backward way from an architecture perspective

    I hope this helps someone.

    ...And for the record I don't regret using Unity's native networking. It does what it is supposed to do, and I know it is built around making things 'user friendly', I just wish that I had known what I know now before starting.
     
    Last edited: Feb 28, 2015
    FreakForFreedom likes this.
  37. Sykoo

    Sykoo

    Joined:
    Jul 25, 2014
    Posts:
    1,394
    Looks very promising and fun, will be looking forward!
     
    bugmagnet likes this.
  38. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Glad to hear it! :D:D

    Maybe I'll see you in a game sometime! ;)
     
    Sykoo likes this.
  39. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48
    Added some screen effects to the bunny camera...



     
    NickHaldon likes this.
  40. bugmagnet

    bugmagnet

    Joined:
    Apr 16, 2013
    Posts:
    48