Author Topic: I Wanna Be the Engine KS Edition (For GMStudio)  (Read 56958 times)

klazen108

  • Administrator
  • The Kid
  • Posts: 286
  • your a kid now your a squid now
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 42.0.2311.152 Chrome 42.0.2311.152
    • View Profile
    • Delicious-Fruit
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #15 on: May 23, 2015, 04:18:01 PM »
Dev tools I'm keeping all locked away in a separate, optional debug object. I don't like baking it into the engine because Yuuutu 2015 did that, and we're still getting games on the wiki with dev tools enabled :Kappa: There are some good ideas in there to add to the debug object though.

Starting room & game name are already currently in the global config.

Version number, Save File Location, Config File Location, External Music Folder Location: the basic engine doesn't use external music, and the version number is an interesting idea... I do like the idea of being able to specify where the saves go, just because you do have to change it in a lot of places if you ever need to do it differently for some reason.

Sudnep

  • Global Moderator
  • Spike Dodger
  • Posts: 124
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 43.0.2357.65 Chrome 43.0.2357.65
    • View Profile
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #16 on: May 23, 2015, 04:19:48 PM »
Yeah you are right about the dev tool problem.  :Kappa:

klazen108

  • Administrator
  • The Kid
  • Posts: 286
  • your a kid now your a squid now
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 42.0.2311.152 Chrome 42.0.2311.152
    • View Profile
    • Delicious-Fruit
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #17 on: May 26, 2015, 06:37:37 PM »
Updated first post with v0.7! Changelog at bottom of post.

We've put minispikes & miniblocks in the engine now. However, leftward facing minispikes still seem to kill you if you walk off with the correct align. We're not sure of the cause, if anyone wants to help us look it would be appreciated!

-Added minispikes, miniblocks (note: walk-off align seems bugged for leftward-facing minispikes)
-Menu now reflects the correct keybinds for accept/back
-Added editor-only icons
-Added saveblocker object
-Fixed blood sticking to corners in midair
-Moved blood in front of spikes
-Added ability to enable/disable difficulty select

kilgour22

  • Cherry Eater
  • Posts: 82
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 43.0.2357.81 Chrome 43.0.2357.81
    • View Profile
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #18 on: May 27, 2015, 07:19:01 PM »
It's very strange that the "worst" align for walking off a minispike works. Maybe it has something to do with the kid's sprite when faced to the  left direction?

EDIT: YO. It works with the walkoff align. But, you have to be standing on the very last pixel, facing to the right. It looks like the kid can't be facing left and stand on the last pixel of the block. The kid can only face right and stand on the last pixel.

EDIT #2: it's easily shown by grabbing the align that lets you hit the last pixel of a block above you and jump straight above you. If you're facing to the left, you go right through the block. If you're facing to the right, you bonk. Have fun fixing it!  :atkHappy:

EDIT #3: This is from the last pixel, facing right. Works like a charm. https://gyazo.com/321a9a241ab49ed558a0aafb9f7cad8f
« Last Edit: May 27, 2015, 07:38:54 PM by kilgour22 »
Don't let a spike ruin your day.

Sudnep

  • Global Moderator
  • Spike Dodger
  • Posts: 124
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 43.0.2357.81 Chrome 43.0.2357.81
    • View Profile
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #19 on: May 27, 2015, 07:31:52 PM »
EDIT: YO. It works with the walkoff align. But, you have to be standing on the very last pixel, facing to the right. It looks like the kid can't be facing left and stand on the last pixel of the block. The kid can only face right and stand on the last pixel.
If thats true does it have something to do with image_xscale = -1 not working correctly?

kilgour22

  • Cherry Eater
  • Posts: 82
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 43.0.2357.81 Chrome 43.0.2357.81
    • View Profile
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #20 on: May 27, 2015, 07:41:30 PM »
EDIT: YO. It works with the walkoff align. But, you have to be standing on the very last pixel, facing to the right. It looks like the kid can't be facing left and stand on the last pixel of the block. The kid can only face right and stand on the last pixel.
If thats true does it have something to do with image_xscale = -1 not working correctly?

If that was the case, wouldn't the same thing hold true for the kid on the other side of the block? It doesn't, though. You can stand on the last pixel of the right side of a block regardless of the kid's direction.
Don't let a spike ruin your day.

klazen108

  • Administrator
  • The Kid
  • Posts: 286
  • your a kid now your a squid now
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 42.0.2311.152 Chrome 42.0.2311.152
    • View Profile
    • Delicious-Fruit
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #21 on: May 28, 2015, 11:53:32 AM »
If thats true does it have something to do with image_xscale = -1 not working correctly?

