I’m currently trying to code a battle system, and I ran into trouble if some things even work:
Summary
*temp controll 0
*temp en_controll 0
*temp enemy_success ""
*temp success ""
*temp hurt 0
*temp enemy_hurt 0
*rand en_controll 1-100
*rand controll 1-100
*label test_stats
*set str 9
*set def 10
*set supp 6
*set fort 100
*set con 75
*goto enemies
*label enemies
*if (enemy = "enemy1")
*set enemy_str 10
*set enemy_def 7
*set enemy_supp 7
*set enemy_fort 100
*set enemy_con 95
*goto enemy_cont_cal
etc
*label enemy_cont_cal
*if ((en_controll <= enemy_con) and (controll =1))
*set enemy_success "crit"
*goto cont_cal
*elseif ((en_controll <= enemy_con) and (controll !=1))
*set enemy_success "hit"
*goto cont_cal
*elseif ((en_controll > enemy_con) and (controll !=100))
*set enemy_success "miss"
*goto cont_cal
*else
*set enemy_success "fail"
*goto cont_cal
*label cont_cal
*if ((controll <= con) and (controll =1))
*set old_success "crit"
*goto battle_kind
*elseif ((controll <= con) and (controll !=1))
*set old_success "hit"
*goto battle_kind
*elseif ((controll > con) and (controll !=100))
*set old_success "miss"
*goto battle_kind
*else
*set old_success "fail"
*goto battle_kind
*label battle_kind
*if ((attack) and (enemy_attack))
*if (success = "crit")
*if (enemy_success = "fail")
*set enemy_hurt round(str * 4)
*set hurt 0
*goto damage_cal
*elseif (enemy_success = "miss")
*set enemy_hurt round(str * 2)
*set hurt 0
*goto damage_cal
*elseif (enemy_success = "hit")
*set enemy_hurt round(str)
*set hurt 0
*goto damage_cal
*elseif
*set enemy_hurt round(str / 2)
*set hurt round(enemy_str / 2)
*goto damage_cal
*else (success = "hit")
*if (enemy_success = "fail")
*set enemy_hurt round(str * 2)
*set hurt 0
*goto damage_cal
*elseif (enemy_success = "miss")
*set enemy_hurt round(str)
*set hurt 0
*goto damage_cal
*elseif (enemy_success = "hit")
*set enemy_hurt 0
*set hurt 0
*goto damage_cal
*elseif
*set enemy_hurt round(str)
*set hurt round(enemy_str / 2)
*goto damage_cal
*else (success = "miss")
*if (enemy_success = "fail")
*set enemy_hurt round(str / 2)
*set hurt 0
*goto damage_cal
*elseif (enemy_success = "miss")
*set enemy_hurt 0
*set hurt 0
*goto damage_cal
*elseif (enemy_success = "hit")
*set enemy_hurt 0
*set hurt round(enemy_str)
*goto damage_cal
*elseif
*set enemy_hurt 0
*set old_hurt round(enemy_str * 2)
*goto damage_cal
*else (success = "fail")
*if (enemy_success = "fail")
*set enemy_hurt round(enemy_str * 2)
*set hurt round(old_str * 2)
*goto damage_cal
*elseif (enemy_success = "miss")
*set enemy_hurt 0
*set hurt round(str)
*goto damage_cal
*elseif (enemy_success = "hit")
*set enemy_hurt 0
*set hurt round(enemy_str + str)
*goto damage_cal
*elseif
*set enemy_hurt 0
*set hurt round(enemy_str * 4)
*goto damage_cal
*label damage_cal
*if (attack)
*set fort %-(hurt)
*set enemy_fort %-(enemy_hurt)
*goto game_over_check
etc
What I’m trying is thus:
The game meant to roll whether or not an action succeeds, and then subtract a percentage from the fortitude stat (basically lifepoints) based on the damage taken (based on the strength/defense stat and the success)
I’m not certain certain operations would even work like i have it there (like the %-(var))
Hopefully you can help.