Open AI Championship

Quick start

Round 2: before start

Project

Sandbox

Round 1

Round 2

Finals

Recent comments

7 december 20:58: Fireworks wrote comment on post Repeater utility
7 december 20:56: Fireworks wrote comment on post Repeater utility
7 december 20:48: Sanda wrote comment on post Sandbox
7 december 20:47: Dimon777 wrote comment on post Sandbox
7 december 20:46: Dimon777 wrote comment on post Sandbox
7 december 17:48: Spasitel wrote comment on post Sandbox
7 december 16:11: MrZlodey wrote comment on post Sandbox
7 december 15:25: Gladiator_Y wrote comment on post Sandbox
7 december 15:17: AntonT wrote comment on post Sandbox
7 december 15:14: Nerumb wrote comment on post Sandbox

VK Group

 

We’ll show you how to join CodeWizards in a few minutes.

Register

Of course, you need to register. There is a unified authorization system it.mail.ru for all chamionships of Mail.Ru Group. We kindly ask all participants to provide accurate and complete information about yourself.

Download language pack

Download the package for your favorite programming language from the language packs page. We support C++, Java, C#, Pascal, Python 2 and 3, Ruby. Unzip the archive and open an existing project or create a new one from scratch. We have already prepared projects for some IDE. You may need to configure some paths.

Download Local runner

Local runner is a special version of game engine adapted for participants. Local runner gives you the opportunity to run a test games locally on your computer. Read more about it here.

Read the documentation

The official and complete rules are published in the Rules section, please read them. Some organizational aspects you can find in the descriptions of the Sandbox and stages of the championship (Round 1, Round 2, Finals).

Submit your strategy

You can submit you strategy here. Before the system will accept your strategy, it will be compiled and tested in a few short games. If everything is OK, your strategy will automatically start to participate in regular qualifying games in Sandbox. Carefully read the section “What you should pay attention to” for various aspects due to which your strategy can get the “Verification error” verdict. The total number of submissions are not restricted, however there are restrictions on too frequent submitting. Any attempt to destabilize the system will result in disqualification. You can write your strategy in an arbitrary number of files, you will only need to pack everything into a ZIP archive and send it. All files must be in root of archive. Unfortunately, creating custom packages in the Java strategy is unacceptable. Remember that in your starter pack you can change only the file MyStrategy.${ext} (where ${ext} — extension language you are using), and even if you change some other file and also add it to the archive, it will be replaced on standard (except for MyStrategy.h in C++).

What you should pay attention to

  • it is prohibited to interact with the network, file system and other resources, except for RAM and the current directory, violators will be disqualified;
  • total CPU time of your strategy process is limited (exact details you can find in the documentation);
  • the strategy process should not use more than 256 MB of RAM;
  • if your strategy exceeds the time or memory limit or crashes during the execution, it stops to participate in this game (however, your score points do not expire);
  • the strategy of each wizard runs in a separate process.

Let’s write a simple strategy on Java

The simplest strategy is doing nothing and not moving (you can check it by sending this code to the system):

import model.*;

public final class MyStrategy implements Strategy {
    @Override
    public void move(Wizard self, World world, Game game, Move move) {
    }
}

Now let’s order the wizard to go back at the maximum speed and to attack melee at the same time. The move method takes the form:

public void move(Wizard self, World world, Game game, Move move) {
    move.setSpeed(-game.getWizardBackwardSpeed()); // Or simply move.setSpeed(-100500).
    move.setAction(ActionType.STAFF);
}

There is no inertia in the world of CodeWizards, thus wizards can instantly change their speed. However, the position change of a wizard in one tick is limited by game constants. If you pass incredibly large number as the parameter, the wizard will just move as far as possible. Every tick our strategy desires to attack using staff. But there is a some delay (``cooldown’’) for each wizard’s action, during which the new actions will be ignored.

Now let’s write more complicated code. We order our wizard to choose a lane and move along it in the direction of the opposite faction base. However, if he has low health, he needs to retreat and heal. Try to understand by yourself, how the strategy works. The code contains detailed comments that will help you.

import model.*;

import java.util.*;

public final class MyStrategy implements Strategy {
    private static final double WAYPOINT_RADIUS = 100.0D;

    private static final double LOW_HP_FACTOR = 0.25D;

    /**
     * Waypoints for each lane.
     * <p>
     * If everything is OK, move to the next point and attack opponents.
     * Retreat at low hitpoints.
     */
    private final Map<LaneType, Point2D[]> waypointsByLane = new EnumMap<>(LaneType.class);

    private Random random;

    private LaneType lane;
    private Point2D[] waypoints;

    private Wizard self;
    private World world;
    private Game game;
    private Move move;

    /**
     * Main strategy method, controlling the wizard.
     * The game engine calls this method once each time tick.
     *
     * @param self  the wizard controlling by this strategy.
     * @param world the current world snapshot.
     * @param game  many game constants.
     * @param move  the object that encapsulates all strategy instructions to the wizard.
     */
    @Override
    public void move(Wizard self, World world, Game game, Move move) {
        initializeStrategy(self, game);
        initializeTick(self, world, game, move);

        // Moving from side to side to make it harder to hit us.
        // Think you can come up with a more efficient evasion algorithm? Try it! ;)
        move.setStrafeSpeed(random.nextBoolean() ? game.getWizardStrafeSpeed() : -game.getWizardStrafeSpeed());

        // Retreat at low hitpoints.
        if (self.getLife() < self.getMaxLife() * LOW_HP_FACTOR) {
            goTo(getPreviousWaypoint());
            return;
        }

        LivingUnit nearestTarget = getNearestTarget();

        // If we see an enemy ...
        if (nearestTarget != null) {
            double distance = self.getDistanceTo(nearestTarget);

            // ... and the enemy is in the range of our offensive spells, ...
            if (distance <= self.getCastRange()) {
                double angle = self.getAngleTo(nearestTarget);

                // ... we are turning toward the enemy.
                move.setTurn(angle);

                // If the target is already in the front of our wizard, ...
                if (StrictMath.abs(angle) < game.getStaffSector() / 2.0D) {
                    // ... ATTACK!
                    move.setAction(ActionType.MAGIC_MISSILE);
                    move.setCastAngle(angle);
                    move.setMinCastDistance(distance - nearestTarget.getRadius() + game.getMagicMissileRadius());
                }

                return;
            }
        }

        // If there is no other actions, advance to the next waypoint.
        goTo(getNextWaypoint());
    }

