Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411512 Posts in 69376 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 04:11:58 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsEmbersol: Mercenaries - Online Persistent Shooter [RELEASED]
Pages: [1]
Print
Author Topic: Embersol: Mercenaries - Online Persistent Shooter [RELEASED]  (Read 2464 times)
bgund001
Level 0
**



View Profile
« on: April 15, 2014, 06:10:05 PM »

Hello everyone. I'd like to show off the game I've been working on for the past 6 months or so. It started off as a test example for a game networking library implemented on top of netty but it ended up turning into an even bigger project than I'd originally planned. I've learned a ton along the way about networking so this dev blog is to put down some of that knowledge for others while documenting the rest of the progress of the game. Game networking is a hell of challenge and creating a persistent universe on the back end even more so. I still have a lot left to learn but if anyone else is working on something similar I'm here to help. But anyways, on to the actual game!

Embersol: Mercenaries
Embersol is an online space shooter set in a persistent universe. Hire pilots to fight for you, join or create mercenary squads, and fight other squads in scenario based missions. Embersol is being developed using libGDX and will be available for android, iOS, and PC. Art style is 100% programmer art and free assets available online. You'll probably notice a bunch of stuff from www.lostgarden.com and other great free assets.




Current Implemented Features

Rogue-like pilot system: You play the game through pilots you hire. They receive experience points and cores as they play the game although at the moment the whole pilot advancement system is being worked. Perma-death is also a part of the game. Your pilots can be killed in combat so try to be careful. There are pilot leaderboards as well as upgradable ships.

Mercenary Squads: Squads are a fundamental part of the Embersol. You can create or join a squad and can then deploy on contracts with your squad mates. So far just the basics are there. Join/create/search for squads. Squads can be public or private with a password and squad commanders can modify details, change message of the day or kick members.

Conquest Game Mode: Warring corporations are fighting for domination across several systems. Warp in and destroy the defending capital ship and escorts to take the system. Gain tech superiority and hunt down enemy squads or if you're out gunned call for reinforcements.

The actual gameplay is very basic at the moments. It has your standard twin stick controls, regenerating shields for health, and a dash mechanic to add a little fun.

Released on Google Play Store:


Released on PC/Mac/Linux:
www.playembersol.com

Dev blog: http://www.playembersol.com/dev-blog/
Trailer:


Twitter: @BartGunderman

Feedback
Looking for any and all feedback but specifically networking issues. Any connection problems, noticeable lag or unexpected disconnects? Also any feedback on art style as well. Not sure if I should leave it the way it is or try to hire someone more professional. Thanks!

Lastest Updates:
v1.1.1
-fixed galaxy tab crash bug
-conquest games will now continue if there are no longer any players connected
-added 'F' key to fire secondary weapon (for pc/mac/linux builds)
-got rid of rad bar
-decreased core cost of ship unlocks

v1.1.0
-added new galaxy map for missions. Fight in a global war and capture territories!
-added new co-op mission, Outbreak. Survive against waves of enemy drones.
-added new drone, quark. Annoying by themselves but dangerous if they swarm.
-added new drone, entangler. They'll lob missiles from a distance but break easy once you get close.
-support for regional game servers.
-fixed text input for custom keyboards.
-fixed several crash bugs.
-fixed text dialog blocking touch input.

« Last Edit: August 07, 2014, 08:34:35 PM by bgund001 » Logged

bgund001
Level 0
**



View Profile
« Reply #1 on: April 26, 2014, 06:01:13 AM »

Not really a whole lot to this next update. Just fixing some bugs here and there on the server and updating/tweaking a few things based on player feedback.

0.0.2
-added shield health bar
-add fire effect at critical shields
-fixed bullet reflection on shields
-made bullet sparks more sparky
-added random background planets
-fixed mipmaps
-dash meter empties immediately
-shields opacity tweak
-fixed bug with missiles launching at origin
-added disconnect due to inactivity
-crash reporting for applet

0.0.1
-fixed cursor aiming, now relative to ship
-increased ship turn rate

Next update will concentrate on the pilot progression system!
Logged

bgund001
Level 0
**



View Profile
« Reply #2 on: May 04, 2014, 07:15:57 AM »

0.0.3 Changelog

-Elliptical shields. The system before was just based on circular shields and collisions. It was about as simple tech as I could make it for testing out networked collisions. Point to circle collisions are easy and cheap to check, all you need is a radius and shield angles don't even play a part in it. I needed something more advanced for capital ships though so I figured this was a good time to update it. Turned out not to be that bad. Just needed the equation for an ellipse and figure out some translations for the point to get it in the ellipse's local space and bam you got yourself a blue pancake.



-Frigate capital ships. With the ellipse shields in place I was able to get started on those capital ships. Before that I went ahead and refactored all the AI drone code to make it more extensible. Once that was done I was able to quickly setup assault drones, frigate class drones, and bullet/missile turret drones. The turret drones can either be static or "locked" into place on another drone.



-Frigate debris. I didn't like the look of the frigate just disappearing once destroyed so I whipped something up in Gimp. The frigates will now break up into 2 pieces and after about a minute they'll just fade away. I thought they came out pretty good Smiley



-Environment wall. While I was messing around with the ellipse shields I also added a rectangle mode to the damage object so I could have bullet collisions with wall objects. With that in place and the network objects set up I just needed to create physics objects so ships could actually be blocked by them. I use Box2d for the ship physics and its very easy to use. It's not really designed for networking but since the collision model is pretty simple (ships can't collide with each other, only static geometry) I was able to hack something that works, looks good and doesn't cost too much performance wise. I also added a collision listener so that missiles will detonate if they happen to run into something.



-Contracts now cross-squad. While in a queue for a contract mission you will be matched up with people from other squads. I originally wanted just squad members to be able to play the story mission together but the article I linked in previously has me thinking otherwise now. One of the key points of the article is to prevent fragmentation so this is just one step in that direction.

-Missiles now shot by player. The reload rate is pretty high so have fun with it. The missiles will shoot straight and lock onto whatever is in front on them so you still have to aim. Since the launch of missiles in now clientside I added missile decoys. When you press the button to shoot a missile a graphical decoy is immediately created. Once the round trip time to the server comes back with the actual networked missile object, the decoy is seamlessly replaced by it.

-lots of tweaks and fixes
« Last Edit: May 04, 2014, 07:26:08 AM by bgund001 » Logged

bgund001
Level 0
**



View Profile
« Reply #3 on: May 10, 2014, 07:08:03 AM »

This last week I've been tearing the guts out of a lot of code trying to setup a fundamental addition to the game. I've been thinking about the direction and end goal for the first release to the app store and I pretty much have everything laid out. The contract co-op system is already where I want it to be and it's pretty easy to add new missions in the future. Most of it is server side so I could even add new missions without needing to update the client. What's missing is the competitive multiplayer. I wanted the game to be primarily a pvp shooter, squads vs squads kind of deal so I've been trying to come up with a cool game mode to make that happen.

I already have capital ships in the game so it wouldn't be too hard to just set up the map with a capital ship per team, with AI drones occasionally spawning to help out, and whichever team destroys the other capital ship wins. There's another multiplayer space shooter already on the app store that does it like that but I'd rather not just straight up copy them. I think I can do better.

I was reading up on the latest blog post from Enemy Starfighter http://enemystarfighter.com/blog/2014/2/13/greetings-starfighters. I think he has the right idea when it comes to space games. The concept of hunting and hiding really hits what I'm trying to do. I loved that feeling when playing Eve Online and even lately while playing Titanfall where the concept of who is hunting or hiding can change at a moments notice with a Titan drop. Add this with the perma-death for pilots and I imagine things can get very intense.

