Difference between revisions of "Ocnirp"

From Robowiki
Jump to navigation Jump to search
m (update 1.5)
m (update info)
 
(2 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
| bgcolour        = #75ff75
 
| bgcolour        = #75ff75
 
| name            = [[Ocnirp]]
 
| name            = [[Ocnirp]]
| author          = [[Nat]]
+
| author          = [[User:Nat|Nat]]
 
| extends        = [[AdvancedRobot]]
 
| extends        = [[AdvancedRobot]]
| targeting      = [[PatternMatching|Pattern Matching]]
+
| targeting      = [[Pattern Matching|Pattern Matching]]
| movement        = [[RandomMovement|Random Movement]]
+
| movement        = [[Random Movement|Random Movement]]
 
| best_rating    = 1744.9 (13th)
 
| best_rating    = 1744.9 (13th)
| current_version = 1.5
+
| current_version = 1.61b
| codesize        = 243
+
| codesize        = 221
 
| license        = [[RWLPCL]]
 
| license        = [[RWLPCL]]
| download_link  = http://robowiki.kidsdev.org/robot/nat.nano.Ocnirp_1.5.jar
+
| download_link  = http://nat.robothai.net/robots/nat.nano.Ocnirp_1.61b.jar
 
| isOneOnOne      = true
 
| isOneOnOne      = true
 
| isMelee        = false
 
| isMelee        = false
Line 24: Line 24:
  
 
; What's special about it?
 
; What's special about it?
: It's my first competitive robot! (And it gone worse and worse now =()
+
: It's my first competitive robot!
  
 
; How competitive is it?
 
; How competitive is it?
<!-- : Best rank: 13th rank in NanoRumble
+
: Quite a bit.
: Overall: Around 13th - 15th place in NanoRumble -->
 
: Fairly. It was once the worst enemy of top 5 nanobots!
 
  
 
== Strategy ==
 
== Strategy ==
  
 
; How does it [[Movement|move]]?
 
; How does it [[Movement|move]]?
: It orbit an enemy (perpendicular movement) with some special direction-inverted!
+
: It orbits an enemy (perpendicular movement), changes its direction if Math.random() exceed a constant value. Completely unpredictable, not even flat. The only bad things about this movement is its weakness against HOT.
  
 
; How does it fire?
 
; How does it fire?
: [[Pattern Matching|Pattern Matching]], although it's [[WeekendObsession]] one, it has some tweak, too.
+
: [[Pattern Matching|Pattern Matching]], base on [[WeekendObsession]].
  
 
; What does it save between rounds and matches?
 
; What does it save between rounds and matches?
: Pattern data between round, like [[WeekendObsession]].
+
: Pattern data between round.
  
 
== Additional Information ==
 
== Additional Information ==
Line 47: Line 45:
 
: Sure, it's [[RWLPCL]].
 
: Sure, it's [[RWLPCL]].
  
; Does it have any White Whales?  
+
; Does it have any [[White Whale]]s?  
 
: All nanobots from package mld, robar, simonton and nz =)
 
: All nanobots from package mld, robar, simonton and nz =)
 
:* [[Pugio]]
 
:* [[Pugio]]
Line 54: Line 52:
 
:* [[BlackWidow]]
 
:* [[BlackWidow]]
 
:* [[WeekendObsession]]
 
:* [[WeekendObsession]]
 +
: Also:
 +
:* [[Acero]]
  
 
; What's the next for this robot?
 
; What's the next for this robot?
: Tweak until I got crown. I have a ton of codesize left now (249 - 227 = 22 bytes!).
+
: Tweaks until I got crown.
  
 
; What other robot(s) is it based on?
 
; What other robot(s) is it based on?
:
+
: Gun is based on [[WeekendObsession]]; movement is fully mine.
:* Gun was first lift straight from [[WeekendObsession]], but being modified.
 
:* Distance Controller is a mix of thing between NZ's (Neophyte and Moebius) and Pugio (Robar's) with a tweak to match my need.
 
:* [[Velocity Trick]], which added in 1.4, inspire by [[Pugio]], not copying yet look almost the same but actually my one is the tweaked version of Velocity Trick commented out in [[OcnirpSNG]].
 
:* Hard-coded BFT in PM, which saves a lot of codesize, added in 1.4; when you have distance controller, was inspire by NZ's Neophyte.
 
:* BFT+2 thing are Moebius'; I figure out that this is useful when you control the distance closer than an enemy.
 
:* No setAdjustXXXForXXXTurn(true) is Robar's, although I've this thing for really long time (since NanoKitty) because it's really Performance Enhancing Bug.
 
  
 
== Funny Information ==
 
== Funny Information ==
: At first I try to create movement that move directly to enemy and orbit it when it come in 100px closer. That's version 0.2 when I stick [[WeekendObsession]] gun into it and I entered it to [[RoboRumble]]. Soon, I've found out that simple head-on targeting can hit at most of the time since it move directly toward enemy! and it take the lowest rank! Now, I re-design the movement system and start orbit an enemy immediately, plus some random direction swap and change it's direction when enemy fire. Now, in my test, it can beat almost top nano-bots but still get 13th place because it's movement can't trick [[FuessFactor Targeting|GF]] bot. And that the version 1.0. (I skipped to 1.0 because it's a really big changed.)
+
: At first I tried to create movement that move directly to enemy and orbit it when it come in 100px. That's version 0.2 when I stuck [[WeekendObsession]] gun into it and entered it to [[RoboRumble]]. Soon, I found out that simple head-on targeting can hit most of the time since it move directly toward enemy! And it take the lowest rank! Now, I re-designed the movement system to start orbit an enemy immediately, plus some random direction and change its direction when enemy fire. Now, in my test, it can beat almost every top nano-bots but still got only 13th place because it's movement can't trick [[GuessFactor Targeting|GF]] bot. And that the version 1.0. (I skipped to 1.0 because it's a really big change.)
  
 
: When I first enter RoboRumble, it has the highest APS score (when have only 10 battles). That is the time when [[Darkcanuck]] turn off bots-removing from his server so there are nat.nano.Ocnirp 1.0 at top position and nat.nano.Ocnirp 0.2 at bottom of table!
 
: When I first enter RoboRumble, it has the highest APS score (when have only 10 battles). That is the time when [[Darkcanuck]] turn off bots-removing from his server so there are nat.nano.Ocnirp 1.0 at top position and nat.nano.Ocnirp 0.2 at bottom of table!
Line 75: Line 69:
  
 
[[Category:NanoBots]]
 
[[Category:NanoBots]]
 +
[[Category:Bots]]

Latest revision as of 17:24, 13 September 2009

Ocnirp
Author(s) Nat
Extends AdvancedRobot
Targeting Pattern Matching
Movement Random Movement
Best Rating 1744.9 (13th)
Current Version 1.61b
Code Size 221
Code License RWLPCL
Download
Sub-pages:
Version History - Source Code

Background Information

What's special about it?
It's my first competitive robot!
How competitive is it?
Quite a bit.

Strategy

How does it move?
It orbits an enemy (perpendicular movement), changes its direction if Math.random() exceed a constant value. Completely unpredictable, not even flat. The only bad things about this movement is its weakness against HOT.
How does it fire?
Pattern Matching, base on WeekendObsession.
What does it save between rounds and matches?
Pattern data between round.

Additional Information

Can I use your code?
Sure, it's RWLPCL.
Does it have any White Whales?
All nanobots from package mld, robar, simonton and nz =)
Also:
What's the next for this robot?
Tweaks until I got crown.
What other robot(s) is it based on?
Gun is based on WeekendObsession; movement is fully mine.

Funny Information

At first I tried to create movement that move directly to enemy and orbit it when it come in 100px. That's version 0.2 when I stuck WeekendObsession gun into it and entered it to RoboRumble. Soon, I found out that simple head-on targeting can hit most of the time since it move directly toward enemy! And it take the lowest rank! Now, I re-designed the movement system to start orbit an enemy immediately, plus some random direction and change its direction when enemy fire. Now, in my test, it can beat almost every top nano-bots but still got only 13th place because it's movement can't trick GF bot. And that the version 1.0. (I skipped to 1.0 because it's a really big change.)
When I first enter RoboRumble, it has the highest APS score (when have only 10 battles). That is the time when Darkcanuck turn off bots-removing from his server so there are nat.nano.Ocnirp 1.0 at top position and nat.nano.Ocnirp 0.2 at bottom of table!