    /**
     * Initialize our strategy.
     * <p>
     * Usually you can use a constructor, but in this case we want to initialize the generator of random numbers
     * with a value obtained from the game engine.
     */
    private void initializeStrategy(Wizard self, Game game) {
        if (random == null) {
            random = new Random(game.getRandomSeed());

            double mapSize = game.getMapSize();

            waypointsByLane.put(LaneType.MIDDLE, new Point2D[]{
                    new Point2D(100.0D, mapSize - 100.0D),
                    random.nextBoolean()
                            ? new Point2D(600.0D, mapSize - 200.0D)
                            : new Point2D(200.0D, mapSize - 600.0D),
                    new Point2D(800.0D, mapSize - 800.0D),
                    new Point2D(mapSize - 600.0D, 600.0D)
            });

            waypointsByLane.put(LaneType.TOP, new Point2D[]{
                    new Point2D(100.0D, mapSize - 100.0D),
                    new Point2D(100.0D, mapSize - 400.0D),
                    new Point2D(200.0D, mapSize - 800.0D),
                    new Point2D(200.0D, mapSize * 0.75D),
                    new Point2D(200.0D, mapSize * 0.5D),
                    new Point2D(200.0D, mapSize * 0.25D),
                    new Point2D(200.0D, 200.0D),
                    new Point2D(mapSize * 0.25D, 200.0D),
                    new Point2D(mapSize * 0.5D, 200.0D),
                    new Point2D(mapSize * 0.75D, 200.0D),
                    new Point2D(mapSize - 200.0D, 200.0D)
            });

            waypointsByLane.put(LaneType.BOTTOM, new Point2D[]{
                    new Point2D(100.0D, mapSize - 100.0D),
                    new Point2D(400.0D, mapSize - 100.0D),
                    new Point2D(800.0D, mapSize - 200.0D),
                    new Point2D(mapSize * 0.25D, mapSize - 200.0D),
                    new Point2D(mapSize * 0.5D, mapSize - 200.0D),
                    new Point2D(mapSize * 0.75D, mapSize - 200.0D),
                    new Point2D(mapSize - 200.0D, mapSize - 200.0D),
                    new Point2D(mapSize - 200.0D, mapSize * 0.75D),
                    new Point2D(mapSize - 200.0D, mapSize * 0.5D),
                    new Point2D(mapSize - 200.0D, mapSize * 0.25D),
                    new Point2D(mapSize - 200.0D, 200.0D)
            });

            switch ((int) self.getId()) {
                case 1:
                case 2:
                case 6:
                case 7:
                    lane = LaneType.TOP;
                    break;
                case 3:
                case 8:
                    lane = LaneType.MIDDLE;
                    break;
                case 4:
                case 5:
                case 9:
                case 10:
                    lane = LaneType.BOTTOM;
                    break;
                default:
            }

            waypoints = waypointsByLane.get(lane);

            // Our strategy assumes that the waypoints are sorted by the distance to the last waypoint in descending order.
            // You can check that fact here, if you plan to change the waypoints.
        }
    }

    /**
     * Save all input data in the strategy fields for simpler access.
     */
    private void initializeTick(Wizard self, World world, Game game, Move move) {
        this.self = self;
        this.world = world;
        this.game = game;
        this.move = move;
    }

    /**
     * This method assumes that the waypoints are sorted by the distance to the last waypoint in descending order.
     * It finds the first waypoint that is closer to the last waypoint than the wizard.
     * <p>
     * If a wizard is very close to some waypoint, then we immediately return the next waypoint.
     */
    private Point2D getNextWaypoint() {
        int lastWaypointIndex = waypoints.length - 1;
        Point2D lastWaypoint = waypoints[lastWaypointIndex];

        for (int waypointIndex = 0; waypointIndex < lastWaypointIndex; ++waypointIndex) {
            Point2D waypoint = waypoints[waypointIndex];

            if (waypoint.getDistanceTo(self) <= WAYPOINT_RADIUS) {
                return waypoints[waypointIndex + 1];
            }

            if (lastWaypoint.getDistanceTo(waypoint) < lastWaypoint.getDistanceTo(self)) {
                return waypoint;
            }
        }

        return lastWaypoint;
    }

    /**
     * The effect of this method is the same as the effect of the {@code getNextWaypoint} method, if you reverse the
     * {@code waypoints} array.
     */
    private Point2D getPreviousWaypoint() {
        Point2D firstWaypoint = waypoints[0];

        for (int waypointIndex = waypoints.length - 1; waypointIndex > 0; --waypointIndex) {
            Point2D waypoint = waypoints[waypointIndex];

            if (waypoint.getDistanceTo(self) <= WAYPOINT_RADIUS) {
                return waypoints[waypointIndex - 1];
            }

            if (firstWaypoint.getDistanceTo(waypoint) < firstWaypoint.getDistanceTo(self)) {
                return waypoint;
            }
        }

        return firstWaypoint;
    }

    /**
     * The simplest way to move the wizard.
     */
    private void goTo(Point2D point) {
        double angle = self.getAngleTo(point.getX(), point.getY());

        move.setTurn(angle);

        if (StrictMath.abs(angle) < game.getStaffSector() / 4.0D) {
            move.setSpeed(game.getWizardForwardSpeed());
        }
    }

    /**
     * Find the nearest target to attack, regardless of its type and other characteristics.
     */
    private LivingUnit getNearestTarget() {
        List<LivingUnit> targets = new ArrayList<>();
        targets.addAll(Arrays.asList(world.getBuildings()));
        targets.addAll(Arrays.asList(world.getWizards()));
        targets.addAll(Arrays.asList(world.getMinions()));

        LivingUnit nearestTarget = null;
        double nearestTargetDistance = Double.MAX_VALUE;

        for (LivingUnit target : targets) {
            if (target.getFaction() == Faction.NEUTRAL || target.getFaction() == self.getFaction()) {
                continue;
            }

            double distance = self.getDistanceTo(target);

            if (distance < nearestTargetDistance) {
                nearestTarget = target;
                nearestTargetDistance = distance;
            }
        }

        return nearestTarget;
    }

    /**
     * Helper class to store positions on the map.
     */
    private static final class Point2D {
        private final double x;
        private final double y;

        private Point2D(double x, double y) {
            this.x = x;
            this.y = y;
        }

        public double getX() {
            return x;
        }

        public double getY() {
            return y;
        }

        public double getDistanceTo(double x, double y) {
            return StrictMath.hypot(this.x - x, this.y - y);
        }

        public double getDistanceTo(Point2D point) {
            return getDistanceTo(point.x, point.y);
        }

        public double getDistanceTo(Unit unit) {
            return getDistanceTo(unit.getX(), unit.getY());
        }
    }
}

This is not the most effective strategy and its chance to win is very low, but this is only an example. Good luck!



MadKnight

MadKnight

Student

why can’t bots say something? i need him to say “suka blyat rush mid” to win a katka

Nov 7, 2016 1:03:52 AM
Spasitel

Spasitel

МФТИ (ГУ)

Powered by Yandex.Translate