It's a possibility, there was a bug in the engine I've fixed already where you could turn around and get stuck in walls, which leads me to believe that the hitbox is inbalanced in GMS... perhaps in GM8 the center was between pixels, but in GMS it's in the center at the .5 mark? I'm not sure how to test that, gamemaker doesn't allow you to set the origin to anything but integers.

infern0man1

  • ~(=^・ω・^)ψ
  • Global Moderator
  • Oatmeal Killer
  • Posts: 1.021
  • Dear sir stroke madam, fire exclamation point
  • OS:
  • Linux Linux
  • Browser:
  • Safari 4.0 Safari 4.0
    • View Profile
    • Twitter
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #22 on: May 28, 2015, 03:10:15 PM »
I don't know if it's already been implemented since I haven't had the time to test, but I think it would be a good idea for bullets to destroy themselves upon exiting the view/room/etc. There are numerous games where you have to walk for a certain amount of time before getting to the first jump because the save is too far for the bullet to reach, and I know there also bosses that have this trouble.

Edit: @kilgour the direction the kid is facing matters none when it comes to that, since the kid always will face right when moving right and vice versa.
« Last Edit: May 28, 2015, 09:27:39 PM by infern0man1 »

Kyir

  • The Kid
  • Posts: 293
  • Normal Guy
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 43.0.2357.81 Chrome 43.0.2357.81
    • View Profile
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #23 on: June 08, 2015, 09:32:23 PM »
So are we pretty much stuck with the launch screen and the "Made with GameMaker Studio" title unless we upgrade to premium?

klazen108

  • Administrator
  • The Kid
  • Posts: 286
  • your a kid now your a squid now
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 42.0.2311.152 Chrome 42.0.2311.152
    • View Profile
    • Delicious-Fruit
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #24 on: June 09, 2015, 12:53:00 AM »
Just leaving a note for myself and anyone else who's using the engine, I've got a couple of bug reports recently:
-If you bind shoot and jump to the same key, you'll get softlocked in the menu (thanks Stonk :Kappa: )
-Every align is the walk-off align for sideways spikes (think T-bones) maybe I'll leave this one in ( ͡•ᴗ͡•)

If you find any other inconsistencies with the engine let me know!

As for the GMStudio Standard limitations, I've got Pro so I don't know what all is different, but as far as I know you only have to live with the hardcoded title bar & splash screen (and the lack of a few advanced features no one will ever use in fangames :P ) - Seph and I added the in-game GUI display with deathtime to account for this, so hopefully that's not a big issue. Studio goes on sale all the time, keep an eye out and you could nab it for 50% or more off like I did! It's well worth it considering how great of an IDE it is.

zebbe94

  • Wannabe
  • Posts: 22
  • :o
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 44.0.2403.18 Chrome 44.0.2403.18
    • View Profile
    • Twitch channel
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #25 on: June 09, 2015, 03:24:10 AM »
So there is a problem I'm having with this, saves won't work after closing the game, even after creating an executable. I dunno if others are having this problem too though.

I've also tried the engine out on the early access (aka beta) version of gms, and in that version the 2 block trick doesn't work. This makes me a bit worried things may break when gamemaker gets updated. :/

Also here are a few suggestions:
  • It would be nice to have a template room like in the Seph engine that you can duplicate (just an empty room with all the right settings)
  • Have a default savepoint that will be there no matter what difficulty you're playing on
  • It would be nice to have a d aligns when in debug mode
  • I also kinda like the idea of having the old gm icon like some others mentioned

Other than that and aligns being messed up this seems really nice :)

