mrsmes resurrected

February 22, 2008 at 16:47 | Posted in Everything | 16 Comments
Tags: ,

And he’s brought Quotes of the Week! 😀

check out what he wrote on his profile after my “I’ll let this go but any more funny business and I’ll give you a trip to spamtown” comment:

“woah time out, what did i do this time i thought i was making things better or i am completely confused as too how you work and socialize with others and how i am meant too understand this and get along with you if i don’t understand how you are likely to react, akh, trust me if you do anything of the sort i’ll send you too spam city, or better yet a entire continent of spam.”

Well spam is his middle name, but he doesn’t have the tools or money to fly me to a spam continent.

Anyway, here’s my response, I guess just to entertain everyone, but first of all I’ll give you someting quote-worthy that LavaBall said:


“Sure go on, Spam AKH, It just makes you worse that’s all, Why don’t you do something better other then spamming people.

Get a life mrsmes.”


“My God mrsmes, learn to read.

I said that if YOU do anything else THEN I’ll spam you. Geez.

… And come up with your own metaphors.”

😀 I also got a good quote from mrsmes on the forums, I’ll post it on Quotes of the Week, but you can see it here too: 😀

“But i won’t just llet any one use it they have too give credits too me for usage
of course AKH is never too use this sinse he is such a smart arse at programming
in gml he should be able too work out a way that is faster but in my scrypt with
this in gml i am going too show you that faster isn’t always better just get a
sprite drawn up and make a object and a room and apply the following code in
it’s step event and you have your fast whacky inverted arrow key controlled
player which seems harder too control and speed can over power it’s motion, so
here is the code:
// Control Reverse
// Written By Aaron Wise
// Copy Right 2008
// reverse the controls
if keyboard_check(vk_left){direction=0 speed+=1}
if keyboard_check(vk_right){direction=180 speed+=1}
if keyboard_check(vk_down){direction=90 speed+=1}
if keyboard_check(vk_up){direction=270 speed+=1}
if speed>10020 {friction+=15}
Here are the controls:
Arrow keys: left = right, right = left, up = down, down = up
so your movement is reversed
enjoy from mrsmes,
a smes creation”

it appears he’s trying to make some GML “scrypts” now, this is a very basic inverse movement example, and as he said, I could come up with something faster 😉 but I could also come up with something that actually works.

… OK, here it is, inverse movement, one of the most basic of Game Maker’s abilities.

if !variable_local_exists(“a”) {a=0}

if (keyboard_check(vk_right) || keyboard_check(vk_left) || keyboard_check(vk_up) || keyboard_check(vk_down))


a=1+a*1.1 if keyboard_check(vk_right) x-=a

if keyboard_check(vk_left) x+=aif keyboard_check(vk_down) y-=a

if keyboard_check(vk_up) y+=a

} else a=a*0.2

if a<1 a=0

if a>30 a=30there we go, it’s so much better than mrsmes’ code and it doesn’t stupidly limit the speed to 10,020 like his does, therefore it works.

You see GM’s object speed is measured in pixels per step, so with mrsmes limiting his object’s speed to 10,020, it will be able to shoot across 300 computer screen’s worth in a second, or more depending on what the FPS is set at. I limited the speed to 30, which works well at 30 FPS and using a variable “a”, the object accellerates to this speed rather than travelling at it as soon as the button is pressed.

Anyway, I wasted more time than I thought I would writing that code [it’s been a while …] and GM’s editor has made my font go all funny, so I’ll end here today’s post here.



RSS feed for comments on this post. TrackBack URI

  1. WordPress couldn’t handle all the tags and it rearranged my code. Which was quite annoying, but you get what I wrote.

  2. and just so mrsmes doesnt think Ive ignored his excellent keystroke reading routine…heres my version of his code in assembly language….Im sure mrsmes will find it usefull…..appologies its not up to the great standard of the smes, but it will read in a keypress and store in a register..


    MOV AH, 0
    INT 16h

    CMP AL, 13
    JZ exit

    CMP AL, 8
    JNE add_to_buffer
    JCXZ wait_for_key
    DEC CX
    DEC DI
    PUTC 8
    PUTC ‘ ‘
    PUTC 8
    JMP wait_for_key


    CMP CX, DX
    JAE wait_for_key

    MOV [DI], AL
    INC DI
    INC CX

    MOV AH, 0Eh
    INT 10h

    JMP wait_for_key

  3. Mrsmes, I hope you understand this is sarcasm…and to everyone else…Im sorry this code looks lame, wordpress took out all my tabs aswell.

  4. sorry for third post, as Im turning into a smes, but if anyone is interested in using any asm routines in their code, give me an email….Ive made loads of superfast little routines like the one above….

  5. And so LavaBall told mrsmes to spam you eh?
    I’ve never liked that guy anyway

    And mrsmes as always post’s without thinking, The usual no-brainer dummy.

  6. You really think i was going too let you get away with that no, well, this is great i’ll come back here, I just like too see you noobs going over something and not evening getting a pea sized brain in that head of yours which can atleast get you too breathe and work out was is really going on around you.

  7. Ha, Ha, You got owned.

  8. U suck, ha, ha.

  9. AKH, is a bum.
    AKH: Hmmm… you have given me a lot too think about.

  10. tee, hee, hee.

  11. HA, HA, AKH, will never know that if he stops this nonsense he can end it all and have me be normal for atleast 5 minutes.

  12. OK, That didn’t made me laugh, Out of all the lamest comments, Those comments their are waaay too shit that they aren’t even funny, Come up with something funny before you post smes, I didn’t even smile at those literally.

  13. Perhaps, mrsmes, if you possessed the ability to create a coherent sentence, knew how to make yourself appear differently over the internet, and above all if you knew how to insult someone, that might have worked just a little bit.

    But instead, you’ve just owned yourself.

    And I think you’ve forgotten my promise. Remember that I said any more funny business and I’d spam you? And remember that I said I’d stick to it? Well, guess what Einstein, I meant it. You’re going to regret what you just wrote.

  14. I’m spamming him now 😉 over 150 PMs sent already, all without lifting a finger. Except of course when I first typed out the message I’m automatedly [not a word?] spamming him with. >_>

  15. well I just wanted to point out above code is a very, very starnge way to handle acceleration :P..

    It accelerates faster if the acceleration is higher.

    First of all: why introducing a new variable while the speed variable will do? Secondly using a formula like this:
    speed = speed + ACCELVAR/max(speed,1);

    Where accelvar is a variable which determines the acceleration at speed <= “1”
    Wuld result into a function that has a dx/dy going to 0 (but never reaching it, so it’ll always grow). Even better would be to use a clipped function (where dx/dy becomes 0), however making a sequential formula of these type of function require ln’s (or log2 which programmers seem to like o.O).
    An accelvar of “0.5” isn’t too strange…

    if (keyboard_check(vk_right) || keyboard_check(vk_left) || keyboard_check(vk_up) || keyboard_check(vk_down))
    speed = min(MAXSPEED, ACCELVAR/max(speed,1)); //setting the speed where accelvar is like described above and MAXSPEED is a limit max speed

    /*direction problem now*/
    if keyboard_check(vk_right) direction = 180;
    else if keyboard_check(vk_left) direction = 0;
    else if keyboard_check(vk_down) direction = 90;
    else direction = 270;

    else //no acceleration key pressed, slowing down
    speed *= DECELVAR; //where DECELVAR is a value (less than 1) at which the object feels “friction” 0.9 often works..

    /*this piece is extra, it stops the car when very low speed to prevent strange “bugs” when programming other parts uncarefully */
    if ( speed < 0.05 )
    speed = 0


    Ow and please indent any code you write!

    “I limited the speed to 30” – You actually tested that? A speed of 30 will make the object next to invisible: in 1 second at 30 frames/second it will move 900 pixels, that’s really fast! (considering a basic gm-game screen is 640*480 pixels). Limits like 4 (slow) 8 and 16 are much more common!

    Anyway is it really worth mentioning it that this isn’t really rocket science? For a few GOOD scripts look here:

    @ivor biggun/fos: You’re right a black box doesn’t work there, but I also said in my reply it didn’t work for assembly :P. – Anyway, doesn’t that code actually waits for a key before continuing the “main program”?

  16. well, paul23, looks like, in mrsmes’ words, you are more of a smart arse at programming in gml than me 😉

    I just wrote the script quickly, I didn’t make a point of it being super-awesome because I only wanted it to take me 5 minutes to write.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at
Entries and comments feeds.

%d bloggers like this: