Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411511 Posts in 69375 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 01:11:39 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsJetboard Joust Has Just Launched On Switch, Atari VCS and Steam!
Pages: 1 ... 4 5 [6] 7 8 ... 10
Print
Author Topic: Jetboard Joust Has Just Launched On Switch, Atari VCS and Steam!  (Read 35777 times)
bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #100 on: March 20, 2017, 08:47:48 AM »

Yeah I can view the other screens just fine. I just can't get into the game  Cry Cry

Ok thanks - downloading Win 10 now!
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #101 on: March 21, 2017, 03:59:23 AM »

Yeah I can view the other screens just fine. I just can't get into the game  Cry Cry

Hi,

Well - I've been through the pain of duplicating my VM and installing Win10 on it and (of course) everything seems to work fine. Bloody typical!!

So I have no idea what the problem might be. I've cleaned everything anyway and done a new build from scratch (actually on Win10) and re-uploaded to the same URL here. Please give this a go and see if the magic fairies have made this one work OK. It's running fine on my Win10 and Win8 installs.

If it doesn't work my guess is some kind of incompatibility with your graphics card/drivers so if you could let me know more details about your system then that would help and I could pass that info on to the MonoGame folks. I have no idea where Windows keeps error logs for this type of crash (or even if it does so) as I am a MacOS man really. At some point I will probably try a UWP build but that's a whole other headache.

Thanks again for taking the time to check out and I hope you can actually get into the game this time!

cheers
Logged

thekosmonaut
Level 0
***


View Profile
« Reply #102 on: March 24, 2017, 03:38:28 AM »

Just a heads-up.

It crashed for me after the gamepad screen, too (win 10 x64), but when setting compatibility to win8 it worked. Strange really, since they are almost the same.

About the game itself

I found the gliding to be a bit hard to get into at first but i got used to it. I think it feels alright now. The jet boost is pretty satisfying but the other weapon firing is not really.

The range and speed is so short that i sometimes feel like i will overtake my own bullets and then they explode a few pixels away from me if i shoot in the direction I'm currently flying towards.

I wasted a ton of ammo every time because I wasn't close enough to the enemies even though it felt like it was time to fire. For me it would have felt better if the range was upped.

The game itself was beautiful, the effects and feedback in the menu and on item pick ups etc are very well made. Felt polished in that way
« Last Edit: March 24, 2017, 03:48:12 AM by thekosmonaut » Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #103 on: March 27, 2017, 02:52:21 AM »

Hi - thanks very much for the feedback and the kind words! Very useful info on the Win10 thing - I'm not sure what to do about that but will see if the folks at MonoGame have any suggestions. I'm pretty sure it must be the shaders if it crashes at that point as there's nothing else that happens when the game launches that hasn't already been tapped into on the menu screens and instructions.

On the first weapon (pistol) I know what you mean about the range - in fact I upped it quite a bit at the last minute because it was even shorter!

It's a difficult balance to strike because that's the first weapon so it needs to be weak in order to be meaningfully upgradeable and not get overpowered later on. At the moment the damage it does tails off towards the end of its range so I guess I could make the 'tail' longer which would make the player feel like they didn't have to get so close for the weapon to take effect. The enemies use the same weapon  though so it will also get harder as their range increases. If I start from scratch I can start to upgrade that weapon after completing the first level but I may just be far too used to playing it!

Another more radical change I was considering was upping the range of the default weapon considerably (and possibly even giving it infinite ammo) but making it non-upgradeable. This would make it considerably more approachable for new players but less useful in the later levels, players should be in the swing of things then though. What do you think?

Thanks again for the feedback.
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #104 on: March 27, 2017, 08:47:07 AM »

Woohoo – major milestone alert!!

I’ve finally got things to the state where I feel like I can release a playable alpha. Yes, there are still a few bugs and things I need to refine in the game design but I think we’re pretty much there. What’s also great is, thanks to the great flexibility of MonoGame, I can also release a MacOS version. The MacOS port only took me just over a day and I may detail that in another post.

For those of you who just want to cut to the chase and download the thing click here!

And for those of you who are actually interested in the devlog here’s a list of the significant additions in this final round of tweaks, many thanks to the folks who gave me feedback at the pre-alpha stage…

