[Moto X Q&A] a10fjet:
Okay here is my guide for anyone daunted by the fragmented guides scattered all over the place and who doesn't want to piece stuff together. I was pretty apprehensive about attempting this so I figured other people are too, so hopefully this helps someone. It's really redundant so if your intelligence is easily insulted, avoid.

It worked for me on a device with att 4.4 OTA installed, and i THINK it should work for everything that has 4.2.2 and 4.4 firmware available on the firmware page.

What to download:

(many of these are here)

Android Development Tools (ADT) ;;; your carrier's firmware for 4.2.2 ;;; Motorola Device Manager (for drivers) ;;; Cydia Impactor ;;; puttytel (just puttytel.exe is all you need) ;;; RockMyMoto ;;; RSDLite ; MotoWPNoMo ;;; SlapMyMoto

Extras: root checker apk ;;; latest Xposed Framework

<wallOfText>

extract ADT, Impactor, MotoWPNoMo, RockMyMoto, SlapMyMoto, and the firmware
Install RSDLite. Puttytel should just be an exe already.
Open the adt directory and in the search bar type adb.exe
right click the file and open folder location.
this is a very important directory. it will be reffered to as the adb.exe directory/folder
copy all files from RockMyMoto extraction folder and put them in this directory
run moto device manager, follow instructions for it to get your drivers. you might have to connect the phone via usb.
open the extracted firmware and modify the xml file and remove the
disable any isolation mode on your router (IDk what this is but mine was turned off, if you can't get it to work and can't find your router setting you might be SOL.)
anytime the direction says "send" it means in the command line window

extract directory for ADT
search for adb.exe
open file location of adb.exe
copy location path
type win+r, cmd, enter
send "cd " then right click paste to paste the directory path
you are now executing commands from that directory
send " adb shell getprop dhcp.wlan0.ipaddress "
write down that ip address
factory reset phone
get to settings menu
enable usb debugging
connect to computer
send "adb devices"
look at phone, click always accept this connection or whatever it says...
send "adb devices"
if it shows some numbers and letters, you are good
send "adb reboot bootloader"
Plug in phone, enable USB debugging, then "adb reboot bootloader" - this will boot you into fastboot mode so RSD will recognize your phone
open RSDLite
select the edited 4.2.2 xml file as file to flash.
click start to flash the 4.2.2 firmware
on your now jellybean phone open settings
enable usb debugging.
restart the phone. it took me a while to figure this out. it just wouldn't go on...
send "adb devices" to check if it is connected
send "adb push su /sdcard/"
send "adb push RockMyMoto.jar /sdcard/"
open cydia impactor exe
click drop down menu, select "# start telnetd as system on port 2222"
click start
check phone
follow prompts/click accept.
check cydia window on PC
wait for it to get through all the different messages until it is back at the initial screen.
This basically installs a temporary telnet receiver on your phone, whatever the hell that is...
now open up puttytel.exe
type your devices ip address and change port to 2222
click open
this brings up a command line screen but with green font.
wait for the $ sign, then send "dalvikvm -cp /sdcard/RockMyMoto.jar RockMyMoto" on the green font screen
(in the green screen, you can paste by right clicking)
solve the equation LOL
open the cmd.exe window that you didn't have closed
send "adb reboot"
close cydia and puttytel
open cydia impactor and start the telnet session again on port 2222
check phone if the process seems to stick.
open another puttytel session
send "dalvikvm -cp /sdcard/RockMyMoto.jar RockMyMoto"
wait for phone to reboot
close cydia and puttytel
open the cydia impactor and restart the session on port 2222
open the telnet session to your devices ip address and port 2222
send the exploit again.
your phone should have rooted 4.2.2 now!

in folder motowpnomo, open wpbegone.exe as admin
accept risks...
send monoies to motowpnomo@gmail.com ; support people instead of corporations.
follow the instructions about flashing to reflash the xml file
enable usb debugging, cmd prompt at adb.exe directory, adb reboot bootloader, open rsdlite, select the modded xml file, start
wait for it to reboot
send "adb push SlapMyMoto.jar /sdcard/SlapMyMoto.jar"
open cydia impactor
open telnetd as system on port 2222
check phone and accept or deny until impactor stops waiting for completion
open puttytel
connect your phone to your router wifi, the ip address should be the same as earlier. if you want to check, send " adb shell getprop dhcp.wlan0.ipaddress "
put ip address and port 2222 again
click open
with the telnetd green command line screen send "dalvikvm -cp /sdcard/SlapMyMoto.jar SlapMyMoto"
close the green screen
on the cmd.exe screen send "adb reboot"
repeat the Impactor, telnet, "dalvikvm -cp /sdcard/SlapMyMoto.jar SlapMyMoto" again
reboot the device
go to settings, about phone, updates, take update if 4.4, if it only offers 4.4.2, you will have to ask someone what to do...
(I would imagine you can download 4.4 from the place you got your 4.2.2 firmware download then flash using RSDLite, but I never had to cross that bridge personally)
(the instructions were not very clear here. I was really winging it here but it worked for me)
On the PC, copy all files from SlapMyMoto extraction and place them in adb.exe folder, overwriting the old files.
in cmd.exe, send the following one at a time:

adb shell
cp /sdcard/install.sh /data/local/tmp/install.sh
chmod 755 /data/local/tmp/install.sh
echo "/data/local/tmp/install.sh" > /sys/kernel/uevent_helper

Then wait a few minutes, toggle bluetooth, reboot the device.

</wallOfText>

You should now be rooted on 4.4!

I tried to write this as I was doing it but I may have accidentally omitted something.

Thanks to techsavvy2 ;;; beaups ;;; JCase ;;; CartlandSmith (and anyone else i didn't remember to thank), for helping the community to hack this thing! :highfive: