Agradeço humildemente por me elucidar e vou incluir essa sugestão daqui pra frente (também vou ignorar seu "75-75/5=0", pois divisão e multiplicação tem prioridade sobre soma e subtração, exceto se condicionar com parenteses).
Ah sim, essa parte eu não adcionei parêntesis no local certo, então me desculpe. Pelo menos você pegou a idéia. Se vc fosse testar (75-Var(13))/5 sendo var 13 = 75 note que no primeiro golpe do round mesmo se vc tiver continuo set de var 13 pra 75 o hitdef ainda vai tirar dano pq o jogo não lê o primeiro golpe.
Sobre os redirect de cond que eu, david11 e wolf desenlvolvemos é como se fosse algo assim:
Isso é uma parte do código usado pra o Genjutsu de Escuridão Infinita do Tobirama:
Enemy,Cond(NumPartner,(Partner,Cond((SysVar(4)=1), Cond(NumExplod(30019)=0, Cond(Var(38):=3,0,0) ,0) ,0)) ,0)
Ou seja, eu estou olhando o que tem nos arquivos do p4 e setando a var(38) dele pra 3 mesmo não tendo tocado no p4 tudo isso em uma linha
eu recomendo pra NUNCA seguir completamente os docs do mugen pq nem mesmo eles sabem o que fizeram na engine.
Lembra que nos docs do trigger do mugen fala que redirecionamento recursivo não funfa e eles até deram um exemplo de "root,target,time"?
Nem mesmo os donos sabem como a engine funciona pq sempre foi possivel fazer mais de dois redirecionamento recursivo desde que lançaram o mugen 1.0, e isso é com o cond:
Root,Cond(NumTarget,(Target, Cond(1,time,0)),0)
Isso o que eu acabei de escrever é a recursiva que a elecbyte disse que era impossivel de fazer.
Tenho certeza de que você(s) tem razão, mas quando comecei meu projeto não havia ainda aquele hack para jogar com times de 3 ou 4 personagens no Mugen 1.1b1 ! Uma das minhas metas era atualizar o Tag-team para esse número de personagens para ficar mais divertido. Mas não queria jogar fora o recurso de zoom de tela que dá mais dinamismo nas lutas à distância. Então tentei fazer os chars compatíveis, quando possível, com ambas as versões. Até que consigo bem nos chars (e para os cenários está sendo um desafio), mas o recurso de rotacionar os sprites só pelo arquivo AIR é uma elegância que sinceramente sinto falta!
Eu sinceramente não uso ferramentas de terceiros, principalmente o 3v3 ou 4v4. Mugen já é uma bagunça e eu usando isso seria quebrar os limites da intolerancia e apenas alimentar ainda mais os malfeitos no mugen. Outra coisa é que não precisa ter um Sctrl TeamTag pra fazer um team tag. Eu posso facilmente criar um que fique exatamente como essas ferramentas fazem e que tenha suporte universal. A questão é que essa ferramenta está editada na engine. Se eu realmente fosse usar ferramentas alternativas eu iria era mover do mugen pra outra coisa melhor. Tanto que até o WolfStak ta criando sua própria engine de luta https://www.youtube.com/watch?v=7ZvRvq27j2k
Ele vai basicamente misturar mugen e openbor em uma só engine, codificada em LUA
[State -1, Jump Light Kick]
type = ChangeState
value = 631
triggerall = command = "a" && statetype = A && var(3) < 3
trigger1 = ctrl
ignorehitpause=1
;---------------------------------------------------------------------------
; auto - light
[Statedef 631]
type = U
[State 631, 1]
type = varSet
trigger1 = 1
v = 5
value = 630
[State 631, 2]
type = ChangeState
trigger1 = 1
value = 700
;---------------------------------------------------------------------------
; núcleo da conta: golpes X A.I.
[Statedef 700]
type = U
; Aqui um exemplo de discordância: se fora do alcance, mudar para outro hiper mais adequado
; A idéiaoriginal é o helper avaliar as coisas e escrever nas variáveis de var(30) à Var(39) do char principal as sugestões melhores, mudando a var(5) de acordo.
[State 700, 1]
type = Varset
triggerall = var(5) = 4000
trigger2 = enemy, pos y < 0 && p2bodydist x > 0
trigger3 = p2stateno >= fvar(6) && p2stateno <= fvar(7)
trigger1 = enemynear, stateno >= fvar(6) && enemynear, stateno <= fvar(7)
v = 5
value = 3000
ignorehitpause=1
[State 700, 2]
type = ChangeState
trigger1 = 1
value = var(5)
Sobre esse code que você botou, nem precisa totalmente gambiarra toda. Pelo oq tou vendo vc estar redirecionando o char pra um state vazio onde seta var(5) pra 630 e outro que modifica essa var pra pensar 2 vezes baseado em condiçoes. Primeiro vou apontar os "erros":
1- enemynear se redireciona a inimigos mortos entao ele vai considerar tbm aquele inimigo morto perto de vc. Vc então teria que adcionar duas condiçoes pra enemy(0) (p2) e enemy(1) (p4), checar se estao vivos e tentar redirecionar para o que vc quer. outra coisa que, helper player não é detectado pelo enemynear ou enemy entao um helper que vc está mirando nele por ele ser player seu code ficaria confuso para o p1 em termos de executar. O que basicamente ta fixado no seu trigger2 entao vc nao precisaria muito do trigger1
2- trigger2 = enemy, pos y < 0 && p2bodydist x > 0. Como eu te expliquei antes, enemy nao funciona em helper player mas p2bodydist/p2dist funciona entao se tivesse um helper player no meio dos dois vc taria redirecionando a pos Y do p2/p4 e a pos X do helper.
eu só não entendo esses trigger1 = 1. No statedef 700 pq por exemplo vc automaticamente entraria no changestate pq vc ta sempre executando, não daria nem tempo toda vez pra a var calcular o que ta havendo. e ambos statedefs podem ser resumidos em 1:
[Statedef 631]
type = U
[State 631, 1]
type = VarSet
Trigger1 = !Time && ((Var(5)<4000)||(Var(5)>4000))
trigger2 = ((EnemyNear(0), StateNo >= FVar(6)) && (EnemyNear(0), StateNo <= FVar(7))) && (Time > 1) && (Var(5) = 4000)
trigger3 = Enemy,NumPartner>0
trigger3 = ((EnemyNear(1), StateNo >= FVar(6)) && (EnemyNear(1), StateNo <= FVar(7))) && (Time > 1) && (Var(5) = 4000)
trigger4 = (P2Dist Y < 0 && P2Dist x > 0) && (Time > 1) && (Var(5) = 4000)
trigger5 = (P2StateNo >= FVar(6)) && (P2StateNo <= fvar(7)) && (Time > 1) && (Var(5) = 4000)
v = 5
value = Cond((Time<1),630,3000)
[State 700, 2]
type = ChangeState
trigger1 = Time > 2
value = var(5)
Como eu estou usando codes separados pra p2 e p4 note que eu não precisei por a condiçao de detectar eles vivos, mas acho que ainda assim iria ser desnecessário esse trigger5. Como eu não tenho seu char e não faço a minima idéia como ele atua não sei se esse code totalmente iria servir, mas a lógica dele está correta.
Mas ao invés de usar seus poderes para o mal, isso pode ser uma contribuição
correto. Tanto que o povo pensa que se livrou do null glitch do winmugen mas estão enganados, ele ainda existe mas não como null e fico feliz que ninguem o encontrou até hoje.
lembra que eu mencionei que eu posso facilmente codificar um char usando a AI padrao do mugen, sem hitkill sem dano sem nada e ainda sim ganhar de todos os chars? Isso pq eu sei como anular seus wins que o mugen te da ou seja esse meu char iria apanhar bem feio mas vc nunca iria ganhar um round. Ja fiquei no round 15 testando esse code e o contador de win era 0 XD.