G.M.O.S.S.E - MK-IX (30/11/16) GM:Studio at last!

A place for people with an interest in developing new shmups.
User avatar
n0rtygames
Posts: 1001
Joined: Thu Mar 15, 2012 11:46 pm
Contact:

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by n0rtygames »

I tried to see if I could see it, but alas - I was bombarded by memoriser hell and unfair deaths as is par for the course with Raiden style games which I'm not particularly good at!

I did at one point grab a bomb when I had 2 in stock, noticed that the bomb count didn't go up and saw no text though?
facebook: Facebook
User avatar
Giest118
Posts: 1042
Joined: Wed May 02, 2012 1:50 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by Giest118 »

n0rtygames wrote:I tried to see if I could see it, but alas - I was bombarded by memoriser hell and unfair deaths as is par for the course with Raiden style games which I'm not particularly good at!

I did at one point grab a bomb when I had 2 in stock, noticed that the bomb count didn't go up and saw no text though?
Don't think he's released it yet; he's just making a progress report. :V
User avatar
n0rtygames
Posts: 1001
Joined: Thu Mar 15, 2012 11:46 pm
Contact:

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by n0rtygames »

Giest118 wrote:Don't think he's released it yet; he's just making a progress report. :V
I shall crawl back under my rock then... let us know when Bpze!
facebook: Facebook
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Yeah, nothing released yet, I always update first post with new builds if there is any. If you guys are keen to test I'm happy to send test builds though, Kaiser's been too busy for his own projects let alone testing my own so in that department I need all the help I can get.

Just don't be surprised if the game throws the kitchen (and/or an error). Yes, I deliberately left out 'sink' in that last statement.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Finally got around to doing some serious work on this thing. Been at it all day today. Might it be I have the groove to program again? Who knows.

http://pastebin.com/Pt0uq5Af
Who would've thought Pastebin would have GML syntax highlighting? Anyway, obj_en_plat has had a bit of a code refactoring, that's its Step event I put above there from earlier this afternoon.

The turrets now rotate by 2.5 when not shooting a whole stream of bullets, and *do not rotate at all* when they do, effectively getting a barrier line in the screen. I also decided that having it at a 45 degree angle was more trouble than its worth so I removed that, and now all 4 turrets should be easily able to be blown up from underneath providing you don't aim at the center of the platform (hitbox is literally the box in the center). These things should be easy enough to take down now.
Image
"Awwwww no, my XXXX beer turrets locked up again!"

In addition, I made Xonochrome look cool again. A bit of cycling through image indexes manually like what Giest did with his fake DDP laser, Arxyne weapon sprite edits, and replacing the *very old* explosion sprites (seriously, those were like from the January 2011 PoC) and we have:
Image

I suspect a possible visibility issue considering its shots are blue and the enemy shots are blue unless directly aimed at you or homing. Anyone keen for a beta test can PM me and let me know what they think.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

