Author Topic: my 100% Assembly game development  (Read 4780 times)

Siekmanski

  • Member
  • *****
  • Posts: 1200
Re: my 100% Assembly game development
« Reply #45 on: June 01, 2017, 11:04:49 AM »
 :t

jj2007

  • Moderator
  • Member
  • *****
  • Posts: 7989
  • Assembler is fun ;-)
    • MasmBasic
Re: my 100% Assembly game development
« Reply #46 on: June 01, 2017, 05:10:02 PM »
Perfect :t

Now the next step, collision detection: Keep track of all the bullets that you are firing ;)

jiucenglou

  • Regular Member
  • *
  • Posts: 12
Re: my 100% Assembly game development
« Reply #47 on: July 15, 2017, 11:31:34 PM »
Excellent !! Hats off to you ! :t

LordAdef

  • Member
  • ***
  • Posts: 379
Re: my 100% Assembly game development
« Reply #48 on: November 07, 2017, 05:50:06 AM »
Excellent !! Hats off to you ! :t

Thanks!

I'm back and soon resuming the development!

anunitu

  • Member
  • ****
  • Posts: 934
Re: my 100% Assembly game development
« Reply #49 on: November 07, 2017, 09:10:02 AM »
glad to kear you are on the game still.

LordAdef

  • Member
  • ***
  • Posts: 379
Re: my 100% Assembly game development
« Reply #50 on: December 12, 2017, 06:07:02 AM »
I´m glad too!

I didn´t realised how much I was missing masm!

So, slowly coming back. Glad I could easily find myself around the code without much effort, which is a good sign.

New version attached. Collision detection: Now bullets kill you, and crashing onto enemies kill you too (though the code needs some polishing).
... But it still cannot kill anyone though... => next step

Alex

HSE

  • Member
  • ****
  • Posts: 605
  • <AMD>< 7-32>
Re: my 100% Assembly game development
« Reply #51 on: December 12, 2017, 11:02:49 AM »
Impresive  :t


LordAdef

  • Member
  • ***
  • Posts: 379
Re: my 100% Assembly game development
« Reply #52 on: December 18, 2017, 01:47:33 PM »

LordAdef

  • Member
  • ***
  • Posts: 379
Re: my 100% Assembly game development
« Reply #53 on: December 18, 2017, 01:55:36 PM »
version v8.141

Family away, weekend only for Masm!!!

A new version. Finally something to shoot and kill, and with explosions already in place and working. It´s actually happening quite nicely. You also now earn points for killing the flying bastards.

For testing purposes I disabled most of the collision detection codes. So you may try and have some fun shooting the moving things only (the others are still due to be coded, they belong to a different class)

JJ, would you give me a quick friendly help?
I do know I have something wrong (that´s why the first flying guy from the left looks drunk  :dazzled:)
There is a warning when I build it. It´s assuming something is a Byte. I cannot see what it is... Built with Richmasm, of course.

I´m getting there!
I hope it works for you guys

jj2007

  • Moderator
  • Member
  • *****
  • Posts: 7989
  • Assembler is fun ;-)
    • MasmBasic
Re: my 100% Assembly game development
« Reply #54 on: December 18, 2017, 06:49:22 PM »
There is a warning when I build it. It´s assuming something is a Byte. I cannot see what it is... Built with Richmasm, of course.

      mov man.bullets[eax].????, FALSE   ; Which element of the structure???
      mov gm.badguys[esi].active, FALSE   ; This tells the assembler which element you mean

Btw: Impressive, this is getting professional :t

P.S.: I see you make good use of the bookmarks feature. Which is the last one you see? For me, it's ------- SHOW EXPLOSIONS -----
There is a limited number, of course. To see the lower ones again, hold Ctrl and click on upper bookmarks that you don't need any more.

felipe

  • Member
  • ***
  • Posts: 437
  • Asssssssembly language...said the snake.
Re: my 100% Assembly game development
« Reply #55 on: December 19, 2017, 06:30:32 AM »

