Bebop in Harlem eats Breakfast in Hell

Mmmm... What's cookin in the kitchen?

Moderator: Lucifer

Post Reply
User avatar
Phytotron
Formerly Oscilloscope
Posts: 5041
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

Bebop in Harlem eats Breakfast in Hell

Post by Phytotron »

Alright, there's already been mention of this, and the server's been up for a little while now, but here's the dedicated thread about it.

Gene and his ServerPharm is hosting gratis (appreciated!), and I am administrating, a new server called Bebop in Harlem.

No, it's not an exact clone of Breakfast in Hell. It's more an interpretive rendition. I began with the old BiH settings, then made some tweaks. More below.

Next, I should note that Lucifer has no direct or official or whatever involvement with this particular server, other than Breakfast in Hell being the basis for it—sort of like Breakfast of Champions was to the original BiH. This leads conveniently to the next point, which is that this server isn't necessarily under the banner/franchise/brand of being a "Breakfast server." That is, unless and until eggcozy comes along himself and says that it's in keeping with what he considers the essential "Breakfast" philosophy. Although, given this post, he may very well approve. But, if not, and/or if the relevant respective parties think it's time to just let all that rest in the past, I'm perfectly content letting this server (and Shrunkland) stand independently.
Last edited by Phytotron on Tue Dec 22, 2009 12:05 am, edited 3 times in total.

User avatar
Phytotron
Formerly Oscilloscope
Posts: 5041
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

PART II: Settings differences

Post by Phytotron »

Now, to the subject of the settings. I wanted to retain a lot of the old BiH experience, and what I considered its key points of fun and uniqueness, while at the same time blending and bringing it in line with some of my own preferences/philosophies—although I'm betting Lucifer would agree with most of it.

So, what sort of settings are the same?
• Arena size
• Cycle wall length
• Wall stay-up delay
• Explosion radius
• All speed and acceleration

As I described a few years ago in this post, I think the speed dynamic was one of the primary, essential characteristics that made it uniquely fun. Strange thing is it doesn't seem to have as much dynamic as it used to, in particular in the area of deceleration. I might adjust that a little. Or maybe not.

I also retained the basic scoring system. However, one thing I changed is I made it entirely a timed match. The round and score limits are both 52 (as in 52nd Street; har), which are unlikely to be met within the time limit. Presently, the time limit is 13 :twisted:.


What's different?

NOTE: Not all that follows is set in stone at the time of this writing. These are as much conceptual descriptions as they are a list of actual config values, which are subject to further refinement.

• CYCLE_DELAY 0.1. Do I even need to explain why?

The rest, besides some superficial thematic things, is mostly rubber settings. In terms of actual gameplay, however, they're not really as different from the old feel as they may first appear.

As a principle, I wanted to minimise the effect of rubber as a gameplay mechanic, including the "depth of grind" behaviour.

• CYCLE_RUBBER 1. This isn't actually as harsh as it may seem to some of you, for two key reasons:

• _RUBBER_TIME 1. Now, there may be some technical logic behind the default being 10, but to me, from a playing perspective, rubber that needs to "restore" over time and be managed absolutely screams gameplay mechanic. This way, it recovers almost immediately (unfortunately, making it <1 seems to cause some messed up sticking behaviour, or else I would).

• _RUBBER_TIMEBASED 1, with the idea of leveling it out regardless of speed. Here, I know the usual logic is that a faster cycle shouldn't be able to sit as long on a wall because of the distance that it would have traveled had it not hit that wall, but again, to me that ends with rubber as a game feature. The other thing is that somewhere between 0.5-1 (but no more!) tends to feel more like the pre-0.2.7.1 rubber. Thing is, I think TIMEBASED may be a liar. We could be misperceiving this, but I and others have noticed that it seems like even at just 1, there's a little more rubber at one's dispense as speed increases. That ain't right. So, it may end up somewhere more like 0.8.

Anyway, the desired effect (although not entirely realised :x ) of these three settings is that you get only a brief split-second to make contact with a wall, however it's roughly the same brief split-second regardless of how fast you're going or how long it has been since the last time you contacted a wall.

• CYCLE_RUBBER_MINDISTANCE settings. I'm presently debating whether to leave basic mindistance at the default BiH 0.01, or make it 0.001. We'll see. However, all the others I've zero'd out. This makes it harder to get behind a grind. It can be done, certainly, but it's harder.

• CYCLE_RUBBER_DELAY and _RUBBER_DELAY_BONUS. These are a couple of the most annoying settings and I'll probably continue to be working on them for some time. Problem is, they're way inconsistent and I can't get it to behave the way I intend. Basically, I want instant death upon 180ing or adjusting against a wall (should be _BONUS 0), but I want to determine the distance from which that occurs AND have that be consistent. Unfortunately and infuriatingly, it's not. Even at a static speed, sometimes distance n will kill, sometimes n*3 will kill. Or the reverse, or any combination where at one instance a 180-grind is penalised, and in another it's allowed. I don't get it.

Then, trying to make it consistent regardless of speed, while ideal, may be impossible. I thought of maybe making CYCLE_DELAY_TIMEBASED 0. My reasoning:

a) _RUBBER_DELAY is based on distance created by CYCLE_DELAY
b) CYCLE_DELAY_TIMEBASED 0 would make CYCLE_DELAY identical regardless of speed
c) therefore, _RUBBER_DELAY distance should also be equal regardless of speed

However, prohibitive problem with doing that is, one, it doesn't really seem to work. And two, it gives an obvious advantage to doublebinders who would be able to make as tight a 180 at high speed as at base low speed. And while I have my objections to doublebinding, I've compromised on the subject and won't employ DOUBLEBIND_TIME—that would just result in too much complaining (gonna have more than enough about the rubber) and too few users.

Sooo, I may be at an impasse on this behaviour and just have to settle on something, including possibly allowing the occasional single 180-grind/adjust. Lucifer said he liked the feel of nemo/dlh's In Limbo server, and I've tried those settings, but that server had a smaller CYCLE_DELAY (and more rubber), which results in different behaviour. We'll see. Like the current MOD says, it's a work in progress.
Last edited by Phytotron on Tue Dec 22, 2009 8:22 am, edited 3 times in total.

User avatar
sinewav
Graphic Artist
Posts: 6334
Joined: Wed Jan 23, 2008 3:37 am
Contact:

Re: Part I: Introduction: Bebop in Harlem

Post by sinewav »

I want to add that the rubber settings in this server are pretty amazing and it's clear that a lot of thought went into them. It's a bit of a head-trip when you see "1 rubber" on the screen but you're still able to get through complicated tunnels. It's rubber the way rubber should be used, in my opinion.

Also, the speed dynamics rule.

User avatar
Phytotron
Formerly Oscilloscope
Posts: 5041
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

Part III: Variations

Post by Phytotron »

Lastly, I think that once I'm sufficiently satisfied with the main Bebop in Harlem settings, I'm going to work on possibly having a few variations that I'll swap in out now and then.

1) Standard Bebop in Harlem as discussed thus far.

2) Bebop in Harlem teamplay. Lucifer used to randomly turn BiH into a team server, with teams of two. I want to do this as well. No zones or any of that crap, just regular last team standing.

3) An actual clone(ish) of Breakfast in Hell, without my tweaks. I'm as yet undecided on doing this. However, if I get enough requests from the right peoples, I may occasionally do it. Of course, it'll never be exactly like the old BiH since it's a different version of the server/client, but I'll try to get it close. Would still be titled Bebop in Harlem.

4) Like #1, but with basic respawn (no zone) and a single, timed round. Again, undecided, but I think I'll at least give it a try. However, from the config: "no server supports respawning yet." :?: If it's not as simple as just turning on those settings in the config, then maybe not.


Mind you, I'm talking about swapping out ("rotating") the settings of this single server for periods of time (a week, two weeks, a month? who knows). I'm not going to put up additional servers.
Last edited by Phytotron on Tue Dec 22, 2009 3:17 am, edited 1 time in total.

Concord
Reverse Outside Corner Grinder
Posts: 1661
Joined: Sun Oct 21, 2007 5:24 pm

Re: Bebop in Harlem eats Breakfast in Hell

Post by Concord »

It's nice to know there's a legit last man standing server out there.

User avatar
Phytotron
Formerly Oscilloscope
Posts: 5041
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

Re: Bebop in Harlem eats Breakfast in Hell

Post by Phytotron »

So, the departure from the original continues. I've changed up the speed settings a little bit, and with positive feedback (from players who matter, heh). And while they're different, I think they're still in keeping with the concept and feel of Breakfast in Hell, or at least as I experienced it. In some respects, the gameplay is closer to what the original BiH was like—having increased the CYCLE_DELAY to something normal (from 0.04 to 0.1) actually reduced some of the great speed dynamic, and this restores that. So, here are some of the recent changes:

SIZE_FACTOR -4
CYCLE_SPEED 6.5
CYCLE_SPEED_DECAY_ABOVE 0.2
CYCLE_ACCEL 42 :)
CYCLE_SPEED_MAX 8 (8*6.5=52 :))
CYCLE_ACCEL_SLINGSHOT 0.5
CYCLE_ACCEL_TUNNEL 0.5
(Considering I requested these last two configurations, I figured I had better implement them somewheres.)

And, of course, these are subject to change. Once we get migrated over to the new datacenter host dealio, I'll put together the team variation.

User avatar
Z-Man
God & Project Admin
Posts: 11426
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Re: Bebop in Harlem eats Breakfast in Hell

Post by Z-Man »

Post and direct replies removed at the request of the poster. Nothing to see here, move along, please...

User avatar
Lucifer
Project Developer & Local Moonshiner
Posts: 8610
Joined: Sun Aug 15, 2004 3:32 pm
Location: Republic of Texas
Contact:

Re: Bebop in Harlem eats Breakfast in Hell

Post by Lucifer »

Um, yeah, I think I mentioned it before. The BiH philosophy was basically "Highly competitive: small grid, fast cycles", and then when 0.2.7.1 I threw in "stop the stupid crap (silly knows what I mean)". So if you've got all that, you're keeping with the philosophy. :)

(This post relieves me of the odd feeling that I had something to say here, like blessing Phytotron's server, which I can't do since I haven't been there and besides lack appropriate spiritual credentials)
Image

Be the devil's own, Lucifer's my name.
- Iron Maiden

User avatar
sinewav
Graphic Artist
Posts: 6334
Joined: Wed Jan 23, 2008 3:37 am
Contact:

Re: Bebop in Harlem eats Breakfast in Hell

Post by sinewav »

Lucifer wrote:...and besides lack appropriate spiritual credentials.
:wink: Not for long right? I remember you wanting to start something up.

Post Reply