So what I'm working on now is MOBA game mode based on huge solar system map consisting of many zones. Gameplay would consist of jumping from zone to zone, capturing objectives, hunting enemy squads or running from them depending on numerical/tech superiority. Different objectives will grant bonus to teams like the ability to track enemy ships in warp or jumping in carriers to defend a zone.

I just completed the basics of getting the zones working so the next update should be done in a few days. It'll just be a solar system with 2 or 3 zones with you can travel too with various AI defenses. It will still be straight deathmatch but it will serve as a good base to build off of.
Logged

bgund001
Level 0
**



View Profile
« Reply #4 on: May 18, 2014, 05:19:54 AM »

Just a short video on how the zones are progressing. Update next week!




Logged

bgund001
Level 0
**



View Profile
« Reply #5 on: May 19, 2014, 02:29:14 PM »

So I jumped into a zone while testing and saw these guys duking it out. I think I have to work on the targeting and formation AI.  Durr...?

Logged

bgund001
Level 0
**



View Profile
« Reply #6 on: May 30, 2014, 01:10:19 PM »

The new applet version was released on my website. It's been up for a few days but I had to fix a server issue before announcing it. This will be the last applet release. Unfortunately I'll have to give in to the fact that applets are dead and/or dying. I've been using an almost year old version of libGDX due to all the recent releases breaking applet support and even with that I've never been able to get the applet to work on my Macbook. So I'm giving up on applets, future updates will be standalone builds for PC/Max/Linux using JWrapper. I'm also hoping that the next update will be ready for an android/iPad release in the App stores. If anyone has any tips or tricks for releasing java test builds on all these platforms I'd love to hear it. Anyways on to the changelog.

0.0.4 Changelog
-Added Conquest contract game type. Team based pickup game where players fight to control zones. This game mode is not match based. You can drop in and out whenever you want. 12 players per team x 3 teams for 36 players max.
-Removed simulation tab. All game modes launched through contracts.
-Contracts no longer require you to part of a squad. You can freelance now.
-Added Quick Play option to main menu. This will either activate a current pilot or hire a new random one and enter you into the first available Conquest game.
-Preliminary pilot advancement system. 5 ranks. Each rank will upgrade either your missile or bullet systems. Permanent death is active for all game types. Exp reset for all pilots.
-Preliminary in game tutorial.
-Radar changes. Now a full screen minimap with updated graphics. Press 'E' or 'Q' to bring it up.
-Zone systems. Game modes are built up from zones. Either fly to the edge of a zone or hold 'Shift' to enter warp.
-Boundary changes. Before your ship would be destroyed for going out of bounds. Now if you're in a zone, going out of bounds will warp you to interstellar space. Going out of bounds while in warp will simply turn you around.
-Leaderboard now based on AI Kills rather than total exp. This will be changed to Pilot Kills in the future.
-New graphics for many systems. Bullets, thrusters, warp, etc...
-Many, many bug fixes and tweaks.

As always feedback is much appreciated. A lot of the changes here come directly from player feedback! Next stop, the App Store!


Stuff to work on.
-ability to link accounts to an email for recovery and cross-platform access.
-find out what the hell to do with resources (credits/cores). Maybe buy hats???
-player ship graphical update
-adding events to conquest game mode
-gamepad support. (maybe an ouya/amazon fire tv/nvidia shield release?)
-player feedback!

Logged

bgund001
Level 0
**



View Profile
« Reply #7 on: July 10, 2014, 05:37:06 PM »

Finally finished the last few things and ready to go live. I've added a link to the Google Play Store page on the first post. Give it a try, play a match, and let me know what you think. Thanks!
Logged

bgund001
Level 0
**



View Profile
« Reply #8 on: August 07, 2014, 08:29:45 PM »

