UDK Showcase: Hawken

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

hal

Dictator
Staff member
Nov 24, 1998
21,409
19
38
54
------->
www.beyondunreal.com
This came in along with news of the updated UDK build, but it looked too cool not to have its own space. Hawken is the latest UDK game to be showcased by Epic Games and one look at the pics and you can see why. That pic of the inside of the mech looking out has me practically salivating for a quality title of this sort.

Adhesive Games Art Director Khang Le says that with UDK "you get a console-ready engine that has been proven with bestselling released games. Within a month of starting Hawken, we were able to test out a prototype."
 

DannyMeister

UT3 Jailbreak Coder
Dec 11, 2002
1,275
1
38
40
Bolivar, Missouri
This has already been posted in some other threads (and linked in the UDK showcase page), but if you haven't seen it, check out the Hawken video from a few months back.

[M]http://www.youtube.com/watch?v=Zm7gEDhrPfk[/M]

Edit: Correction, this is a different video from the one linked on the UDK showcase page. Check them both out!
 
Last edited:

DannyMeister

UT3 Jailbreak Coder
Dec 11, 2002
1,275
1
38
40
Bolivar, Missouri
The chosen lag compensation techniques employed per UDK game should be a case-by-case choice by their developers, but it would be nice if it had some standard ones baked in. As it is now, there is nothing stopping developers from using lag compensation in UDK, and some I'm sure do. It's usually a matter of whether you do your traces from a client-side or server-side function. I'll take UT3's server-side detection (as much as that can hamper me in high ping servers) over Valve's warping bullets any day, though! :p
 

Sir_Brizz

Administrator
Staff member
Feb 3, 2000
26,020
83
48
You should just do full client side so that the hilarity of ZeroPing can ensue again.

1) Connect to server.
2) Pick up sniper rifle.
3) disconnect Ethernet.
4) run around and headshot everyone.
5) reconnect Ethernet.
6) M-M-M-M-MONSTER KILLL
 

elmuerte

Master of Science
Jan 25, 2000
1,936
0
36
42
the Netherlands
elmuerte.com
You should just do full client side so that the hilarity of ZeroPing can ensue again.

1) Connect to server.
2) Pick up sniper rifle.
3) disconnect Ethernet.
4) run around and headshot everyone.
5) reconnect Ethernet.
6) M-M-M-M-MONSTER KILLL

Actually, I didn't do it like that. My program simply acted as proxy between the client and server and delayed packets on demand. It was like stepping on a water hose.
Disconnecting the internet would be detected by the client and disconnect you from the server.
 
Valve's system isn't clientside, the server merely calculates what the client saw and if it would have hit anything then.

I'd rather have warping bullets than bullets that have to be fired at thin air for no real reason.

If it's per-game then maybe developers should be clued into it as I haven't seen a single UE3 game that actually does it. Meanwhile DNF has lag compensation.

It's especially bad on consoles where the games are usually hosted on connections that can't handle the playercount.
 

Spiney

New Member
Jun 12, 2010
187
0
0
Iirc Valve uses a timeframe in server time of where the character is, and where he was half a second earlier -- think of it as a motion blur trail.
That means even though you might have missed a shot in current server time, the system checks if you hit somewhere in a previous state.

This works fine most of the time. But in high ping environment this might cause you to get shot through corners. You are behind cover on your client, but on your opponent's client you weren't yet. If you opponent hit you on his client, due to the lag compensation on the server you might get shot 'through' a wall or occluder.

Battlefield 2 used a system like that, but it was badly tuned and player actually had to shoot just behind a player (into the trail) to hit him. Of course players complained, since this was just highly unrealistic and opposed to leading the bullets like in other games.

I believe Halo 3 uses a system where a snapshot is taken in client side of the shot, this is then used to correct any faulty server side decisions.

I read about all this a while ago, memory is a little hazy, so feel free to correct me :)
 

Bi()ha2arD

Toxic!
Jun 29, 2009
2,808
0
0
Germany
phobos.qml.net
Still better than battlefield that compensates for 100 ping by default. So the hitbox is BEHIND the player instead of infront if him or on him. HF getting shot after you went around the corner and hf shooting people in the face and not doing any damage.
 

Sir_Brizz

Administrator
Staff member
Feb 3, 2000
26,020
83
48
Iirc Valve uses a timeframe in server time of where the character is, and where he was half a second earlier -- think of it as a motion blur trail.
That means even though you might have missed a shot in current server time, the system checks if you hit somewhere in a previous state.
This is pretty much how all modern 'client side' netcodes work. Even newnet in UT2004 did it this way (with some flubbing). The challenge is getting a perfect balance. Valve's games are usually closer (although that is arguable in the case of CS/CSS), but I don't think anyone can find a real sweet spot.
 
I don't know two bits about what Valve does, but what you described is pretty much client side.

it's fake and ghey.

Client side would be the client doing the hit calculation and just telling the server "yep, I hit that dude." What Valve is doing is having the client tell the server "I shoot in direction XYZ" and the server deciding "according to what you saw that was a hit." The UE3 games just go "that's not where the enemy is NOW."

Client-side is exploitable, a hacked client could just tell the server "I hit dude X, dude Y and dude Z for good measure." With the other two a hacked client has to know the location of the enemy it's shooting at and cannot claim a hit when it's impossible to hit the target (e.g. when a wall is in the way, client-side would mean the server wouldn't even check that). You won't see client-side detection outside of C grade console games.

Shooting an enemy in the face and missing while shots at thin air hit is extremely lame. Messes with the weapon balance in many games (e.g. in Section 8 Prejudice most people rely on slow explosives or lock-on because manually aiming hitscan weapons at the proper lead position takes too much time, explosives have a visible trail so you know where they are going and lock-on compensates for lag). I've seen cover based games turn into run-and-gun because moving makes you extremely hard to hit with any sort of accuracy so it was a better protection against bullets than actual cover no matter how stupid your moves would be in a zero lag environment.
 
Apr 11, 2006
738
0
16
Source Engine's hit detection is awful. Having to lead shots is much more preferable than having player movement lagged just so some guy can shoot you with "bullet gunzzz" without leading at all.
 

StreetPreacher

New Member
Mar 10, 2001
99
0
0
This looks great, and I'm excited for it even though I'm move of a "Mechwarrior 2/3ish sim" kind of guy. Looks like they've put a lot of quality time and effort into it. They should release a demo level and then put the full game on Steam for $5-10 IMHO. Quality work like this deserves some compensation.
 

Kyllian

if (Driver == Bot.Pawn); bGTFO=True;
Aug 24, 2002
3,575
0
36
45.64.294
kyllian.deviantart.com
(e.g. in Section 8 Prejudice most people rely on slow explosives or lock-on because manually aiming hitscan weapons at the proper lead position takes too much time, explosives have a visible trail so you know where they are going and lock-on compensates for lag)
Hasn't been that bad unless the ping gets high
Of course the sheer speed people can move doesn't always help