Multi-Mode Formula

Jump to navigation Jump to search
Revision as of 9 September 2017 at 13:39.
The highlighted comment was created in this revision.

Multi-Mode Formula

I was working for a micro bot and I found a new type of multi-mode movement system.(I think)
Simply it is:
  • Complexity starts from 0.
  • Every time the bot dies, it increases the complexity.
  • Every time the enemy fires call setAhead(getDir(complexity)).
    public double getDir(int complexity) {
        double extraMove; 
        double moveDir = extraMove = 1.0 / complexity;
        for(int i = 1; i < complexity; i++) {
            moveDir += Math.sin(getTime() / i / (10.0 / (complexity + 1)));
        }
        return Math.signum(moveDir) * ((extraMove + 18) * (complexity + 1));
    }
Just with this code these happen:
  • First round: Musashi trick.
  • Second round: Stop'n go.
  • Third round: Random(not actually random) stop'n go.
  • Fourth round: Musashi trick + stop'n go + not random.
  • Fifth round: Oscillator movement.

Any thoughts?

    Dsekercioglu (talk)11:22, 8 September 2017

    Sorry for double post. Also like this it is possible to make Musashi Trick + Stop And Go + Random Movement

        public double getDir(int complexity) {
            double move = 1.0 / complexity;
            return move * 36 + (Math.signum(--complexity) * (Math.random() * 256 - 128));
        }
      Dsekercioglu (talk)11:57, 8 September 2017
       

      I would say simply stop'n go then random.

        Xor (talk)01:41, 9 September 2017

        It can easily be done by starting with a complexity of 1.

          Dsekercioglu (talk)14:39, 9 September 2017