So far, no visibility issues reported. Perhaps someone like Udderdude (who's noticeably more sensitive to such matters) might have something to say about it.

Gone into a little bit of a coding lull again, but folks like Giest may be interested to hear I got SuperSound to not only work correctly with loop points but also restart without locking up the game - at the cost of reporting a crash on exit on first launch. SuperSound is old, has issues with properly unloading, and isn't as functional at GMFMODSimple, but it fits the bill well enough that if people were really desperate to have a sound system that isn't GM's piece of shit default or GMFMODSimple's proprietary license, then with enough interest I *could* convert GMOSSE to use SuperSound instead.

I've looked around at other sound engines and frankly there isn't any that really do loop points correctly and have a indie-free license. Best hope is that Caster gets updated with loop point support and tries to merge some of the DLLs it uses so there's less clutter. Having two engines in GMOSSE to switch between is a lot more plausible now than it once was but is going to make the related code rather confusing, so it's one or the other. I'm inclined to stick with what I've got considering the latter's crash on exit issues would make the game seem unprofessional.

Speaking of DLL issues, I've discovered Ultracrypt doesn't like Steam running in the background, at least I suspect that was what was running when it decided to just not work and mess up my external score file by reversing its state of encryption. It seems to do this on and off, had some problems with it in the past on school computers. Apparently it's a bad idea to make your own encryption because it will suck (says trap15 anyway) but I'm still feeling inclined to make my own or at least find a replacement. I'll have to do some modifications to the code so that it'll report an error as soon as any of Ultracrypt's commands (especially initialising the DLL) return an error code to see where it's first carking it anyway, hopefully at worst I can stop the external score file from being even touched if the DLL can't operate correctly.

In other news, I modified some aesthetic-related objects: asteroids aren't generated/destroyed on the fly anymore, they're created in Room Creation event and just reset to top of screen with new speed/direction values when y > yview+320+(sprite_width/2) (why sprite_width? its the same as sprite_height anyway and if you decide you want something longer on one side it should be on the width anyway), and wrapped the x values around (so if x > xview+240+(sprite_width/2) then x = xview-(sprite_width/2)). This should result in less memory usage, more control over density of the asteroid/star effects, and a more consistent object count.

In addition, the Omake bosses and their entrances have had aesthetic tweaks. The asteroids and stars turn red for the Stage 1 Omake and the walls and background turn red for the Stage 2 Omake while the boss is dying. The music stops, and then starts with the new tunes when the Omakes appear. Railslave has replacement tracks for all of these too. Eventually I want to make a video showing these off. I also felt the Stage 2 Omake was too easy after having its spiral attack speed reduced, so I increased its appearance duration and made it so it always exits from the center instead of wherever it ends up on timeout.

Finally, Izzy Hotaru (remember this guy?) finally sent me his modified build of GMOSSE. The scoring system has had several modifications, albeit hitting GM's large numbers issue, along with the graphics for almost everything. There's even destructable bullets, an idea from manic shmups I've not implemented yet but really should. He exposed a few areas I've not really made open enough though, particularly in scr_addscore, so that has had some modifications. DoDonPachi-clones are now very much possible with GMOSSE given enough effort as scr_addscore now allows for just increasing multiplier or just score alone, so if you were to consider the multiplier as a hit-count you could make it increase on hitting an enemy like Izzy Hotaru has managed to do the hard way, or if you wanted to do a no-multipliers game (or have 'tick damage' like in Yagawa games) that is now possible too via scr_addscore. It was all possible before, but now scr_addscore serves as a proper macro to do this the easy way.

There's also another project coming back from the dead but until the main dev wants to admit that's the case and bump his thread I won't say anything more. Stay tuned.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

UltraCrypt is no more. One less DLL in the folder. Replaced by a lovely script I found that more or less does the same thing. This means two things:

A) if you're an idiot and overwriting an old folder for setting up GMOSSE, you're going to have a bad time
B) if you want something better than what I've set up for a game, you'll need to do it yourself
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Did a bit of Google searching this project yesterday. Revealed the old thread at Yoyogames (which I'm trying to delete since no one over there gives a shit), and also some mirroring websites, in particular Softpedia! Didn't expect that!

Softpedia had MK-VI mirrored, but their staff are quite responsive and so I was able to get them to update the link. I still think it uses old pictures though, along with most of the sites.

Bottom line: unless I ever get banned from here, your first news regarding GMOSSE is always going to be on shmups.system11.org!

(oh, and I may have merged obj_ctrl_joymap/keymap into a single convenient controller using a new format style that Zenodyne is using already: and the whole configuration menu is next. Meanwhile, 2P support is going well but I still have the issue of wobble scrolling left).
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

http://www.youtube.com/watch?v=VZRbBcNU8o4

New video up. Shows a few of the changes I've talked about but not really shown in the last several months, with a bit of descriptions for it in the video.

Since I recorded and started uploading the video I've fixed up the options menu a fair bit, looks quite nice and has most if not all of GMOSSE's original config functions there and then some.

Music packs are now selectable via in-game: it will pop up a Windows dialog box. Emerald Master's alternate fontset is also selectable via in-game (the set you saw as enabled by default in MK-VI).
User avatar
nasty_wolverine
Posts: 1371
Joined: Sun Oct 09, 2011 11:44 pm

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by nasty_wolverine »

So i downloaded GMOSSE to see how you were handling enemy behaviour (and maybe steal it :mrgreen: ), first off, this thing doesnt import in game maker studio, so i downloaded legacy 8.1, opened up the project gmk, everything was peachy, except i cant compile because the lite version doesnt load dll's. You may just want to add a note on the first post about it. It was the first time i tried to open the gmk than just rather play it. but the scripts and the objects open up fine so i think i can just use 8.1 lite.

I guess i need to get my head around how gm actually uses scripts to learn off your code.
Elysian Door - Naraka (my WIP PC STG) in development hell for the moment
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Ah, I thought that part was kinda clear. I'll be sure to make a note of it in the first post shortly. Strange that it didn't want to import into GM:Studio though, perhaps they deprecated support for that too (but I'm pretty sure it does .gm81s, otherwise ENGIMA can transfer but it also won't run GMOSSE correctly for even worse reasons).

Not sure about how to explain a crash course with GM, although looking at Warbird (see signature) may be better for you since it's basically GMOSSE without the Pro-required features and complexity: enemy behaviour is for 99% of cases the same.
User avatar
nasty_wolverine
Posts: 1371
Joined: Sun Oct 09, 2011 11:44 pm

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by nasty_wolverine »

BPzeBanshee wrote: Not sure about how to explain a crash course with GM, although looking at Warbird (see signature) may be better for you since it's basically GMOSSE without the Pro-required features and complexity: enemy behaviour is for 99% of cases the same.
On it.
Elysian Door - Naraka (my WIP PC STG) in development hell for the moment
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Hey guys, it's been a while.

Unfortunately there hasn't been much progress on GMOSSE directly at all whatsoever. Most of what I've wanted to get out of the way for MK-VIII has been done, but the one crucial thing I haven't gotten to doing is 2P support. University, combined with work and a death in the family has caught up with me a lot more than I expected and I've had to put pretty much everything that isn't "quick spans of game-playing and testing" in the backburner while I get through everything else.

If people are interested in doing some thorough testing for me, whether it be as simple as a stress test or someone actually competent in playing shmups clearing it, I'm all ears and can push a public beta if there's interest - otherwise this will most likely be yet another annual release as by myself I don't think I'm going to get stage 3 or 2P support in before the end of December. If you're game, post here or PM me.

Changelog for specifics is huge and I can't remember it all but basically it boils down to:
- bugfixes (both potential and actually noticeable in reality) and improvements to internal code
- bonus bosses
- custom music mod made by Railslave, and ability to switch between them via in-game config
- completely revamped options menu with previously ini-only settings now available
- visual improvements
- changes to various enemies etc
- Ultracrypt is no more, now score file encryption is entirely up to the dev's control
- internal prepwork for 2P support

Oh, and Kaiser's project is looking quite something now, folks should ask him what's happening. ;)
User avatar
DJ Incompetent
Posts: 2373
Joined: Tue Jun 13, 2006 10:28 pm
Location: Murda Mitten, USA

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by DJ Incompetent »