And where is the repeater?

Nov 7, 2016 1:58:38 AM
Spasitel

Spasitel

МФТИ (ГУ)

Spasitel

Spasitel

МФТИ (ГУ)

Powered by Yandex.Translate

And where is the repeater?

Found in the section Documentation. In the past year about the repeater, like it was mentioned in the quick start

Nov 7, 2016 2:01:39 AM
SladeThe

SladeThe

Organization::Команда Russian AI Cup

Spasitel

Spasitel

МФТИ (ГУ)

Powered by Yandex.Translate

Found in the section Documentation. In the past year about the repeater, like it was mentioned in the quick start

It is obvious that a repeater is not needed for a quick start, which is more complicated from year to year. We decided to remove from his post the extra information.

Nov 7, 2016 2:37:18 AM
AntonT

AntonT

Harman Connected Services

MadKnight

MadKnight

Student

Powered by Yandex.Translate

why can’t bots say something? i need him to say “suka blyat rush mid” to win a katka

Lord Dotar)

Nov 7, 2016 6:22:09 AM
ArturRush

ArturRush

НИУ ЮУрГУ

Powered by Yandex.Translate

In the rules like the joint at the base radius ranged attacks - 100, and the near - 800.

Nov 7, 2016 8:35:24 PM
Ruslion

Ruslion

Казахстан

Powered by Yandex.Translate

In the package With# at startup, displays errors in the file PlayerContext.cs

Nov 7, 2016 9:27:35 PM
DOOMovoi

DOOMovoi

Дубна

Ruslion

Ruslion

Казахстан

Powered by Yandex.Translate

In the package With# at startup, displays errors in the file PlayerContext.cs

Not the case on “.. World => world;” swear?

Nov 7, 2016 10:16:45 PM
CBuH

CBuH

АО НПО ИТ

Powered by Yandex.Translate

No test strategy for Java writes the compile error

.\MyStrategy.java:9: error: cannot find symbol private LineType line; ^ symbol: class LineType location: class MyStrategy .\MyStrategy.java:17: error: cannot find symbol private final Map waypointsByLine = new EnumMap<>(LineType.class); ^ symbol: class LineType location: class MyStrategy .\MyStrategy.java:17: error: cannot find symbol private final Map waypointsByLine = new EnumMap<>(LineType.class); ^ symbol: class LineType location: class MyStrategy .\MyStrategy.java:70: error: cannot find symbol waypointsByLine.put(LineType.MIDDLE, new Point2D[]{ ^ symbol: variable LineType location: class MyStrategy

Nov 8, 2016 8:54:04 AM
Hohol

Hohol

Maxifier

CBuH

CBuH

АО НПО ИТ

Powered by Yandex.Translate

No test strategy for Java writes the compile error .\MyStrategy.java:9: error: cannot find symbol private LineType line; ^ symbol: class LineType location: class MyStrategy .\MyStrategy.java:17: error: cannot find symbol private final Map waypointsByLine = new EnumMap<>(LineType.class); ^ symbol: class LineType location: class MyStrategy .\MyStrategy.java:17: error: cannot find symbol private final Map waypointsByLine = new EnumMap<>(LineType.class); ^ symbol: class LineType location: class MyStrategy .\MyStrategy.java:70: error: cannot find symbol waypointsByLine.put(LineType.MIDDLE, new Point2D[]{ ^ symbol: variable LineType location: class MyStrategy

Update the language pack. LineType renamed LaneType.

Nov 8, 2016 8:59:06 AM
Mashiro

Mashiro

КНУ им. Т. Шевченка

Powered by Yandex.Translate

Why not register on the forum?

Nov 8, 2016 3:30:04 PM
izatenat

izatenat

Symphony Teleca

I’ve build errors: this::readProjectile this::readProjectile this::readMinion this::readBonus ….cannot be resolved to a variable in RemoteProcessClient.java

ex: private Projectile[] readProjectiles() throws IOException { return readArray(Projectile.class, this::readProjectile); }

Nov 8, 2016 3:46:30 PM
Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

Here is one I do not understand… the fact that in java you can use the built-in random generator of the game, and the rest will have to emulate… It’s an exploit because in fact?

Nov 8, 2016 8:00:24 PM
SKolotienko

SKolotienko

ABBYY

Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

Here is one I do not understand… the fact that in java you can use the built-in random generator of the game, and the rest will have to emulate… It’s an exploit because in fact?

Hopefully, that seed that can learn strategy, it will be impossible to calculate what the bonus is and where to appear.

Nov 8, 2016 8:40:45 PM
Magiq

Powered by Yandex.Translate

How does it run if local-runner no methods, nothing, only the constructor and the program falls such as AttributeError: ‘Game’ object has no attribute ‘getMapSize’

Nov 8, 2016 10:31:09 PM
Grino

Grino

ЧелГУ

Hohol

Hohol

Maxifier

Powered by Yandex.Translate

Update the language pack. LineType renamed LaneType.

Cool, and in the example who to fix?

Nov 8, 2016 10:40:15 PM
Hohol

Hohol

Maxifier

Grino

Grino

ЧелГУ

Powered by Yandex.Translate

Cool, and in the example who to fix?

Not me.

Nov 9, 2016 12:06:31 AM
pycckuu

pycckuu

University of Waterloo

Powered by Yandex.Translate

And there is an example given here is written in Python?

Nov 9, 2016 5:15:51 AM
Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

SKolotienko

SKolotienko

ABBYY

Powered by Yandex.Translate

Hopefully, that seed that can learn strategy, it will be impossible to calculate what the bonus is and where to appear.

Judging by what I see now… you Can predict the behavior of units(in part)… Although I have not spent enough checks, so could be completely off.

Nov 9, 2016 8:31:24 AM
Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

pycckuu

pycckuu

University of Waterloo

Powered by Yandex.Translate

And there is an example given here is written in Python?

No. And With+++ no. And do not get it to repeat until the cavity is normal. All hope is correct.

Nov 9, 2016 8:32:19 AM
ALEXks

ALEXks

ИПМ им. М.В. Келдыша РАН

Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

No. And With+++ no. And do not get it to repeat until the cavity is normal. All hope is correct.

I think the strategy is to translate Java to C++ is not difficult if you know C++. And similarly about other languages. Especially when carry - better understand what’s going on than when you take ready.

Nov 9, 2016 10:12:12 AM
vren

vren

Russia

Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

No. And With+++ no. And do not get it to repeat until the cavity is normal. All hope is correct.

Spend a couple of hours for the porting, and you will be. Strange, of course, the Java-people fora.

Nov 9, 2016 10:20:21 AM
theShade

theShade

Crypton/RDL

vren

vren

Russia

Powered by Yandex.Translate

Spend a couple of hours for the porting, and you will be. Strange, of course, the Java-people fora.

Translated into C# took about 6 minutes

Nov 9, 2016 12:39:37 PM
vren

vren

Russia

theShade

theShade

Crypton/RDL

Powered by Yandex.Translate

Translated into C# took about 6 minutes

python slowly - 2 hours.

Nov 9, 2016 12:46:23 PM
JustAMan

JustAMan

Нижний Новгород

Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

Judging by what I see now… you Can predict the behavior of units(in part)… Although I have not spent enough checks, so could be completely off.

You do not forget that seed will eventually (most likely) everyone has their have strategies of their own, the server - your. In the end, it’s possible to predict your own random, but to sense from this any :)

Nov 9, 2016 12:56:14 PM
Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

JustAMan

JustAMan

Нижний Новгород

Powered by Yandex.Translate

You do not forget that seed will eventually (most likely) everyone has their have strategies of their own, the server - your. In the end, it’s possible to predict your own random, but to sense from this any :)

Hope so…

Nov 9, 2016 12:58:07 PM
Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

vren

vren

Russia

Powered by Yandex.Translate

Spend a couple of hours for the porting, and you will be. Strange, of course, the Java-people fora.

I’m talking about the behavior of the internal randomness of Java if that. The strategy itself this use is not intended.

Nov 9, 2016 12:59:58 PM
vren

vren

Russia

JustAMan

JustAMan

Нижний Новгород

Powered by Yandex.Translate

You do not forget that seed will eventually (most likely) everyone has their have strategies of their own, the server - your. In the end, it’s possible to predict your own random, but to sense from this any :)

:) let us then to the point of absurdity, if the server will use the weak PRNG will pick up its settings to see where the bonus falls?

