Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Project Hoshimi, tutorial for beginners (Part 3 : FAQ)

Q & A for beginners

Q : At which frequency my WhatToDoNextEvent function is called ?
A : You can get during the game Utils.NumberOfTurnBetweenEvent, this number is the number of turns elapsed between two WhatToDoNextEvent calls. Usually there are 4 turns between 2 WhatToDoNextEvent calls (but this can change), so it called at turn 4, 8, 12, 16….

Q : How long is a turn ?
A : You can get during the game Utils.NumberOfTurnBySecond (the name is obvious, isn’t it ?). This is often set to 5, so a turn last 200 milliseconds.

Q : What happen if my function WhatToDoNextEvent is too long ?
A : You can calculate that you have 4 * 200 = 800 ms to play. If you are too slow, your bots won’t do anything until your function has returned. You will skip the next WhatToDoNextEvent calls if your function has not returned.

For example, if your WhatToDoNextEvent function is running during 2 seconds, you will miss the 2 next calls (2000 = 2 * 800 + 400). Avoid this as much as possible.

Q : What are streams ?
A : Streams are areas in the tissue where the moving speed depend on the direction you move your bot. When you move against the stream, you are slowed, and when you move in any other direction, you move faster.

Q : Can I kill my opponent ?
A : No, you can’t kill any bot of you opponent, because Project Hoshimi has been designed to be a “peace and love” game ;). But you can kill Pierre’s bots (and he can kill you), he is French but he is a very bad guy.

Q : Are there limitations in the characteristics of the bots that I define ?
A : Of course, there are limitations. See the section How to begin > Limitations when defining a new bot.

Q : Is there any limitation to build bots ?
A : You can build a bot whenever you want, but there is a limit for the number of the bots in your team, it is usually 40, but you can get the value during the game using Utils.NbrMaxBots. Also, if you build a non-NanoMoveable bot (NanoNeedle, NanoBlocker or NanoWall), you can only build it if there is no non-NanoMoveable bot on the cell you’re trying to build.

Q : Does OtherNanoBotsInfo contains all the ennemy bots ?
A : No, there is only the bots that are in the sight of your bots.

Q : What is the sight of my bot ?
A : You must add the value of the Scan characteristic of your bot and Utils.ScanLength (usually 10) to get the range of sight of each of your bot. The NanoExplorer can have a very big Scan characteristic, allowing you to easily scout the map.

Q : When is OtherNanoBotsInfo updated ?
A : It is not updated at each turn. The interval at which it is updated is the value of Utils. NumberOfTurnBetweenScan (usually 6 turns).

Q : Does NanoBlockers and NanoWalls block my bots ?
A : No, it blocks only the bots of your opponent and Pierre’s ones.

Q : Who is the winner at the end of a game ?
A : At the end of the game, the winner is the player who have the biggest number of points. In case of equality, the following criteras are used (sorted by priority) :

  • The player who accomplished the biggest number of objectives.
  • The player who has the biggest number of NanoNeedles built on HoshimiPoints.
  • The player who has the biggest number of NanoNeedles built anywhere.
  • The player who has the biggest number of bots.

Q : I have many other questions.
A : Okay, go to www.imaginecup.com and ask in the Project Hoshimi board, someone will likely answer your question.

Written by RaptorXP (Flavien Charlon) [Team Atomnium, World Champion 2006]

Part 1 | Part 2 | FAQ

Publié dimanche 1 octobre 2006 17:55 par RaptorXP
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

# Project Hoshimi, tutorial for beginners (Part 1)

Abstract
I participated last year to Project Hoshimi 2006. I spent very much time to design my AI. I...
dimanche 1 octobre 2006 19:01 by Code is poetry

# Tutorial Project Hoshimi pour les débutants

Richard avait demandé aux finalistes de Project Hoshimi d'écrire un petit article destiné aux débutants...
dimanche 1 octobre 2006 19:22 by Code is poetry
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- WPF : la gestion des dates (Label, TextBlock) par Pierrick's Blog le il y a 2 heures et 15 minutes

- [ASP.NET] - ASP.NET Generated Image par Aurelien's Blog - When ClientSide meets .Net le il y a 3 heures et 42 minutes

- Utiliser le SDK Open XML pour manipuler vos documents Office Open XML par Julien Chable le il y a 4 heures et 55 minutes

- [Silverlight] - Créer un contrôle réutilisable et des propriétés personnalisées. par Danuz le il y a 8 heures et 13 minutes

- Photosynth : Composez et partagez vos scènes ! par Blog technique de Nicolas Boonaert le il y a 8 heures et 16 minutes

- Comment débugger un programme de génération de code utilisé dans VS ? par Matthieu MEZIL le il y a 8 heures et 17 minutes

- Avoir une propriété sur l'object context qui renvoit les sous-entités par Matthieu MEZIL le il y a 8 heures et 29 minutes

- Sortie du SDK 1.1 de Visual Studio 2008 par Michel Perfetti [Miiitch] le il y a 11 heures et 3 minutes

- Skyfire, Silverlight sur votre mobile ! par alex# le il y a 11 heures et 20 minutes

- VSTSDB 2008 GDR CTP16 est arrivé par Noham Choulant le il y a 12 heures et 24 minutes