I'll take a beta to try to clear it and stress test on my dev laptop.

Things I'd like to see another year:
- auto-cycling demonstration attract sequence
- attract sequence loading and ending a full motion video, seamlessly continuing the attract sequence.


Thanks for this and Warbird. I will do my best to understand your science.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Full motion video? Kind of like how the PGM/Type X games have movie intros? Well I think GM used to have video playing functions but the last time I tried I couldn't get it working, and I think they ripped it out anyway. An animation with proper coding, sprites and objects are certainly possible, when I think about what to do with it.....

As for attract sequences, I've hit one of the last design faults I did with this: thinking externalisation was a good idea I had all the sound files externalised and loaded in only when the appropriate objects need them. Great idea - until you have multiple players, and stuff like attract sequences, and importing into a version of Game Maker that likes to butcher externalisation...bleh.

I got my Uni assessment out of the way just today. I'm gonna reinternalise the sond files, name them something normal (most are named normally - some aren't), and providing my internet's not too terrible to upload I'll PM you later tonight. Bringing in the sound files and letting GM do its thing like it was designed for in the first place will allow for easier importing into Studio.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Another update with no fancy videos or screenshots. :/

Good news: Reimporting of sound files (EDIT: and external images) has been a success (somewhat to DJ Incompetent's dismay when his private beta broke in 50 pieces before I fixed it up :P). CleanMem also got updated with a variant someone posted with GM:Studio support, and I already know GMFMODSimple works under GMS: the only remaining thing is eradicating optional arguments from scripts and properly redesigning how I do the pause effect. I may have even found a way to get past GM:Studio's weird externalisation butchery.

I also have a plan for Stage 3. Essentially you'll be dropping into Earth and into a thunderstorm where you verse a huge battleship (or fleet of large ships or both). Think Raiden Fighters stage 6. Nothing coded for it yet.

Bad news: my i3 tower's PSU died along with my external HDD AC adapter. I have a laptop now, a reasonably okay Toshiba but I'm finding Windows 8 does not like GM8.0 very much at all. Apparently there's a bug with DirectSound that doesn't like multiple sounds playing at once causing crashes. Xeno Fighters consistently crashes and even foolproof programs like FINAL BOSS crash. So far the only game in my projects not to exhibit the issue is Zenodyne, possibly due to extreme simplicity of playing sounds, but with all the new explosion code happening I'm concerned that may not last.

I'm also on holidays later tonight and may or may not even get an internet connection or a chance to get on my laptop to even feel like doing coding. Things are going to stay slow and steady for a while but I'm hoping to finish this fucking game completely and utterly THIS year.

In case anyone forgot, starting from MK-VIII this ships with two music packs bringing filesize up to approx. 30MB. Worth every byte.
Last edited by BPzeBanshee on Fri Jan 17, 2014 8:23 am, edited 1 time in total.
User avatar
railslave
Posts: 505
Joined: Fri Oct 26, 2012 8:38 pm
Location: Abertillery , South Wales

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by railslave »

BPzeBanshee wrote:So far the only game in my projects not to exhibit the issue is Zenodyne,
I had a feeling, that from such humble beginnings that little unassuming game would go on to hold the universe together. :P
"When I get my hands on some money
I'll kiss it's green skin
And I'll ask it's dirty face
"Where the hell have you been?" - Michael Gira (Swans)
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

Progress update.

Nothing on finding a reasonable way around the sandboxing of GM:Studio. Yoyo clearly don't trust their customers too much.

Pausing isn't going to look as pretty as it used to. Using surfaces to make the appearance of everything being paused would require surfaces the size of the entire room (stage 2 is some 22000px high) thanks to going by the room rather than the window. More Yoyo stupidity at our expense. Anyway, grey wall blocks are the new pause background, with the text updated to better fit in with the rest of the menus.

External highscores are being a real pain in the ass. Reason being somewhere along the line text write functions broke their binary-safeness and whatever gets written in the sandbox isn't getting read in the same way as it was written. I'm sure I probably just need to add some base64 encrypt/decrypt commands in there somewhere, just getting used to this is all.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VII R2 (1/1/13) Stage 2, New Ships and

Post by BPzeBanshee »

TATE and screen size adjustment can now be performed via config menu,
- without a need to reboot the game,
- regardless of whether you're paused or not.


Image

Is this part of my freaky surface rendering stuff again? No it is not!

How did I do it this time then? Well I had a couple of realisations about GM yesterday regarding just how configurable objects are on the fly.

As you may or may not know, to perform adjustments to the view of the screen to allow for successful rotation requires a reboot of the room. My original solution for this, as it was the easier method, was simply to force a game restart.

Then the idea came to me: persistence. Not persistence prevailing in this sense, but GM's persistence system in rooms and objects - basically a room/object maintaining its state even when you leave the room. With objects, they move with you into the room you move into, and with rooms they remember the state of everything within the room. It's generally considered something to be very careful of as it can cause unexpected errors if you don't know what you're doing, and with room persistence, once you set it to be persistent you can't alter the view settings until you go into that room and switch it off, not with room_set_persistent(roomindex,on) as you'd expect but instead by simply changing the room_persistent variable to 0.

I was eventually able to get around this and use it for getting a "dynamic" result from the main menu and posted an update on the Zenodyne thread stating I'd managed to get this much done and things would be as good as it could get. Basically, my while loop I have in a script iterated through all the rooms including the main menu and changed the width/height according to what was required. To see the results "instantly" I simply set the room I was in to be persistent, did a room_restart(), and turned persistence off again. A couple of core controller objects had to be modified to not reload everything (dont fuck with global.update plz) but it worked, the illusion was flawless. Unfortunately however this didn't work so well for the ingame area, most likely the kind of weirdness issues Mark Overmars had warned about.

Then I realised that unlike rooms, objects could also be made persistent/not-persistent on-the-fly, and didn't have the kind of issues with lockdowns that rooms had. What if one were to do the room alteration/restart stuff on the fly and preserve the game state simply by making all of the non-persistent objects persistent through the change, and revert them?

Took me quite a bit of work and I'm not sure it's considered the greatest practice to have with (all) {} statements but only way to get it reasonably working, and with appropriate checks you don't end up with stage 1 boss in your menu. This did however prove to be successful, and I was able to get things upscaling/TATEing ingame "instantly" on the push of a button. I say "instantly" because actually the room's being reset and background/object/views are being set to prior-to-restart values and on older machines that way take a while. This does concern me regarding GMOSSE but until ENGIMA becomes more stable there's just no way to reasonably get more performance out of the old bucket.

This is currently implemented in Zenodyne and a little sandbox project of mine based off Warbird (that isn't public), I expect to be able to port it to GMOSSE once the last of Zenodyne's kinks are ironed out and I'm happy with the game.

Oh, by the way, I also came up with a simple way of avoiding sprite_create_from_surface for those looking to do GMS ports with a pause system. Bit object heavy if the game is, and doesn't help cheat out of drawing the HUD on pause (simple enough if you know what you're doing for HUDs anyway), but it is effective and better than trying to program the enemies to be still. Have a look at this piece of code:

Code: Select all

// on pause, before instance_deactivate_all(1)
with (all)
   {
   if visible && sprite_index != -1
      {
      fake = instance_create(x,y,obj_blank);
      fake.sprite_index = sprite_index;
      fake.image_index = image_index;
      fake.image_speed = 0;
      fake.image_xscale = image_xscale;
      fake.image_yscale = image_yscale;
      fake.image_angle = image_angle;
      fake.image_blend = image_blend;
      }
   }

// after instance_deactivate_all(1)
instance_activate_object(obj_blank);

// on unpause, before instance_activate_all()
with obj_blank instance_destroy();
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

G.M.O.S.S.E - MK-VIII (22/4/14) Instant TATE, fixes, etc

Post by BPzeBanshee »

ImageImageImageImage
GMOSSE MK-VIII is now available
Download HERE

I'll be blunt: between this and Zenodyne I got quite burnt out, and the work I wanted to get done before this release just wasn't going to get finished without a bit of a push. Besides, it's been over a year and I start to get really nervous when it's been that long in case of data loss etc. So I fixed up what I knew was broke and here we are. If there's bugs, or questions, please let me know.

Main features shown in screenshots are the alterations I've made to the Warbird and Arxyne ships - Warbird has a void shield bomb similar to that of XII Stag (no bonus points for collected bullets though), and Arxyne lost a couple of its homing lasers for a wider shot and a new lightning gun that "penetrates" through objects. You can also see the Omakes, including the stage 1 Omake which may or may not have been in the last public release. I won't tell you the requirements but between the alterations I've made to make them slightly more fair and to make the backgrounds fade to red when they appear you know you're in for a neat ride!

Not so easily shown is the "instant TATE" update I made, but if you've played Zenodyne and messed with the TATE settings there you'll be right at home. GMOSSE has had updates to the menu system among other things, a lot of which was shared with Zenodyne (and vice versa) during its development. Those who know how to read the source may be somewhat horrified with how I pulled it off (see above post) but human eyeballs don't look pretty looking at it from the outside in either once it's been taken out of it's socket. Point is, you can flip the game screen and see the changes straight away - in the menu and ingame. This also applies to window upscaling. x2 upscaling is distorted due to some GM bullshit but x3 looks beautiful.

Readme with a (probably incomplete) changelog is included in the download.
DrBlowhole20
Posts: 60
Joined: Fri Nov 09, 2012 5:55 pm

Re: G.M.O.S.S.E - MK-VIII (22/4/14) Instant TATE, fixes, etc

Post by DrBlowhole20 »

I'm a beginner to it and since there's no tutorial how to use the engine, i couldn't make one.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VIII (22/4/14) Instant TATE, fixes, etc

Post by BPzeBanshee »

Beginner to Game Maker in general or just to GMOSSE itself?If the former, GMOSSE can be quite intimidating for new users to Game Maker: things like GML coding and knowledge of using scripts in general are going to be a must for you, but don't give up!

Have a go at Warbird (see signature for link), the game example is very simple but perhaps you'll get the general idea. Otherwise, I highly recommend Mark Overmar's "1945" tutorial: the game created isn't spectacular but it teaches you a fair bit of how Game Maker works overall, and will get you used to using variables among other things.
User avatar
S20-TBL
Posts: 440
Joined: Mon Jan 18, 2010 6:48 am
Location: Frying over a jungle and saving the nature
Contact:

Re: G.M.O.S.S.E - MK-VIII (22/4/14) Instant TATE, fixes, etc

Post by S20-TBL »

Hey cool, are those the custom explosions I made a while back on the "Ruined FOREVEEERRR" Edition? XD

Glad to see someone else made a working DDP laser. I'll take it over mine anytime if it helps with the slowdown on older PCs.
--Papilio v0.9 Beta now on itch.io! (development thread)--
Xyga wrote:Blondest eyelashes ever.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VIII (22/4/14) Instant TATE, fixes, etc

Post by BPzeBanshee »

Holy shit, you're back! :D

Kept the explosions since they were awesome and have been generally remarked as awesome, hope you don't mind. Unfortunately I didn't end up doing much of anything with the laser stuff, I think the laser prototyping is still present in a subfolder for Arxyne in the current release but whenever I tried it my head hurt, and I've been really having a hard time actually taking enough interest to get anywhere with GMOSSE. So Arxyne has a very simple "penetrating" lightning bolt.

At least Stage 3 has something that isn't blank space though, and actually has a plan, and boss sprites by Kaiser done (with a little missing polish he'll do if I ever get around to programming it in). Think RF1 stage 6.
User avatar
S20-TBL
Posts: 440
Joined: Mon Jan 18, 2010 6:48 am
Location: Frying over a jungle and saving the nature
Contact:

