Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - G.K.

Pages: 1 ... 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 ... 663
241
Stock Showcases / Re: Somnium's Stock Showcase
« on: July 31, 2015, 03:28:46 PM »

242
Stock Showcases / Re: Geice's Stock Showcase
« on: July 31, 2015, 12:59:39 PM »
Real big fan of the wammer. With Pwn on how to improve it.

243
Tournament Archives / Re: SUPER DUPER BATTLERBOTS 3000!
« on: July 31, 2015, 12:58:19 PM »
Yeah, he did indeed.

244
DP, because this contains new info and I don't want anyone who's seen the previous post to miss it.

I've run like 40-50 fights in the Twiiisted Arena and while I'm no closer to solving the current issues I have narrowed down when they happen.

- When hazards are on everything runs fine, I think. I only ran about 15 fights with hazards on though so I guess there could be occasional bugs I've not seen.
- When hazards are off the fights seem to be running fine, until a bot is dealt the amount of damage that would result in a flame with hazards on. Instead of flame, the game crashes at this point.
- When hazards are off and a fight does finish, sometimes hopp_club.wav (The fight result music) will glitchily continue to play after I leave the battle, as described in the OP, though this happens less often than it did before. The version of RA2 I'm running this in ATM doesn't have your action cam, Trov, so it's nothing to do with that.

I had a look in the BBEANS Arena 2 to try and compare with its flame coding but it appears to be coded slightly differently so I'm lost. As I see it there are 5 options.

1 - Fix the issue while maintaining my current flame code - but I don't know how.
2 - Leave it as it was before I added 'if self.bHazardsOn:' and write a note in the arena description saying 'Do Not Play with Hazards Off'.
3 - Take out all the flame code and paste in the BBEANS code, and see if that all works.
4 - Just remove the flame code - it's not there to do damage, only for the visuals, so it's essentially nothing but pretty lag. Even if I need it for filming, I see less of a need for the arena's general re-release in an updated BTTB AI.
5 - Move the flame code in the .py so it isn't only enabled when hazards are on. No idea where to move it too though, ideas would be appreciated.

I'll give both #3 and #5 a shot later today, but if ultimately I cannot fix it through those or #1 I'm stuck as to which option of #2 and #4 I'm going to run with.

For reference, the .py in its current state, which is a bit different from before as I had to build it again to get the arena introduction to work:

Code: [Select]
from __future__ import generators
import plus
import Arenas
import Hazards
import random
import math

from random import randint
import time
import HazardsBlueRay
import string
import Gooey

class BoxArena(Arenas.SuperArena):
    "The official arena for all BTTB tournaments."
    name = "Twiiisted Arena"
    preview = "twisted/twi_preview.bmp"
    game_types = ['DEATHMATCH', 'BATTLE ROYAL', 'TEAM MATCH']

    def __init__(self):
        Arenas.SuperArena.__init__(self, "Arenas/twisted/twisted_L.gmf")
        plus.setBackColor(0, 0, 0)
       
        degrad = 0.01745
        self.AddStaticCamera("Main View", (0, 30, -20), (68*degrad,0), 55*degrad)
        self.AddStaticCamera("Battle View", (19.5, 25, 19.5), (56*degrad,225*degrad), 40*degrad)
        self.AddStaticCamera("High Flipper View", (-19.5, 45, -19.5), (48*degrad,45*degrad), 84*degrad)
        self.AddStaticCamera("Birds Eye View", (0, 45, 0), (90*degrad,0), 50*degrad)

        self.AddWatchCamera("Combat Cam", (-12, 8, 12), (16, 36, 65*degrad, 30*degrad))
        self.AddWatchCamera("Aerial Cam", (-19.5, 35, -19.5), (50, 60, 45*degrad, 60*degrad))
        self.AddWatchCamera("Ground Cam", (8, -5, -8), (15, 40, 75*degrad, 35*degrad))
        self.AddWatchCamera("Spectator Cam", (13, 15, 13), (6, 18, 45*degrad, 45*degrad))

        self.players = ()

        ##################  Bot Flames + Smoke  ##################-------------
        self.RI_1 = 0
        self.RI_2 = 0
        self.RI_3 = 0
        self.RI_4 = 0
        self.RI_5 = 0
        self.RI_6 = 0
        self.RI_7 = 0
        self.RI_8 = 0
        self.RI_9 = 0
        self.RI_D = 0
        self.RI_Y = 0
        self.RI_SandF_0 = random.randint(-4, 4)   ### Random Smoke and Flames
        self.RI_SandF_1 = random.randint(-4, 4)   ### Random Smoke and Flames
        self.RI_SandF_2 = random.randint(-4, 4)   ### Random Smoke and Flames
        self.RI_SandF_3 = random.randint(-4, 4)   ### Random Smoke and Flames

        ##################  Bot Flames + Smoke  ##################-------------
       
    def AddShadowReceivers(self):
