Author Topic: S.O.W.  (Read 10865 times)

Offline Madiaba

S.O.W.
« on: February 08, 2009, 12:50:07 PM »
This is a new tweak that is kosher for Stock and DSL Tourneys. And it can give an advantage to bots if constucted well.
It is called "Servo Oriented Weapons" or S.O.W.
This is where your weapons system(s) are attached to a servo motor, which is coded to turn your weapons so that they are always oriented toward your opponent,.. no matter which way your bot is facing. So ideally you no longer have a vulnerable back or sides, since the weapons will confront the enemy constantly.
The coding is based off of Apanx's work on servo angles. It has been revised to work in this application.
Several other User options I've coded into my AI.py version are things like: weapons firing control, sequential weapons firing (machinegun, rapid multiple pistons firing...), SmartZone or Location triggering, special SRM, and anti-immobility features.
Phil took this work and has modded it some, but I haven't looked through it yet to see what cool things he came up with.
There are some pros and cons concerning this appraoch, which will be enumerated later.
A note for coders about Servo orientation control itself: SZ's can be used to control the servo, NP. But controlling the servo through python 'servoangle' is both more consistant and precise. Also, SZ Controller commands will over-ride python coded commands, if the 2 were ever in conflict.
 
I'll post some of my bots, and Phil has some of his that he's been tweaking out.
 
...
« Last Edit: February 08, 2009, 07:44:36 PM by Madiaba »
Input is appreciated. :)
-Arrogance is a quantity devoid of quality...
-As a client once told me "This is my story, and it's sticking to me!"
-Relationships these days are like the 'Arrival' section of the airport: a lot of baggage is being revealed in one place, and not a lot of it is being correlated to its real owners...

Offline Madiaba

S.O.W.
« Reply #1 on: February 08, 2009, 07:14:10 PM »
Here is a basic bot I built as a test-bot for this SOW tactic. The weapons are mounted to a Servo motor that is always directing the weapons toward the opponent in any direction. Outside and inside shots:

 
-----------------------------------------------------------
-----------------------------------------------------------

 
 
 
Some of Phil's experimental SOW bots:
 
and the last bot of this team is Felix the cat.
Not a killer, but an innovative bot with a AI that control a servo motor (will be soon delivered in the corresponding thread).
 
I will deliver this team to Nayar.

 

-----------------------------------------------------------
-----------------------------------------------------------

 
 
 
This will be one of the HW bot of this team.
I have to make it more compact, relook it, certainly rename it, but it looks promising .
It uses the 'SpinServo AI' which drives the servo motor.
 

 
Next post will show it finalized.
-----------------------------------------------------------
-----------------------------------------------------------

 
 
 
Here is the reshaped "Drowned" renamed as "poison of Maatet" (one of the scorpion guard of goddess Isis)
 

 
SpinServo Ai : 2 custom zones are defined. when an ennemy enter on of theses, the servo turns to face its weapons on the good direction. thus, if 'Poison of maatet' is taken apart from behind, better then turning its all chasis, it turns its weapon.
 
to learn more about this AI and others, see :
https://gametechmods.com/forums/showthread.php?t=1103
-----------------------------------------------------------
-----------------------------------------------------------
 
 
 
 
This is a LW version of a SpinServo Ai-ed Bot :

 
Armor is Plastic 1.
Trouble : it is not realistic : weapon goes through this big wheels.
Movie on the site in my signature
-----------------------------------------------------------
-----------------------------------------------------------

 
 
Madiaba:
Here are some vids of the bot I put together (pictured above) to give one of my ideas of how this AI tactic might be used, against some tuffer bots. It did not win all of it's battles, but it did win well over half (70-80%) of them against some well established good bots. So with a little more effort, a well/better built bot could be a contender. This one is called 'SkinHead' because it attacks from the top. But it could be a Face Spinner, Poker, Saw, HS,.. that is mounted to the Servo. Some vids of it in action:




 
 
...
« Last Edit: February 09, 2009, 12:39:39 AM by Madiaba »
Input is appreciated. :)
-Arrogance is a quantity devoid of quality...
-As a client once told me "This is my story, and it's sticking to me!"
-Relationships these days are like the 'Arrival' section of the airport: a lot of baggage is being revealed in one place, and not a lot of it is being correlated to its real owners...

