diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm
index f1d6d95f2a..c11315e614 100644
--- a/code/modules/client/preference_setup/general/03_body.dm
+++ b/code/modules/client/preference_setup/general/03_body.dm
@@ -303,7 +303,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
. += "
Body Markings +
"
for(var/M in pref.body_markings)
- . += "[M] - Color"
+ . += "[M] [pref.body_markings.len > 1 ? "˄ ˅ " : ""]- Color"
. += ""
. += "
"
@@ -500,6 +500,24 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
pref.body_markings[new_marking] = "#000000" //New markings start black
return TOPIC_REFRESH_UPDATE_PREVIEW
+ else if(href_list["marking_up"])
+ var/M = href_list["marking_up"]
+ var/start = pref.body_markings.Find(M)
+ if(start != 1) //If we're not the beginning of the list, swap with the previous element.
+ moveElement(pref.body_markings, start, start-1)
+ else //But if we ARE, become the final element -ahead- of everything else.
+ moveElement(pref.body_markings, start, pref.body_markings.len+1)
+ return TOPIC_REFRESH_UPDATE_PREVIEW
+
+ else if(href_list["marking_down"])
+ var/M = href_list["marking_down"]
+ var/start = pref.body_markings.Find(M)
+ if(start != pref.body_markings.len) //If we're not the end of the list, swap with the next element.
+ moveElement(pref.body_markings, start, start+2)
+ else //But if we ARE, become the first element -behind- everything else.
+ moveElement(pref.body_markings, start, 1)
+ return TOPIC_REFRESH_UPDATE_PREVIEW
+
else if(href_list["marking_remove"])
var/M = href_list["marking_remove"]
pref.body_markings -= M
diff --git a/html/changelogs/KasparoVv - PR - 5429.yml b/html/changelogs/KasparoVv - PR - 5429.yml
new file mode 100644
index 0000000000..10bcc76fbb
--- /dev/null
+++ b/html/changelogs/KasparoVv - PR - 5429.yml
@@ -0,0 +1,4 @@
+author: KasparoVv
+delete-after: True
+changes:
+ - rscadd: "You can now change the order of your body markings at character creation with the push of a button. Shift markings up or down layers at will to design the character you've always wanted, more easily than ever before."
\ No newline at end of file