Page 1 of 1

Project: BCL

PostPosted: Fri Nov 01, 2013 10:28 am
by thread
So, I've hinted at this a few times on the IRC channel, but I am working on a special levelgen script. I figured its time I actually show a little bit of what it is about.
BCL was inspired by several things, most notably: bobdaduck's "DnD" level and the game "Team Fortress". As you would guess, BCL is a class system. While it does have some classic classes, I have also tried to add some more unique classes that take advantage of the BitFighter levelgen API.
But you probably want to know what these classes are, right? Well let me give you a small preview...

Sniper:
Image
Image
The sniper is exactly what you would expect... but that doesn't make it less awesome.

Cloak:
Image
Image
Cloaks use less energy than normal when cloaking, and automatically create a mine when uncloaking

Medic:
Image
Image
Medics are more than just a repair module. They can actually place repair items, but have no fighting ability.

Naturally, there are more than this, but I thought I'd share a little bit... But I would like to know, are there any other classes you would like to see? Comment and let me know!

Zap on.
Thread out.

Re: Project: BCL

PostPosted: Tue Nov 05, 2013 4:50 pm
by tazinator
Demolitions guy

Re: Project: BCL

PostPosted: Tue Nov 05, 2013 7:14 pm
by Quartz
You know I have a thought for Cloak. It might be difficult though.

Make energy decrease while cloaking inversely to how much you are moving around.

So basically, if you are staying still, you lose no energy cloaking, but if you are flying around you will lose energy and even more if you are boosting/traveling through a speed zone/whatever. You'd probably want to limit just how fast it can decrease at a certain point, but yeah.

Re: Project: BCL

PostPosted: Wed Nov 06, 2013 1:49 am
by watusimoto
It wouldn't really be very hard...

Re: Project: BCL

PostPosted: Fri Nov 08, 2013 3:05 pm
by thread
I could totally do that.
While I'm at it, I suppose I could show off another class!

Flame
Image
Image
The flame is similar to the pyro class in TF2, in that they have a high damage, short range weapon. Their "flame thrower" plus the fact that they have a shield makes them perfect for countering cloaks.

Re: Project: BCL

PostPosted: Fri Nov 08, 2013 3:23 pm
by tazinator
mmm..

But won't fire make lots of smoke which impacts your view? :lol:
Still keep it up. Looking forward. keep the previews coming

Re: Project: BCL

PostPosted: Fri Nov 08, 2013 5:51 pm
by thread
tazinator wrote:But won't fire make lots of smoke which impacts your view?
What do you mean? I'm not sure what you are saying. What smoke?

Re: Project: BCL

PostPosted: Fri Nov 08, 2013 7:22 pm
by Skybax
Energy weapons don't have smoke.

Re: Project: BCL

PostPosted: Fri Nov 08, 2013 8:36 pm
by tazinator
it was a joke, since you called it a flamethrower. My humor generally only works in person. Sux

Re: Project: BCL

PostPosted: Mon Nov 25, 2013 5:41 pm
by thread
Sorry I haven't been posting much. School really can keep a person busy...

While there has been some suggestions of adding the demo from TF2, I really don't want to make too many stereotype classes... So I hope this fills everyone's desire.

Shotgunner
Image
Image

The shotgunner is a kamikaze unit. They use triples as their weapon, then when something gets too close... boom! Their suicide bombs are so violent it can kill a full health turret. Best to steer clear of these opponents.

Re: Project: BCL

PostPosted: Thu Dec 19, 2013 10:59 am
by thread
Sorry, I haven't been posting much on this thread. I've been trying to write a bot that will run using the levelgen classes, but its turning out to be a beast of a project...
In other news, I now have six classes plus the base class ships start as before changing. I think that is all I'm going to add... I don't have time to take pictures of them all right now, but I can at least give you a list of what I got...

Medic
Tunneler
Shotgunner
Flame
Cloak
Sniper

The levelgen itself is complete, and I just need to finish the bot... :/

Re: Project: BCL

PostPosted: Thu Dec 19, 2013 1:05 pm
by sky_lark
Looking forward to it! Keep up the good work!

Re: Project: BCL

PostPosted: Fri Dec 20, 2013 1:19 pm
by thread
So at this point, I think the script is playable. If anyone is interested in trying it out, here's what's going down:

  • The traditional means of changing your loadout no longer works. Instead you have to...
  • Interface with the new class system by using team chat.
  • The basic command is "help" which will list the classes.
  • All classes are selected by typing their three letter code into the chat box. The levelgen will let you know if it understood your message.
  • Once a class is selected, visit a loadout zone to change.
  • Currently, bots do not work. I have put a few lines into the code that will remove any bots that try to join, so don't worry about it too much.

Now, if you want to try this out, you are free to do so, but please let me know you are testing it out. Also, let me know of any bugs or strange behavior you find. You can also let me know of other features you would want in BCL. Basically, I consider this to be in a beta stage.

--edit: this levelgen is intended to be able to plug into basically any level, so try it out on your levels too!

Re: Project: BCL

PostPosted: Wed Jan 01, 2014 1:54 pm
by Zapgamer
Why is it set flm? I keep spelling fml. XD

Re: Project: BCL

PostPosted: Wed Jan 01, 2014 2:58 pm
by Zapgamer
I want to change the projectile in the throwFire code but how do I do that? I am a experimenter and I must know.

  Code:
--flame
function throwFire(ship)
    if (ship:isModActive(Module.Shield))then
        local item = Projectile.new();
        local angle = ship:getAngle();
        local loc = ship:getPos();
        local dist = (.2*255);
        local flspeed = (.4*255);
        local angle_variance = (math.random()*(math.pi/3))-(math.pi/6);
        item:setPos(loc+point.new(dist*math.cos(angle),dist*math.sin(angle)));
        item:setVel(point.new(flspeed*math.cos(angle+angle_variance),flspeed*math.sin(angle+angle_variance)));
        bf:addItem(item);
        item:setTeam(ship:getTeamIndex());
        item:setOwner(ship:getPlayerInfo():getName());
        item = Projectile.new();
        angle_variance = (math.random()*(math.pi/3))-(math.pi/6);
        item:setPos(loc+point.new(dist*math.cos(angle),dist*math.sin(angle)));
        item:setVel(point.new(flspeed*math.cos(angle+angle_variance),flspeed*math.sin(angle+angle_variance)));
        bf:addItem(item);
        item:setTeam(ship:getTeamIndex());
        item:setOwner(ship:getPlayerInfo():getName());
        ship:setEnergy(ship:getEnergy()-.005);
    end
end
--end flame

Re: Project: BCL

PostPosted: Wed Jan 15, 2014 12:32 pm
by thread
Zapgamer wrote:Why is it set flm? I keep spelling fml. XD

flm stands for "flame" the 'l' comes before the 'm'.

as for modding the code, it depends on what you are trying to do...
  Code:
--flame
function throwFire(ship)
    if (ship:isModActive(Module.Shield))then
        local item = Projectile.new();
        local angle = ship:getAngle();
        local loc = ship:getPos();
        local dist = (.2*255);
        local flspeed = (.4*255);
        local angle_variance = (math.random()*(math.pi/3))-(math.pi/6);
        item:setPos(loc+point.new(dist*math.cos(angle),dist*math.sin(angle)));
        item:setVel(point.new(flspeed*math.cos(angle+angle_variance),flspeed*math.sin(angle+angle_variance)));
        bf:addItem(item);
        item:setTeam(ship:getTeamIndex());
        item:setOwner(ship:getPlayerInfo():getName());
        item = Projectile.new();
        angle_variance = (math.random()*(math.pi/3))-(math.pi/6);
        item:setPos(loc+point.new(dist*math.cos(angle),dist*math.sin(angle)));
        item:setVel(point.new(flspeed*math.cos(angle+angle_variance),flspeed*math.sin(angle+angle_variance)));
        bf:addItem(item);
        item:setTeam(ship:getTeamIndex());
        item:setOwner(ship:getPlayerInfo():getName());
        ship:setEnergy(ship:getEnergy()-.005);
    end
end
--end flame


item is saying that the bullet is a phaser item... I suppose you can make the Burst.new() or Mine.new() if you want O.o

angle is the angle the player is looking. I use this as the direction the center of the cone of fire is focused on.

loc is where the player is. I suppose modding this will cause the bullets to spew from somewhere else.

dist is how far from loc that the items spawn initially. (because if bullets spawned on you, it counts as a hit, so I needed to spawn them in front of the player)

flspeed is the speed at which the projectiles move.

angle_variance is how far from the center angle the bullet will move. this will be between plus or minus pi/3 by default.

after that I use item:setPos and item:setVel and actually create the item. yadda yadda...

Re: Project: BCL

PostPosted: Thu Jan 16, 2014 8:20 pm
by Santiago ZAP
THIS IS EPIC
By the way, I just got some suggestions here for 4 Classes:
DemoMan
Has a phaser weapon default, and Sensor + shield
Actuvating sensor will place a lineItem that only your team can see, this line item will spawn a burst when the shield is used ;D

Scout
Triple shot as his normal weapon, Using turbo costs less energy, When he uses all his energy no turbo, an energyitem will spawn, but it has a cooldown (5 seconds?)

Heavy
This guy only has a sensor, no phaser or something, when used sensor, A barrage of triple/turretShots will appear, Just like the pyro one, except its faster, flies a lot and its almost not accurate, his energy can only go half of the mex

engineer
Sensor, Phaser and a shield.
Using Sensor will use up all of your energy to build an auto-repairing turret with seekers, can only have one turret at time, Using your shield will create a core with 1 health, and all sides but one destroyed, that will spawn energyitems and healthitems to nearby allies every 5 seconds

Just an idea, but this is EPIC

Re: Project: BCL

PostPosted: Mon Feb 03, 2014 9:49 pm
by sky_lark
BCL is pretty fun! It took me a little while to figure out how it worked - namely, I didn't realize the modules shot the special weapons instead of the traditional left/right click - but it's really fun to play around with.

What do you think about a weapon that places mines in a rapid fashion? Useful for defense. Call it... the Seagull.

Re: Project: BCL

PostPosted: Fri Apr 04, 2014 9:11 pm
by Zapgamer
I made a modded version of BCL. The server is up for public beta testing every day or hour or so. Check it out, new classes, new everything.

Re: Project: BCL

PostPosted: Sat Jun 27, 2015 3:40 pm
by Zapgamer
Well uh... bump! Honestly thread just disappeared.

Re: Project: BCL

PostPosted: Mon Jun 29, 2015 9:20 am
by amgine
There needs to be Like a sword class bascily a class with a weapon that hits really slowly and at a close range but instant kills everything in range :)

Re: Project: BCL

PostPosted: Sun Jul 05, 2015 10:09 pm
by Zapgamer
I'll try and define that in the MBCL thing.

Re: Project: BCL

PostPosted: Mon Jul 06, 2015 9:39 am
by amgine
Power Classes are totally my thing :ugeek: