Event ID Fix (with X)

Improves display order of eventoid objects on map-screen that share the same collision-layer and position, making events being ordered strictly by their ID (ascending), so the highest gets rendered on top.

Originally made and first released by Cherry. It was later added to official RPG2003 1.12.

RPG2000
1.00UNKNOWN2000-05-072000-06-192000-07-112000-11-132000-11-152000-12-27
1.07
2001-05-05
1.10
2003-03-27
1.50
2003-06-25
1.51/1.52
2015-07-05
1.60
2015-09-15
1.61
2017-09-14
1.62
RPG2003
1.00UNKNOWN1UNKNOWN21.0.2.1
1.0.2.1
1.0.3.0
1.0.4.0
1.0.5.0
1.0.5.0
1.0.6.0
1.0.6.0
1.0.7.0
1.0.7.0
1.0.8.0
1.0.8.0
1.0.9.1
1.0.9.1
1.101.111.12mp210414

Segment 1/1

Offsets

RPG2000
2000-12-27
1.07
2017-09-14
1.62
0047B898h
0007AC98h
00482118h
00081518h
RPG2003
1.0.8.0
1.0.8.0
1.0.9.1
1.0.9.1
1.101.11
004A3734h
000A2B34h
004A2A68h
000A1E68h

Sourcecode

			PUSH EBX
			PUSH EDI
			PUSH EBP
			ADD ESP, -12
			MOV EBP, EDX
			MOV EDI, EAX
			MOVZX EAX, BYTE PTR [EDI+34h]
			MOVZX EDX, BYTE PTR [EBP+34h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __0047B911h
			MOV EAX, EDI
			CALL PROC__0049015Ch
			MOV [ESP+04h], EAX
			MOV EAX, EBP
			CALL PROC__0049015Ch
			MOV EDX, [ESP+04h]
			SUB EDX, EAX
			MOV EAX, EDX
			TEST EAX, EAX
			JNZ __0047B911h
			MOV EAX, [0049AD6Ch]
			CMP EDI, [EAX]
			SETE AL
			MOV EDX, [0049AD6Ch]
			CMP EBP, [EDX]
			SETE BYTE PTR [ESP+08h]
			AND EAX, 127
			MOVZX EDX, BYTE PTR [ESP+08h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __0047B911h
			MOV EAX, EDI
			CALL PROC__00490080h
			MOV EBX, EAX
			MOV EAX, EBP
			CALL PROC__00490080h
			SUB EBX, EAX
			MOV EAX, EBX
			TEST EAX, EAX
			JNZ __0047B911h
			MOV EAX, [EDI+04h]
			SUB EAX, [EBP+04h]
__0047B911h:
			ADD ESP, 12
			POP EBP
			POP EDI
			POP EBX
			RET
			8 NOPs
			PUSH EBX
			PUSH EDI
			PUSH EBP
			ADD ESP, -12
			MOV EBP, EDX
			MOV EDI, EAX
			MOVZX EAX, BYTE PTR [EDI+34h]
			MOVZX EDX, BYTE PTR [EBP+34h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __0048218Ch
			MOV EAX, EDI
			CALL PROC__00496EB4h
			MOV [ESP+04h], EAX
			MOV EAX, EBP
			CALL PROC__00496EB4h
			MOV EDX, [ESP+04h]
			SUB EDX, EAX
			MOV EAX, EDX
			TEST EAX, EAX
			JNZ __0048218Ch
			MOV EDX, [004A0D48h]
			CMP EDI, [EDX]
			SETE AL
			CMP EBP, [EDX]
			SETE BYTE PTR [ESP+08h]
			AND EAX, 127
			MOVZX EDX, BYTE PTR [ESP+08h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __0048218Ch
			MOV EAX, EDI
			CALL PROC__00496DD8h
			MOV EBX, EAX
			MOV EAX, EBP
			CALL PROC__00496DD8h
			SUB EBX, EAX
			MOV EAX, EBX
			TEST EAX, EAX
			JNZ __0048218Ch
			MOV EAX, [EDI+04h]
			SUB EAX, [EBP+04h]
__0048218Ch:
			ADD ESP, 12
			POP EBP
			POP EDI
			POP EBX
			RET
			13 NOPs
			PUSH EBX
			PUSH EDI
			PUSH EBP
			ADD ESP, -12
			MOV EBP, EDX
			MOV EDI, EAX
			MOVZX EAX, BYTE PTR [EDI+34h]
			MOVZX EDX, BYTE PTR [EBP+34h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __004A37ADh
			MOV EAX, EDI
			CALL PROC__004C47C4h
			MOV [ESP+04h], EAX
			MOV EAX, EBP
			CALL PROC__004C47C4h
			MOV EDX, [ESP+04h]
			SUB EDX, EAX
			MOV EAX, EDX
			TEST EAX, EAX
			JNZ __004A37ADh
			MOV EAX, [004CDE54h]
			CMP EDI, [EAX]
			SETE AL
			MOV EDX, [004CDE54h]
			CMP EBP, [EDX]
			SETE BYTE PTR [ESP+08h]
			AND EAX, 127
			MOVZX EDX, BYTE PTR [ESP+08h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __004A37ADh
			MOV EAX, EDI
			CALL PROC__004C46E8h
			MOV EBX, EAX
			MOV EAX, EBP
			CALL PROC__004C46E8h
			SUB EBX, EAX
			MOV EAX, EBX
			TEST EAX, EAX
			JNZ __004A37ADh
			MOV EAX, [EDI+04h]
			SUB EAX, [EBP+04h]
__004A37ADh:
			ADD ESP, 12
			POP EBP
			POP EDI
			POP EBX
			RET
			8 NOPs
			PUSH EBX
			PUSH EDI
			PUSH EBP
			ADD ESP, -12
			MOV EBP, EDX
			MOV EDI, EAX
			MOVZX EAX, BYTE PTR [EDI+34h]
			MOVZX EDX, BYTE PTR [EBP+34h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __004A2ADCh
			MOV EAX, EDI
			CALL PROC__004C13B8h
			MOV [ESP+04h], EAX
			MOV EAX, EBP
			CALL PROC__004C13B8h
			MOV EDX, [ESP+04h]
			SUB EDX, EAX
			MOV EAX, EDX
			TEST EAX, EAX
			JNZ __004A2ADCh
			MOV EDX, [004CDE54h]
			CMP EDI, [EDX]
			SETE AL
			CMP EBP, [EDX]
			SETE BYTE PTR [ESP+08h]
			AND EAX, 127
			MOVZX EDX, BYTE PTR [ESP+08h]
			SUB EAX, EDX
			TEST EAX, EAX
			JNZ __004A2ADCh
			MOV EAX, EDI
			CALL PROC__004C12DCh
			MOV EBX, EAX
			MOV EAX, EBP
			CALL PROC__004C12DCh
			SUB EBX, EAX
			MOV EAX, EBX
			TEST EAX, EAX
			JNZ __004A2ADCh
			MOV EAX, [EDI+04h]
			SUB EAX, [EBP+04h]
__004A2ADCh:
			ADD ESP, 12
			POP EBP
			POP EDI
			POP EBX
			RET
			13 NOPs

Bytes

53 57 55 83C4F4 8BEA 8BF8 0FB64734 0FB65534 2BC2 85C0 7561
8BC7 E8A5480100
89442404 8BC5 E89A480100
8B542404 2BD0 8BC2 85C0 7543
A16CAD4900 3B38 0F94C0 8B156CAD4900 3B2A 0F94442408 83E07F 0FB6542408 2BC2 85C0 751E
8BC7 E886470100
8BD8 8BC5 E87D470100
2BD8 8BC3 85C0 7506
8B4704 2B4504 83C40C 5D 5F 5B C3
90 90 90 90 90 90 90 90
53 57 55 83C4F4 8BEA 8BF8 0FB64734 0FB65534 2BC2 85C0 755C
8BC7 E87D4D0100
89442404 8BC5 E8724D0100
8B542404 2BD0 8BC2 85C0 753E
8B15480D4A00 3B3A 0F94C0 3B2A 0F94442408 83E07F 0FB6542408 2BC2 85C0 751E
8BC7 E8634C0100
8BD8 8BC5 E85A4C0100
2BD8 8BC3 85C0 7506
8B4704 2B4504 83C40C 5D 5F 5B C3
0F1F4000 8BC0 8D4000 0F1F4000
53 57 55 83C4F4 8BEA 8BF8 0FB64734 0FB65534 2BC2 85C0 7561
8BC7 E871100200
89442404 8BC5 E866100200
8B542404 2BD0 8BC2 85C0 7543
A154DE4C00 3B38 0F94C0 8B1554DE4C00 3B2A 0F94442408 83E07F 0FB6542408 2BC2 85C0 751E
8BC7 E8520F0200
8BD8 8BC5 E8490F0200
2BD8 8BC3 85C0 7506
8B4704 2B4504 83C40C 5D 5F 5B C3
90 90 90 90 90 90 90 90
53 57 55 83C4F4 8BEA 8BF8 0FB64734 0FB65534 2BC2 85C0 755C
8BC7 E831E90100
89442404 8BC5 E826E90100
8B542404 2BD0 8BC2 85C0 753E
8B1554DE4C00 3B3A 0F94C0 3B2A 0F94442408 83E07F 0FB6542408 2BC2 85C0 751E
8BC7 E817E80100
8BD8 8BC5 E80EE80100
2BD8 8BC3 85C0 7506
8B4704 2B4504 83C40C 5D 5F 5B C3
0F1F4000 8BC0 8D4000 0F1F4000