klazen108

  • Administrator
  • The Kid
  • Posts: 286
  • your a kid now your a squid now
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 42.0.2311.152 Chrome 42.0.2311.152
    • View Profile
    • Delicious-Fruit
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #26 on: June 10, 2015, 10:35:46 AM »
Okok today we have another journal entry in the long quest to get an accurate fangame engine in GMS! I was looking into the walk-off align differences today, and comparing them between engines. For the following test, I took a bad align for the walkoff (imagine that the good align for a rightward facing spike is align #3, then I had #1) and then held right until the kid collided with the spike, and recorded the position at the start/end of each frame. Looking at the results from GM8.1 and GMS, it appears that the position is the exact same on every frame! Therefore this is definitely a collision issue. In GM8.1, the kid collides with the spike at (294.00, 439.87), but the kid in GMS survives at this position. Maybe it's because the position for collision is being floored (down) in GMS, where it's being rounded (up or down) in GM8.1? I don't think this would explain the issue with minispike walkoffs though...


Code: [Select]
////////////////////////////////////GMS Results:
begin of step     end of step
(282.00, 439.47) (282.00, 439.47) //start position
(282.00, 439.47) (285.00, 439.47) //first step of movement
(285.00, 439.47) (288.00, 439.47)
(288.00, 439.47) (291.00, 439.47)
(291.00, 439.47) (294.00, 439.87) //should have collided here
(294.00, 439.87) (297.00, 440.67)
(297.00, 440.67) (300.00, 441.87)
(300.00, 441.87) (303.00, 443.47)
(303.00, 443.47) (306.00, 445.47)
(306.00, 445.47) (309.00, 447.87)
(309.00, 447.87)                  //Collided!

//////////////////////////////////GM8.1 Results:
(282.00,439.47) (282.00,439.47) //start position
(282.00,439.47) (285.00,439.47) //first step of movement
(285.00,439.47) (288.00,439.47)
(288.00,439.47) (291.00,439.47)
(291.00,439.47) (294.00,439.87) //Collided!

I wonder if modifying the playerKiller collision detection in end step to round position values would make it behave the same? I'll have to do more testing. (And yes, I did bunny-hop until my v-align was identical in both tests :Kappa: )

EDIT: Literally 3 minutes after I posted this I changed the place_meeting(x,y,playerKiller) line in the end step event to place_meeting(round(x),round(y),playerKiller) and the kid dies when you don't have the correct align! Left-facing minispikes are still acting up, so the root cause there is something else.

EDIT 2: As for the minispike/kid image_xscale issue, I'm trying to separate the block collision and move it into the end step function as well, but I can't seem to get it to work how it should... even if I do the if (solid) x=xprevious... stuff, the kid gets stuck, stutters in the ground, can't jump, all sorts of nasty things. If we could get a working collision event in the form of if (place_meeting(x,y,block)) then we could try rounding the coordinates differently and possibly make some progress.

EDIT 3: Ok, I should really shut my mouth and code before I start posting :Kappa: I managed to get the collision with blocks working perfectly in the step event, turns out you have to do x=xprevious/y=yprevious at the start of the event, and x+=hspeed/y+=vspeed at the end of the event... go figure. Anyway, after I did that, I changed the collision check like so:
Code: [Select]
o = collision_rectangle(x-5.5,y-12,x+5.5,y+8.5,block,1,1);where o is a variable holding the id of the block if there is one (like 'other' in the collision event). Adding 0.5 to the coordinates actually seems to work, I can walk off all the minispikes now, and only with the correct align! So the question now becomes, is it really worth switching to this arcane collision system in order to maintain a perfect replica of physics, or should we embrace the new way that GMS suggests? Leave me your comments if you have any!

kilgour22

  • Cherry Eater
  • Posts: 82
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 43.0.2357.81 Chrome 43.0.2357.81
    • View Profile
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #27 on: June 10, 2015, 06:22:00 PM »
So the question now becomes, is it really worth switching to this arcane collision system in order to maintain a perfect replica of physics, or should we embrace the new way that GMS suggests? Leave me your comments if you have any!
Personally, my vote would go towards keeping the physics true to GameMaker 8.0/8.1. However, if lots of people would like to give the GMS physics a try, then I would be open to the new physics as well.
Don't let a spike ruin your day.

pieceofcheese87

  • Global Moderator
  • The Kid
  • Posts: 346
  • Personal Text
  • OS:
  • Windows 8.1/Server 2013 Windows 8.1/Server 2013
  • Browser:
  • Chrome 43.0.2357.124 Chrome 43.0.2357.124
    • View Profile
    • Twitch Tv Channel
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #28 on: June 10, 2015, 06:32:29 PM »
I'm fine with new physics, but i'm sure all the pixologists would not be
Signature

infern0man1

  • ~(=^・ω・^)ψ
  • Global Moderator
  • Oatmeal Killer
  • Posts: 1.021
  • Dear sir stroke madam, fire exclamation point
  • OS:
  • Windows Vista/Server 2008 Windows Vista/Server 2008
  • Browser:
  • Chrome 43.0.2357.124 Chrome 43.0.2357.124
    • View Profile
    • Twitter
  • Playstyle: Keyboard
Re: I Wanna Be the Engine KS Edition (For GMStudio)
« Reply #29 on: June 10, 2015, 06:48:27 PM »
Pixologist here :Kappa: