« on: Today at 03:35:48 am »
That's a good idea, and actually seems simpler to execute, too.
Yeah, definitely would require rebalancing. The lowly Goblin is granted a mere AGI 6.
I'd be up for trying to make the thing itself, but I would probably leave it to others to rebalance.
I tested some averaged out number by hand and came up with this:
According to the turn order improvement proposed by Anomie, the game already keeps an array of the 13 possible units in each battle. Presumably it also knows if a unit is present or not. By default the list of units is in this order: enemy unit 1-9, then PC unit 1-4.
How about something like this...
- each unit has a 2 byte word for its gauge initialized to 00.
- 2 bytes used as flags to track which units have had their turn.
(That totals 28 bytes of free RAM needed.)
1- load gauge value of unit in array position X.
2- If unit is not present, jump to line 27.
3- If unit is petrified or dead, jump to line 27.
4- If unit's turn flag is set, jump to line 29.
5- If unit is PC, jump to 16.
6- Save Unit's speed to a temp variable, speed = AGI/2 + Magic Defense/20.
7- If unit is not slowed, jump to 10.
8- Add speed/2 to unit's gauge.
9- Jump to 14.
10- If unit is not hasted, jump to 13.
11- Add speed*2 to unit's gauge.
12- Jump to 14.
13- Add speed to unit's gauge.
14- Add speed bonus to unit's gauge, speed bonus = Morale-100/5.
15- Jump to 25.
16- Save Unit's speed to a temp variable, speed = AGI/2 + INT/5.
17- If unit is not slowed, jump to 20.
18- Add speed/2 to unit's gauge.
19- Jump to 14.
20- If unit is not hasted, jump to 23.
21- Add speed*2 to unit's gauge.
22- Jump to 14.
23- Add speed to unit's gauge.
24- Add speed bonus to unit's gauge, speed bonus = Luck/2.
25- If unit's gauge is less than 127, jump to 29.
26- Set current unit to take it's turn, and jump to turn code.
27- Set unit's turn flag.
28- Set unit's gauge to 00.
29- If not all turn flags are set, jump to line 31.
30- Clear all turn flags.
31- Increment array position by 1.
32- Jump back to line 1.
This could be more streamlined, but I can't spend any more time on it today.