Nov 9, 2016 1:13:38 PM
JustAMan

JustAMan

Нижний Новгород

vren

vren

Russia

Powered by Yandex.Translate

:) let us then to the point of absurdity, if the server will use the weak PRNG will pick up its settings to see where the bonus falls?

There is a suspicion that the hack generator will be gone almost all set-time strategy… :) And then the organizers will get angry and will alter to read /dev/urandom (hardware generator) is hacking :D

Nov 9, 2016 1:40:29 PM
JustAMan

JustAMan

Нижний Новгород

vren

vren

Russia

Powered by Yandex.Translate

:) let us then to the point of absurdity, if the server will use the weak PRNG will pick up its settings to see where the bonus falls?

There is a suspicion that the hack generator will be gone almost all set-time strategy… :) And then the organizers will get angry and will alter to read /dev/urandom (hardware generator) is hacking :D

Nov 9, 2016 1:40:31 PM
izatenat

izatenat

Symphony Teleca

Powered by Yandex.Translate

tell me who solved the problem with compiling example? in the file RemoteProcessClient finds this::readProjectile this::readMinion this::readBonus this:readWizards etc….

jdk updated to the latest, in eclipse put the connection to the server is done, but the MAG is in place.

Exception in thread “main” java.lang.Error: Unresolved compilation problems: Syntax error on tokens, delete these tokens readWizard cannot be resolved to a variable at main.java.RemoteProcessClient.readWizards(RemoteProcessClient.java:145) at main.java.RemoteProcessClient.readPlayerContext(RemoteProcessClient.java:88) at main.java.Runner.run(Runner.java:35) at main.java.Runner.main(Runner.java:12)

Nov 9, 2016 1:44:41 PM
Kozza

Kozza

Казань

Powered by Yandex.Translate

and there is full documentation in pdf file as in the previous year(years)?

Nov 9, 2016 4:47:04 PM
Kozza

Kozza

Казань

Kozza

Kozza

Казань

Powered by Yandex.Translate

and there is full documentation in pdf file as in the previous year(years)?

found

Nov 9, 2016 5:02:54 PM
4way

4way

ЗАО МЭЛ

Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

I’m talking about the behavior of the internal randomness of Java if that. The strategy itself this use is not intended.

Quite a strategy. Gave base, i.e., attack, movement. A small finishing touch. Kept in top 20

Nov 9, 2016 6:31:10 PM
exelim

exelim

Gameloft

Powered by Yandex.Translate

Um…why when I have 101 player and I see his position,it is 100, which is approximately equal to 3700 1-3 player ? This is a mistake or what ?

Nov 10, 2016 3:48:15 PM
quyse

quyse

НИУ ЮУрГУ

MadKnight

MadKnight

Student

why can’t bots say something? i need him to say “suka blyat rush mid” to win a katka

indeed game totally misses that

Nov 10, 2016 5:21:16 PM
JustAMan

JustAMan

Нижний Новгород

quyse

quyse

НИУ ЮУрГУ

indeed game totally misses that

use game visualizer, Luke :)

http://russianaicup.ru/forum/index.php?topic=592.0

Nov 10, 2016 6:01:28 PM
Keyboard_smurf

why can’t bots say something? i need him to say “suka blyat rush mid” to win a katka

Actually according documentation there is messaging system (class Message) between wizards of same fraction. But unfortunately you cant say “gg ez mid commend me” to wizards of other fraction(

Nov 10, 2016 6:13:32 PM
Magiq

Powered by Yandex.Translate

I have a feeling that this Esper tournament(which they said they especially tried to patootie) specially made for experienced. There is no information anywhere on the Visualizer, just in the comments and forums!! What should I beg him? But the question on the soap for the fourth day no one answered.

Nov 10, 2016 7:19:18 PM
esemi

esemi

SEMrush

Powered by Yandex.Translate

I have a feeling that this Esper tournament(which they said they especially tried to patootie) specially made for experienced. There is no information anywhere on the Visualizer, just in the comments and forums!! What should I beg him? But the question on the soap for the fourth day no one answered.

Visualizer - it’s not official, as I understand it)

Nov 10, 2016 7:31:12 PM
Parilo2

Parilo2

ОмГУ им. Достоевского

Powered by Yandex.Translate

And under a poppy it is possible somehow to compile C++ version? It wants me lohovskie headers

Nov 10, 2016 8:56:39 PM
Parilo2

Parilo2

ОмГУ им. Достоевского

Parilo2

Parilo2

ОмГУ им. Достоевского

Powered by Yandex.Translate

And under a poppy it is possible somehow to compile C++ version? It wants me lohovskie headers

gathered under a poppy replacing the last command in the script compile-g++14.sh on g++ -std=c++14 -fno-optimize-sibling-calls-fno-strict-aliasing -D_DARWIN -lm-x c++ -O2 -Wall-Wtype-limits -Wno-unknown-pragmas -o $name $files

Nov 10, 2016 9:05:58 PM
Golovanov399

Golovanov399

Московский Физико-Технический Институт

Powered by Yandex.Translate

