So, I'm sharing this and hoping it will come useful to someone looking to use Macros to ease the annoyances that you face everyday with super high speed attacks and melee. E.g:

I haven't found any macro that suits my requirements. This one works very nicely to my tastes :)

Anyway, let me know if you like this and if you have any suggestions to improve this I'll be happy to listen.

EDIT: Wow the comments, I was expecting some controversy but not as much. Anyway, long long story short, the macro only sends inputs without reading any feedback from the game. I have a few accessibility issues using my hand so I find this macro eases the tension a lot.

In a non-competitive environment, macros of this nature in general "SHOULD BE OK" in terms of reasonable judgement. I don't see any significant advantage to using a macro like this other than convenience and reduction of stress on the hands. The same advantage you would get by having an ergonomic desk and ergonomic mouse and keyboard, i.e. convenience.

That said, use this at your own risk.

Finally and in my personal opinion. I really wish maiming strike would be more usable, as my min-maxing genes are itching to use it as often as humanly possible.

Finally finally, sorry for creating a mess of controversy...

Main Features

How to use

Configuration

Main buttons

Option buttons

More features

Notes / Future development

Please let me know if you have any improvements to share :) !

Macro

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#MaxHotkeysPerInterval 20000

;---- KEY SETTINGS ----

melee= XButton1 ; -- NOTE: You have to change HotKeys below as well (E.g. change XButton1)
meleeKey= 0
slideKey= Shift

;---- TIME SETTINGS ----

spinTime = 480
waitBS = 400
meleeDelay = 100


;-----------------------
;-- CALC STUFF

ratei := 5.0 ;0.045454545
rateii := 30.0 ;0.303030303
rateiii := 65.0 ;0.651515152
startloop := 0
meleeRapid := 1
speedRate := 10
CalcTimes()

;-- FUNCTIONS STUFF

RemoveToolTip:
{
	SetTimer, RemoveToolTip, Off
	ToolTip
	;return
}

Msg(s)
{
	ToolTip, %s%, 140, 140
	SetTimer, RemoveToolTip, 1000
	return
}

CalcTimes()
{
	global  
	spini := (spinTime * ratei / 100.0)
	spinii := (spinTime * rateii / 100.0)
	spiniii := (spinTime * rateiii / 100.0)
	Msg(spinTime)
	return
}



;-----------------------

#IfWinActive, WARFRAME
{
	#If, meleeRapid=1
    
		XButton1::
			Send {Blind}%meleeKey%
			Sleep, waitBS
			While GetKeyState(melee, "P"){
				Send {Blind}%meleeKey%
				Sleep, meleeDelay ; milliseconds
				}
		return

		+XButton1::
			Send {Blind}%meleeKey%
			Sleep, spinii
			Send {%slideKey% Up}
			Sleep, waitBS
			GetKeyState, state1, XButton1, P
			if state1 = D
			{
				startloop:=1
				Msg("Spinning ON!")
				While(startloop=1)
				{
					Send {W down}
					Send {%slideKey% Down}
					Sleep, spini
					Send {Blind}%meleeKey%
					Sleep, spinii
					Send {%slideKey% Up}
					Sleep, spiniii
					Send {W up}
				}
			}
		return

		;return
	#If

	#If, meleeRapid="0"
    
		*XButton1::
			Send {Blind}{%meleeKey% Down}
			return

		*XButton1 UP::
			Send {Blind}{%meleeKey% Up}
			return
		;return
	#If

	~F2::
		if(meleeRapid=0){
			meleeRapid:=1
			msg("Melee rapid mode ON")
		}	
		else{
			meleeRapid:=0
			msg("Melee rapid mode OFF")
		}
		return

	~PgUp::
		spinTime := (spinTime - speedRate)
		CalcTimes()
		return	

	~PgDn::
		spinTime := (spinTime + speedRate)
		CalcTimes()
		return

}

#If, startloop=1	

	*~W::
	*~Space::
	*~S::
	*~A::
	*~D::
		startloop:=0
		Msg("Stop spin")
	return
#If