Re: G.M.O.S.S.E - MK-VIII (22/4/14) Instant TATE, fixes, etc

Post by S20-TBL »

I ran it and tried reassigning joystick buttons in the hopes of studying what you did with Zenodyne, but when I select Joystick Config and press what I assume is the Shot key, I don't receive the "press new <etc> key" messages and all input ceases to be detected (keyboard AND joystick) except Esc which promptly quits the game.

Checking the config.ini file reveals that I somehow managed to assign the same joystick button to two different actions and jumble up the rest without the game letting me know that I was actually assigning buttons.

EDIT: I tried it several times with both Keyboard and Joystick config and the result was the same. I've had to resort to manually deleting config.ini every time before running the compiler.
--Papilio v0.9 Beta now on itch.io! (development thread)--
Xyga wrote:Blondest eyelashes ever.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

G.M.O.S.S.E - MK-VIII R2 (29/7/14) Joystick fixes and more

Post by BPzeBanshee »

I forgot a draw_set_alpha line on obj_ctrl_rebind (which was a recent merge of separate rebinders for keyboards and joystick/gamepads). Oops. :oops:

I also discovered upon plugging my Hori Fighting VX stick that for some reason it was taking an ID of 2 instead of the default 1 unless I set it to my "recommended pad for old games" in Windows' Controller settings. GMOSSE was only checking for ID 1, now I have it checking both with ID 1 taking priority.

To that end I've updated the build with fixes for this and a few other miscellaneous stuff. The first post has been updated with the link too, link here: https://www.mediafire.com/?9pxxziihwd8rcz8

Also, go to Arxyne in Ship Select and press down. Leave it as it is or make it the new default?
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VIII R2 (29/7/14) Joystick fixes and mo

Post by BPzeBanshee »

Just a friendly reminder that I'm not dead and working on stage 3 very slowly in reverse order. Thanks for the cloud pics monoRAIL! :)

Image
User avatar
S20-TBL
Posts: 440
Joined: Mon Jan 18, 2010 6:48 am
Location: Frying over a jungle and saving the nature
Contact:

Re: G.M.O.S.S.E - MK-VIII R2 (29/7/14) Joystick fixes and mo

Post by S20-TBL »

Speaking of which, I thought I had finally stumbled onto a way to draw DDP beams for GMOSSE without eating too much memory, using tiles. For the most part it SORT OF worked, but alas, I ran into two major problems:

1) Backgrounds don't like being drawn in reverse. If it were an enemy shooting downwards this wouldn't be a problem, meaning you can use it for enemy lasers that shoot from top to bottom. But shooting to the left and upwards is far more dicey to put it mildly. It's not that you couldn't flip the background image itself; it's just that the game can't seem to handle drawing tiles from the upper right corner to the left, or from bottom to top. In addition the game screws up all collision detection this way, while retaining correct collision detection when drawn normally. I have yet to find a workaround, but since you mentioned playing around with per-scanline drawing then you might be able to make it work (the method uses tile_add() and tile_layer_shift()).

