actually found one mistake, i was trying to write an address to a pointer, instead of having it write the normal value + my addition to the address it was pointing to >.< like this
alloc(newmem,2048,"Tutorial-x86_64.exe"+2B5A9) //2kb should be enough
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
ADD [00000748],3
originalcode:
dec [rbx+00000748]
exit:
jmp returnhere
"Tutorial-x86_64.exe"+2B5A9:
jmp newmem
nop
returnhere:
fixed it by doing this instead
alloc(newmem,2048,"Tutorial-x86_64.exe"+2B5A9) //2kb should be enough
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
ADD [rbx+00000748],3
originalcode:
dec [rbx+00000748]
exit:
jmp returnhere
"Tutorial-x86_64.exe"+2B5A9:
jmp newmem
nop
returnhere:
sometime tells me i should stop trying to learn things at like 3-7 in the morning >.<
Finally got past step 8, >.< i was searching in a loop, and would search for what access the pointers instead of what accessed the address i found. waited till i found a green base address then i manually added my point with all the offsets i found. this ended with the originally found address. i changed pointer and set to 5000, appearently i done it right since i could hit next

so i beat the tutorial. >.< and now i think i know how to make my cheat engine work right. but one question,
Do the location of the base addresses(green) change each time you open it? if not, then i could just create a pointer trail following down to a green address and simply apply my value to the pointer trail. i think >.<