x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

Server not processing moves

Hi,

I'm modifying the First Person Shooter template (c++) to do multiplayer logic. Inside the editor, with multiple clients and the option start dedicated server checked, everything seems to work so far:

Shooting works, Balls are created and replicated on all clients Movement works For those blocks where replication has been enabled, replication works.

Now to the tricky thing: I started a "dedicated server" manually using the ?listen -server -log flags and then manually connected to them. Connecting works - shooting works but movement is not replicated.

After moving around a little, the following appears in my log window:

[2015.01.14-01.14.41:804][574]LogNetPlayerMovement:Warning: CreateSavedMove: Hit limit of 96 saved moves (timing out or very bad ping?)

This message keeps repeating at a rate of about 1 every 1 to 2 seconds. I don't actually time out and, while I don't know how exactly to check the ping, shooting works fine and within a few milliseconds (I know this because two balls are spawned: one in my clients presumed location and one on the servers original location before I moved around.

The way I have it setup right now in the code is (This is not how it'll eventually be ofcourse, but while trying to get this proof of concept to work it was a quick fix):

 void AarenaCharacter::MoveForward(float Value)
 {
     if (Role < ROLE_Authority)
     {
         ServerMoveForward(Value);
     }
 
     if (Value != 0.0f)
     {
         // add movement in that direction
         AddMovementInput(GetActorForwardVector(), Value);
     }
 }
 
 bool AarenaCharacter::ServerMoveForward_Validate(float Value)
 {
     return true;
 }
 
 void AarenaCharacter::ServerMoveForward_Implementation(float Value)
 {
     MoveForward(Value);
 }


and similar setup for MoveRight, TurnAtRate etc.

So far I've been unable to debug this. Any idea's would be greatly appreciated.

Product Version: Not Selected
Tags:
more ▼

asked Jan 14 '15 at 01:19 AM in Using UE4

avatar image

Dratone
88 9 8 15

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

You no need to call AddMovementInput for both client and server, CharacterMovementComponent already replicate move from client to server if you call from client.

more ▼

answered Jan 14 '15 at 01:39 AM

avatar image

Duncan Dam
3.1k 121 50 164

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question