2) To do this without smothering the whole game screen with tiles that simply won't be deleted requires using a separate object to generate the tile itself, and then shift its X and Y origins around along with itself. This is less of a problem than the first though.

EDIT: I think I may know how to make this work for the player ship in GMOSSE now that I think of it.
--Papilio v0.9 Beta now on itch.io! (development thread)--
Xyga wrote:Blondest eyelashes ever.
User avatar
BPzeBanshee
Posts: 4857
Joined: Sun Feb 08, 2009 3:59 am

Re: G.M.O.S.S.E - MK-VIII R2 (29/7/14) Joystick fixes and mo

Post by BPzeBanshee »

Last time I tried tiles were even more of a performance killer for reasons I didn't quite understand last time I messed around with them, thus why I used 320x320 backgrounds. My foray into per-line drawing for visual effects recently didn't go so well either, and that wasn't even meant with the legacy PC in mind. :?
User avatar
S20-TBL
Posts: 440
Joined: Mon Jan 18, 2010 6:48 am
Location: Frying over a jungle and saving the nature
Contact:

Re: G.M.O.S.S.E - MK-VIII R2 (29/7/14) Joystick fixes and mo

Post by S20-TBL »

BPzeBanshee wrote:Last time I tried tiles were even more of a performance killer for reasons I didn't quite understand last time I messed around with them, thus why I used 320x320 backgrounds.
This is strange. If you haven't tried v0.35 Papilio yet, I replaced the multiple object-based cloud cover effects in Stages 2 and 3 with scrolling tile layers generated by a single controller object, and on a 1.65GHz dual core laptop it completely negated the 10-15fps slowdown that occurs during those sections, keeping everything at a pristine 60fps.

To test this I actually kept Papilio's main menu running for 30 minutes with the same cloud cover tile generator running indefinitely and there was no slowdown at all, though to be fair the test was conducted on an i5 (I had interesting results later on with a slightly different method though--read below).

Maybe you tried drawing the tiles by assigning each to a single object? If this is the case then it's more a case of the game keeping track of each individual object that has been created, and not the tile layers themselves. After making the above changes I then took to revamping the waterfall in Stage 3 path B (the boomerang hax snake lady) by using tile generators. Here's what I learned:
  • At first I attempted to use a tile generator that rapidly drew tiles at the rate of 15 per second and quickly scrolled their assigned layer downward. While this was efficient in itself, using two of them had a noticeable hit on the processor power--the game began slowing down to 51-55 FPS (in addition to the lightning effect, which I also had to redesign to use a background layer afterwards). I later found out that each individual tile had probably not been deleted properly due to faulty coding, though the objects' step events were a bit more complicated by using the random() function.
  • Next I tried using an older waterfall generator that spat out multiple objects, even more than the tile generators listed above. Each object assigned a single tile to itself and shifted its position accordingly. However, since these are objects with step events we're talking about the game then assigned RAM usage to each one. Interestingly, while the FPS loss was around 12-15 this time, I do remember when I used sprites for the same purpose and the effect was slightly worse--around 15-20 FPS gone I think.
Both of the above tests were done on an i5, which quickly led me to ditch them.
--Papilio v0.9 Beta now on itch.io! (development thread)--
Xyga wrote:Blondest eyelashes ever.
Post Reply