Pistol Range
It became obvious from user feedback that the range on the pistol (the default weapon) simply wasn’t enough. Players found they had to get unnaturally close to enemies to kill them which often meant they crashed into them by accident. Consequently I have increased the initial range of the pistol by about 75%, though to compensate I have made the damage done tail off as the bullet reaches the end of its range.

Its better than it was but I’m not convinced I’ve yet solved this issue. It’s a bit of a delicate balancing act as I want the weapon to be meaningfully upgradeable, yet also powerful enough to start with and not overpowered later on. Also, because the enemies use identical weapons to the player increasing a weapon’s range/damage also increases the difficulty of those enemies that use it!

Another more radical solution I’m considering is to significantly increase the pistol’s range yet further (and maybe give it unlimited ammo) yet not allow it to be upgraded. This would make the start of the game considerably more approachable for new players and increase its difficulty later on as players wouldn’t have a strong default weapon to fall back on. It would also put more emphasis on managing ammo levels later in the game which could be a good thing.

Playing Catch
It has always been a feature of the game that catching an enemy’s jetboard before it hits the ground give both an ammo and a shield boost and is therefore preferable to waiting until it hits the ground (generating only one type of pickup). I didn’t feel this was very clear though so I have added mini shield/ammo icons to the enemy jetboards as they fall which will hopefully communicate that there’s goodies on board and these things are worth collecting. The player also gets a ‘nice catch’ message if they do this indicating that it’s a good thing to do (catching jetboards is also the way to unlock new weapons)!



Extra Life / Jetsuit Indicators
Picking up your abandoned jetsuit after you lose a life is a central game mechanic as it’s the way to recover lost cash and not lose out on valuable upgrades. Similarly extra lives in the game are pretty rare so when they do appear the player isn’t going to want to miss out on them. I talked about adding pickup indicators and detectors for other bonus items here and decided I had to do the same for jetsuits and extra lives as they are arguably the most valuable pickups in the game!





Microsite
Yeah, not really part of the game dev but I thought I’d include it anyway. I needed a microsite or landing page to distribute the alpha so went ahead and built one. I’ve included a simple signup for for a mailchimp list. Goodness knows whether anyone will use it but hopefully it’ll server some purpose.

Update Tracking
I’ve added a very simple way for the game to poll the web server, check whether an optional or mandatory update is available and notify the player appropriately. The alpha build will also expire after a set date (currently the end of June so plenty of time to play).

I may now take a break from gamedev for a bit as I have had to take on some appdev contract work (fortunately a pretty nice project) to top up my dwindling coffers. I will have to try and get a youtube promo done over the next few weeks though, and hopefully get the word out about the alpha.

Thanks for watching and please stay tuned…

Dev Time: 4 days (inc microsite build)
Total Dev Time: approx 115.5 days
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #105 on: March 28, 2017, 03:41:26 AM »

Blasting your way out of a tight spot...

Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #106 on: May 08, 2017, 01:13:39 PM »

OK, so I've been a bit quiet. Contract work and loads of other stuff going on. Hope to pick up proper development again in the next couple of weeks.

I have just finished a short promo vid for the alpha (which you can download here of course) though - let me know what you think...



« Last Edit: May 09, 2017, 04:34:55 AM by bitbulldotcom » Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #107 on: May 09, 2017, 04:32:57 AM »

Based on feedback I've updated the alpha builds - main fix was for a problem on MacOS devices with retina screens but I've also fixed a permissions problem that affected some Windows devices. As ever, the latest alpha can be downloaded here...
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #108 on: May 11, 2017, 05:47:42 AM »

I've now put a page up for the alpha on itch.io!

Also fixed a bug affecting all platforms whereby the game could crash if more than one key was pressed in quick succession on the 'controls' screen before the game launched.

I think this may have been the cause of some supposed Win10-specific problems that weren't actually Win10-specific!

Hopefully I'll be onto some 'proper' coding soon - I wanna add a flamethrower!! Please keep the feedback coming!
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #109 on: May 20, 2017, 04:45:03 AM »

Been working on adding a flamethrower - not there yet but, as you can see, at least it's improved (you should have the seen the very first attempts)!






Logged

jctwood
Level 10
*****



View Profile WWW
« Reply #110 on: May 20, 2017, 06:12:12 AM »

Woah the game is looking super fun!
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #111 on: May 21, 2017, 10:41:39 AM »

