A function from MWSE update by Merzasphor.
Sets the progress to next level. Returns 1 if successful, 0 otherwise. This function will not trigger level up or any other messages.
There are some limits to what you can do with this, because of how the game handles this and other values.
Progress is stored in memory as a signed long (32 bits, max value = 2147483647). Progress is stored in the save file as an unsigned char (8 bits, max value = 255) Progress is cast to a float before being displayed on the character screen. This appears to be true for iLevelupTotal as well.
SyntaxEdit
ref->xSetProgress value (long)
ExampleEdit
; Sets the player's level progress to 5 long pcRef setx pcRef to xGetRef "player" pcRef->xSetProgress 5