Search Unity

Rocket Fist - Throwing one punch at a time

Discussion in 'Works In Progress - Archive' started by DanielSnd, Apr 15, 2015.

  1. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Well, I didn't start doing the artwork I should be doing for the game… but I did touch the game today! :D

    I fixed a bunch of shader stuff that went wrong from the conversion to unity 5 (Not sure if It's looking better or worse now, Thiago thinks it's better… I'm still not sure). And more importantly, I added a feature I've been meaning to add for a while!

    So, when you don't have a weapon, you're "powerless" in comparison to the guy with the weapon. Having the dash to be able to stun the other player helps to bring balance to the equation, but to make it even better I added yet another function to the dash.

    If you dash just at the right time (Must be within the first seconds of activating the dash, when you have the most momentum) and the right angle (you need to be facing the incoming rocket) you can counter the rocket and it'll go back in the direction of your dash.



    It is pretty hard to get it right, so it would be something for the most skilled players and wouldn't be a certainty. I still have to playtest it to know if I should keep it, but I feel good abount this feature :)

    By the way, while I was doing it, all I could think of was this:

     
    JanCDS likes this.
  2. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Someone brought an interesting question on the tumblr about the counter:
    it's totally possible to counter a counter-shot, but it's really pretty hard to get the timing right, I can see a loop of countering happening, but damn would be a crazy unique situation, not something you could repro every time xD



    I failed more than 6 times while trying to record this gif.
     
    JanCDS likes this.
  3. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Today I made a video for a gaming convention back in my hometown that is going to showcase Rocket Fist next weekend, It's all in portuguese so I won't really post it here xD

    I also made a Landing Page, since it's good to have a call of action for that festival so people can follow the development. I also made a mailing list in the page so I can collect emails to push future demos/greenlight-release etc.



    It's a pretty simple landing page, just one simple html, a couple of gifs and the latest teaser video.

    http://rocketfist.me

    In unrelated news, I'm thinking about doing a weekly devlog stream :) Classes are starting this monday, so I'll get a feeling for my weekly schedule and figure out what day works best for me to do it.
     
  4. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Today I laid down some ground work towards the Team deathmatch mode. Now the health controllers and the weapons have a team value, and if they do have a team set, you won't be able to actually inflict damage to a teammate, nor stun them.



    It's kind cool that you can actually throw a weapon to your teammate for them to use :) I can see that being used in interesting ways, can't wait to finish up the scoring logic for the team-mode and playtest it!
     
  5. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Implementing the Team deathmatch game mode was fairly easy thanks to the way I made the parent game-mode class. Just had to override some of the scoring functions and it was pretty painless to adapt the survival to the team version.



    Pretty much I just use 2 scores instead of 4, and I score based on the team. If there is no one alive from team 1 or team 2 after someone dies, they lose a team life. If when the game is started there is no lifes on one of the teams, the other team is declared the winner… If by some crazy coincidence both teams end up killing each other at the same time and both teams have no lifes, it’s a draw!
     
  6. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    I'm sending the game to a games festival back in my hometown this weekend and they just told me that they wouldn't be able to showcase my game with 4 controllers (for 4 players to play), only 2 controllers. Right now in the build I only had the 4 players map version, since that's usually what I playtest with, so…





    Today I made a version of the original 1vs1 map (The first level I made for this game). The original game was made to be played on the PSVita with one player on each side of the vita, being a 1vs1 game. So the level was smaller and had one extra weapon on the middle which use was very strategical xD I playtested this old 1vs1 version a lot, so I'm confident this layout will do way better for the festival than the huge 4vs layout does with only players.
     
  7. Mothil

    Mothil

    Joined:
    Jan 14, 2014
    Posts:
    434
    I didn't know you had a devlog here, awesome!
    I've just been following you on youtube and following the progress,
    but I'm definitely going to be watching here as well. :)
    Good luck further!
     
    DanielSnd likes this.
  8. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Thanks! :D I've been devloging the progress for a long while, with daily posts XD you can find older posts than the ones that are available here at http://snddev.tumblr.com

    ___________________________



    So, I pushed the first Unity 5 build I made to GameJolt yesterday to get some more feedback and suggestions (Version Pre-alpha V -0.01). But I didn't quite playtest it since the conversion into unity 5 so it shipped with lots of little/big bugs D:

    Today I took the game into school and playtested afterhours finding a lot of those little bugs so… Today's task was actually fixing those. (And I pushed a version Pre-alpha V -0.02 :D)

    And those were the fixes:

    - Whenever starting the 2v2 mode, 2 sets of players were spawned for each player, so you were controling 2 robots at once D: this bugged appeared from the Start() and the OnLevelLoad() funciton both being executed that’s now been fixed, so if the start one runs, the onlevelload one won't run.

    - After playing the 2v2 mode, the regular deathmatch modes would use the same colors from the 2v2 mode because of the way I did the material selection (It was on the game manager, which is kinda permanent between scenes). I changed it to the Game Mode Controller so it’s pertaining to each game mode specifically, so that's fixed.

    - I stressed quite a bit that the Adventure is not being focused and isn't really fun right now, but I figure some people might give it a go anyways… so I playtested it as well, only to find that most materials were totally broken (pink materials all the way!), so I fixed all the missing materials from the unity 5 conversion.

    This weekend I'll be travelling to Bellevue to showcase the game at the Power of Play Indie Expo, so if you're around the area, come down to play the game and meet :D

    Oh, and since I'll be travelling, I'll probably be posting daily updates of the expo, but won’t really be doing a "daily task" those days.
     
    Mothil likes this.
  9. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    I didn't manage to write anything yesterday because of the trip down to Seattle to showcase the game at the Power of Play Indie Expo. I'm still down here and I don't have proper internet (using cellphone internet right now D:) so I'll properly write more on sunday when I get home, lots of exciting new developments and ideas from the folks playtesting the game this weekend :D

     
    JanCDS likes this.
  10. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    Alright, I'm back from the trip down to Power of Play :D It was my first time at an expo showing my game (Other than Full Indie, that's more of a MeetUp than an expo :eek:) and I had a blast doing it!

    I got to meet a lot of really cool developers and some people from the industry, made great connections and got some awesome feedback and suggestions for the game!



    At one point I was talking to Auston (Developer from Sportsball and Starr Mazer) about my problems doing the player AI from the game, I didn't know how I could make the AI move around the level as a player would. By using A* the AI would always be picking the "optimal path" which gets quite weird and robotic. As we were talking Casey (Handmade Hero) was trying the game and suggested: "Why don't you just use Rapidly Exploring Random Trees?"

    He then proceeded to explain how the rapidly exploring random tree worked and it made so much sense to use for this problem D: as soon as I got back to Matt's house I started coding. (Matt from FMJ Games was nice enough to receive me as a guest at his place for the event :D thanks Matt!).

    Little vine showing the tree being generated: https://vine.co/v/eKVrX0nLb6i

    So pretty much I start by adding a point into a point list for my original position.

    I then raycast towards my goal point, if there is a free path between the original position and the goal then add a line between those and consider that the path to take.

    If there isn't a free path between me and my goal, pick a random position on the map (checking if it's not inside a wall of course). Then find the closest point in the point list to it and try to raycast to it, if there is a free path between this new random point and the closest point to it, add it to the point list and create a line between the two, if there isn't a path, drop this point and find a new one.

    If the random point was added to the point list, raycast to check if there is a free path between it and the goal. If there is, stop the process and read the lines from the goal back to the parents recursively in tht tree to find the path. If there isn't a free path between the new point and the goal, find a new position and repeat the process.
    The first night at Matt's place I managed to get the tree working and finding interesting paths between the original position and the destination position, but still it wasn't tied to any movement.

    I went to sleep thinking on how I could better implement this into the existing code I already have for the players and how to get the AI to do what it had to do.

    As I woke up on the saturday I remembered a talk that my Game Design teacher, Dr. Kimberly Voll gave at GDC this year. Less is More: Designing Awesome AI.

    A couple of important things I took from that talk:

    • All behaviour controller-based. This tip already saved me a lot of time in implementing this, and is going to save me a lot more time in the future. Instead of writing an AI component that moves the player around, talks to the weapon to release the weapon, talks to the movement to do dashes and so on and so forth, the AI component simply acts as a controller. Instead of talking to the other components directly it simulates the input the player would be doing, "moving the analog stick towards this direction", "pressing the A button" as opposed to "move to this position", "throw the fist".
    • Watch people play. "You need to know how humans play if you're going to do something that looks like a human". I've been watching people play the game for a long time now, but that day in the expo I watched even more closely how people were moving around the levels and interacting with each other and the weapons.
    • Start stupid. "You can obscure intelligent behavior that is naturally emerging if you go complex too fast". I decided to start just by having the AI move around the level randomly and see how closely that behaviour matched the players behaviour, surprisingly enough, right out of the box the Rapidly Expanding Random Tree AI was already moving around how I've seen many players move that day.
    • Identify (in)Appropriate Behaviors and Fix. From watching the first "stupid" implementation, I started to look on what was working and should be kept, and what should be changed, as I did that I kept being surprised how quick things were working and looking some-what human, every little thing I fixed or added only made it better.

    With those things in mind when I got into the train to travel back to vancouver I started implementing the actual movement. I had the actual picked path points be added to a separated list called "desiredPath". If there is any points in the desiredPath list I get the latest point and find the direction towards it. I then normalize and break the direction into Horizontal and vertical analog stick values and inject it into the player controller I use to receive input from the controllers. Whenever the distance between me and this latest point is smaller than 1 I drop that point out of the list (which makes me do the same for the new latest point, until there are no more points in the list).

    Little vine showing the player AI start to move around: https://vine.co/v/eKYxZQ22zzP

    Since most players love to dash around, I made it so every 1 and a half to 2 seconds the AI would have a 40% of chance of pressing the A button, which made the AI start dashing around all funny like humans do.

    Little vine showing the player AI start to dash around + a bit of the view from the train: https://vine.co/v/eAuaDbJ1JOr


    I then wanted to start actually adding goals, still in the interest of "starting simple", I simply wanted his goal to be: "Get a rocket fist". So I made a function that looks in the level for the closest available rocket fist (not harmful and not being used by other player) and returns that as a goal to create a path using the RERT. If the AI already has a fist or there aren't any fists available in the environment, pick a random floor position as a goal to create a path using the RERT.

    Little vine showing the player AI finding picking up and throwing the fist: https://vine.co/v/eAu07AjJMtB

    From there, funny enough, the AI not only got the fist, but was throwing it around because he kept pressing the A button every couple of seconds, I kept watching what it was doing around in that level and… it was looking very human-like :eek:

    Bigger Gfycat showing the player walking around after the fist and throwing it around, with the view from the tree visible: http://gfycat.com/DeliciousIndelibleFlies

    By that time the train was arriving at the station and I started my walk back home and got a good night of sleep. Today I decided to put a couple of those Derp AIs to fight and watch what would happen (I decided to name this AI derp, as it's kinda dumb and is not exactly trying to fight as much as just get the rocket and throw it randomly).





    Today I watched more than 30 minutes of Derp fights. I started with 1v1s, then I went 4p. I didn't implement anything else to make them try and kill each other, just the simple goals of: "No fist? Find a fist. Have a fist? Walk to random spot. Every 2~ seconds roll a 40% chance of pressing the A button."However, some times… the Derps were actually playing very well D: I saw some of them executing perfect counter-kills that I haven't been able to execute yet, I've seen them executing stun-steal-kills and I've seen them doing crazy long-shots and engaging in stun-battles! For a long stretch there Green Derp won 3 entire last man standing matches in a row. I know for a fact that he has the same AI as all the others, but a little part of me still thinks he's smarter! xD

    Now I need to add more goals (if you have a weapon, find the closest player you can kill and try throwing it in his general direction maybe?) and I need to figure out a "menu" way to let you add AIs into the game… I gotta figure out ow I'm going to make the actual mode selection menu ;o



    Ah! In other news, besides me taking the game to the Power of Play Indie Expo it was also showcased at the Gamepolitan Expo back in my hometown :D apparently there were no controllers, the screen was a bit cropped so you couldn't see the whole screen and most people were playing the buggy and terrible adventure mode instead of the versus mode (I also found out I left a bug in that makes the boss room totally red and semi-impossible to see what's happening =x which makes the adventure mode even worse). Well, I guess people still kinda liked it, it got an award for "Best technology", whatever that means xD

    Little Gfycat of some kids playing the arena at the Gamepolitan Expo: http://gfycat.com/DecisiveFalseAgama

    Some people also tried playing the versus apparently, despite all the problems and having to use the keyboard xD so yay for those people!

    Well that's it, sorry for the long post, but there was a lot of this weekend I wanted to talk about :D So excited that I finally get to have a player AI! Can't wait to finish implementing it's goals and start trying to fight against it!
     
    lorenalexm and Mothil like this.
  11. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    So, I added goals to the Derp AI and… damn it got mean quick D:

    From lovely derps throwing fists around aimlessly and sometimes doing really cool moves totally by accident, they turned into vile kiling machines D:



    One thing I did change, besides adding the goals, was to instead of changing the fake controller value directly, which was causing some really quick turns towards directions, is to lerp that value over time, to simulate the time our fingers are actually moving the joystick towards the new position we want to point towards. It's pretty quick though, just not instant like it was before. That lead to even more human behaviour.

    With the new goals, this AI is pretty much just like many people I've seen playing this game for reals, so I'm happy with it :) (It's just kinda too mean, I think I'll name it Herp. Herp Derp!)

    Now I have:

    - If you don't have a fist, find a path to a fist and move there.

    - While not having a fist have 45% of chance of pressing the button A every 2~ seconds.

    - If you have a fist, find a path to the closest player and move there.

    - While moving towards the closest player, check if you have a clean path to him, if you do turn your joystick in his direction and have 55% of chance of pressing button A.



    Next up is actually changing the way the game mode does the player spawning so I can spawn regular players with AI players so I can finally battle my creation <3 Will have to mess around with the menu as well so I can decide on the menu how many are actual players and how many are AI… also probably a "press start to join" so I can pick which controllers are joining instead of not letting people decide… Will probably be working on that the next few days.
     
    JanCDS and Mothil like this.
  12. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    So, I needed a menu to be able to add bots to the game, I didn't want to keep going with the buttons for each different possible combination of match (2 players vs, 3 player vs, 3 players vs ai, 2 players vs ai, etc. etc. etc.) so I started looking into other local multiplayer games to see how they solve the problem.

    I saw lots of them use the "Press Start to join", which helps also to assign a controller to each player. Before this the controllers were hard-assigned, so if you only have 1 controller and want to play on the ASDW of the keyboard while your friend plays on the controller you're out of luck, they're were and the same. Implementing that I can break down each controller separately and assign the controllers to the player objects as they spawn. Whichever controller presses Start first (or attack) becomes player 1, and so on.

    Now, for the actual adding of bots, my favorite solution was the one I saw inCrawl (Great game, if you like local multiplayers you should totally buy it!). Whenever a player has pressed start and joined he can get to a menu in which he can pick the number of bots (if any) and their difficulty. All players can change that number and it'll auto-correct if more players join (If when the first player is picking there are 3 bots and 1 player joins it will become 2 bots.).

    I started implementing this menu system today, but still haven't finished (too late, gotta sleep), I also added a little 3 letter name the player can input, I'm thinking of experimenting with having that in the game, not sure if following the player all the time visible or visible for a few seconds when the player presses select or on a nameplate with the players lifes on the top (useful to remember which color is who).

    What do you guys think?
     
    JanCDS likes this.
  13. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    Alright, finished implementing the new "Press Start to Join" menu :) It still can use some polish (animations, particles and etc.) but it's functional right now, so I can finally send some builds for people to try it out ^^

    I haven't really implemented the use for the 3 letter names yet D: but it's already in the build even though it's useless right now =x.

    DOWNLOAD THE PRE-ALPHA V -0.03 WITH AIS HERE FOR WINDOWS!

    OR HERE FOR OSX!

    I shipped with both Derp (Doesn't try to kill anyone, is just throwing rockets around chilling) as the easy mode AI and Herp (Is actually trying to kill people, but doesn't really try to avoid being killed or aim too precisely) as the normal mode AI. I played a bunch of matches against them and they don't really pose me with much of a challenge, despite both being able to kill me on occasion (especially on 4 player mode since it gets pretty chaotic). Still, should be good to try out the game when you don't have friends around ^^

    Further on I shall implement a harder AI that aims more precisely before shooting, takes into account bounces and tries to self-preserve.

    By the way, since now players can play alone by using bots, I deactivated the Adventure mode, which was still buggy and not fun. One day it will come back… but different!

     
  14. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Alright, starting with the small fixes:

    I fixed a bug in which the particle effects for the weapon-to-weapon hit effect would appear in a totally wrong place. After trying to hunt down the cause of the bug for a while, I found that when it happened the latest RaycastHit point value was the same from the previous hit, which makes no sense at all, but was causing the particle to appear in the old place from the previous hit… So I just added a check to see if the value is different than the previous one before spawning the particle =x I still don't know why that bug happens though, but that check prevents it from being noticeable, so close enough for now.

    I messed around with the player speed, and damn, it's so much better now D: after playing a few matches with the new speed and trying the old speed again, it feels so slow and heavy. also improved the dash slightly and made the window of opportunity for the counter larger, so doing counters should be a bit easier now (still is a bit hard).

    I also made some temporary changes to create a special version of the game for this youtube channel I like and sent it for them to play it this weekend *_* The Button Masher Bros! They covered several of my games in the past, they're awesome <3 Thanks guys!

    Lastly, during the event back in my hometown people reported feeling lag in the game during the event, I told them to run it in the fastest quality, but they said it was still laggy.


    Now, I've been optimizing as I go, the game has very few draw calls and there is no reason that I know of for it to be laggy, I tried to figure out a way to mimick a slow computer to test, but I didn't find any good solution. In my own machine when running the game in Fastest quality I get over 700 fps. I ran the profiler and nothing stood out, the game was running super smoothly.

    After thinking of a while of friends that could possibly have slower laptops to try it on it hit me… I could try it on my phone! Certainly the computer they're using would be far superior than my phone right? It's not even a new phone,I bought it back in 2012!

    I added some touch controls and made a build for XCode.



    Ok, so… It runs smoothly on my iPhone D: I have no idea how it lagged over at the expo running on Fastest, looking at XCode while it was running on the iPhone it's using pretty much only half the CPU, and 200 mb memory!


    By the way, the AI gets way more challenging with those terrible touch controls lol xD Rocket Fist will definetly not be released for mobile! Still it's gonna be kinda fun to have on my phone to show people when I'm talkign about the game and don't have my computer around.

    Well after all this, I guess there is only one explanation left for it running laggy over there on fastest quality…

     
    Acissathar, JanCDS and lorenalexm like this.
  15. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    Today was a somewhat slow day, I did some work on the game but not much to show for it. I did some work into the Wii U version of the game, but I can't really show anything about that. I played a lot of the iOS test build I made yesterday, it's weirdly addicting for me, the extra difficulty that the terrible controls adds makes the bots interesting to fight against for me.

    I also worked with thiago to make a presskit for the game (using the awesomepresskit()), since we ended up sending the pre-alpha version to a couple of people that could write something about it.

    Well, that was it. Tomorrow I'm going to work on the powerup system, there's a Full Indie Meetup this week and I want to playtest it there :)
     
  16. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382

    Today was a pretty productive day, I did several small tasks and one big task.



    Small changes:
    • Improved player speed yet again, originally at version 0.03 it was 3.2f, then on version 0.04 it was 4f, now it’s 4.3f, I don’t know how I lived so long with the slow speed of 3.2f D:
    • The pause menu was without animations, since I used Time.Timescale = 0 to pause and the animations were using delta time, they were not working, that’s now fixed :) those animations are now using Time.realtimesincestartup and are imune to Timescale.
    • Player’s 3 letter name are now used in the game, they show up when players spawn for a couple of seconds then hide. They can appear again if a player presses Select on the controller. That’s useful to find yourself if you’re confused. I’m also going to add the player’s name to the scoreboard on the top, but I haven’t yet.
    • I did color correction on the menu scene, don’t know how I forgot to do that before D: looks much better now.
    • Talking about color, I made the colors on the player textures a bit darker, you can probably see by the picture on the top here, much better <3
    • Made the default on the player menu to be having 1 bot active, since most people seem to be playing by themselves with bots lately.
    • Made the controller vibrate whenever you die, stun someone, get stunned or counter :D It’s so cool! and was pretty easy to implement.
    • Buffed medium AI a little bit, now he will use a raycast in front of him with bounces to determine if he should shoot or not. He still has a 15% of chance per frame that he has line of sight with other player to shoot though, but the chance will only get above 50% if he knows it can hit you via raycast. I might need to add an AI between easy and medium that won’t raycast you but will try to shoot in your general direction like previous medium AI used to.
    Now for the big change, the Hard AI. For the Hard AI I wanted it to use raycasts to figure out if it had a good shot accounting for bounces. I started writing this code back in the end of february, as I thought of making this little challenge mode game for rocket fist and for level design purposes I made a laser pointer that showed me the bounces the weapon would do.


    That way I woul easily be able to see if the level was solvable as I created levels, and would be able to move things around to make sure the bounces would make for possible levels.

    So, I got that piece of code back and implemented it into my player. I thought of having a temporary laser aim powerup whenever I get around implementing the power up system, so I seized the opportunity and made myself a little laser aim using LineRenderers.



    Doing that for the current weapon position is pretty easy, but to check for possible bounces I should check all around the player. I could just raycast to different directions from the center of the player, but that’s not where the weapons are shot from… So I had a problem: I would have to find where my weapon would be for my player’s rotations.



    My solution is probably not the most elegant, but it works, I created a new empty game object and made it follow the center of my player. Every frame when I’m doing my raycasts, I run a for loop in which I:
    • Get the distance between the weapon and the player, get the position of the player and add the transform.right of this empty game object multiplied by that distance, that’s the position of the weapon for that rotation.
    • I then do my raycasting (with bounces) from that position in the direction of the transform.forward of my empty game Object.
    • I save in arrays the position, direction of the ray and if I found a player his transform.
    • Afterwards, I rotate this emptyGameObject 45 degrees.
    • Whenever I finish my for loop I return it to 0 degrees.
    That gives me rays all around my player from the position the weapon would be, and since the empty game object is following the player but is not a child of it, it won’t keep rotating and changing directions, the direction I get from there I can use to rotate my players towards.


    Here is another picture of it, this time with bounces turned on. I made it so whenever a ray found a player it colored the line blue, so it would be easier to know if it was working.



    I made a copy of the Herp AI (Medium Difficulty) and messed around with the section in which it tryes to shoot at the player. Now it will keep checking on it’s web of raycasts if it has any possible shot to the player accounting for bounces all around. If it does, it will tilt the analog stick in that direction. Whenever the main raycast (that one changes with the player and is always pointing forward) finds a player, it will have a 55% of chance per frame of pressing A, otherwise it’s 10% chance if it’s in the same vincinity of the player and looking vaguely in the player’s direction.

    This has made the AI extremely evil, it gets me with crazy shots I wasn’t expecting. To make things worse I added a new method for finding weapons, so if this AI doesnt’have a weapon but the closest player does, it will look for a farthest weapon from the closest player, so it doesn’t get baited to a weapon that I’m guarding instead of going for another unguarded one.

    I played 1vs1 against it 3 full matches and I still haven’t managed to beat it in a full match (I kill it sometimes of course, but it’s winning the full matches against me ><). In my defense, it’s late and I’m tired!



    You can see the evil AI destroying me in the GIF above (I’m naming it Troll… now I have Derp, Herp and Troll). If you feel like having a go at it…

    DOWNLOAD THE PRE-ALPHA V -0.05 WITH AIS HERE FOR WINDOWS!
    OR HERE FOR OSX!
     
    JanCDS likes this.
  17. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382

    So today wasn't a super productive day, but it was somewhat productive. I finally implemented the audio mixer, now the sfx are going into different groups, and I have a couple of snapshots already integrated int othe code so Thiago can have some fun mixing the game's audio :D



    Another small thing I've been procrastinating for a while is the udpate of the Alert Manager (the text popups that appear on the screen) to the new Unity UI. I'm slowly getting rid of NGUI in the project, only missing the Life counter now then I can delete NGUI completely. The new Alert Manager made with Unity UI is looking better than the old one I had done in NGUI :D



    Now this is something that's going to be pretty cool, back when I was younger and used to play a lot of bomberman, whenever I died I was able to try and get revenge by shooting bombs from the sides of the level. That gave me something to do between matches so I wasn't bored watching other people play, and gave me the satisfaction of annoy someone who killed me. So I want to experiment with bringing something like that into the game.

    I wouldn't do anything that could actually kill the alive people, so I'm thinking of having the dead players able to drop little EMP bombs, that will stun in AOE whenever they fall. They would be able to charge up the throw to reach farther.

    Will still have to playtest it to make sure it's a good thing, but for sure if I actually add it to the game it will be something that can be turned on/off on the options.

    Well, as you can see on the gif, so far I got the movement working, I just have to position this 2 MapPos GameObjects (one on the bottom left and one on the top right) and it generates this path. Tomorrow I shall work on implementing the shooting.
     
    JanCDS likes this.
  18. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382

    So, today I didn't have much time to work in the game, but I did make a little progress in the revenge mechanic. I did some sketches on what I have in mind for the little guys on rails on the corners.

    I also managed to implement a nice ballistics projectile without a rigidbody (I'm avoiding rigidbodies as they can be quite unpredictable and break in weird ways, so far no rigidbody has been used in any gameplay elements and I intend to keep it that way.) I based it on this code: http://answers.unity3d.com/questions/27919/making-an-arrow-physics-without-using-rigid-body.html



    I made the speed of the shoot based on how long you keep the attack button pressed and attached that to a little charge bar, I'll probably make this bar part of the model's design for the little shooter-guy-on-rails. I also made it so the player rotates to keep facing inwards when turning corners in the rails.

    Well, that's it for today :) Tomorrow is Full Indie and I'll be bringing the game down to playtest again :D

    Oh, totally unrelated, today the nice folks at the Button Masher Bros youtube channel released a video of them playing a special version of Rocket Fist I made specially for them :D <3

     
    JanCDS likes this.
  19. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382

    So today was another Full Indie day! Full Indie is an awesome monthly meetup that happens over here with lots of game developers getting together in a pub to network, get to know each other and playtest games :D


    To me it feels like christmas, I spend the whole month looking forward to it and when it happens I feel just like a kid in christmas morning, it feels so good to see people playing my game and the feedback is incredible!


    Every time I end up seeing lots of things I need to fix and little bugs, but this time I didn't see any really D: the only thing that still bothered me is whenever people die they're just watching idle, and that was actually a feedback some people gave me. There is going to be a twitch meetup next week that I'm going to try and bring the game to, I'm definetly going to try and finish the revenge mechanics implementation before that D:



    It's super cool too that some people came talk to me that said they actually been following the devlogs and being inspired by what I do, saying they actually learned things from me and that is the greatest feeling ever, thank you so much! Sometimes I feel I'm just talking to the wind, but it's great whenever I get to feel someone is actually on the other side listening :D If you'd like to chat more about this stuff totally get in touch on twitter or on the comments on something, I always do my best to reply everything that's thrown my way and I love to talk about this stuff.
     
  20. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Today I finally did new art for the game, even if it wasn't for the environment xD I did the new "on-rails-cart" for the post-death robot :D Using modo!


    This little guy is for the revenge mechanics. Whenever a player dies instead of just waiting for next round he is going to be dropped on these rails around the outer edge of the level and will get to roam around trying to shoot EMP bombs into the level to stun people. This way dead players can try and get some sweet revenge!!!

    For the future I'm definetly planning powerups (as you mentioned), hazards, and a bunch of different levels. Hazards would affect the weapon in a positive way (you would want to bounce your shots off of hazards) while affecting the player in a bad way (avoid hazards). That would add more of that cool "discovery" whenever a player bounces a weapon off hazard by accident, he'll learn that it adds an "effect" to his weapon :D As an exampkle, a spinning saw hazard if you bounce it off of it your fist gets way faster and bounces off way more. A spilling fire hazard if you throw your fist through it it will be spilling fire on the floor where it's passing, and players won't be able to pass that spot for a few seconds without dying. An electric hazard that electrifies the fist and will generate a little AOE stun whenever the fist hits a wall.

    For powerups magnetism was one I had in mind already, but of course not pulling harmful fists to you, just harmless ones xD, movement speed boost, Rocket speed boost (the ones you throw get thrown with extra speed), also powerups like:
    - rockets that you throw get bigger for a couple of seconds.
    - temporarily you get to pick 2 rockets instead of just one.
    - Temporarily no cooldown on dashes
    - Temporarily dashes go farther away
    - Dashes temporarily become blinks (flash,teleport, whatever)
    - Bad powerups like on bomberman, screw with your controllers maybe?

    So many possibilities *_*

    Oh, other than that I also want to get the other game mode (counting kills instead of lifes), finish implementing replay, add a proper win screen with some statistics, update the scores UI, make the game wait a second after appearing before starting (AI is being pretty mean starting even before the fade-in D:), a instant replay of the last kill (this is going to be hard ><) and… I think that's it for now D: I'm probably forgetting something though.
     
    JanCDS likes this.
  21. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Alright, so today I made huge advances in the Revenge Mechanics :D Still missing some polish but it's mostly working. I also improved a bit it's path, now instead of being a perfect rectangle it has rounded corners, which also helped with the actual controlling of it.



    So whenever your revenge-bot-cart spawns it will start to charge a shot (the shot particle gets bigger and a bar starts to fill behind your cart. When this bar is filled and the shot gets to the right size you can then shoot (also a little particle pops up to make it more visual :D).

    To shoot you can press the button and hold, in order to shoot it closer or farther (+ bonus detail, as you charge the projectile gets pulled closer to you like a slingshot XD).

    When it finds the ground/wall it spawns a little explosion that will stun any players found within it.

    Now I need to do some extra particles and animations for it and to actually include them to be spawned for dead players whenever a player dies in the arena! But I'll leave that for tomorrow ^^
     
  22. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    Today I made a simple AI for the revenge-cart. Since we have AI play in the game, whenever they die they will receive a revenge-cart, and they should somewhat know how to use it XD. I'm pretty much finding the closest point in the rails to the player, simulating moving the analog stick towards the appropriate direction and trying to figure out if I have a possible shot, then I simulate pressing and holding down the button with a co-routine. It's far from perfect, but at least it makes it move around and try to get some shots at the player.

    Other than that, today I got myself a used Ouya, adding another platform to the list of platforms that Rocket Fist will be released in \o/ The more the merrier ^^

     
  23. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Alright, so I got a bunch of changes in + finished implementing the Revenge Cart (FINALLY!)



    • Renamed the previous Hard AI into Insane AI.
    • Made a copy of the previous Hard AI to be the new Hard AI, and nerfed it a bit (can only calculate 1 bounce and turns slower). So now I have Easy, Medium, Hard and Insane.
    • Implemented the revenge cart mechanic.
    • Added a option on the Press Start menu to turn the revenge cart mechanic on/off (I’ll need to make a dedicated options screen for the arena later on when I make the power ups ;o).
    • Added a Counter Kill message (Like the Double Kill/Triple Kill ones :D)
    • Added a little second before players can start to move, so AI doesn’t get a head start by being able to move when fade in is still happening.
    • Now when there is only AIs fighting and no players a message appears letting you know that you can Hold Select (or TAB) to skip to next round :) for the people who don’t enjoy watching AIs fight.
    • I was keeping the Camera a little farther away thinking of people who can’t use 16:9 aspect ratio so the level would fit even a really bad aspect ratio… But that makes it bad for 16:9 aspect ratio… So I found a way to force the 16:9 aspect ratio by adding letterboxes :D Now I have made the camera get a little closer thanks to it. Here’s how it looks on 3:2 aspect ratio:

    Well, today was a productive day :) I have to implement Powerups and Hazards sometime soon… But I think I should stop procrastinating art if I want to start a greenlight campaign by the end of june D: So I might work on that this week.
     
  24. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Tonight I had 2 friends come over and try the game for the first time, we played for hours and that helped me further fine-tune some things and fix some bugs.


    • Added Motion Blur thanks to Amplify Motion :D and it looks pretty cool/more fluid. I'm turning it off if the player boots the game in Fastest quality though. I'll have to make an options screen to turn those things on/off later on.
    • When players lost all their lifes their revenge cards (ghost) wasn't spawning. Fixed that. Now if the ghost mode is turned on the revenge carts will spawn even if the player has no more lifes left.
    • When there are only 2 players it's way better to have 1 extra weapon for them to fight for. However when you start playing the 4 players mode and you're down to only 2 players spawning due to the other 2 reaching 0 lifes there were only 2 rocket fists available. Fixed that so now if there are less than 4 players there will always be one extra rocket laying around :)
    • Since I added “Hold Select or Tab to skip” last version I noticed that was showing up in several times that it shouldn't be showing up. Like On the winning screen of the draw (since there were no real players alive, it assumed you wanted to skip) or the winning screen when the AI wins. Now I fixed it so it doesn't appear in places it shouldn't.
    • After finally trying the revenge card with other real players, I saw it was too slow and thus hard to hit players with. My friends weren't even using it. So I buffed it's speed a bit, now it's way faster to get ready to shoot and faster to charge, after the buff my friends started to use it more to annoy each other :D
    • To give a better indication if you're charging your revenge cart or not I added extra charging particles that play while you're charging it.


    Well, that's it for now :) it was nice having people over to playtest with today, it's so much easier to spot bugs/things to fix while seeing actual people playing this! Found a couple more things I wanted to change but will leave those for another day.
     
    JanCDS likes this.
  25. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382

    So, today I didn't have a whole lot of time to work on the game, so I just picked a small-ish task. I started to work on the options menu.

    I'm using the same code I made for the other menus, but I had to make some changes to use the new Unity UI as well as the text mesh. Also made some changes so I can use the same space for different menus, It now hides unused menus and shows them whenever they get called by the main menu (The Options menu and the Credits menu are in the same "place" xD).

    I haven't actually implemented the options menu functionality though, will leave that for tomorrow :)
     
  26. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Alright, so today I did a really quick playtest of the latest version with some friends at school and found 2 little bugs, today's task was fixing them (it was really quick =x I was really busy today).

    Bug 1: Revenge Cart AI was not working, apparently I removed the AI from the prefab for some reason and made the build without it D:

    Bug 2: The green cart would not spawn if there was no lifes left for green. I was always checking if there were more than 1 player alive to spawn carts, but since green is the first one to be spawned, it was checking too early so the check would come as not true. Fixed it by only doing that check when players die, not when they are spawned.

    Sorry for the lame daily update :x busy day.
     
    JanCDS likes this.
  27. JanCDS

    JanCDS

    Joined:
    Jun 30, 2014
    Posts:
    15
    I really enjoy these daily updates to be honest, even if it's just "boring" bug fixing (that's an important thing to do aswell imo) Definitely gonna try out the game after my exams with some friends :D
     
    DanielSnd likes this.
  28. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Thanks XD I see you're always giving likes to the posts :) let me know if you try it with your friends \o

    ________________________________________________________


    Today I was over at the Ladies Playing Indies twitch stream while they played Rocket Fist :D It was lots of fun to watch them play and answer questions from the chat. If you missed it you can see the broadcast recording here.

    I was thinking of calling that the task of the day but I felt guilty since I didn't get to work much on it these days so I advanced a bit more on the options menu:

    GIF: http://media.giphy.com/media/xTiTnvOXgPxzCQVqYo/giphy.gif

    Now you get to change values by either clicking on it or using the horizontal axis. Still missing the actual applying of those values to the game though.
     
    gavinb80 likes this.
  29. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    So… This weekend I took a break =x I really needed it. Played a bunch of Splatoon (That game is awesome!) and watched Sense8 (Sush a great show @.@ Netflix, you’ve done it again!).



    Sunday I went over to the awesome Vancouver Twitch Meetup! Had a great time showing the game to the streamers :D



    The game even appeared on the even’ts stream http://www.twitch.tv/expbar/b/667018429 at around 1 hour and 50 minutes :D



    This is me showing Rocket Fist at the event last night, loved this Picture! Jeremy Lim is an awesome photographer!



    This picture defines very well how people feel when playing Rocket Fist with friends, hahahahha, taken by Jeremy Lim while they were streaming Rocket Fist.

    All in all, I had a great time and people seemed to enjoy the game ^^



    So, today was another small task, instead of the art tasks I really should be doing, but at least I’m back to work :)

    I made it so it fills the latest saved values for most of the settings there (so it’ll remember your preferences) except for the Quality and Fullscreen values, for those 2 I’m actually reading whatever the player used to start the game (picked on the unity settings). I’m using playerprefs for everything, whenever the player presses apply I read the values of the buttons and save them into the playerprefs. If the values for fullscreen, quality or volumes changed I apply them to change those instantly (So you see the result on the music and SFX instantly).

    In other news, got the XSplit free Indie license and started setting up my scenes for devstreams :D Hoping to stream one night this week, probably thursday or friday as I’m going to an event on wednesday night and will probably be busy tuesday night.



    I really should work on the art for the greenlight trailer this week. I need to make a lot more level art to show variation on the trailer D: So I'll probably be streaming some art.
     
  30. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    That weekend break ended up turning into a full week break D:

    Well, today I worked a bit on the new environment pieces ^^ This week I'm hoping to get some new different looking levels up for the greenlight trailer, finally.
     
  31. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    So in the past few days I have:
    Made art for a rocket fist shirt:


    Updated my portfolio:


    Made one or two new env pieces:


    And... finally decided on when to get back to streaming :D



    So tomorrow I’m finally doing it! I'm streaming again! From 8pm to 10pm pdt, tomorrow wednesday June 17th 2015 you will be able to watch me doing sum arts for the game :D Come watch, ask questions, chat, or just lurk around! I'm hoping at least one person will show up at some point to keep me company xD
     
    JanCDS, gavinb80 and Debhon like this.
  32. gavinb80

    gavinb80

    Joined:
    Nov 4, 2012
    Posts:
    98
    Just been reading through these and really enjoyed the updates. The game looks super enjoyable and can't wait to see it available on my WiiU.
     
    DanielSnd likes this.
  33. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382

    Ok, so today I streamed a bit, thanks for the few people that showed up and chatted a bit ^^ It was only about 4 people but it was nice anyways. During the stream I worked a bit on those wall pieces


    Today at school the System Administrator was upgrading the computer on this arcade machine they have at the lobby, I was talking to him a little bit and he said he was looking for a 1-button game to put on that machine, so I suggested Rocket Fist, a perfect fit XD


    But still there were a couple of problems. The sticks on the arcade can only do 3 directions instead of the full 4 directions (AWD instead of ASDW), so he plugged controllers to it, it's still kind of cool to see it in an arcade shell like that :D The other problem is optimization… The game is pretty damn optimized and runs lagless on my iPhone 5… apparently the computer inside that arcade is indeed less powerful than my iPhone 5 so…

    Today I took some time to do a little bit more optimization. I created a little script that hides objects based on the current quality level, so for all the particles and little things that aren't essential, they won't show up if you're at the fastest quality. Also, unrelated, added turning on/off of the joystick vibrations to the option screen.

    The arcade was left running the game with the bots for a while, with only 1 real player that wasn't being controlled by anyone… By watching that for a while I noticed a bunch of flaws on the AI. Whenever they were both really close to each other they would start dancing rotating around one another instead of firing, since they were both not being able to find a perfect throw as they danced. Every once in a while they would also keep on walking into a wall for no good reason, and that could just happeng forever. So I added a couple of extra checks to prevent those from happening. If super close to my target and it's not totally behind me, just press the damn button and If I haven't really moved in a while, drop my goal. That should fix those.

    So, that's it for now :) Tomorrow will try the new build in the arcade. If you want to see a bit of the stream recording, you can watch it over here:

     
    gavinb80 likes this.
  34. gavinb80

    gavinb80

    Joined:
    Nov 4, 2012
    Posts:
    98
    So is there any planned release window for this?
     
  35. Haseeb_BSAA

    Haseeb_BSAA

    Joined:
    Aug 20, 2014
    Posts:
    316
    On what platforms this game will be released?
     
  36. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Sorry I missed the first post XD
    Thanks :D glad someone is enjoying the devlog. For the Wii U is probably going to take a while longer, I want to release it in an early access model on Steam hopefully around september, so I can keep on improving the game with feedback from a possibl community if one appears around it XD. For the Wii U would be probably closer to the end of the year.

    For now PC/OSX/Wii U/Ouya, waiting to hear back from the XBox peeps to see if I can bring it there as well :D
     
    Haseeb_BSAA likes this.
  37. gavinb80

    gavinb80

    Joined:
    Nov 4, 2012
    Posts:
    98
    Great news, can't wait to give it a try. How are you finding developing it on the wiiu? I am awaiting the Dev kit delivery before I start porting my current project. Will be interesting to see what complications the second screen adds
     
  38. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    I didn't port it entirely yet. I just did a couple of quick tests to see if it was running alright. It seems pretty straight-forward. So far for the second screen I'm only repeating the first screen, not sure if I'm going to do anything special with it.
     
  39. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382


    Alright, I need to get back to my old habit of doing a task a day. Things are calming down in the Masters front and I think this is the perfect time to do it.

    The things I want to introduce to the game in the month of August:

    - Different Game Modes
    - Different Levels
    - Powerups
    - Moving Obstacles
    - Hazards

    To have different game modes and different levels, I need a menu to access it… So I'm starting with a menu. Today I put this together using elements I already had laying around in my menu.

    I need a section to select the Game mode. A sub-section within that depending on the game mode to pick variations of it (Free for All or Team-based?). A Section to pick the arena, then an optional section to pick the number of points, lives, or whatever else the game mode uses for a win-condition.

    I believe this layout will work, might still poke at it more later on, but I think it's functional enough. I still haven't implemented it in the code, that'll be my task Friday (Tomorrow it's Full Indie day, will spend my night playtesting there, so probably won't get much done, but as usuall will consider my playtesting session the task of the day xD).
     
  40. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Over the weekend a couple of interesting things happened to the game :D



    I went to a Twitch party that happened over here in Vancouver and got to showcase the game a bit, it even got played on the stream ( http://www.twitch.tv/expbar/v/9493014 They start playing the game at 32 minutes, and I appear around 35~36 minutes ). I found a couple of new bugs and got some new ideas, people loved the game, it was great ^^

    One thing that a couple of the streamers asked about, as usual is… "Is there going to be an online mode? It would be great to play on stream with viewers!". As usual I explained that it's pretty complicated to program for that and I don’t have the knowledge to do it nor the money to pay someone to do it for me. But I decided to give it another shot over the weekend, I grabbed a copy of a Networking Framework for unity (Forge Networking) and after following a couple of tutorials I decided to try and implement it into the game.



    To my surprise, I got something working fairly quickly. I'm starting to feel confident that I can get this done, the developers of this framework are great at supporting, all the questions I had were answered quickly and I totally recommend this framework for any unity user looking to bring online multiplayer to their game ^^

    One more thing. I want to release the greenlight this weekend. So the tasks over the week will be trailer/greenlight related.
     
    romi-fauzi likes this.
  41. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    For the greenlight, that I’m aiming to release on this sunday, I need to show a little more level variation on the screenshots/video… So I’m working on some new levels. Today I made a few extra pieces for one of the new levels I have in mind.


    Talking about new levels I have in mind… at the moment I have a few:

    - Level with Uncle Knuckle that attacks now and then (The attacks wouldn’t be so bullet hell, It’d easy to avoid him if you’re paying attention.
    - Level in a threadmill with wrap-around. The level constantly pulls everything into the left side of the screen, whenever something crosses out of the screen to the left it reappears to the right.
    - Level giant robots, very very different than anything else, the players are giant robots in this little city, godzilla style.
    - Level Underground, floor is dirt with pipes and some leaking pipes forming pools of green goo (Green goo would cause players to slide (less deceleration).
    - Level Cold Room, snowy cold room, some parts of the floor are frozen which causes players to slip/slide (less deceleration).
    - Music reactive level (Based on Unity3D subreddit post ), I’m thinking of having blocks reacting to sound underneath, with the players in a raised platform with glass floor. It’ll be a little bit of a balancing act trying to make the music reactive thing not call too much attention to the point of distracting players from the game. I made a little test with it on the level I already have, of course the raised floor will help to separate and bring the contrast back.



    Well, that’s it for now, Friday and saturday I’ll put a lot of work towards the new levels, I gotta get the materials for the greenlight ready for sunday!
     
    GiantGrey likes this.
  42. Aiursrage2k

    Aiursrage2k

    Joined:
    Nov 1, 2009
    Posts:
    4,835
    I love the new arena
     
    DanielSnd likes this.
  43. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Thanks, that was just a test though XD I think If I left it that way it'd be too distracting from the gameplay.

    This is how the new level actually is looking like :) Still tweaking colors here and there but it's mostly done.


    This time I ended up making the level in Maya, I felt I got more control this way and was able to fine-tune the positions of the pieces as I couldn't before with the tile-editor I was using. It wasn't as easy or fast, but I believe it gave me a better result.


    The level plays quite differently then the original one. It does have some open areas but it also has some confined areas. Overall the camera is farther away as the level is a little bit longer horizontally than it is vertically. This level has 2 cool features, the doors on the sides are connected, and things that go into one door will come out the other (both player and fists) which can lead to interesting strategies.


    The other cool feature is the floor underneath the raised platform. As I mentioned in the previous blog, it reacts to music and it looks really cool :) Thiago is working on a special music to make good use of it.



    Tomorrow I'll work all day on one or two extra levels for the greenlight trailer. Sunday I'm finishing up the trailer and launching the campaign! :D So excited!
     
    RavenOfCode and JanCDS like this.
  44. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Saturday was entirely greenlight-centric and it was very productive! Made a palette variation for the 2p level to make it look a little different, made a lights-out one fist level for a possible special game-mode (To exemplify that we'd have different game modes) and of course, recorded LOTS of gifs!




    If you've been vising this devlog, you know I love gifs, and I was so happy to hear that we can actually upload gifs to the greenlight page if they're under 2mb, so most of the screenshots for the game in the greenlight page are actually gifs, which makes it very cool to see. Including the main image that shows up in the search page and the queue :D hopefully it'll catch people's attentions!


    I wrote the page itself during the week and had some good friends take a look on it for feedback and proofreading. My first draft was very logical and dry, explaining more about the logic and rational behind the game instead of actually telling how the game feels and why the player should be excited about it. It was pointed out to me by a friend and I fixed it with my second draft, making it smaller and less logical, being more personal adding a joke here and there.

    I also recorded a bunch of footage for the trailer, a lot of actual gameplay but also some footage captured with a following camera closer to the characters, which gives a cool point of view :D I sen the trailer to Thiago for him to make music to go with it, but today is Father's day in Brazil and he is going to be away most of the day so I guess I'll only be able to actually launch the greenlight on monday :(
     
    RavenOfCode likes this.
  45. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    I'm still waiting on Thiago to finish the audio of the trailer :( So my plans of launching the greenlight on sunday failed… then my plans of launching it on monday also failed… now I'm hoping that I'll finally be able to launch the greenlight tomorrow D: but… it doesn't really depend on me :( I did everything I had to do.

    Today I did another pass on the greenlight page, everything seems to be in order. I also updated the presskit links with the latest information to reflect the greenlight, marketing-wise, we're pretty much set. Other than the trailer that is.


    The next big task I wanted to approach after launching the greenlight is the online mode. As I mentioned about a week ago, I made some tests using Forge Networking and got something somewhat working fairly quickly. I want to explore more and see if I can get a full game cycle working with forge.

    Going in order, the first task I'd need to tackle for that is including the necessary menus for it. The old menu was getting crammed with everything in one column the way it was, so I decided to break it off, pull the logo to one side and the menu itself to the other. I think it's looking good :)

    I also got the forge headless masterserver working with the help of one of the users of the Forge community :D (Thanks digict!). Instead of the CCU system most of the other networking solutions use, which gets pretty expensive if the game gets popular, requiring hefty monthly payments, having the game set up this way means the only server I need to worry about is the server that keeps the server lists, which is fairly cheap to mantain. The game servers would be hosted by the players themselves :) And with the help of the master server they can see a list of current servers available and pick one to join.




    Today I also had a new cool idea for Rocket Fist. I've been watching some streams of people playing Choice Chamber, and I thought it was quite interesting the way it intereacts with the chat. It reminded me of what #iDARB did with twitter (People could tweet at a specific user with a code hashtag that's available on the game screen and special effects would happen in the game based on what hashtags the users are tweeting at it). I figure I could mash-up the two ideas and have random effects triggered by twitch chat in streamed rocket fist matches :D

    I looked for a Unity way of connecting to the twitch chat and found this one, just 2 little C# scripts, fairly easy to use. I made a quick test joining a couple of twitch channels from unity and it's super easy to make it work :) all one would need to do is to type in the chat name somewhere on the options and turn on the “feature”.

    I'm thinking of having a vote come up on the screen every once in a while with 3 or 4 possible effects picked randomly, viewers could vote on which one they want to happen. Also one of the voters that voted on the winning effect would be picked to choose one of the players to receive a random power-up or effect (Maybe they could choose whether they want a good effect or a bad effect to happen as well).

    Anyway, it would be fairly easy to implement and would be an extra incentive for streamers to play the game :D which would be good for promotion.
     
    RavenOfCode likes this.
  46. georetro

    georetro

    Joined:
    Jan 18, 2013
    Posts:
    218
    I have to say that this game look absolutely fantastic - both the idea and the graphics. I will definitely keep my eye on this thread ;)
     
    DanielSnd likes this.
  47. ironbellystudios

    ironbellystudios

    Joined:
    Jul 21, 2015
    Posts:
    410
    Seems like this project is just steaming along. Looks great! Couch co-op style games are easy to market at trade shows but hard to market to the online market. Make sure you allot a LOT of time to promote this.
     
  48. DanielSnd

    DanielSnd

    Joined:
    Sep 4, 2013
    Posts:
    382
    Thanks! :D
    Thanks ^^ I finally started promoting it with the greenlight campaign being launched ^^

    Talking about the greenlight campaign...



    http://rocketfi.st/greenlight - Vote for us on steam greenlight! :D The button in there will open the page directly on your steam app, so you don't have to go through all the hassle of loging in using the browser ^^
     
  49. georetro

    georetro

    Joined:
    Jan 18, 2013
    Posts:
    218
    DanielSnd likes this.
  50. ironbellystudios

    ironbellystudios

    Joined:
    Jul 21, 2015
    Posts:
    410
    You've got my vote as well - good luck :D
     
    DanielSnd likes this.