New version attached. Collision detection: Now bullets kill you, and crashing onto enemies kill you too...


This version crashed, in an espectacular way, in my system (The whole system collapsed by a moment).  :biggrin:
Maybe because i was using youtube too and listening music? Maybe too little RAM in the pc for it?  :redface:
It happened after a little time i started to play.  :icon_exclaim:

But looks nice!  :icon14: I guess it will be good to a big game like this to include some basic setting's detection in the pc of the players to see if they can play (requirements to play) and also to adjust the window to the screen. I actually use a netbook and the window don't fit too well in the screen.
Thanks for sharing some code  :t, i will check it and i will try the new version that you attached too.  :icon14:
Felipe.

felipe

  • Member
  • ***
  • Posts: 437
  • Asssssssembly language...said the snake.
Re: my 100% Assembly game development
« Reply #56 on: December 19, 2017, 06:59:04 AM »
I found this macro in one include file (stuff.inc) of the version 814:

Code: [Select]
RGB macro red,green,blue
           xor eax,eax
           shl eax,8
           mov ah,green
           mov al,red
endm

Check that, is not well defined (only a suggestion btw  :icon_mrgreen:).

 :icon14:
Felipe.

felipe

  • Member
  • ***
  • Posts: 437
  • Asssssssembly language...said the snake.
Re: my 100% Assembly game development
« Reply #57 on: December 19, 2017, 07:22:50 AM »
From the same file (stuff.inc):

Code: [Select]
mUnroll9lines MACRO
; 9 lines combo
      invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
invoke TextOut, hBufferDC, 0, ebx, [map.mapLinePtr + edi * 4], cWIDTH       ; prints to buffer   <== find a register
      add ebx, 10
      add edi, 1
endm

Unless you want to use the CF it would be better to use INC edi (just a suggestion).   :icon14:
Btw if you don't want more suggestion from me i can shut up with no problem.  :greensml:
Felipe.

LordAdef

  • Member
  • ***
  • Posts: 379
Re: my 100% Assembly game development
« Reply #58 on: December 19, 2017, 01:04:52 PM »
Hey JJ, THANKS!!

Quote
      mov man.bullets[eax].????, FALSE   ; Which element of the structure???
      mov gm.badguys[esi].active, FALSE   ; This tells the assembler which element you mean

How did you find it, Olly? It´s amazing it even built! Yep, missing the "active" element

Quote
Btw: Impressive, this is getting professional :t
I´m flattered! Cheers

Quote
P.S.: I see you make good use of the bookmarks feature. Which is the last one you see? For me, it's ------- SHOW EXPLOSIONS -----
There is a limited number, of course. To see the lower ones again, hold Ctrl and click on upper bookmarks that you don't need any more.

I heavily rely on Bookmarks!!! It´s a great feature and I already use the Ctrl-Click. -- SHOW EXPLOSIONS ----- was indeed my latest one
You should make it infinite! :badgrin: :badgrin:

LordAdef

  • Member
  • ***
  • Posts: 379
Re: my 100% Assembly game development
« Reply #59 on: December 19, 2017, 01:11:40 PM »
Hi Felipe,

Quote
This version crashed, in an espectacular way, in my system (The whole system collapsed by a moment).  :biggrin:
Maybe because i was using youtube too and listening music? Maybe too little RAM in the pc for it?  :redface:
It happened after a little time i started to play.  :icon_exclaim:

Would please tell your specs? The program is CPU intensive but not memory intensive.
Funny, It should run without any issue. Would you try it without the youtube + music playing and see if it holds?

Quote
But looks nice!  :icon14: I guess it will be good to a big game like this to include some basic setting's detection in the pc of the players to see if they can play (requirements to play) and also to adjust the window to the screen. I actually use a netbook and the window don't fit too well in the screen.
Thanks for sharing some code  :t, i will check it and i will try the new version that you attached too.  :icon14:

Thanks, I´ll make a note of your suggestions. I´m not familiar if netbooks at all. What´s your screen resolution?