#Shadow Light Sources
        self.SetShadowSource(5.897, 19.159, 5.899)

    def Activate(self, on):
        if on: self.players = plus.getPlayers()
        return Arenas.SuperArena.Activate(self, on)
 
    def HazardsOn(self, on):
        if on:
            ##################  Bot Flames + Smoke  ##################-------------
            self.BOT_Flame_0 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            self.AddHazard(self.BOT_Flame_0)                                                                   
            self.BOT_Flame_1 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            self.AddHazard(self.BOT_Flame_1)                                                                   
            self.BOT_Flame_2 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            self.AddHazard(self.BOT_Flame_2)                                                                   
            self.BOT_Flame_3 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            self.AddHazard(self.BOT_Flame_3)
            self.BOT_Flame_4 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            self.AddHazard(self.BOT_Flame_4)                                                                   
            #self.BOT_Flame_5 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            #self.AddHazard(self.BOT_Flame_5)
            #self.BOT_Flame_6 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            #self.AddHazard(self.BOT_Flame_6)
            #self.BOT_Flame_7 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            #self.AddHazard(self.BOT_Flame_7)
            #self.BOT_Flame_8 = HazardsBlueRay.BotFlame((0, 0, 0), (0, 1, 0), (.2, .4, .2), .8)
            #self.AddHazard(self.BOT_Flame_8)           

            ##################  Bot Flames + Smoke  ##################-------------


        return Arenas.SuperArena.HazardsOn(self, on)
 
    def Introduction(self):
        sounds = self.intro_sounds
       
        # set initial camera & fade from black
        plus.setCameraPosition(23.7554,14.3743,-47.141)
        plus.setCameraRotation(0.266024,-0.472956)
        plus.setCameraFOV(0.675)
        plus.fadeFromBlack(.25)

        #start playing music loop
        self.intro_music = plus.createSound("Sounds/intro_music/aggression.wav", False, (0,0,0))
        plus.setVolume(self.intro_music, 0, 0)
        plus.loopSound(self.intro_music)
        yield .25
       
        #load all sounds now to decrease lag later
        sounds['crowd'] = plus.createSound("Sounds/crowd/LoudCheer_Loop.wav", False, (0,0,0))
       
        arenaOpt = ("Sounds/announcers/Twisted_WinnersIntroduction.wav", "Sounds/announcers/Twisted_WinnersIntroduction.wav")
        sounds['arena'] = plus.createSound(random.choice(arenaOpt), False, (0,0,0))
        genericOpt = ("Twisted_StuckArenaFloor.wav", "Twisted_LegalDisclaimer.wav", "Twisted_LowLag.wav")
        sounds['generic'] = plus.createSound("Sounds/announcers/"+random.choice(genericOpt), False, (0,0,0))
        hazardOpt = ("Sounds/announcers/Twisted_EliminationCorners.wav", "Sounds/announcers/Twisted_EliminationCorners.wav")
        sounds['hazards'] = plus.createSound(random.choice(hazardOpt), False, (0,0,0))
        botOpt = ("Twisted_CrowdArmed.wav", "Twisted_CrowdArmed.wav")
        sounds['bots'] = plus.createSound("Sounds/announcers/"+random.choice(botOpt), False, (0,0,0))
       
        #intro cam, welcom comment
        plus.playSound(sounds['arena'])
        plus.fadeInToLoop(sounds['crowd'], -100, 800)
        plus.animateCamera((23.7554,14.3743,-47.141), (0.266024,-0.472956), 0.675, (30.3992,6.28651,8.97787), (0.193915,-1.86089), 0.675, 0, 8)
        yield 3
        plus.fadeOutLoop(sounds['crowd'], 8000)
        yield 1
       
        #play a generic (or specific) secondary comment
        plus.playSound(sounds['generic'])
        yield 6
       
        #hazard cams
        if self.bHazardsOn:
            plus.playSound(sounds['hazards'])
            plus.animateCamera((8.6126,4.07693,2.09747), (0.416206,-2.1045), 0.8862, (8.6126,4.07693,2.09747), (0.416206,-2.1045), 0.3162, 1, 1.5)
            yield 6

        players = plus.getPlayers()
        pcount = len(players)
        if pcount>0: plus.playSound(sounds['bots'])
        delaytime = 6 - pcount
       
        if 0 in players:
            self.BOT_0 = True
            #bot 1 cam
            plus.animateCamera((-8,6,-8), (0.8,0), 0.8, (-1,1,1), (0.525,-2), 0.8, 0, 6)
            yield 3
           
        if 1 in players:
            self.BOT_1 = True
            #bot 2 cam
            plus.animateCamera((8,6,8), (0.8,3.14159), 0.8, (1,1,-1), (0.525,1.143), 0.8, 0, 6)
            yield 3
           
        if 2 in players:
            self.BOT_2 = True
            #bot 3 cam
            plus.animateCamera((8,6,-8), (0.8,-1.57), 0.8, (-1,1,-1), (0.525,-3.569), 0.8, 0, 6)
            yield 3
           
        if 3 in players:
            self.BOT_3 = True
            #bot 4 cam
            plus.animateCamera((-8,6,8), (0.8,1.57), 0.8, (1,1,1), (0.525,-0.427), 0.8, 0, 6)
            yield 3
           
        #fade out music
        plus.fadeOutLoop(self.intro_music, 2000)
        yield 1
       
        # done
        yield 0
       
       
    def Tick(self):
        for each in self.players:
            if plus.getLocation(each)[1] < -10: # Adjust this parameter to floor height(s).
                plus.eliminatePlayer(each)

        ##################  Bot Flames + Smoke  ##################-------------
        self.RI_0 = randint(-4, 4)
        self.RI_1 = randint(-4, 4)
        self.RI_2 = randint(-4, 4)
        self.RI_3 = randint(-2, 2)
        self.RI_4 = randint(-2, 2)
        self.RI_5 = randint(-2, 2)
        self.RI_6 = randint(-2, 2)
        self.RI_7 = randint(-2, 2)
        self.RI_8 = randint(-2, 2)
        self.RI_9 = randint(-2, 2)
        self.RI_D = randint(1, 4)
        self.RI_Y = randint(0, 2)

        if self.bHazardsOn:
            self.BOT_Flame_0.Tick()  # Individual bot flames
            self.BOT_Flame_1.Tick()  # ""
            self.BOT_Flame_2.Tick()  # "" 
            self.BOT_Flame_3.Tick()  # "" 
        #self.BOT_Flame_4.Tick()  # Generic Lightning striking bot_flame.
        #self.BOT_Flame_5.Tick() 
        #self.BOT_Flame_6.Tick() 
        #self.BOT_Flame_7.Tick() 
        #self.BOT_Flame_8.Tick() 

        if 0 in self.players:
            if plus.getHealth(0,0) < 0.2:  #
                if self.RI_SandF_0  <= 2:
                    plus.emitSmoke(1, (plus.getLocation(0)), (self.RI_3, 1 ,self.RI_4), (.2,.4,.2))
            if plus.getHealth(0,0) < 0.1:  #
                if self.RI_SandF_0  < 0:
                    plus.emitSmoke(1,   (plus.getLocation(0)), (self.RI_4, self.RI_Y, self.RI_5), (.2,.4,.2))
                    self.BOT_Flame_0.BotFlameOff()   
                    self.BOT_Flame_0 = HazardsBlueRay.BotFlame(plus.getLocation(0), (self.RI_4, self.RI_Y, self.RI_5), (.2, .4, .2), .8)
                    self.BOT_Flame_0.BotFlameOn()

        if 1 in self.players:
            if plus.getHealth(1,0) < 0.2:  #
                if self.RI_SandF_1  <= 2:
                    plus.emitSmoke(1, (plus.getLocation(1)), (self.RI_4, 1 ,self.RI_5), (.2,.4,.2))
            if plus.getHealth(1,0) < 0.1:  #
                if self.RI_SandF_1  < 20:
                    plus.emitSmoke(1,   (plus.getLocation(1)), (self.RI_5, self.RI_Y, self.RI_6), (.2,.4,.2))
                    self.BOT_Flame_1.BotFlameOff()   
                    self.BOT_Flame_1 = HazardsBlueRay.BotFlame(plus.getLocation(1), (self.RI_5, self.RI_Y, self.RI_6), (.2, .4, .2), .8)
                    self.BOT_Flame_1.BotFlameOn()

        if 2 in self.players:
            if plus.getHealth(2,0) < 0.2:  #
                if self.RI_SandF_2  <= 2:
                    plus.emitSmoke(1, (plus.getLocation(2)), (self.RI_5, 1 ,self.RI_6), (.2,.4,.2))
            if plus.getHealth(2,0) < 0.1:  #
                if self.RI_SandF_2  < 0:
                    plus.emitSmoke(1,   (plus.getLocation(2)), (self.RI_6, self.RI_Y ,self.RI_7), (.2,.4,.2))
                    self.BOT_Flame_2.BotFlameOff()   
                    self.BOT_Flame_2 = HazardsBlueRay.BotFlame(plus.getLocation(2), (self.RI_6, self.RI_Y, self.RI_7), (.2, .4, .2), .8)
                    self.BOT_Flame_2.BotFlameOn()

        if 3 in self.players:
            if plus.getHealth(3,0) < 0.2:  #
                if self.RI_SandF_3  <= 2:
                    plus.emitSmoke(1, (plus.getLocation(3)), (self.RI_6, 1 ,self.RI_7), (.2,.4,.2))
            if plus.getHealth(3,0) < 0.1:  #
                if self.RI_SandF_3  < 0:
                    plus.emitSmoke(1,   (plus.getLocation(3)), (self.RI_8, self.RI_Y, self.RI_9), (.2,.4,.2))
                    self.BOT_Flame_3.BotFlameOff()   
                    self.BOT_Flame_3 = HazardsBlueRay.BotFlame(plus.getLocation(3), (self.RI_8, self.RI_Y, self.RI_9), (.2, .4, .2), .8)
                    self.BOT_Flame_3.BotFlameOn()

        ##################  Bot Flames + Smoke  ##################-------------

        return Arenas.SuperArena.Tick(self)


           
        return True

Arenas.register(BoxArena)

245
Stock Showcases / Re: Mr AS Stock Showcase
« on: July 31, 2015, 09:29:45 AM »
Cool bots.

Welp, my VS + flipper didn't even face sage in the brackets. But the flipper on it sucked, so I make it into a VS + popup hybrid instead.

(Image removed from quote.)

Still has DSA. Wedges up front are the same.
Pleased to hear it has more synergy. The flipper just kept getting in the way of the VS before I changed its AI.

BW popup.
(Image removed from quote.)
(Image removed from quote.)
Plastic.

I like this, already inspired me to build something. Does the shallowness make up for the lack of speed?

MW popup also a ripoff of GK's bot
(Image removed from quote.)
(Image removed from quote.)
6 razors, DSA.

Heh, very cool. How does it fare against HS?

MW Flipbot. Has some cool BA+snapper stacks on it.
(Image removed from quote.)
(Image removed from quote.)

Plastic. It flips.

Really big fan of your weapon system here, and I can't think of a time where I've seen one like it.

246
I see, this makes sense.

And would you believe it, the addition of one line and a small indentation change now means the arena doesn't crash at startup if hazards are not selected.

You're the best, Trov! :)

EDIT - eek - Now sometimes the music problem comes back and sometimes it just crashes midgame when hazards are off :S. I'm going to test a bunch more to try and isolate the problem.

247
General Support / Re: Custom Introduction Camera Angles
« on: July 31, 2015, 03:27:37 AM »
This is exactly what I'm after, thank you very much Trov.

248
Modifications / Re: RA2: Ironforge - V1.1 PATCH RELEASED
« on: July 31, 2015, 03:19:54 AM »
Yeah, paste it into your RA2 folder and allow everything to overwrite.

Make a backup of the Components folder before you do it, and check everything still works.

249
Tournament Archives / Re: BTTB V - Splash, Brackets & Videos
« on: July 30, 2015, 07:53:25 PM »
No, I meant Wheely Tag, not BTTB 3.

250
Tournament Archives / Re: BTTB V - Splash, Brackets & Videos
« on: July 30, 2015, 07:49:08 PM »


251
Tournament Archives / Re: BTTB V - Splash, Brackets & Videos
« on: July 30, 2015, 06:15:36 PM »
DP:

LB Final is up! And it's good.


252
Tournament Archives / Re: Ironclash - Discussion
« on: July 30, 2015, 03:02:26 PM »
Yeah elbite's another good shout (Though I wish to indicate my support is still fully behind bahamas :P)

253
Tournament Archives / Re: Ironclash - Discussion
« on: July 30, 2015, 02:30:12 PM »
Kenzorg was another I thought of. Cool arena.

254
General Support / Custom Introduction Camera Angles
« on: July 30, 2015, 11:43:20 AM »


Hi,

I'm creating a custom arena introduction for the Twiisted Arena, based off the introductions to the Combat Arena and BBEANS, but as it is of different dimensions to those arenas I'd like to change the camera angles. I could spend absolutely ages trying to fix it all by trial and error but if anyone could let me know what each value meant - as far as I know they could be coordinates/angle/time/speed something else I'd save me a lot of hassle.

An example line is below:

Code: [Select]
            plus.animateCamera((8.6126,4.07693,2.09747), (0.416206,-2.1045), 0.8862, (8.6126,4.07693,2.09747), (0.416206,-2.1045), 0.3162, 1, 1.5)
So there's 14 values there and I don't know what they might correspond to.

Thanks for any help,

GK

255
Tournament Archives / Re: Ironclash - Discussion
« on: July 30, 2015, 10:42:29 AM »
Throwing my weight behind The Bahamas arena - I think it should have a tourney. But at the end of the day I don't really mind too much. :)

256
Off-Topic Discussion / Re: The General Chatter Thread.
« on: July 30, 2015, 09:28:26 AM »
My new hard drive came today as well. Will be nice to be running on a competent machine again.

257
Chatterbox / Re: Something I thought I should tell you guys...
« on: July 29, 2015, 08:08:01 PM »
These are very cool

258
Tournament Archives / Re: BTTB V - Splash, Brackets & Videos
« on: July 29, 2015, 08:04:11 PM »
Oh hey, a reference to a BTTB Revamped. Heh. Nice touch.

Well, it's the reason I'm back on GTM, I've got to acknowledge it somehow. Would have liked to have made more but as it's a tourney with new bots there's not really scope for many references.

Also, slightly off topic, but did you change the status messages? It looks like the power section has gotten some change. That or I am seeing some weird things... again.

LOL I clearly filmed this in the wrong version of Stock. My combined RA2 copies must be over 20GB on this old home PC, so I resolved to condense it down a bit. Just have one copy of stock, merge all the robot designs folders and rotate the AI folders. As it would be a personal version of stock I've started a personal UI as well - I created a cementbackground like the BBEANS AI one except it just features my stock bots that have defined the 6 years I've played RA2. Most of these are showcased bots or tourney entries, except the popup and the HS in the square above the 3 BTTB bots, the BFE popup in the top centre square, and then my stupid flying SFTW thing/my current BOTM entry top left.

That's one of the only decent UI things I did though - most of it's plastering 'GK' all over the place, especially the credits. And yeah, the status thing has changed to this:  :mrgreen:  :mrgreen:  :mrgreen:



These matches should have been filmed in my Inf AI where the UI is normal, but it doesn't really matter.

259
Tournament Archives / Re: General Tournament Discussion
« on: July 29, 2015, 06:39:25 PM »
I reckon a tie is unlikely though - as long as the LW's could be KO'd, different HW's would finish them off at slightly different times. My worry is that a tournament of near-indestructable bricks being slowly killed will not be exciting for people, least of all you, and a tourney is so much more rewarding for the host if it's fun. I've had a blast doing BTTB V, for example.

260
Tournament Archives / Re: BTTB V - Splash, Brackets & Videos
« on: July 29, 2015, 06:27:31 PM »
Next 2 bonus videos are up!

First one contains 090901's 3 requested matches - TEH CLAW vs Shaver BX, Magnificent Mandrill vs Bloody Massacre and Clown Breath vs the byebot in the Small Arena. Lots of good fights in this one - 09's good at this matchup thing.

Second one - Cube Crusher vs Crush, then Somebody's BTTB 3 bot 0_o_0 which was also a spinner/hammer vs Crush, and as there were no more requests, an extra match I thought of myself. Naryar features.

As for the schedule for the rest of the tourney...

- Tomorrow - LB Final
- Friday - Last set of extra videos (Rebuild Rumble)
- Saturday - Grand Final and Rumbles (Yep, Rumbles. Doing a champions' rumble with Nuclear Fallout, Grade-4 Whiplash and the BTTB V champ)

Pages: 1 ... 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 ... 663