Woah the game is looking super fun!

Thanks! make sure you check out the alpha - I need all the feedback I can get!
Logged

jctwood
Level 10
*****



View Profile WWW
« Reply #112 on: May 22, 2017, 06:15:47 AM »

Just played the alpha and I absolutely love it! I know a little about defender and the abduction mechanics all feel like they complement the jetboard action perfectly! The upgrades really feel like interesting choices. My one complaint would be the menus felt very slow. Boosting through enemies feels incredible!
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #113 on: May 24, 2017, 01:27:31 AM »

Just played the alpha and I absolutely love it! I know a little about defender and the abduction mechanics all feel like they complement the jetboard action perfectly! The upgrades really feel like interesting choices. My one complaint would be the menus felt very slow. Boosting through enemies feels incredible!

Hey There,

Really glad you liked it and thanks for the feedback - it's great to know people are enjoying it! Is it the 'upgrade' type menus you felt seemed slow?

Loads more upgrades coming - still tied up with contract work though so progress is slow atm  Sad

cheers
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #114 on: July 25, 2017, 06:26:45 AM »

Been far too long since I updated the devlog, it’s not that I’ve been slacking but that there simply hasn’t been enough progress made to warrant writing anything. I’ve had my hands full with a big chunk of contract work and haven’t really been able to face yet more coding on my ‘off’ days, preferring to try and get the new Muleskinner Jones album finished instead. No luck with that yet either! Now I’m beginning to understand why so many #indiedev projects never reach completion, as well as feeling like I used to when I’d try and keep a diary and end up trying to write three month’s worth of entries in one go.

Anyway – there has been some progress. Now that the alpha’s done I’m starting to work on new weaponry and the first up is the flamethrower. I deliberately started with what I thought would (probably) be the hardest weapon to get right and it hasn’t disappointed on that score, hence splitting this entry into two parts. Firstly we’re going to deal with getting the flamethrower to look and feel right (which is as far as I’ve got at the moment), next up we’ll deal with collision detection and actually getting the thing to do damage to enemies.

My first attempts at generating a convincing ‘fire’ effect with particles were pretty ropey, at best they looked like one of those cannons that shoots streamers or confetti rather than flame, some kind of manic party popper. Eventually though, after going down far too many blind alleys, I realised I was superficially trying to recreate what a flamethrower looks like rather than how it actually works. A flamethrower, of course, doesn’t actually shoot flame – it shoots a highly flammable liquid which is ignited as it leaves the barrel.

So, instead of using a single particle emitter to despatch a bunch of particles from the barrel of the weapon, I worked on firing a bunch of imaginary blobs of liquid. Each of these act as individual particle emitters so they appear ‘on fire’.





You can see the first results of this approach above, alongside an approximation of the motion of the individual ‘flammable blobs’. At this stage things still looked nothing like a flamethrower but I could tell that I was at least on the right track (believe it or not this was a massive improvement upon my earlier efforts)!

The next step was to vary the intensity of the particles dependent on how long their parent ‘blob’ has been in the air. I imagined a very intense, focussed flame to start with that would gradually get weaker and less focussed as the ‘blob’ burnt out and dispersed. After some tweaking to this effect my flamethrower was actually starting to look pretty convincing!



Last tweak was to give the individual particles a small amount of vertical acceleration, as if the heat was making them rise, and I was now pretty happy with the way things looked. Unfortunately my job was far from done!



Up until this point I’d been testing the flamethrower whilst firing from a static position, of course as soon as I tried it whilst moving everything went horribly wrong! I had been applying ‘correct’ physics to the ‘blobs’ in that, when fired, they are given a horizontal force from the gun as well as a horizontal and vertical force based on the players movement. It just didn’t feel right in practice however and I could see I was going to have to apply some ‘fake’ physics in order to get things to play nice.



I couldn’t find anything much on the Internet to help me but I did find an interesting YouTube video on the physics of the flamethrower in Half-Life 2 which demonstrated that the flamethrower ‘blobs’ always move relative to the player rather than relative to the game world. I reworked my code to operate on this basis, it was a definite improvement but I felt things has now gone too far the other way and the flames felt too rigidly ‘stuck’ to the player, it looked particularly noticeable when the player switched direction.



So I applied a kind of ‘halfway house’ approach instead, keeping the blobs moving relative to the player as long as the player maintains the same direction and keeps ‘fire’ held. When the player changes direction or releases fire the blobs are ‘unstuck’ from the player, ie the force of the player’s currently horizontal and vertical motion is applied and they are left to move relative to the world.



This seemed to be a good compromise approach as it allows for strafing and general playability whilst also looking nice and ‘fluid’ as the player changes direction. Now I just need to figure out the collision detection…

Dev Time: 2 days
Total Dev Time: approx 117.5 days
Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #115 on: August 01, 2017, 11:56:46 PM »

First steps to flamethrower collision detection - flames no longer pass through buildings!

Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #116 on: August 02, 2017, 11:31:54 PM »

Burn Mutant Burn!!

Flamethrower collision detection now works on enemies but I'm not really happy with the 'burning' effect yet...

Logged

bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #117 on: August 04, 2017, 02:10:10 AM »

Help!!! I'm on fire!!!

Logged

Eyon
Level 3
***



View Profile WWW
« Reply #118 on: August 04, 2017, 02:34:00 AM »

Hey the game looks cool !
Is there a story ?
Logged

Mobile strategy game in the browser: https://eyon.itch.io/agentsxmonsters
Twitter: https://twitter.com/Eyon_Patrick
bitbulldotcom
Level 2
**


#indiedev since the #zxspectrum days


View Profile WWW
« Reply #119 on: October 23, 2017, 05:16:00 AM »

Another huge lapse of time since the last update. Sorry! I’ve had my head down in contract work, been on holiday, had some private parking scammers issue court proceedings against me and had renovation work to do on a couple of rental properties. I can’t believe it’s been three months!

Contract’s over now though so back to it. I’m determined not to let ‘Jetboard Joust’ become vapourware. This post will be a bit sparse though as I can barely remember what I’ve been doing, it’s been spread over such a long period of time.

In the last post I spoke about getting the basics of the flamethrower action right. Now that was done I needed to make the flamethrower actually have an effect on enemies.

At a basic level this is very simple, I perform a straightforward ‘bounding box’ check on all the flamethrower particles and each enemy. Get the enemy to ‘burn’ in a visually convincing way wasn’t so simple though.

In my first approach I tried ‘sticking’ the flamethrower particles to the enemy once they came in contact. This just looked weird though as all the flames tended to appear in the same place rather than consuming the enemy as one would expect. It also threw up loads of other issues to do with the particles tracking the movement of the flamethrower (see previous post). After a while going down this route my code was starting to look so hacky, and the visuals were still so poor, that I decided to scrap it all and start again.

For my next approach I tried removing the flamethrower particles when they came into contact with an enemy and triggering a ‘burn’ animation instead. Even with a draft ‘burn’ animation this looked much better.

For the ‘burn’ animation itself I created a Flame class that utilised a similar particle effect to the flamethrower particles. After much tweaking I settled on the following ‘burn’ effect: whilst an enemy is burning flames appear at random locations over the enemy. Each flame has a sightly randomized lifespan. Flames may appear in front or behind the enemy, if they appear behind they are placed at the edges of the enemy so as not to be totally obscured from view. When a flame ‘dies’ it is replaced by another at a different location.



Next job was to get the enemy’s health to decrease in a way that made gameplay sense whilst the enemy burnt. I didn’t want health to decrease at the point of impact only, but for this decrease to continue as the ‘burn’ animation played out (to give the impression of the enemy’s health decreasing as they burnt).

What I ended up doing was maintaining a burn_damage variable for each enemy which stores how much it’s health should be depleted by over the course of a burn, and a burn_timer variable which stores the amount of frames the burn animation should last. When the Burn() method is called, burn_damage is increased appropriately and burn_timer set to at least 60 frames (more for very high damage values).



This approach gives a decent ‘slow burn’ effect whilst allowing me to tweak damage values easily to make gameplay sense. I also added something to make the flamethrower particles do less damage the nearer they are to the end of their lifespan.

Here's some gratuitous flamethrower duelling...



And here's the larger #pixelart flamethrower icon I'm using for the upgrades screen...



Dev Time: 2 days
Total Dev Time: approx 119.5 days
Logged

Pages: 1 ... 4 5 [6] 7 8 ... 10
Print
Jump to:  

Theme orange-lt created by panic