When I watch the games on the website, my RAM goes missing, I’m waiting for a thousand years, until the thing loads and then watch all the brakes and ~5фпс. Is it just me, it is all because you use something heavyweight to visualize and, of course, will soon make all legavenue, or meylru gave all servers dacu and tests on typewriters?

Nov 11, 2016 1:49:15 PM
4way

4way

ЗАО МЭЛ

Golovanov399

Golovanov399

Московский Физико-Технический Институт

Powered by Yandex.Translate

When I watch the games on the website, my RAM goes missing, I’m waiting for a thousand years, until the thing loads and then watch all the brakes and ~5фпс. Is it just me, it is all because you use something heavyweight to visualize and, of course, will soon make all legavenue, or meylru gave all servers dacu and tests on typewriters?

I even show at the same time playing a game you cannot enable. Starts to hang and blunt.

Nov 11, 2016 1:54:12 PM
FDoKE

FDoKE

НГТУ (НЭТИ)

4way

4way

ЗАО МЭЛ

Powered by Yandex.Translate

I even show at the same time playing a game you cannot enable. Starts to hang and blunt.

You just need a couple TitanX :D

Nov 11, 2016 2:16:37 PM
Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

4way

4way

ЗАО МЭЛ

Powered by Yandex.Translate

I even show at the same time playing a game you cannot enable. Starts to hang and blunt.

Strange, my fps on the website 100.

Nov 11, 2016 2:59:36 PM
RandGor
MadKnight

MadKnight

Student

why can’t bots say something? i need him to say “suka blyat rush mid” to win a katka

best dish

Nov 13, 2016 5:34:51 PM
esemi

esemi

SEMrush

Chaotic_Good

Chaotic_Good

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

Strange, my fps on the website 100.

on integrirovannoi widest in Fox this visualization works like in debug - footage hands to count) and God forbid full screen to deploy (:

Nov 13, 2016 8:53:40 PM
SladeThe

SladeThe

Organization::Команда Russian AI Cup

esemi

esemi

SEMrush

Powered by Yandex.Translate

on integrirovannoi widest in Fox this visualization works like in debug - footage hands to count) and God forbid full screen to deploy (:

Fox in General has become slow. Try to run the same Chrome. The difference in fps is significant.

Nov 14, 2016 1:01:35 PM
Fep

Fep

Хабаровск

izatenat

izatenat

Symphony Teleca

Powered by Yandex.Translate

tell me who solved the problem with compiling example? in the file RemoteProcessClient finds this::readProjectile this::readMinion this::readBonus this:readWizards etc…. jdk updated to the latest, in eclipse put the connection to the server is done, but the MAG is in place. Exception in thread “main” java.lang.Error: Unresolved compilation problems: Syntax error on tokens, delete these tokens readWizard cannot be resolved to a variable at main.java.RemoteProcessClient.readWizards(RemoteProcessClient.java:145) at main.java.RemoteProcessClient.readPlayerContext(RemoteProcessClient.java:88) at main.java.Runner.run(Runner.java:35) at main.java.Runner.main(Runner.java:12)

also interested in this question

Nov 16, 2016 3:09:19 PM
steleal

steleal

Ульяновск

Fep

Fep

Хабаровск

Powered by Yandex.Translate

also interested in this question

java updated, but maybe you have the old path, to the seventh version? Campiglio by the script or from the IDE? if the script try to register the absolute path to the java or in console type java -version, and that will

Nov 16, 2016 9:42:18 PM
RQdan

Powered by Yandex.Translate

Do not tell anyone what could be the problem: it seems, have never managed to see the last game on the website. Think long, slow and ultimately loads only part of the game, and even then usually not more than 500 ticks. Well, as with repition to work? Launch, works, writes that the dump is loaded and all. Have to run/do?

Nov 17, 2016 10:50:16 AM
Scarlet

Powered by Yandex.Translate

  1. Normally on the website you can see only in Chrome.
  2. Then you start debug in IDE (like with lokalradio, without visualization).

Nov 17, 2016 11:31:33 AM
esemi

esemi

SEMrush

SladeThe

SladeThe

Organization::Команда Russian AI Cup

Powered by Yandex.Translate

Fox in General has become slow. Try to run the same Chrome. The difference in fps is significant.

“Your graphics card or browser does not seem to support WebGL. For more information please visit get.webgl.org”

It is in chromium, although the Fox is playing, even with the brakes)

Nov 17, 2016 11:58:34 AM
esemi

esemi

SEMrush

esemi

esemi

SEMrush

Powered by Yandex.Translate

“Your graphics card or browser does not seem to support WebGL. For more information please visit get.webgl.org” It is in chromium, although the Fox is playing, even with the brakes)

In stable chromium under Linux is similar

Nov 17, 2016 12:02:28 PM
nakilon

nakilon

Moscow

Powered by Yandex.Translate

And how to interpret the validation Error #8969 ?

``Your strategy fell short in the test game 10x1. The strategy process emergency ended at tick 27.

The runner and output to stdout: Time limit exceeded The Program failed to terminate within 14.00 sec time consumed: 14.10 14.00 sec of time passed: 50.21 sec peak memory: 185217024 bytes

Conclusion the strategy to stderr: Warning: security manager and JRuby running from the boot classpath. Run from jruby.jar or set env VERIFY_JRUBY=true to enable security.``

I locally 50 ticks per second passes, and then write that 14сек 27 ticks OO

Nov 17, 2016 4:54:20 PM
A13x3y

Powered by Yandex.Translate

Something this year’s Python does not drag at all, or just people haven’t caught up?

Nov 18, 2016 3:34:39 PM
esemi

esemi

SEMrush

Powered by Yandex.Translate

Something this year’s Python does not drag at all, or just people haven’t caught up?

all who were writing in Python from prvoj hundreds went to other languages?)

Nov 18, 2016 5:12:15 PM
tyamgin

tyamgin

Крымский федеральный университет имени В.И. Вернадского

esemi

esemi

SEMrush

Powered by Yandex.Translate

all who were writing in Python from prvoj hundreds went to other languages?)

rather, in other hundreds :)

Nov 18, 2016 6:25:40 PM
ThermIt

ThermIt

Piano.io

Powered by Yandex.Translate

Administrators, please separate the download page…

Nov 19, 2016 11:26:28 AM
ThermIt

ThermIt

Piano.io

ThermIt

ThermIt

Piano.io

Powered by Yandex.Translate

Administrators, please separate the download page…

Although found all that can be downloaded but for some reason, the “documents”section

Nov 19, 2016 11:27:52 AM
IuriiCh

IuriiCh

ТГУ

Powered by Yandex.Translate

I do not understand why in the example on each tick creates an array and populates it with baypointe when it can be done once in the constructor?

Nov 19, 2016 5:47:27 PM
IuriiCh

IuriiCh

ТГУ

Powered by Yandex.Translate

.. don’t understand why can’t I delete my comments?

Nov 19, 2016 5:51:30 PM
udalov

udalov

JetBrains

Powered by Yandex.Translate

It seems that because of this line

random = new Random(game.getRandomSeed());

strategy QuickStartGuy behaves each game different (after all, randomSeed is a random number that does not depend on a seed which is passed as a parameter in the local-runner). Because of this uncomfortable locally to test your strategy against the strategy of “quick start”. Tell me, is there a possibility to fix this QuickStartGuy in local-runner? Ie for example to fix the seed in the following way:

random = new Random(42);

Nov 19, 2016 6:15:20 PM
mixei4

mixei4

КГУ

udalov

udalov

JetBrains

Powered by Yandex.Translate

It seems that because of this line random = new Random(game.getRandomSeed()); strategy QuickStartGuy behaves each game different (after all, randomSeed is a random number that does not depend on a seed which is passed as a parameter in the local-runner). Because of this uncomfortable locally to test your strategy against the strategy of “quick start”. Tell me, is there a possibility to fix this QuickStartGuy in local-runner? Ie for example to fix the seed in the following way: …

In the settings of lokalbaner: seed=…

Nov 19, 2016 7:53:02 PM
udalov

udalov

JetBrains

mixei4

mixei4

КГУ

Powered by Yandex.Translate

In the settings of lokalbaner: seed=…

seed in local settings-runner is not game.getRandomSeed() for obvious reasons. Cm. also http://russianaicup.ru/forum/index.php?topic=651.0

Nov 19, 2016 8:05:13 PM
udalov

udalov

JetBrains

Powered by Yandex.Translate

But, it seems the problem was in local-runner: command line option contrary to read.me why-that is ignored, but the seed=XXX in .properties file working.

Nov 19, 2016 8:09:33 PM
DIZY

Powered by Yandex.Translate

Have not figured out how to run the program on the local machine

Nov 19, 2016 8:25:57 PM
x_equals_19

x_equals_19

Санкт-Петербург

Powered by Yandex.Translate

I understand that with the files in the current directory work allowed?

Nov 19, 2016 8:34:56 PM
dimir

dimir

СПбГЭТУ (ЛЭТИ)

Powered by Yandex.Translate

Have not figured out how to run the program on the local machine

Put java download local-runner and your language pack, create a strategy (compile). Launch local-runner (there are scripts for Windows and *nix systems is to run within the archive). local-runner waiting for now when you run your strategy. Start - see.

Nov 19, 2016 11:36:17 PM
DIZY
dimir

dimir

СПбГЭТУ (ЛЭТИ)

Powered by Yandex.Translate

Put java download local-runner and your language pack, create a strategy (compile). Launch local-runner (there are scripts for Windows and *nix systems is to run within the archive). local-runner waiting for now when you run your strategy. Start - see.

The problem is not with the loc run, the problem is that in what kind of environment I hadn’t compiled! CE.

Nov 20, 2016 7:53:12 AM
Valdemar

Valdemar

Университет ИТМО

Powered by Yandex.Translate

The problem is not with the loc run, the problem is that in what kind of environment I hadn’t compiled! CE.

And you the entire language package to the project add? You need to compile everything, not just MyStrategy

Nov 20, 2016 2:13:27 PM
dimir

dimir

СПбГЭТУ (ЛЭТИ)

Powered by Yandex.Translate

The problem is not with the loc run, the problem is that in what kind of environment I hadn’t compiled! CE.

For example, I was not able to build the project in eclipse (windows, c++). In the end, collect the script from the archive, but running the source code in eclipse. Last year I was sitting under linux, and there seems like there were also problems with the Assembly.

Nov 20, 2016 3:01:55 PM
Valdemar

Valdemar

Университет ИТМО

dimir

dimir

СПбГЭТУ (ЛЭТИ)

Powered by Yandex.Translate

For example, I was not able to build the project in eclipse (windows, c++). In the end, collect the script from the archive, but running the source code in eclipse. Last year I was sitting under linux, and there seems like there were also problems with the Assembly.

But all those options to send. Collected in the Device using CMake

Nov 20, 2016 3:09:29 PM
SladeThe

SladeThe

Organization::Команда Russian AI Cup

udalov

udalov

JetBrains

Powered by Yandex.Translate

But, it seems the problem was in local-runner: command line option contrary to read.me why-that is ignored, but the seed=XXX in .properties file working.

Settings run the bat/sh file is not passed on as parameters to run the Local runner. You need to edit an existing or create a new startup script, which add a seed parameter. For example, local-runner.bat might look like this:

start javaw -Xms512m -Xmx1G -XX:+UseConcMarkSweepGC -jar “local-runner.jar” local-runner.local properties-runner.default.properties 123456

game.getRandomSeed() obviously depends on the setting of seed or seed-property. That’s what you need this value.

Nov 20, 2016 7:19:02 PM
FenzaFenz

Powered by Yandex.Translate

And mobs are always a fixed number appears?

Nov 20, 2016 9:28:13 PM
coalesce

coalesce

Диасофт

Powered by Yandex.Translate

You would add in the sentence “Supported C++, Java, C#, Pascal, Python2, Python3 and Ruby” all 10 languages. And some of the letters have reached this page, read, say, know JS, offended. And could the link language packs and not to, do not recheck

Nov 20, 2016 10:26:19 PM
SladeThe

SladeThe

Organization::Команда Russian AI Cup

coalesce

coalesce

Диасофт

Powered by Yandex.Translate

You would add in the sentence “Supported C++, Java, C#, Pascal, Python2, Python3 and Ruby” all 10 languages. And some of the letters have reached this page, read, say, know JS, offended. And could the link language packs and not to, do not recheck

Packs for D, Go and JS developed by the community. You can write the strategy in these languages, but the official support we do not provide. For example, in case of detection of a bug, all questions should be addressed to the Creator of the package, not the event organizers.

Nov 20, 2016 10:47:45 PM
aabzac

aabzac

БГУИР

Powered by Yandex.Translate

And mobs are always a fixed number appears?

And the rules (documentation) to read not destiny? ))

Nov 20, 2016 11:06:01 PM
DIZY

Powered by Yandex.Translate

that returns a function GetMinions when it is recorded in the vector, he swears by that vector came from abroad.

Nov 21, 2016 5:27:25 AM
dimir

dimir

СПбГЭТУ (ЛЭТИ)

Powered by Yandex.Translate

that returns a function GetMinions when it is recorded in the vector, he swears by that vector came from abroad.

What language is that ?

Nov 21, 2016 12:12:49 PM
dimir

dimir

СПбГЭТУ (ЛЭТИ)

Powered by Yandex.Translate

that returns a function GetMinions when it is recorded in the vector, he swears by that vector came from abroad.

In any case, in all languages returns a list(vector) of all visible your team of minions

Nov 21, 2016 12:13:39 PM
romamamam

romamamam

МГТУ им. Н.Э. Баумана

Powered by Yandex.Translate

Guys, I need your help: quick start for js, when id wizard and more than 5, he’s just spinning in place. What to do?

Nov 21, 2016 10:13:00 PM
Gassa

Gassa

СПбГУ

Powered by Yandex.Translate

Oh, it turns out, the custom language pack you can translate and put QuickStartGuy.

Translation to D: https://github.com/GassaFM/raicup-2016-dlang-cgdk-ru/tree/master/quick-start.

Nov 22, 2016 4:35:36 PM
Alexorleon

Alexorleon

Кемерово

Powered by Yandex.Translate

An example of why not all languages???!!!

Nov 23, 2016 1:20:46 PM
KrAsAu4iK

KrAsAu4iK

Душанбе

Powered by Yandex.Translate

Hello. How to play in the sandbox I do not understand this system. In the link to play no place to run the game pliz help .

Nov 23, 2016 2:43:28 PM
KrAsAu4iK

KrAsAu4iK

Душанбе

Powered by Yandex.Translate

Hello. How to play in the sandbox I do not understand this system. In the link to play no place to run the game pliz help .

Nov 23, 2016 2:43:29 PM
azt-yur

azt-yur

ОГУ

KrAsAu4iK

KrAsAu4iK

Душанбе

Powered by Yandex.Translate

Hello. How to play in the sandbox I do not understand this system. In the link to play no place to run the game pliz help .

First you need to submit your strategy Send strategy http://russianaicup.ru/submit Then play in the sandbox will be created automatically by the system. Also you can create your own game the link to Create a game, but they do not participate in the rating

Nov 23, 2016 3:25:16 PM
KrAsAu4iK

KrAsAu4iK

Душанбе

azt-yur

azt-yur

ОГУ

Powered by Yandex.Translate

First you need to submit your strategy Send strategy http://russianaicup.ru/submit Then play in the sandbox will be created automatically by the system. Also you can create your own game the link to Create a game, but they do not participate in the rating

and that will send I have tried everything and everything I sent to output the compile error I don’t know what will send pliz tell me there will be.

Nov 23, 2016 3:32:08 PM
SKolotienko

SKolotienko

ABBYY

KrAsAu4iK

KrAsAu4iK

Душанбе

Powered by Yandex.Translate

and that will send I have tried everything and everything I sent to output the compile error I don’t know what will send pliz tell me there will be.

Times says “fail compilation” means a compilation error. And with such topics it is better to apply on the forum and not in the topic “quick start”

Nov 23, 2016 3:47:46 PM
JaleChaki

JaleChaki

АГ СПбГУ

KrAsAu4iK

KrAsAu4iK

Душанбе

Powered by Yandex.Translate

and that will send I have tried everything and everything I sent to output the compile error I don’t know what will send pliz tell me there will be.

Well, if you wrote a compile error, then the strategy could not compile. Have to send a file MyStrategy (and only him), which is in the folder of the language pack. Well, if you have everything compiled on your comp, so the idea is to compile in a system where you send

Nov 23, 2016 4:08:52 PM
LueNZ

LueNZ

не работаю

Powered by Yandex.Translate

How to guide a magician to go midlo?

Nov 23, 2016 9:11:58 PM
infsega

infsega

Align Technology Inc

LueNZ

LueNZ

не работаю

Powered by Yandex.Translate

How to guide a magician to go midlo?

The movement in itself is set to either the key points or the pathfinding algorithm of type A*. On this page there is the full code of the movement. In the example, the direction of movement is selected by player ID (from 1 to 10, the first 5 in one team next to another). Line: lane = LaneType.MIDDLE;

Accordingly, make it unconditional, then Your bot will always walk on Mead (and sometimes ruin the balance of the team).

If you need to debug the direction of the Ministry of foreign Affairs, in LocalRunner you can set user ID, see p1-type=Local in the file .properties

Nov 24, 2016 1:06:14 AM
Rmurad

Rmurad

студент

Powered by Yandex.Translate

Hi all! Downloaded local is a runner and ran local-runner.bat, the window with the message “Waiting for connection strategy” Then opened the project in intellij Idea and as I understand it, it is necessary to start the class runner, but there is no main. Maybe I do not understand correctly. Please help to deal with running the bot on your local computer.

Nov 25, 2016 1:12:26 PM
AlexKol

AlexKol

MSTEAM

KrAsAu4iK

KrAsAu4iK

Душанбе

Powered by Yandex.Translate

and that will send I have tried everything and everything I sent to output the compile error I don’t know what will send pliz tell me there will be.

Click on the compile error. You’ll find the detailed error. What type of thread LaneType not found.

Nov 25, 2016 1:18:30 PM
antonpp
Rmurad

Rmurad

студент

Powered by Yandex.Translate

Hi all! Downloaded local is a runner and ran local-runner.bat, the window with the message “Waiting for connection strategy” Then opened the project in intellij Idea and as I understand it, it is necessary to start the class runner, but there is no main. Maybe I do not understand correctly. Please help to deal with running the bot on your local computer.