Offline philetbabe

  • *
  • Posts: 497
  • Rep: 2
  • Drop D
    • View Profile
    • Awards
S.O.W.
« Reply #2 on: February 09, 2009, 03:12:02 AM »
I agree with Mad : this kind of AI-ed bot, in good builder hands (which i am not), may be dreadfull opponents, In RA2 more than DSL because of the 'realistic rules'.

For those who would like to investigate this field, here are a summary of previous post   :

1st : to know the Id of the servo motor (suppose you have only one) ; you can do this
in the activate function :
Code: [Select]
           while goon == 1:
                if i  == self.GetNumComponents(): break
                currentType =  self.GetComponentType(i)
                if currentType == "ServoMotor": self.Motor = i
                i = i+ 1


2nd /To know the angle made by
 - the servo motor current direction, our current position, the nearest ennemy position :
 
 
Code: [Select]
   def Tick(self):
        enemy, range = self.GetNearestEnemy()
        if enemy != None:
            enemyHead = self.GetHeadingToID(enemy, False)
            selfangle = self.GetMotorAngle(self.Motor)
            angleToMoveServo = ( enemyHead + selfangle)

 

 3rd/ servor motor must be link to analog control, suppose is it name 'Servo' here is an instance of use :
 
Code: [Select]
...
            needToTurnClock = ...
            if needToTurnClock : self.Input("Servo", 0, 30)
            else: self.Input("Servo", 0, -30)

 

 
 4th/ Angle go from 0 (heading) to math.pi, then -math.pi and than back to 0
 this mean that when a servo motor turns, its current angle may suddently go from a positive value (math.pi)
 to a negative one -math.pi.
 
 I hope all of this may help some of you and we could see valuable research results soon.

BTW : Please Mad, can you post the AI you used for this bot ?
PS : I'm surprised about the stability of you bot, so much weight so 'high' and still a good reaction against mako head-attack. development should not have been so easy, shouldn'd it ?

Offline Naryar

  • Posts: 23267
  • Rep: 20
  • hybrids oui oui
    • http://www.youtube.com/us
  • Awards BOTM Winner
    • View Profile
    • Awards
  • Skype: TheMightyNaryar
S.O.W.
« Reply #3 on: February 09, 2009, 06:34:00 AM »
I am extremely surprised about your bot being able to beat Mako 4 with absolutely no wedges.

obZen isn't much of a challenge with just several razors.

Both of Shebeast and TuNiT 3 have exposed tops -> easy battles.

IMO this could beat InfCon too.

Yeah, i'd update the team gladly.

Offline philetbabe

  • *
  • Posts: 497
  • Rep: 2
  • Drop D
    • View Profile
    • Awards
S.O.W.
« Reply #4 on: February 10, 2009, 07:09:11 AM »
These are 2 bad servo Bots :


the first one has stability problem, the second one have have too heavy weapons attached to the servo compared to its small wheel : when i turn the servo -> it is the chassis that move !

designing those bots is not so easy :-(

Offline Gigafrost

  • *
  • Posts: 805
  • Rep: 0
  • You'll never know what I'll think of next.
    • View Profile
    • Awards
S.O.W.
« Reply #5 on: February 10, 2009, 07:45:27 AM »
Possibility for a new Tazbot replica?

Offline Naryar

  • Posts: 23267
  • Rep: 20
  • hybrids oui oui
    • http://www.youtube.com/us
  • Awards BOTM Winner
    • View Profile
    • Awards
  • Skype: TheMightyNaryar
S.O.W.
« Reply #6 on: February 10, 2009, 08:09:48 AM »
Now THIS is a good idea.

Offline Madiaba

S.O.W.
« Reply #7 on: February 10, 2009, 09:35:50 AM »
Phil:
Quote
BTW : Please Mad, can you post the AI you used for this bot?
I will.[/COLOR]
 
Gig: Nice thought.
 
Phil:
Quote
PS : I'm surprised about the stability of you bot, so much weight so 'high' and still a good reaction against mako head-attack.
It has a unique SRM tactic, that includes User-adjustable settings. I'll show you.[/COLOR]
 
Nar: This tactic: One huge advantage of an HS is that it's weapon(s) are efficient 360 degrees. This tactic facilitates the same peripheral advantage, while enabling other kinds of weapons to be used.
Nar: This bot: bot: SkinHead's particular weakness is its supporting arm that holds the weapons in place. If an opponent can get to it, it is it's achilles' heal. SkinHead could be tweaked to be better, for sure. As Phil said, with some thought and time a good builder could probably make an effective bot with this tactic. I appreciate your help with making this practical and User-friendly.
 
Phil: I was thinking of making/adding some coding that would enable the bot to see if another bot is under it, and then activate either a servo-ed weapon or SRM to direct weapons to under it's chassis onto the opponents. I was thinking of a combo of getLocation(Z and X) to see if the 2 bots are at the same location, and then getLocation(y) of both bots to see who is under whom; and then do what needs done...
Input is appreciated. :)
-Arrogance is a quantity devoid of quality...
-As a client once told me "This is my story, and it's sticking to me!"
-Relationships these days are like the 'Arrival' section of the airport: a lot of baggage is being revealed in one place, and not a lot of it is being correlated to its real owners...

