i've written a code to have a closer look at how object slots are being assigned by the game:
the code will first iterate backwards to find the highest occupied object slot and then go through from 0 to that slot, printing out the object type on a slot (or a . for an empty slot)
25 slots per line going from left to right, top to bottom
the result:
0-7 are for human players (as already known)
8-15 are for selected computer players (occupying the same slots as humans)
a good conclusion from this already is: if there is a human player on slot 0, then slot 8 will most likely be empty
so you never have to iterate over the first 16 slots if you aren't looking for characters (and in non battle or stage mode fights you only need to look through the first 16 slots for opponents, except for clones of course)
after that the slots get filled from 16 onwards with anything that comes along (just go into battle mode with this AI and have everything at max)
but if you only have a normal vs or stage battle you will notice that the game keeps a few free slots after the characters and only starts filling slots with weapons (F8) and other objects from slot 50 onwards. it seems the first 50 slots are usually reserved for characters!
lets use this info to make our iterations more compact!
C-Code:
void id(){ clr(); int d = 400; for (int i = 399; i > -1; --i){ if (loadTarget(i) >= 0){ d = i+1; break; } } int c = 0; for (int i = 0; i < d; ++i){ c = loadTarget(i); if (i == 0 || i == 25 || i == 50 || i == 75 || i == 100 || i == 125 || i == 150 || i == 175 || i == 200 || i == 225 || i == 250 || i == 275 || i == 300 || i == 325 || i == 350 || i == 375){print("\n");} if (c >= 0){print( c );} else{print(".");} } } |
25 slots per line going from left to right, top to bottom
the result:
0-7 are for human players (as already known)
8-15 are for selected computer players (occupying the same slots as humans)
a good conclusion from this already is: if there is a human player on slot 0, then slot 8 will most likely be empty
so you never have to iterate over the first 16 slots if you aren't looking for characters (and in non battle or stage mode fights you only need to look through the first 16 slots for opponents, except for clones of course)
after that the slots get filled from 16 onwards with anything that comes along (just go into battle mode with this AI and have everything at max)
but if you only have a normal vs or stage battle you will notice that the game keeps a few free slots after the characters and only starts filling slots with weapons (F8) and other objects from slot 50 onwards. it seems the first 50 slots are usually reserved for characters!
lets use this info to make our iterations more compact!
favorite dcing techniques: wpoint | double key inputs | holding back | alternate basic moves