← Return to game
Log in with itch.io to leave a comment.
I dont think you have multiplied by time.deltatime (or whatever its called in Lua) as I have a 240hz monitor and i can run very very very fast lol... - cool game tho :)
Pretty sure it's vsync being dumb. Just updated the game, should hopefully be fixed now
; Simple Assembly Language RPG
; Author: ChatGPT
section .data
prompt db "Choose your character class: 1. Warrior 2. Mage 3. Thief: ", 0
warrior db "You have chosen the Warrior class!", 0
mage db "You have chosen the Mage class!", 0
thief db "You have chosen the Thief class!", 0
invalid db "Invalid choice, try again!", 0
section .bss
choice resb 2
section .text
global _start
_start:
; Display prompt and read user choice
mov eax, 4 ; system call number (sys_write)
mov ebx, 1 ; file descriptor (stdout)
mov ecx, prompt ; pointer to message
mov edx, len_prompt ; length of message
int 0x80 ; call kernel
mov eax, 3 ; system call number (sys_read)
mov ebx, 0 ; file descriptor (stdin)
mov ecx, choice ; pointer to buffer
mov edx, 2 ; max bytes to read
; Check user choice and display class
cmp byte [choice], "1"
je choose_warrior
cmp byte [choice], "2"
je choose_mage
cmp byte [choice], "3"
je choose_thief
jmp invalid_choice
choose_warrior:
mov ecx, warrior ; pointer to message
mov edx, len_warrior ; length of message
jmp exit
choose_mage:
mov ecx, mage ; pointer to message
mov edx, len_mage ; length of message
choose_thief:
mov ecx, thief ; pointer to message
mov edx, len_thief ; length of message
invalid_choice:
mov ecx, invalid ; pointer to message
mov edx, len_invalid ; length of message
exit:
mov eax, 1 ; system call number (sys_exit)
xor ebx, ebx ; exit status
section .rodata
len_prompt equ $ - prompt
len_warrior equ $ - warrior
len_mage equ $ - mage
len_thief equ $ - thief
len_invalid equ $ - invalid
Hello me
← Return to game
Comments
Log in with itch.io to leave a comment.
I dont think you have multiplied by time.deltatime (or whatever its called in Lua) as I have a 240hz monitor and i can run very very very fast lol... - cool game tho :)
Pretty sure it's vsync being dumb. Just updated the game, should hopefully be fixed now
; Simple Assembly Language RPG
; Author: ChatGPT
section .data
prompt db "Choose your character class: 1. Warrior 2. Mage 3. Thief: ", 0
warrior db "You have chosen the Warrior class!", 0
mage db "You have chosen the Mage class!", 0
thief db "You have chosen the Thief class!", 0
invalid db "Invalid choice, try again!", 0
section .bss
choice resb 2
section .text
global _start
_start:
; Display prompt and read user choice
mov eax, 4 ; system call number (sys_write)
mov ebx, 1 ; file descriptor (stdout)
mov ecx, prompt ; pointer to message
mov edx, len_prompt ; length of message
int 0x80 ; call kernel
mov eax, 3 ; system call number (sys_read)
mov ebx, 0 ; file descriptor (stdin)
mov ecx, choice ; pointer to buffer
mov edx, 2 ; max bytes to read
int 0x80 ; call kernel
; Check user choice and display class
cmp byte [choice], "1"
je choose_warrior
cmp byte [choice], "2"
je choose_mage
cmp byte [choice], "3"
je choose_thief
jmp invalid_choice
choose_warrior:
mov eax, 4 ; system call number (sys_write)
mov ebx, 1 ; file descriptor (stdout)
mov ecx, warrior ; pointer to message
mov edx, len_warrior ; length of message
int 0x80 ; call kernel
jmp exit
choose_mage:
mov eax, 4 ; system call number (sys_write)
mov ebx, 1 ; file descriptor (stdout)
mov ecx, mage ; pointer to message
mov edx, len_mage ; length of message
int 0x80 ; call kernel
jmp exit
choose_thief:
mov eax, 4 ; system call number (sys_write)
mov ebx, 1 ; file descriptor (stdout)
mov ecx, thief ; pointer to message
mov edx, len_thief ; length of message
int 0x80 ; call kernel
jmp exit
invalid_choice:
mov eax, 4 ; system call number (sys_write)
mov ebx, 1 ; file descriptor (stdout)
mov ecx, invalid ; pointer to message
mov edx, len_invalid ; length of message
int 0x80 ; call kernel
jmp exit
exit:
mov eax, 1 ; system call number (sys_exit)
xor ebx, ebx ; exit status
int 0x80 ; call kernel
section .rodata
len_prompt equ $ - prompt
len_warrior equ $ - warrior
len_mage equ $ - mage
len_thief equ $ - thief
len_invalid equ $ - invalid
Hello me