Generally, if you download the language pack there pom.xml there, where the main class is written and how to collect, so the idea was to pick up the correct target from to new. It is strange that no main method in the Runner, you can still here it (http://russianaicup.ru/p/packs) forgot? By the way, look what port will be used - my default was closed.

Nov 25, 2016 1:32:01 PM
antonpp
LueNZ

LueNZ

не работаю

Powered by Yandex.Translate

How to guide a magician to go midlo?

move.setTurn(self.getAngleTo(4000, 0)) move.setSpeed(4)

Nov 25, 2016 1:35:09 PM
AlexKol

AlexKol

MSTEAM

Powered by Yandex.Translate

move.setTurn(self.getAngleTo(4000, 0)) move.setSpeed(4)

He will not go. You will rest in our database. You want to implement an algorithm of the robot, avoiding obstacles from point a to point B.

Nov 25, 2016 1:40:19 PM
Rmurad

Rmurad

студент

Powered by Yandex.Translate

Generally, if you download the language pack there pom.xml there, where the main class is written and how to collect, so the idea was to pick up the correct target from to new. It is strange that no main method in the Runner, you can still here it ( http://russianaicup.ru/p/packs ) forgot? By the way, look what port will be used - my default was closed.

the language pack downloaded from github and opened it in intellij Idea and when you try to run it from there, not nail the main method. And where you can see which ports are open?

Nov 25, 2016 1:45:42 PM
Rmurad

Rmurad

студент

Powered by Yandex.Translate

Generally, if you download the language pack there pom.xml there, where the main class is written and how to collect, so the idea was to pick up the correct target from to new. It is strange that no main method in the Runner, you can still here it ( http://russianaicup.ru/p/packs ) forgot? By the way, look what port will be used - my default was closed.

Sorry, there is main method (public static void main(String[] args) throws IOException) but can not run, the start button is not available

Nov 25, 2016 2:02:24 PM
antonpp
AlexKol

AlexKol

MSTEAM

Powered by Yandex.Translate

He will not go. You will rest in our database. You want to implement an algorithm of the robot, avoiding obstacles from point a to point B.

Thank you, I know)

Nov 25, 2016 2:08:57 PM
antonpp
Rmurad

Rmurad

студент

Powered by Yandex.Translate

Sorry, there is main method (public static void main(String[] args) throws IOException) but can not run, the start button is not available

If the idea that she did not, then you can tell her to have imported Maven project. Then look at what targets have Maven. Just for the main method, right-click click - will offer to run.

Ports this is how you set up.

Nov 25, 2016 2:16:31 PM
alevlaber

alevlaber

Костанай

Rmurad

Rmurad

студент

Powered by Yandex.Translate

Sorry, there is main method (public static void main(String[] args) throws IOException) but can not run, the start button is not available

If not mistaken, the IDE need to set the path to JAVA. When you start the IDE, the message\warning does not pop out no?

Nov 25, 2016 2:35:49 PM
nullptr

nullptr

Горный университет (бывш. СПГГУ)

Powered by Yandex.Translate

Is it possible in any way to the value of the damage from skills? Or is it just there in the documentation and point?

Nov 25, 2016 2:55:20 PM
Rmurad

Rmurad

студент

alevlaber

alevlaber

Костанай

Powered by Yandex.Translate

If not mistaken, the IDE need to set the path to JAVA. When you start the IDE, the message\warning does not pop out no?

Requests to change configuration, are trying in the field “main class” choose the Java file runner, but it is impossible to choose. The path to Java specified. Neither can the draft create your classes.

Nov 25, 2016 2:56:08 PM
Rmurad

Rmurad

студент

Powered by Yandex.Translate

All start, thanks!

Nov 25, 2016 3:03:44 PM
DOOMovoi

DOOMovoi

Дубна

Powered by Yandex.Translate

And as logs on the forum? Registration disabled. The login/password from mail.ru account not working, password recovery email not send…

Nov 25, 2016 3:04:43 PM
snikes

snikes

РГППУ

Powered by Yandex.Translate

http://prntscr.com/dblxn3 in any case, something flew

Nov 25, 2016 3:08:01 PM
Hohol

Hohol

Maxifier

nullptr

nullptr

Горный университет (бывш. СПГГУ)

Powered by Yandex.Translate

Is it possible in any way to the value of the damage from skills? Or is it just there in the documentation and point?

game.getFrostBoltDirectDamage and other similar methods

Nov 25, 2016 3:18:24 PM
Xopek

Xopek

МГТУ им. Н. Э. Баумана

snikes

snikes

РГППУ

Powered by Yandex.Translate

http://prntscr.com/dblxn3 in any case, something flew

I have the same thing

Nov 25, 2016 3:29:37 PM
Rmurad

Rmurad

студент

Powered by Yandex.Translate

Guys. if you use sophisticated code strategies above. I have crashes. has anyone faced this problem?

Nov 25, 2016 3:33:43 PM
AlexKol

AlexKol

MSTEAM

Rmurad

Rmurad

студент

Powered by Yandex.Translate

Guys. if you use sophisticated code strategies above. I have crashes. has anyone faced this problem?

You see because of what crashes. The mistake writes, and so on.

Nov 25, 2016 3:36:55 PM
snikes

snikes

РГППУ

Xopek

Xopek

МГТУ им. Н. Э. Баумана

Powered by Yandex.Translate

I have the same thing

htmlentitydecode is broken ))

Nov 25, 2016 3:49:23 PM
ashru

how do I know why my game crashed without using a local repeat (since I can’s seem to get it to work)?

Nov 25, 2016 6:35:17 PM
SladeThe

SladeThe

Organization::Команда Russian AI Cup

how do I know why my game crashed without using a local repeat (since I can’s seem to get it to work)?

You can click on the programming language icon on the game details page.

Nov 25, 2016 6:56:52 PM
nullptr

nullptr

Горный университет (бывш. СПГГУ)

Hohol

Hohol

Maxifier

Powered by Yandex.Translate

game.getFrostBoltDirectDamage and other similar methods

Thank you!

Nov 25, 2016 7:12:32 PM
serlis

serlis

Харьковский НУ им. Каразина

Powered by Yandex.Translate

Guys who have obtained and to send and receive the message: unable to paint what’s there you can put and how to read it. Preferably in C++ . I’m doing the most logical way it kompilacja: but the Visualizer on the website it does not display my command if I am. A couple of additional questions: Am I right that under the asterisk on the website shows the recommended lines Supreme? The Supreme is always red and blue?

Nov 28, 2016 8:56:24 PM
Equinox

Equinox

ООО "Компания Тензор"

serlis

serlis

Харьковский НУ им. Каразина

Powered by Yandex.Translate

Guys who have obtained and to send and receive the message: unable to paint what’s there you can put and how to read it. Preferably in C++ . I’m doing the most logical way it kompilacja: but the Visualizer on the website it does not display my command if I am. A couple of additional questions: Am I right that under the asterisk on the website shows the recommended lines Supreme? The Supreme is always red and blue?

There is only on Python. I have everything working (and the arrows appear when I, the Supreme) and it run, when not to. Something like this (a rewrite in C++, I think, not difficult):

def tick(self, me: Wizard): # Receive/send commands if me.master: self.send_commands() else: self.receive_commands(me)

def send_commands(self): if world.tick_index == 0: msg = {} for w in map.ally_wizards: # Assign lines to allied wizards lane = self.get_lane212(w) # Strategy 2-1-2 (returns a line mage, like in Startgate)

if w.me: # Myself self.commands.lane = lane else: # the Rest msg[w.id] = Message(lane=lane, skill_to_learn=None, raw_message=None)

if len(msg) == len(map.ally_wizards) - 1: move.messages = [val for (key, val) in sorted(msg.items())] # Sort the teams in ascending ID Mogul for which they are intended # I.e. move.messages will be an array of Message objects, sorted by ascending ID of the mage else: log(“Wrong msg length in send_commands()”)

def receive_commands(self, me: Wizard): if me.messages: lane, skill_to_learn, raw_message = None, None, None

for m in me.messages: if m.lane is not None: self.commands.lane = m.lane

if m.skill_to_learn is not None: self.commands.skill_to_learn = m.skill_to_learn

if m.raw_message is not None: self.commands.raw_message = m.raw_message

Nov 29, 2016 12:19:50 AM