New update is ready for Android and PC/Max/Linux with the help of the excellent JWrapper! The first post on this thread has all the details and download links. I released it last week but some bugs cropped up that I wanted to fix before announcing it. The coolest addition is the galaxy map! Now there is an actual persistent fight going on that you can effect. It's only at a basic level for now but eventually I will be adding faction points you can gain to unlock unique faction weapons.

I've also been making a lot of additions to the gameplay side, adding new attack patterns and abilities for the enemy drones. Fixed up a bunch of crash bugs that the excellent Crashlytics library caught. The conquest game mode is now just two teams and 5 capture zones rather than the three teams and 10 capture zones it was before. It should make the games more tight.

Future Plans.
The next update will concentrate on the pilot upgrades. So actually making the different ships have different play styles. I'm also in the process of adding new weapons. Currently there are three ships (Valkyrie, Minotaur, Fury), one primary weapon (blaster), and one secondary weapon (missiles). The new primary weapons will be a railgun and a laser beam. For secondary there will be a sort of nova bomb type weapon for close quarters.

So hopefully this will let players choose the play style that suits them. If you like playing the sniper then the quick Fury ship paired with a railgun/missile combo would work nice. Or if you like to get up close and personnel I'd go with the Minotaur ship with the extra shields and blasters/nova bomb. Please let me know what you think about the weapons or what you'd like to see in the game!

Screenshots:






Changelog
v1.1.1
-fixed galaxy tab crash bug
-conquest games will now continue if there are no longer any players connected
-added 'F' key to fire secondary weapon (for pc/mac/linux builds)
-got rid of rad bar
-decreased core cost of ship unlocks

v1.1.0
-added new galaxy map for missions. Fight in a global war and capture territories!
-added new co-op mission, Outbreak. Survive against waves of enemy drones.
-added new drone, quark. Annoying by themselves but dangerous if they swarm.
-added new drone, entangler. They'll lob missiles from a distance but break easy once you get close.
-support for regional game servers.
-fixed text input for custom keyboards.
-fixed several crash bugs.
-fixed text dialog blocking touch input.
Logged

bgund001
Level 0
**



View Profile
« Reply #9 on: August 08, 2014, 06:46:11 PM »

I guess the new update and PC builds attracted a few new players. I went in-game earlier today to test a few things out and I got to have a short impromptu playtest with a few other players online. Big thanks to Apoptosis, GorrillaOne, and SpiritOfDeath who helped test out a few of the game modes with me. I got a ton of useful feedback and found a lot of things I need to work on and I figured I'd share it here.

Biggest issue was that the game currently puts too many barriers on getting players together. For example the Outbreak co-op game mode has separate match maker queues for the two factions. This combined with a bug that always joined you to the Devastator team when trying to join from squad chat is a critical flaw.
The next update will change the Outbreak mission contract to be from a single third party corporation. So everyone trying to play the Outbreak mission will be put in the same match maker queue regardless of which faction is in control of the zone you're trying to launch from.

The next barrier was that when a player joins the game they have no idea who is online or what games are being played. If you happen to all join the same squad then you'll get a list of player's currently on-line or in-game. Also you'll get a notification in chat when one of your squad-mates joins a game. This works great if you're all in the same squad but this needs to be more global.
The fix I'm going to try is to bring back the global chat as the first thing you see when you log in. It will show who's online, when someone deploys to a game, and a list with the number of players playing each game mode.

Last thing is a few small bugs and tweaks that need to be fixed. Missiles don't reset the shield regen timer so PVP is just about impossible right now. Two players can just circle each other and the shields just regen too quickly to ever take down another pilot.

Probably the coolest thing I saw was SpiritOfDeath hiding behind a wall during the co-op game mode. The most dangerous part of that mode is right when an enemy wave jumps in and I could see they were using the physics wall to take the brunt of the initial attack. The environment physics right now are just in there as placeholders but for the next update I'll be rearranging them to provide some actual tactical use.

I learned a lot of useful things, most important the need for actual playtesting. I should be done with this update in the next day or two, then get started on the pilot upgrades.
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic