Last call for small featurelets for 0.2.8

What do you want to see in Armagetron soon? Any new feature ideas? Let's ponder these ground breaking ideas...
User avatar
Z-Man
God & Project Admin
Posts: 11253
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne, Jabber: [email protected]
Contact:

Last call for small featurelets for 0.2.8

Post by Z-Man »

With 0.2.8.2 out and 0.3.0 around the corner, it's time to freeze the 0.2.8 branch completely for anything else but real bugfixes. So, if you want a small polishing feature to be included, now is the time to say so.

Here's what I'd like:
- The score difference criterion for declaring a winner from the bug cries thread (apparently, people consider wins when teams are tied closely a bug).
- Adapting the kick statistics for autobans to whole subnets to better handle dynamic IP abusers; If a client comes from a subnet many kicks have been issued against, he'll inherit the kick statistics. He won't be banned right away, but when he gets kicked, he's banned for a while. (Relying on the fact that 80% of griefers on dynamic IP don't know they can change their IP by just logging out and in, or that they don't do that because it would interrupt their filesharing). This is a social bugfix.
- Non-normalized driving directions. This is actually a bug entry on SF.
- A gameplay feature from the movie :) I just watched it again and there is the one sequence where gold breaks away from blue's wall and overtakes blue even though gold has a longer way to drive. It would be neat if, by breaking away from a wall, you'd get a configurable amout of boost. This could be used to either faciliate or hinder speed kills, and give more interesting ways to get to speed. It'd be easy (for anyone but Luke) to talk me out of this and make me put it into the trunk instead.

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

Post by Lucifer »

Ok, for that last one, I'll try to talk you out of it if the following isn't true. :)

When you break away from a wall, the boost you get is reduced by your speed at break (configurable, of course). So shorter grinds give you more boost when you break (and doublegrinders lose their speed advantage when they break :) ).

I'd like to see ttf support backported and made a compile time option.

I'd also like to see the cockpit backported. If not that, maybe the hud map by itself. I don't know if the cockpit has had enough testing, but with the camera stuff finally getting implemented recently I think it'd add just the right shine to 0.2.8.

Edit: 1 more. :) Death at a certain speed. So if you go too fast, you die. This is kinda in anticipation of other stuff that's yet to come (if it shows up, that is), but stands on its own as a worthwhile feature, imo.
Image

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

User avatar
Z-Man
God & Project Admin
Posts: 11253
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne, Jabber: [email protected]
Contact:

Post by Z-Man »

Yes on the deadly speed. Engines can overload, watch out!

If we backport all that stuff, we'd have the complete trunk backported and 0.2.8.3 would be exactly like 0.3.1 :)
Specific objections: I suspect the ttf code relies on the std::string refactoring, as does the cockpit code.

The map would be fine, IIRC, it was developed independently of the cockpit.

And yes on your addition to the break boost. That wouldn't hurt. Although against Fortress DGers, their break may not be recognized as a break because at the time they turn, they're no longer grinding a wall. If you hate them so much, why not suggest
- finite cycle width: cycles get killed if they enter narrow tunnels (a feature request on SF originally postponed because my first attempt killed you when you began to grind)
Care has to be taken, there, that it doesn't kill everyone on a regular grind startup :)

User avatar
wrtlprnft
Reverse Outside Corner Grinder
Posts: 1679
Joined: Wed Jan 04, 2006 4:42 am
Location: 0x08048000
Contact:

Post by wrtlprnft »

z-man wrote:If we backport all that stuff, we'd have the complete trunk backported and 0.2.8.3 would be exactly like 0.3.1 :)
Specific objections: I suspect the ttf code relies on the std::string refactoring, as does the cockpit code.
True, I'm against backporting that. All code i wrote there uses std::string and tString functions, so there would be some parsing sections you'd need to rewrite.
The map would be fine, IIRC, it was developed independently of the cockpit.
That shoulc be easy to backport, just take an old version before I touched the HUD, there it was a separate function that got called as an rPerFrameTask.
There are a few fixes and rendering of winzones to backport though :P
There's no place like ::1

Luke-Jr
Dr Z Level
Posts: 2246
Joined: Sun Mar 20, 2005 4:03 pm
Location: IM: [email protected]

Post by Luke-Jr »

z-man's stuff was fine, but backporting major features (HUD map, etc)? We might as well just stick with revision numbers for releases, since nobody apparently wants to use meaningful version numbers...

User avatar
2020
Outside Corner Grinder
Posts: 1310
Joined: Thu Dec 29, 2005 9:21 pm
Location: the present, finally

Post by 2020 »

regarding the break-away acceleration idea wrt the film:
i suspect the characters in the film had some kind of influence of the speed
their will pushing their bikes on...
i think your solution
with acceleration tied to proximity to wall
is genius

leave it be

ps
on some servers
pressing the brake makes the bike accelerate...

still
if you want to play around with it...
go ahead

my wishlist:
change rubber to GRIND
so it indicates how many G's you are using...
kind of cool
hold the line

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

Post by Lucifer »

How about the auto-kick on whining about lag? Is that reasonably close? Who was working on it?
Image

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

User avatar
Z-Man
God & Project Admin
Posts: 11253
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne, Jabber: [email protected]
Contact:

Post by Z-Man »

Lucifer: you can do that in a bash script :)

2020: The boost is just an option, defaulting to zero of course. And the rubber name change is just not feasible. All the setting names would need to change (and there are a lot), there would need to be compatibility code. And I personally find Grind not a bit more intuitive a name than Rubber. (In general. For the MINDISTANCE settings, it has some appeal.)

The HUD map looks quite isolated even in the current Trunk. How would we place it in the old HUD? The whole bottom row is already filled by default. Put it big all over the center?

User avatar
Z-Man
God & Project Admin
Posts: 11253
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne, Jabber: [email protected]
Contact:

Post by Z-Man »

Oh yeah, one more thing. An idea for CPU load optimization:
Instead of heaving the server loop at a sem-fixed framerate, getting network updates and simulating all game objects at once in the loop, the server could use the following addition:
- instead of waiting with usleep(), wait with select() which is interrupted by incoming network data
- when cycle turn commands come in, simulate the affected cycle right to the turn, execute it, and send updates to the clients
This could severely reduce lag if the CPU is weak, because only the most minimal work is done on the server between receiving a turn and sending the updates out. I could reduce the load of my test servers (That doesn't matter during play, but on bug playback) by a factor of two or three with that and still increase their responsiveness.
Of course, regular simulations in absence of turn commands would still run at the semi-fixed rate.

User avatar
Z-Man
God & Project Admin
Posts: 11253
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne, Jabber: [email protected]
Contact:

Post by Z-Man »

Another one: Wrtl, what became of your experiments with different CYCLE_DELAY settings for turns in the same and opposite directions?

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

Post by Lucifer »

Heh, Documentation feature. Can we get the old position config items for the hud gauges documented?

/me puts it on his todo list.

If we just backport the map and not the whole cockpit, we should actually tell people they can configure their hud further anyway. Maybe some menu items for them?
Image

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

User avatar
Z-Man
God & Project Admin
Posts: 11253
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne, Jabber: [email protected]
Contact:

Post by Z-Man »

Menu items for floating point settings are difficult. The ones we have give you a finite choice of possibilities, and I guess that won't be appropriate for HUD placement. I won't say no if you come up with a solution, though.

User avatar
wrtlprnft
Reverse Outside Corner Grinder
Posts: 1679
Joined: Wed Jan 04, 2006 4:42 am
Location: 0x08048000
Contact:

Post by wrtlprnft »

z-man wrote:Another one: Wrtl, what became of your experiments with different CYCLE_DELAY settings for turns in the same and opposite directions?
Nothing yet, I looked it it but gave up due to the complexity of that code. I'll try again this weekend.
There's no place like ::1

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:

Post by Phytotron »

Yes, the speed cap. I've wanted that forever. I never understood why there's a CYCLE_SPEED_MIN but not a MAX. Blow 'em up.

It may be too late for this, but have you put any (more?) thought into changing CYCLE_ACCEL_SLINGSHOT so that it applies when between any two cycle walls (that is, it wouldn't be required that one be your own as it is now)?

A cycle that's not merely aesthetic, but has actual mass would be good. If it did, then no, it shouldn't be able to lay its tail right up against another wall. Instead, when approaching perpendicularly, the front wheel touches a wall*, the cycle turns, and the closest it can get is the side of its body grinding up against that other wall. That would leave a minimum gap between walls of at least half the width of the cycle itself (effectively the same as a grind/seal now, as no cycle would be able to pass between it), since the tail comes out of the middle of the cycle, right. Understandable description? My guess is that isn't doable at this point, but since it was mentioned....

* Unlike how it is now where, for some inexplicable reason, the cycle goes into the wall about the length of the front wheel.

Is it really very difficult to separate custom glance from the custom camera, so that a player can have a different, independent set of values for each?

Would something like the following be possible: "/admin msg ______"

And one last thing. Can the developers be wary of developing a one-track mind toward fortress mode, and remember that the "classic" game mode still has appeal to a lot of players and can still use attention?

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

Post by Lucifer »

I'd like actual mass myself, but to be honest I'm not sure I see mass by itself being useful in the 0.2.8 series. As for width, it's in testing on Fortress right now, go check it out. :)

I'm with silly on mass, though, and getting some sort of real cycle simulation going, so it has mass and volume (configurable, of course), and gravity and air can effect it. Gravity doesn't matter much right now because it's not possible to leave the floor, but air could make a difference, I'd like to see it added to the simulation in the trunk at some point. :)

Also, how useful would the /console command be in the 0.2.8 line? It would help silly to address his custom cam problem, even though it's not really a real solution.
Image

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

Post Reply