Offline philetbabe

  • *
  • Posts: 497
  • Rep: 2
  • Drop D
    • View Profile
    • Awards
S.O.W.
« Reply #8 on: February 10, 2009, 09:52:38 AM »
Quote from: Madiaba;28515
I was thinking of a combo of getLocation(Z and X) to see if the 2 bots are at the same location, and then getLocation(y) of both bots to see who is under whom; and then do what needs done...[/COLOR]

In this context, a custom zone should be a good solution ?


Quote from: Gigafrost;28512
Possibility for a new Tazbot replica?

here is a TazBot with a slightly modified version of laserGuided.py :
https://gametechmods.com/uploads/files/TazbotLG.rar
This bot has no custom zone.

(the file uploader seems to truncate the movie, so i made an archive 4 Mo)
« Last Edit: February 11, 2009, 02:09:21 AM by philetbabe »

Offline Somebody

  • *
  • Posts: 7201
  • Rep: 13
  • CP: +2
    • View Profile
    • Awards
S.O.W.
« Reply #9 on: February 10, 2009, 02:01:03 PM »
Phil, did you upload a vid or a bot?
I built that big robot on that TV show that time


Offline Naryar

  • Posts: 23267
  • Rep: 20
  • hybrids oui oui
    • http://www.youtube.com/us
  • Awards BOTM Winner
    • View Profile
    • Awards
  • Skype: TheMightyNaryar
S.O.W.
« Reply #10 on: February 10, 2009, 02:40:29 PM »
Well Mad i'm not sure about the efficiency of the razors you directly put on your extenders.

Plus with a drive that weak you may want to use something like 4-5 ant batteries rather than overpowering the bot with 2 battlepacks (more total power, see Daisy Might that got immobilized because of battery power).

EDIT: YEAH i'm in orange now! Awesome.

Offline Reier

  • Rieir
  • *
  • Posts: 8564
  • Rep: 8
  • I GOT 3RD IN RAW1
    • https://www.youtube.com/c
  • Awards old BOTM Winner
    • View Profile
    • Awards
S.O.W.
« Reply #11 on: February 10, 2009, 03:30:51 PM »
Mewannabeaorange

Making Tazbot use this would be a good idea, IMO.
« Last Edit: February 10, 2009, 08:40:10 PM by Reier »
ALERT- Another WS coming up...
voted best bot builder two times and counting babayy. the best ra2 builder who has never won an actual tournament match
ReiAI pack for Ironforge
My drawings, and my webcomics
Why online PVP will save RA2
The problem with competitive IRL in RA2
I'm fine with hugging reier

Offline DuckRA2

  • *
  • Posts: 1006
  • Rep: 1
    • View Profile
    • Awards
S.O.W.
« Reply #12 on: February 10, 2009, 05:22:13 PM »
wow, this could change the whole aspect of bot building

Offline philetbabe

  • *
  • Posts: 497
  • Rep: 2
  • Drop D
    • View Profile
    • Awards
S.O.W.
« Reply #13 on: February 11, 2009, 02:09:57 AM »
Quote from: Somebody;28527
Phil, did you upload a vid or a bot?


This is a movie, i will post the bot and its AI soon.

Offline Naryar

  • Posts: 23267
  • Rep: 20
  • hybrids oui oui
    • http://www.youtube.com/us
  • Awards BOTM Winner
    • View Profile
    • Awards
  • Skype: TheMightyNaryar
S.O.W.
« Reply #14 on: February 11, 2009, 02:54:55 AM »
I was looking at your Tazbot vid and it's pretty much awesome.

You could send it directly to Click for DSL3, but i think it should lift rather than flip (like Biohazard) and the bot's turnspeed should be higher (just like the real Tazbot)

Offline philetbabe

  • *
  • Posts: 497
  • Rep: 2
  • Drop D
    • View Profile
    • Awards
S.O.W.
« Reply #15 on: February 11, 2009, 04:03:38 AM »
TazBot and its ai can be download here :

Quote from: philetbabe;22760
...
https://gametechmods.com/uploads/files/tazbot.rar

i improve my previous bot :



Edited' : invert bug fixed.
« Last Edit: February 12, 2009, 06:55:33 AM by philetbabe »

Offline Madiaba

S.O.W.
« Reply #16 on: February 14, 2009, 07:09:26 PM »
Here is the AI.py that runs most of my SOW bots: Ici!:Top_Smasher_2R
Phil, (or anyone else,) if you see any places to improve it let me know.
 
I was going to include your 'goon' coding, but haven't had the time yet. If you want to do that and append the title '..._goon' or whatever that's fine with me. I'd like to differentiate between the 2 pys though, because I have several bots that have more than 1 servomotor on them.
 
Idea-1: I was actually thinking of coding an Army combat assault vehicle with 3 SOW-ed automatic cannons (ACAMS's M-guns), that would lock onto the other 3 opponents individually and open fire on each simultaneously. If/When one opponent was destroyed, then that gun would turn to assist another cannon in it's assault...and so on till all 3 were pummeling the last bot with automatic fire. What do you think?
 
Idea-2: I also had an idea of an ACAMS.bot that bears a SOW-ed, automatic M-gun in each arm. As soon as the buzzer sounds, he comes out of the corner with both guns blasting away...(Maybe call it "RAMBOt"... hehe).
 
Ok, Goose and I will take our pills and go sit down for a while....
[/COLOR][/SIZE][/U][/B]
..
Input is appreciated. :)
-Arrogance is a quantity devoid of quality...
-As a client once told me "This is my story, and it's sticking to me!"
-Relationships these days are like the 'Arrival' section of the airport: a lot of baggage is being revealed in one place, and not a lot of it is being correlated to its real owners...

Offline Condor33

  • Super Heavyweight
  • Posts: 903
  • Rep: 0
  • Alpha One
    • View Profile
    • Awards
S.O.W.
« Reply #17 on: February 14, 2009, 07:45:57 PM »
Idea 1 has some potential. You should try that one. Maybe someone could make a battleship-bot!
Avoid the beam and you won't get hit!

Clash Cubes 2 Grand Champion--Xenophobik Resurrektion
Winner of the RAW favorite bot award--Humdrums

Offline SpyGuy

  • *
  • Posts: 328
  • Rep: 0
    • View Profile
    • Awards
S.O.W.
« Reply #18 on: February 15, 2009, 12:28:06 AM »
Ideaa 2 sounds like fun.  Gonna put a cowboy hat on that Acams bot ......?  Maybe send me the skin so I can put a little red bandana over the lower half of the face?  May as well go for twin holsters on the sides, too ..... the "Bandido Bot"

. o O (I am going to be SO dead when Acams sees this ......)

Offline Clickbeetle

  • *
  • Posts: 3374
  • Rep: 21
  • In Soviet Russia, bugs stomp YOU!
  • Awards BOTM Winner
    • View Profile
    • Beetle Bros site
    • Awards
S.O.W.
« Reply #19 on: February 20, 2009, 08:57:45 PM »
All right if I use that Tazbot for DSL?  I've been intending to make its head rotate.

To lack feeling is to be dead, but to act on every feeling is to be a child.
-Brandon Sanderson, The Way of Kings